scripts moved from dacs to d2d
[dd2d.git] / data / scripts / actor / barrel.dacs
blobd7bc13e52d5dfef6a0989a87fe10d58847dbe533
1 module actorBarrel is "monster" "Barrel";
3 import actor;
4 import actorai;
7 // setup actor animations
8 public void initializeAnim () {
9   // sleep
10   animClearFrames("monster", "Barrel", "sleep");
11   // left
12   animAddFrame("monster", "Barrel", "sleep", ACTOR_DIR_LEFT, "monsters/barrel/graphics/shared/bar1a0.vga");
13   // right
14   animAddFrame("monster", "Barrel", "sleep", ACTOR_DIR_RIGHT, "monsters/barrel/graphics/shared/bar1a0.vga");
15   // go
16   animClearFrames("monster", "Barrel", "go");
17   // left
18   animAddFrame("monster", "Barrel", "go", ACTOR_DIR_LEFT, "monsters/barrel/graphics/shared/bar1a0.vga");
19   // right
20   animAddFrame("monster", "Barrel", "go", ACTOR_DIR_RIGHT, "monsters/barrel/graphics/shared/bar1a0.vga");
21   // pain
22   animClearFrames("monster", "Barrel", "pain");
23   // left
24   animAddFrame("monster", "Barrel", "pain", ACTOR_DIR_LEFT, "monsters/barrel/graphics/shared/bar1a0.vga");
25   // right
26   animAddFrame("monster", "Barrel", "pain", ACTOR_DIR_RIGHT, "monsters/barrel/graphics/shared/bar1a0.vga");
27   // wait
28   animClearFrames("monster", "Barrel", "wait");
29   // left
30   animAddFrame("monster", "Barrel", "wait", ACTOR_DIR_LEFT, "monsters/barrel/graphics/shared/bar1a0.vga");
31   // right
32   animAddFrame("monster", "Barrel", "wait", ACTOR_DIR_RIGHT, "monsters/barrel/graphics/shared/bar1a0.vga");
33   // attack
34   animClearFrames("monster", "Barrel", "attack");
35   // left
36   animAddFrame("monster", "Barrel", "attack", ACTOR_DIR_LEFT, "monsters/barrel/graphics/shared/bar1a0.vga");
37   // right
38   animAddFrame("monster", "Barrel", "attack", ACTOR_DIR_RIGHT, "monsters/barrel/graphics/shared/bar1a0.vga");
39   // die
40   animClearFrames("monster", "Barrel", "die");
41   // left
42   animAddFrame("monster", "Barrel", "die", ACTOR_DIR_LEFT, "monsters/barrel/graphics/die/bexpa0.vga");
43   animAddFrame("monster", "Barrel", "die", ACTOR_DIR_LEFT, "monsters/barrel/graphics/die/bexpa0.vga");
44   animAddFrame("monster", "Barrel", "die", ACTOR_DIR_LEFT, "monsters/barrel/graphics/die/bexpa0.vga");
45   animAddFrame("monster", "Barrel", "die", ACTOR_DIR_LEFT, "monsters/barrel/graphics/die/bexpb0.vga");
46   animAddFrame("monster", "Barrel", "die", ACTOR_DIR_LEFT, "monsters/barrel/graphics/die/bexpb0.vga");
47   animAddFrame("monster", "Barrel", "die", ACTOR_DIR_LEFT, "monsters/barrel/graphics/die/bexpb0.vga");
48   animAddFrame("monster", "Barrel", "die", ACTOR_DIR_LEFT, "monsters/barrel/graphics/die/bexpc0.vga");
49   animAddFrame("monster", "Barrel", "die", ACTOR_DIR_LEFT, "monsters/barrel/graphics/die/bexpc0.vga");
50   animAddFrame("monster", "Barrel", "die", ACTOR_DIR_LEFT, "monsters/barrel/graphics/die/bexpc0.vga");
51   animAddFrame("monster", "Barrel", "die", ACTOR_DIR_LEFT, "monsters/barrel/graphics/die/bexpd0.vga");
52   animAddFrame("monster", "Barrel", "die", ACTOR_DIR_LEFT, "monsters/barrel/graphics/die/bexpd0.vga");
53   animAddFrame("monster", "Barrel", "die", ACTOR_DIR_LEFT, "monsters/barrel/graphics/die/bexpd0.vga");
54   animAddFrame("monster", "Barrel", "die", ACTOR_DIR_LEFT, "monsters/barrel/graphics/die/bexpe0.vga");
55   animAddFrame("monster", "Barrel", "die", ACTOR_DIR_LEFT, "monsters/barrel/graphics/die/bexpe0.vga");
56   animAddFrame("monster", "Barrel", "die", ACTOR_DIR_LEFT, "monsters/barrel/graphics/die/bexpe0.vga");
57   // right
58   animAddFrame("monster", "Barrel", "die", ACTOR_DIR_RIGHT, "monsters/barrel/graphics/die/bexpa0.vga");
59   animAddFrame("monster", "Barrel", "die", ACTOR_DIR_RIGHT, "monsters/barrel/graphics/die/bexpa0.vga");
60   animAddFrame("monster", "Barrel", "die", ACTOR_DIR_RIGHT, "monsters/barrel/graphics/die/bexpa0.vga");
61   animAddFrame("monster", "Barrel", "die", ACTOR_DIR_RIGHT, "monsters/barrel/graphics/die/bexpb0.vga");
62   animAddFrame("monster", "Barrel", "die", ACTOR_DIR_RIGHT, "monsters/barrel/graphics/die/bexpb0.vga");
63   animAddFrame("monster", "Barrel", "die", ACTOR_DIR_RIGHT, "monsters/barrel/graphics/die/bexpb0.vga");
64   animAddFrame("monster", "Barrel", "die", ACTOR_DIR_RIGHT, "monsters/barrel/graphics/die/bexpc0.vga");
65   animAddFrame("monster", "Barrel", "die", ACTOR_DIR_RIGHT, "monsters/barrel/graphics/die/bexpc0.vga");
66   animAddFrame("monster", "Barrel", "die", ACTOR_DIR_RIGHT, "monsters/barrel/graphics/die/bexpc0.vga");
67   animAddFrame("monster", "Barrel", "die", ACTOR_DIR_RIGHT, "monsters/barrel/graphics/die/bexpd0.vga");
68   animAddFrame("monster", "Barrel", "die", ACTOR_DIR_RIGHT, "monsters/barrel/graphics/die/bexpd0.vga");
69   animAddFrame("monster", "Barrel", "die", ACTOR_DIR_RIGHT, "monsters/barrel/graphics/die/bexpd0.vga");
70   animAddFrame("monster", "Barrel", "die", ACTOR_DIR_RIGHT, "monsters/barrel/graphics/die/bexpe0.vga");
71   animAddFrame("monster", "Barrel", "die", ACTOR_DIR_RIGHT, "monsters/barrel/graphics/die/bexpe0.vga");
72   animAddFrame("monster", "Barrel", "die", ACTOR_DIR_RIGHT, "monsters/barrel/graphics/die/bexpe0.vga");
73   // slop
74   animClearFrames("monster", "Barrel", "slop");
75   // left
76   // right
77   // dead
78   animClearFrames("monster", "Barrel", "dead");
79   // left
80   // right
81   // mess
82   animClearFrames("monster", "Barrel", "mess");
83   // left
84   // right
88 // change actor animation
89 public void setAnim (Actor me, string state) {
90   me.animidx = 0;
91   switch (state) {
92     case "sleep": me.animname = "sleep"; me.animstr = "A"; break;
93     case "go": me.animname = "go"; me.animstr = "A"; break;
94     case "pain": me.animname = "pain"; me.animstr = "A"; break;
95     case "wait": me.animname = "wait"; me.animstr = "A"; break;
96     case "attack": me.animname = "attack"; me.animstr = "A"; break;
97     case "die": me.animname = "die"; me.animstr = "CCCDDDEEEFFFGGG"; break;
98     case "slop": me.animname = "slop"; me.animstr = ""; break;
99     case "dead": me.animname = "dead"; me.animstr = ""; break;
100     case "mess": me.animname = "mess"; me.animstr = ""; break;
101     case "run": me.animname = "go"; me.animstr = "A"; break;
102     case "climb": me.animname = "go"; me.animstr = "A"; break;
103     case "runout": me.animname = "go"; me.animstr = "A"; break;
104     case "shoot": me.animname = "attack"; me.animstr = "A"; break;
105     case "revive": me.animname = "revive"; me.animstr = "GGGFFFEEEDDDCCC"; break;
106     default: me.animname = "sleep"; me.animstr = "A"; break;
107   }
108   me.actorSetAnimation(state);
112 // setup actor properties
113 public void initialize (Actor me) {
114   // `classname` and `classtype` will be set by the engine
115   //me.classname = "Barrel";
116   //me.classtype = "monster";
117   me.radius = 5;
118   me.height = 17;
119   me.hitpoints = me.life = 20;
120   me.painin = 0;
121   me.xvel = 7;
122   me.yvel = 6;
123   me.slophit = 0;
124   me.painout = 0;
125   me.angertime = 90;
126   me.setAnim("sleep");
130 // thinker
131 public void think (Actor me) {
132   monsterThink(me);