Do you know anything about GMPhysics? I have a slight annoying problem to deal with in a small game I am making.
I have made a level editor where you can place objects. The weapons, which I made a long time ago, don't fall through the floor. This week I made mines, but they fall through the floor when they are created at level-startup. The thing is, weapons and mines are created in the same script (at the same time), but when mines are created in-game (not at level-startup) they don't fall through the floor.Here is the code for all the objects involved in this bug:
Quote:
Information about object: o_blockSprite: m_blockSolid: trueVisible: trueDepth: -2Persistent: falseParent: o_solidparentMask: m_blockCreate Event:execute code:h = create_body(x,y,STATIC,SHAPE_BOX,image_xscale*64,image_yscale*64);set_body_rotation(h, image_angle);grass = true;obj = object_index;Draw Event:execute code:draw_sprite_ext(s_ground,0,x,y,image_xscale,image_yscale,image_angle,c_white,1);if (grass = true) { draw_sprite_ext(s_grass,0,x,y,image_xscale,image_yscale,image_angle,c_white,1) }
Quote:
Information about object: o_mineSprite: s_mineSolid: falseVisible: trueDepth: -3Persistent: falseParent: o_object_parentMask: <same as sprite>Create Event:execute code:h = create_body(x,y,0.5,SHAPE_BOX,sprite_width,sprite_height);set_body_collide_ext(h);obj = object_index;image_speed = 0.2;radius = 200; //Bomb detection and explosion radiusdamage = 38; //Amount of damage the mine makessoundTimer = 0;soundInterval = 75;sndTimer = global.snd_minetimer;sndBoom = global.snd_mineexplode;Destroy Event:execute code:sc_explode(x, y, radius, damage, sndBoom)Alarm Event for alarm 0:execute code:instance_destroy();End Step Event:execute code:if instance_exists(o_player){ if !(room = rm_editor) { //Check if player is close, so it can explode: if (distance_to_object(o_player) < radius) and (alarm[0] = -1) { alarm[0] = room_speed * 1.7; image_blend = c_red; soundInterval = 10; soundTimer = 10; } //Play constant beeping sound: if (soundTimer = 0) { FMODSoundPlay3d(sndTimer,x,y); soundTimer = soundInterval; } else { soundTimer -= 1; } }}
I like your avatar Mordi. :D
Flashback is ao meanie.