#東方弾幕風 #Title[晴れと雨の境界] #Text[テストスクリプト改変-2] #ScriptVersion[2] script_enemy_main { let imgBoss = "script\img\ExRumia.png"; let frame = 0; @Initialize { SetX(GetCenterX); SetY(GetClipMinY + 120); SetLife(5000); LoadGraphic(imgBoss); SetTexture(imgBoss); SetGraphicRect(0, 0, 63, 63); TNway; } @MainLoop { SetCollisionA(GetX, GetY, 24); SetCollisionB(GetX, GetY, 24); yield; } @DrawLoop { DrawGraphic(GetX, GetY); } @Finalize { DeleteGraphic(imgBoss); } task TNway { let angleBase = -90; yield; loop { loop(10) {yield; } nway(angleBase, 20, 64, AQUA01, 1); angleBase += 10; loop(10) {yield; } nway(angleBase, 12, 15, BLUE23, 2.2); angleBase += 10; loop(10) {yield; } nway(angleBase, 20, 36, AQUA01, 1); nway(-angleBase, 8, 20, ORANGE23, 3.3); angleBase += 5; loop(10) {yield; } nway(-angleBase, 8, 20, ORANGE23, 2.8); nway(angleBase, 13, 15, BLUE23, 1.8); angleBase += 5; } } function nway(dir, way, span, color, spd) { let radius = 32; let angle = dir - (way - 1) / 2 * span; loop(way) { let x = GetX + offsetX(radius, angle); let y = GetY + offsetY(radius, angle); CreateShot01(x, y, spd, angle, color, 0); angle += span; } } function offsetX(radius, angle) { return radius * cos(angle); } function offsetY(radius, angle) { return radius * sin(angle); } } //th3_6469.txtに続いての第二弾。 //マイクロスレッドで全方位弾作って遊んでいたら、こんな弾幕が出来ました。 // //この弾幕風スクリプトは、ロベール氏の講座を参考にして作製しました。 //(http://www.geocities.co.jp/SiliconValley-Oakland/9951/products/thdnhlec/index.html) //(第11回分まで) // //いつかは夢終劇の素材を使いこなせるようになりたいです。 //(というかそれが製作を始めた動機だったり // //難易度や造形を調整してると時間がいくらあっても足りない。 //赤米弾と青米弾が同時に降ると詰みになる形を作りたかった。 // //ボスの左右に使い魔出させて撃破を誘いたいなー、とか //やりたいことはまだまだあるのでしばらく続きます たぶん // //H20.11.04