【初心者】課題をクリアしていくスレ【講習会】at GAMEDEV【初心者】課題をクリアしていくスレ【講習会】 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト290:x≠先生かつx=生徒 ⇒ x=俺 04/07/09 00:10 bufBX0Vb #include "hspext.as" screen 2, 300, 100, 4: title "Config" pos 5, 8: mes "初速:": pos 50, 5: input speed, 215, 25: pos 270, 8: mes "m/s" pos 5, 38: mes "角度:": pos 50, 35: input angle, 210, 25: pos 265, 38: mes "/255" pos 5, 70: objsize 290, 25: button "Start", *start gsel 0: stop *start cls emsin sin, angle: emcos cos, angle mx = speed * sin / 255: my = speed * cos / 255 x = 320000: y = 240000: pos x/1000, y/1000 repeat ox = x: oy = y: x += mx: y -= my: my -= 10 if x<0: x=0: mx = -mx if x>624000: x=624000: mx = -mx if y>464000: y=464000: mx = mx * 8 / 10: my = -my * 8 / 10: if my<80|(mx==0): my = 0: stop ;redraw 0 color 255, 255, 255: pos ox/1000, oy/1000: mes "○" color 0, 0, 0: pos x/1000, y/1000: mes "○" ;redraw 1 wait 1 loop stop 改造版。 >>289 スゲー・・・ 291:C / HSPの生徒 orz 04/07/09 10:25 nlM8j7wC >>286の課題作ってみたが、ゲーム性を考えて数値をアレンジしています。 #define RED_SIZE 32 #define ENEMY_SIZE 32 #define MOVE_TIME 32 #define OBJ_SX 2 #define OBJ_SY 16 #define OBJ_SPEED 16 randomize width 640, 480 red_x = 640 - RED_SIZE / 2:red_y = 480 - RED_SIZE repeat redraw 2:color 255, 255, 255:boxf if enemy_stat = 0:enemy_y = -ENEMY_SIZE:enemy_stat = 1:title "C / HSPの生徒 orz 撃破数: "+obj_cnt enemy_timer++:if enemy_timer > MOVE_TIME:enemy_timer = 0 if enemy_timer = 0:rnd enemy_x, 640 - ENEMY_SIZE stick key, 15:if key & 1{red_x-4}if key & 4{red_x+4} stick key, 16:if key = 16 & (obj_stat = 0){ obj_stat = 1:obj_x = RED_SIZE / 2 - (OBJ_SX / 2) + red_x:obj_y = red_y - 16} if (enemy_x < obj_x) & (obj_x + OBJ_SX < (enemy_x + ENEMY_SIZE)) { if (enemy_y < obj_y) & (obj_y + OBJ_SY < (enemy_y + ENEMY_SIZE)) { obj_cnt++:obj_stat = 0:enemy_stat = 0:color 255, 0, 0:boxf} }if obj_y + OBJ_SY < 0:obj_stat = 0 if enemy_stat:color 100, 100, 200:boxf enemy_x, enemy_y, enemy_x + ENEMY_SIZE, enemy_y + ENEMY_SIZE color 200, 100, 100:boxf red_x, red_y, red_x + RED_SIZE, red_y + RED_SIZE if obj_stat:color 100, 200, 100:boxf obj_x, obj_y, obj_x + OBJ_SX, obj_y + OBJ_SY:obj_y-OBJ_SPEED enemy_y++:if enemy_y > 480{enemy_stat = 0}await 20:redraw 1 loop 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch