3 // BlockClass : 普通のブロック。 引数に画像名を指定
5 b : {base:BlockClass,args:'1150.png'},
6 f : {base:BlockClass,args:'1190.png'},
7 t : {base:BlockClass,args:'1160.png'},
8 x : {base:BlockClass,args:'1236.png'},
9 j : {base:BlockClass,args:'1238.png'},
10 y : {base:BlockClass,args:'1240.png'},
11 h : {base:BlockClass,args:'1239.png'},
12 ab: {base:BlockClass,args:'bridge.png'},
16 i : {base:BlockClass,args:'1235.png'},
17 n : {base:BlockClass,args:'leaves.png'},
18 p : {base:BlockClass,args:'glass.png'},
19 ag : {base:BlockClass,args:'hosikusabelow.png'},
20 r : {base:HiddenBlockClass,args:'hosikusa.png',adjust:[-10,0], prop:{collidingMask:CollideBottom, collidingExcludeMask:(CollideRight | CollideTop | CollideLeft | CollideBody)}},
25 // SlopeBlockClass : 当たり判定が斜めのブロック。
26 // 引数 : 画像名, 当たり判定領域左側の開始位置のブロック上辺からの高さ, 当たり判定領域右側の...
27 // たとえば、この例のように 0, 32 と指定すれば右下がりの坂になり、32, 0と指定すれば左下がり、 16, 16と指定すれば半分の高さの長方形になる
28 // enableBlockMode : 当たり判定領域をデバッグ表示する。
30 c : {base:SlopeBlockClass,args:['1152.png',32,0],prop:{enableDebugMode:true}},
31 d : {base:SlopeBlockClass,args:['1213.png',16,16],prop:{enableDebugMode:true}},
32 a : {base:SlopeBlockClass,args:['kusa.png',64,64],prop:{enableDebugMode:true}},
33 g : {base:SlopeBlockClass,args:['1151.png',0,32],prop:{enableDebugMode:true}},
34 e : {base:SlopeBlockClass,args:['1214.png',128,128],prop:{enableDebugMode:true}},
35 l : {base:SlopeBlockClass,args:['leavesedge1.png',16,0],prop:{enableDebugMode:true}},
36 m : {base:SlopeBlockClass,args:['leavesedge2.png',0,16],prop:{enableDebugMode:true}},
37 o : {base:SlopeBlockClass,args:['stop.png',35,35],prop:{enableDebugMode:true}},
38 q : {base:SlopeBlockClass,args:['hosikusa.png',9,9],prop:{enableDebugMode:true}},
39 s : {base:SlopeBlockClass,args:['leaves.png',1500,1500],prop:{enableDebugMode:true}},
40 u : {base:SlopeBlockClass,args:['1162.png',33,-3],prop:{enableDebugMode:true}},
41 w : {base:SlopeBlockClass,args:['1161.png',-3,33],prop:{enableDebugMode:true}},
42 z : {base:SlopeBlockClass,args:['1164.png',33,-3],prop:{enableDebugMode:true}},
43 aa : {base:SlopeBlockClass,args:['fence.png',600,600],prop:{enableDebugMode:true}},
44 ad : {base:SlopeBlockClass,args:['fence.png',16,16],prop:{enableDebugMode:true}},
46 af : {base:SlopeBlockClass,args:['toge.png',0,0],prop:{enableDebugMode:true}},
48 // FreeItemClass : キャラが取得するとコールバックが実行されるアイテム
49 // callback : 誰かに取得されたときに発生するコールバック。アタックした人、そのアタック直後のx, y座標が引数にセットされる。
50 // times : 取得できる回数で、-1で無限。
51 k : {base:FreeItemClass,args:["1234.png",callBack0],prop:{times:1}},
53 ac : {base:FreeItemClass,args:["bridgedameged.png",callBack],prop:{times:1,DebugMode:true,}},
54 ah : {base:FreeItemClass,args:["stop.png",callBack1],prop:{times:1,DebugMode:true,}},
59 // 何もブロックを置かない位置のためにかならずこのようなエントリーを記述
63 function callBack0(obj,x,y)
65 if(obj instanceof MainCharacterClass){mainManager.addWidget(new MessageWidgetClass(mainManager, ["アイテムゲッツ\n"]));
71 function callBack(obj,x,y)
73 if(obj instanceof MainCharacterClass){mainManager.addWidget(new MessageWidgetClass(mainManager, ["ガタッ\n"]));
79 function callBack1(obj,x,y)
81 if(obj instanceof MainCharacterClass){mainManager.addWidget(new MessageWidgetClass(mainManager, ["老朽化のため橋桁の崩落に注意\n"]));
91 background: "back2.png", //背景画像。横幅は640pxである必要はない。
93 //"Metal_Gear_Solid_OST_Encounter.mp3",
94 //"Mount_Blade_With_Fire_and_Sword_OST_-_Happy_Song.mp3",
99 [_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,],
100 [_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,],
101 [_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,],
102 [_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,],
103 [_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,r,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,i,_,_,_,i,i],
104 [_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,l,s,m,_,_,_,_,_,_,],
105 [_,_,_,_,_,_,_,_,l,n,m,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,l,s,m,_,_,_,l,s,m,_,_,_,_,_,_],
106 [_,_,_,_,_,_,_,l,n,s,s,m,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,ah,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,l,s,m,_,_,l,s,s,s,m,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,i,_,_,_,_,i,_,_,_,],
107 [_,_,_,_,_,_,_,l,n,s,s,m,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,u,t,t,w,aa,aa,aa,aa,aa,aa,aa,aa,aa,aa,aa,aa,aa,aa,_,_,_,_,_,_,_,_,_,l,s,s,s,m,_,l,s,s,s,m,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,ag,],
108 [_,_,_,_,_,_,_,l,n,n,n,m,_,_,_,_,_,o,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,u,t,t,t,t,t,ab,ab,ab,ac,ac,ab,ac,ac,ab,ac,ac,ac,ab,ac,t,t,t,t,t,w,_,_,_,l,s,s,s,m,_,_,l,n,m,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,i,k,i,_,_,_,_,_,ag,ag,],
109 [_,_,i,k,i,_,_,_,_,e,_,_,_,_,_,a,c,b,g,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,r,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,q,_,_,_,_,_,_,_,_,_,_,z,t,t,t,t,t,t,t,j,_,_,_,_,_,_,_,_,_,_,_,_,h,t,t,t,t,t,t,j,_,_,_,l,n,m,_,_,_,_,e,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,ag,ag,ag,_,_,_,_,_,_,,_,_,_,_,_,_,_,_,_,_,_,_,_,i,i,],
110 [_,_,_,_,_,_,_,_,_,e,_,_,a,a,c,b,b,b,b,g,_,_,_,_,_,_,_,_,_,ag,ag,ag,ag,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,q,q,_,_,_,q,ag,a,a,a,a,a,a,a,a,_,u,t,t,t,t,t,t,t,t,j,_,_,_,_,_,_,_,_,_,_,_,_,y,t,t,t,t,t,t,j,_,_,_,_,e,_,_,_,_,_,e,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,_,ag,ag,ag,ag,_,_,_,_,_,],
111 [_,_,_,_,_,_,a,a,a,e,a,c,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,g,_,q,q,_,_,_,_,_,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,x,t,t,t,t,t,t,t,t,t,j,_,_,_,_,_,_,_,_,_,_,_,_,h,t,t,t,t,t,t,j,a,a,a,a,e,a,a,a,d,a,e,a,a,a,ad,ad,ad,ad,ad,ad,ad,_,_,_,_,_,_,_,_,ad,_,_,_,_, , , ,_,_, ,_,af,_, , , , , , , , ,af,af,af, , ,ad,a,a,a,a,a,a,a,a,a,a,a,a,q,_,a,a,a,a,a,a,ag,ag,ag,ag,ag,],
112 [a,d,a,a,a,c,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,x,t,t,t,t,t,t,t,t,t,j,_,_,_,_,_,_,_,_,_,_,_,_,h,t,t,t,t,t,t,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,_,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,b,],
113 [f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,j,_,_,_,_,_,_,_,_,_,_,_,_,h,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,_,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,f,]
118 var stage = new PCDSLStageClass(stgInfo, tbl);
121 stage.runStage = function(){
122 PCDSLStageClass.prototype.runStage.apply(this, []);
123 var main = new MainCharacterClass_Hunter(stage);
126 stage.userControlledCharacter = main;
128 var e1 = new EnemyCharacterClass_PanTank(stage);
132 var e2 = new EnemyCharacterClass_Rat(stage);
136 var e3 = new EnemyCharacterClass_Farmer(stage);
140 var e4 = new EnemyCharacterClass_Bear(stage);
144 var e5 = new EnemyCharacterClass_Rat(stage);
147 e5.chasingRange = 270;
148 e5.collisionMargin.top = 15;
149 e5.movingVelocity = 200;
151 var e7 = new EnemyCharacterClass_Rat(stage);
154 e7.chasingRange = 270;
155 e7.movingVelocity = 70;
157 var e8 = new EnemyCharacterClass_Rat(stage);
160 e8.chasingRange = 270;
161 e8.movingVelocity = 70;
163 var e9 = new EnemyCharacterClass_Rat(stage);
166 e9.chasingRange = 270;
167 e9.movingVelocity = 70;
171 var e11 = new EnemyCharacterClass_Spine(stage);
174 e11.collisionMarginTop = 28;
176 var e12 = new EnemyCharacterClass_Spine(stage);
179 e12.collisionMarginTop = 28;
181 var e13 = new EnemyCharacterClass_Spine(stage);
184 e13.collisionMarginTop = 28;
186 var e14 = new EnemyCharacterClass_Spine(stage);
189 e14.collisionMarginTop = 28;
191 var e15 = new EnemyCharacterClass_Spine(stage);
194 e15.collisionMarginTop = 28;
196 var e16 = new EnemyCharacterClass_Spine(stage);
199 e16.collisionMarginTop = 28;
201 var e17 = new EnemyCharacterClass_Spine(stage);
204 e17.collisionMarginTop = 28;
206 var e18 = new EnemyCharacterClass_Spine(stage);
209 e18.collisionMarginTop = 28;
211 var e19 = new EnemyCharacterClass_Spine(stage);
214 e19.collisionMarginTop = 28;
216 var e20 = new EnemyCharacterClass_Spine(stage);
219 e20.collisionMarginTop = 28;
221 var e21 = new EnemyCharacterClass_Spine(stage);
224 e21.collisionMarginTop = 28;
228 var e23 = new EnemyCharacterClass_Spine(stage);
231 e23.collisionMarginTop = 28;
233 var e24 = new EnemyCharacterClass_Spine(stage);
236 e24.collisionMarginTop = 28;
238 var e25 = new EnemyCharacterClass_Spine(stage);
241 e25.collisionMarginTop = 28;
243 var e26 = new EnemyCharacterClass_Spine(stage);
246 e26.collisionMarginTop = 28;
248 var e27 = new EnemyCharacterClass_Spine(stage);
251 e27.collisionMarginTop = 28;
253 var e28 = new EnemyCharacterClass_Spine(stage);
256 e28.collisionMarginTop = 28;
258 var e29 = new EnemyCharacterClass_Spine(stage);
261 e29.collisionMarginTop = 28;
263 var e30 = new EnemyCharacterClass_Spine(stage);
266 e30.collisionMarginTop = 28;
268 var e31 = new EnemyCharacterClass_Spine(stage);
271 e31.collisionMarginTop= 28;
273 var e32 = new EnemyCharacterClass_Spine(stage);
276 e32.collisionMarginTop = 28;
278 var e33 = new EnemyCharacterClass_Spine(stage);
281 e33.collisionMarginTop = 28;
293 var c1 = new EnemyCharacterClass(stage, [["cowm1.png","cowm2.png","cowm3.png","cowm4.png","cowm3.png","cowm2.png",]]);
298 c1.chasingRange = 200;
299 c1.ownerUID = stage.manager.userID;
300 c1.movingVelocity = 80;
301 c1.collisionMargin.top = 14;
302 c1.collisionMargin.right = 16;
303 c1.collisionMargin.left = 16;
306 //メインキャラクターから受けるダメージの設定
309 stage.addStageObject(c1);
312 var c2 = new EnemyCharacterClass(stage, [["cowm1.png","cowm2.png","cowm3.png","cowm4.png","cowm3.png","cowm2.png",]]);
317 c2.chasingRange = 200;
318 c2.ownerUID = stage.manager.userID;
319 c2.movingVelocity = 150;
320 c2.collisionMargin.top = 14;
321 c2.collisionMargin.right = 16;
322 c2.collisionMargin.left = 16;
325 //メインキャラクターから受けるダメージの設定
328 stage.addStageObject(c2);
335 var barn = new BlockClass(stage, ["barn.png",]);
339 barn.origin.x = 1332;
341 barn.collisionMargin.top = 44;
342 barn.collisionMargin.right = 30;
343 stage.addStageObject(barn);
345 var barn2 = new SlopeBlockClass(stage, ["barn.png", 49, 49]);
349 barn2.origin.x = 3700;
351 stage.addStageObject(barn2);
353 var windmill = new SlopeBlockClass(stage, ["windmill.png", 5, 5]);
354 windmill.size.x = 50;
355 windmill.size.y = 150;
356 windmill.origin.x = 1600;
357 windmill.origin.y =236;
358 stage.addStageObject(windmill);
362 var fence0 = new SlopeBlockClass(stage, ["fence.png", 16, 16]);
365 fence0.origin.x = 672;
366 fence0.origin.y = 352;
367 stage.addStageObject(fence0);
369 var fence13 = new SlopeBlockClass(stage, ["fence.png", 32, 32]);
372 fence13.origin.x = 704;
373 fence13.origin.y = 352;
374 stage.addStageObject(fence13);
376 var fence = new SlopeBlockClass(stage, ["fence.png", 32, 32]);
379 fence.origin.x = 736;
380 fence.origin.y = 352;
381 stage.addStageObject(fence);
383 var fence2 = new SlopeBlockClass(stage, ["fence.png", 32, 32]);
386 fence2.origin.x = 768;
387 fence2.origin.y = 352;
388 stage.addStageObject(fence2);
390 var fence3 = new SlopeBlockClass(stage, ["fence.png", 32, 32]);
393 fence3.origin.x = 800;
394 fence3.origin.y = 352;
395 stage.addStageObject(fence3);
397 var fence4 = new SlopeBlockClass(stage, ["fence.png", 32, 32]);
400 fence4.origin.x = 832;
401 fence4.origin.y = 352;
402 stage.addStageObject(fence4);
404 var fence5 = new SlopeBlockClass(stage, ["fence.png", 32, 32]);
407 fence5.origin.x = 864;
408 fence5.origin.y = 352;
409 stage.addStageObject(fence5);
411 var fence6 = new SlopeBlockClass(stage, ["fence.png", 32, 32]);
414 fence6.origin.x = 896;
415 fence6.origin.y = 352;
416 stage.addStageObject(fence6);
418 var fence7 = new SlopeBlockClass(stage, ["fence.png", 32, 32]);
421 fence7.origin.x = 928;
422 fence7.origin.y = 352;
423 stage.addStageObject(fence7);
425 var fence8 = new SlopeBlockClass(stage, ["fence.png", 32, 32]);
428 fence8.origin.x = 960;
429 fence8.origin.y = 352;
430 stage.addStageObject(fence8);
432 var fence9 = new SlopeBlockClass(stage, ["fence.png", 32, 32]);
435 fence9.origin.x = 992;
436 fence9.origin.y = 352;
437 stage.addStageObject(fence9);
439 var fence10 = new SlopeBlockClass(stage, ["fence.png", 16, 16]);
442 fence10.origin.x = 1024;
443 fence10.origin.y = 352;
444 stage.addStageObject(fence10);
446 var fence11 = new SlopeBlockClass(stage, ["fence.png", 16, 16]);
449 fence11.origin.x = 3712;
450 fence11.origin.y = 384;
451 stage.addStageObject(fence11);
453 var fence12 = new SlopeBlockClass(stage, ["fence.png", 16, 16]);
456 fence12.origin.x = 3680;
457 fence12.origin.y = 384;
458 stage.addStageObject(fence12);
460 var cow4 = new BlockClass(stage, ["cow.png",]);
463 cow4.origin.x = 4010;
465 cow4.collisionMargin.top = 14;
466 cow4.collisionMargin.right = 16;
467 cow4.collisionMargin.left = 16;
468 stage.addStageObject(cow4);
470 var cow5 = new BlockClass(stage, ["cow2.png",]);
473 cow5.origin.x = 4180;
475 cow5.collisionMargin.top = 14;
476 cow5.collisionMargin.right = 16;
477 cow5.collisionMargin.left = 16;
478 stage.addStageObject(cow5);
480 var cow6 = new BlockClass(stage, ["cow.png",]);
483 cow6.origin.x = 4420;
485 cow6.collisionMargin.top = 100;
486 cow6.collisionMargin.right = 16;
487 cow6.collisionMargin.left = 16;
488 stage.addStageObject(cow6);
490 var cow7 = new BlockClass(stage, ["cow2.png",]);
493 cow7.origin.x = 4480;
495 cow7.collisionMargin.top = 14;
496 cow7.collisionMargin.right = 16;
497 cow7.collisionMargin.left = 16;
498 stage.addStageObject(cow7);