GMS2 技術メモ 1

 

敵同士の衝突

if(followwing){

var _newX = x+inputX*moveSpeed;

var _newY = y+inputY*moveSpeed;

if(place_meeting(_newX,_newY, o_enemy_parent)){

inputX = 0;

inputY = 0;

}

}

------------------------

インスタンスが上下に移動する

create event

{

move_time = 0;

move_timer = 60;

}

 

 

y += move_amount;

if(move_timer++ > move_maxtimer){

move_timer = 0;

move_amount *= -1;

special_attack_count = true;

}

------------------------

水平 プレイヤーの動き

var move = right - left;

hsp = move * walksp;

------------------------

対面

if(hsp != 0){

image_xscale = sign(hsp);

}

------------------------

衝突判定の描画

draw_self();

draw_set_alpha(0.3);

draw_rectangle_color(bbox_left,bbox_top,bbox_right,bbox_bottom,c_red,c_red,c_red,c_red,false);

draw_set_alpha(1);

------------------------

プレイヤー4方向の動き

hsp += (right - left) * walksp;

vsp += (down - up ) * walksp;

hsp = lerp(hsp,0,drag);

vsp = lerp(vsp,0,drag);

if(abs(hsp) <= 0.1) { hsp = 0; }

if(abs(vsp) <= 0.1) { vsp = 0; }

if(hsp != 0){ facing = sign(hsp); }

if(vsp != 0){ vsp_walk = sign(vsp); }

hsp = min(abs(hsp),walksp)*facing;

vsp = min(abs(vsp),walksp)*vsp_walk;

image_xscale = facing;

x += hsp;

y += vsp;

ゲーム停止

(create event)

global.gamepause = false;

(end step event)

if(keyboard_check_pressed(vk_escape)){

global.gamepause = !global.gamepause;

if(global.gamepause){

with(all){

gamePauseImageSpeed = image_speed;

image_speed = 0;

hsp = 0;

vsp = 0;

}

}else{

with(all){

image_speed = gamePauseImageSpeed;

}

}

}

プレイヤー発見までの距離

var detect_player_dis = 120;

if(distance_to_object(o_player) < detect_player_dis)

and sign(o_player.x-x) = facing {

state =  (enemy);

}

静かで優しい クラシック曲

メンデルスゾーン「ベニスの舟唄」


ショパンノクターンop.9-2」「ノクターン遺作op.post」「別れのワルツop.69-1」

シューマン子供の情景」より

「異国から」「トロイメライ

 


チャイコフスキー「舟唄」

サティ「ジュ・トゥ・ヴ」

ドビュッシー「月の光」「夢」

ラベル「亡き王女のためのパヴァーヌ

ドビュッシー亜麻色の髪の乙女

ラフマニノフ「ヴォカリーズ」

マスネー「タイスの瞑想曲」

マスカーニ「間奏曲(カヴァレリア・ルスティカーナ