Bassmaster: to menu jest do bani. Poza tym, pierwszy kod w stepie obiektu hero_obj zamieńcie na:
GML
if player=0
{
player1follow.x=x;
player1follow.y=y;
}
if player=1
{
player2follow.x=x;
player2follow.y=y;
}
room_caption=string(move);
mask_index=heromask_spr;
if mode!="moving" duck=0;
if duck>0 duck-=1;
if mode="moving"
{
hspeed=round(hspeed);
rotation=0;
gravity_direction=270;
if place_free(x,y+1)
gravity=0.25;
else
gravity=0;
if vspeed>12
vspeed=12;
if place_free(x,y+1)
{
duck=0;
if wallkicked=0
{
sprite_index=spr_j;
}
else
sprite_index=spr_jw;
image_speed=abs(move/10)+0.1;
}
else
{
if duck=0
{
if move>-1 and move<1
{
sprite_index=spr_s;
image_speed=0.05;
}
else
{
sprite_index=spr_r;
image_speed=0.5;
}
}
else
sprite_index=spr_d;
}
// CODE: MAIN CONTROL
if keyboard_check(global.key[player,0])
{
if move<4 move+=0.5;
if wallkicked=0 dir=1;
}
if keyboard_check(global.key[player,1])
{
if move>-4 move-=0.5;
if wallkicked=0 dir=-1;
}
if keyboard_check(global.key[player,3]) and not place_free(x,y+1)
{
duck=2;
}
if keyboard_check(global.key[player,4])
{
if not place_free(x,y+1)
{
mode="wait";
sprite_index=nippoget_spr;
getoffme=0;
alarm[0]=5;
}
else
{
if not place_free(x+dir,y) and wallkicked<>dir
{
wallkicked=dir;
alarm[1]=12;
move=dir*-8;
vspeed=-4;
dir*=-1;
}
}
}
if move>0 move-=0.25;
if move<0 move+=0.25;
if place_free(x+move,y)
{
x+=move;
if not place_free(x,y+6) and vspeed=0
move_contact_solid(270,6);
}
else
if place_free(x+move,y-6)
{
y-=6;
x+=move;
if not place_free(x,y+6) and vspeed=0
move_contact_solid(270,6);
}
else
{
if move>0 move_contact_solid(0,move);
if move<0 move_contact_solid(180,move);
move=0;
}
}
Bo Malleo nie mógł poruszać się w prawo na ziemi.