1-- _________ __ __ 2-- / _____// |_____________ _/ |______ ____ __ __ ______ 3-- \_____ \\ __\_ __ \__ \\ __\__ \ / ___\| | \/ ___/ 4-- / \| | | | \// __ \| | / __ \_/ /_/ > | /\___ \ 5-- /_______ /|__| |__| (____ /__| (____ /\___ /|____//____ > 6-- \/ \/ \//_____/ \/ 7-- ______________________ ______________________ 8-- T H E W A R B E G I N S 9-- Stratagus - A free fantasy real time strategy game engine 10-- 11-- anim.lua - The human unit animation definitions. 12-- 13-- (c) Copyright 2000-2005 by Josh Cogliati, Lutz Sammer, 14-- and Jimmy Salmon 15-- 16-- This program is free software; you can redistribute it and/or modify 17-- it under the terms of the GNU General Public License as published by 18-- the Free Software Foundation; either version 2 of the License, or 19-- (at your option) any later version. 20-- 21-- This program is distributed in the hope that it will be useful, 22-- but WITHOUT ANY WARRANTY; without even the implied warranty of 23-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 24-- GNU General Public License for more details. 25-- 26-- You should have received a copy of the GNU General Public License 27-- along with this program; if not, write to the Free Software 28-- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 29-- 30 31-- 32-- footman and arthor-literios 33-- 34 35local FootmanStill = UnitStill 36local FootmanMove = {"unbreakable begin","frame 0", "move 3", "wait 2", "frame 5", "move 3", "wait 1", 37 "frame 5", "move 3", "wait 2", "frame 10", "move 2", "wait 1", 38 "frame 10", "move 3", "wait 1", "frame 0", "move 2", "wait 1", 39 "frame 0", "move 3", "wait 2", "frame 15", "move 3", "wait 1", 40 "frame 15", "move 3", "wait 2", "frame 20", "move 2", "wait 1", 41 "frame 20", "move 3", "wait 1", "frame 0", "move 2", "unbreakable end", "wait 1",} 42local FootmanDeath = {"unbreakable begin", "frame 45", "wait 3", "frame 50", "wait 3", "frame 55", "wait 100", 43 "frame 55", "unbreakable end", "wait 1",} 44 45DefineAnimations("animations-footman", { 46 Still = FootmanStill, 47 Move = FootmanMove, 48 Attack = {"unbreakable begin", "frame 25", "wait 3", "frame 30", "wait 3", "frame 35", "wait 3", 49 "frame 40", "attack", "sound footman-attack", "wait 5", "frame 0", "wait 10", 50 "frame 0", "unbreakable end", "wait 1",}, 51 Death = FootmanDeath, 52}) 53 54DefineAnimations("animations-arthor-literios", { 55 Still = FootmanStill, 56 Move = FootmanMove, 57 Attack = {"unbreakable begin", "frame 25", "wait 3", "frame 30", "wait 3", "frame 35", "wait 3", 58 "frame 40", "attack", "sound danath-attack", "wait 5", "frame 0", "wait 10", 59 "frame 0", "unbreakable end", "wait 1",}, 60 Death = FootmanDeath, 61}) 62 63 64DefineAnimations("animations-peasant", { 65 Still = UnitStill, 66 Move = {"unbreakable begin", "frame 0", "move 3", "wait 2", "frame 5", "move 3", "wait 1", 67 "frame 5", "move 3", "wait 2", "frame 10", "move 2", "wait 1", 68 "frame 10", "move 3", "wait 1", "frame 0", "move 2", "wait 1", 69 "frame 0", "move 3", "wait 2", "frame 15", "move 3", "wait 1", 70 "frame 15", "move 3", "wait 2", "frame 20", "move 2", "wait 1", 71 "frame 20", "move 3", "wait 1", "frame 0", "move 2", "unbreakable end", "wait 1",}, 72 Attack = {"unbreakable begin", "frame 25", "wait 3", "frame 30", "wait 3", "frame 35", "wait 3", 73 "frame 40", "attack", "sound peasant-attack", "wait 5", "frame 45", "wait 3", 74 "frame 25", "wait 7", "frame 25", "unbreakable end", "wait 1",}, 75 Harvest_wood = {"unbreakable begin", "frame 25", "wait 3", "frame 30", "wait 3", "frame 35", "wait 3", 76 "frame 40", "sound tree-chopping", "wait 5", "frame 45", "wait 3", 77 "frame 25", "wait 7", "frame 25", "unbreakable end", "wait 1",}, 78 Repair = {"unbreakable begin", "frame 25", "wait 3", "frame 30", "wait 3", "frame 35", "wait 3", 79 "frame 40", "sound peasant-attack", "wait 5", "frame 45", "wait 3", 80 "frame 25", "wait 7", "frame 25", "unbreakable end", "wait 1",}, 81 Death = {"unbreakable begin", "frame 50", "wait 3", "frame 55", "wait 3", "frame 60", "wait 100", 82 "frame 60", "unbreakable end", "wait 1",}, 83}) 84 85 86DefineAnimations("animations-ballista", { 87 Still = {"frame 0", "wait 4", "frame 0", "wait 1",}, 88 Move = {"unbreakable begin","frame 0", "wait 1", "frame 5", "move 2", "wait 2", 89 "frame 0", "move 2", "wait 2", "frame 5", "move 2", "wait 2", 90 "frame 0", "move 2", "wait 2", "frame 5", "move 2", "wait 2", 91 "frame 0", "move 2", "wait 2", "frame 5", "move 2", "wait 2", 92 "frame 0", "move 2", "wait 2", "frame 5", "move 2", "wait 2", 93 "frame 0", "move 2", "wait 2", "frame 5", "move 2", "wait 2", 94 "frame 0", "move 2", "wait 2", "frame 5", "move 2", "wait 2", 95 "frame 0", "move 2", "wait 2", "frame 5", "move 2", "wait 2", 96 "frame 0", "move 2", "unbreakable end", "wait 1",}, 97 Attack = {"unbreakable begin", "frame 10", "wait 25", 98 "frame 15", "attack", "sound ballista-attack", "wait 25", "frame 15", "wait 100", 99 "frame 0", "wait 49", "frame 0", "unbreakable end", "wait 1",}, 100}) 101 102 103-- 104-- knight, paladin, knight-rider, wise-man, and man-of-light 105-- 106 107local KnightStill = UnitStill 108local KnightMove = {"unbreakable begin","frame 0", "move 3", "wait 1", "frame 5", "move 3", "wait 1", 109 "frame 5", "move 4", "wait 2", "frame 10", "move 3", "wait 1", 110 "frame 10", "move 3", "wait 1", "frame 15", "move 3", "wait 1", 111 "frame 15", "move 4", "wait 2", "frame 20", "move 3", "wait 1", 112 "frame 20", "move 3", "wait 1", "frame 0", "move 3", "unbreakable end", "wait 1",} 113local KnightDeath = {"unbreakable begin", "frame 45", "wait 3", "frame 50", "wait 3", "frame 55", "wait 100", 114 "frame 60", "wait 200", "frame 65", "wait 200", "frame 65", "unbreakable end", "wait 1",} 115 116DefineAnimations("animations-knight", { 117 Still = KnightStill, 118 Move = KnightMove, 119 Attack = {"unbreakable begin", "frame 25", "wait 3", "frame 30", "wait 3", "frame 35", "wait 3", 120 "frame 40", "attack", "sound knight-attack", "wait 5", "frame 0", "wait 10", 121 "frame 0", "unbreakable end", "wait 1",}, 122 Death = KnightDeath, 123}) 124 125DefineAnimations("animations-paladin", { 126 Still = KnightStill, 127 Move = KnightMove, 128 Attack = {"unbreakable begin", "frame 25", "wait 3", "frame 30", "wait 3", "frame 35", "wait 3", 129 "frame 40", "attack", "sound paladin-attack", "wait 5", "frame 0", "wait 10", 130 "frame 0", "unbreakable end", "wait 1",}, 131 SpellCast = {"unbreakable begin", "frame 25", "wait 3", "frame 30", "wait 3", "frame 35", "wait 3", 132 "frame 40", "attack", "wait 5", "frame 0", "wait 10", 133 "frame 0", "unbreakable end", "wait 1",}, 134 Death = KnightDeath, 135}) 136 137DefineAnimations("animations-knight-rider", { 138 Still = KnightStill, 139 Move = KnightMove, 140 Attack = {"unbreakable begin", "frame 25", "wait 3", "frame 30", "wait 3", "frame 35", "wait 3", 141 "frame 40", "attack", "sound turalyon-attack", "wait 5", "frame 0", "wait 10", 142 "frame 0", "unbreakable end", "wait 1",}, 143 SpellCast = {"unbreakable begin", "frame 25", "wait 3", "frame 30", "wait 3", "frame 35", "wait 3", 144 "frame 40", "attack", "wait 5", "frame 0", "wait 10", 145 "frame 0", "unbreakable end", "wait 1",}, 146 Death = KnightDeath, 147}) 148 149DefineAnimations("animations-wise-man", { 150 Still = KnightStill, 151 Move = KnightMove, 152 Attack = {"unbreakable begin", "frame 25", "wait 3", "frame 30", "wait 3", "frame 35", "wait 3", 153 "frame 40", "attack", "sound lothar-attack", "wait 5", "frame 0", "wait 10", 154 "frame 0", "unbreakable end", "wait 1",}, 155 SpellCast = {"unbreakable begin", "frame 25", "wait 3", "frame 30", "wait 3", "frame 35", "wait 3", 156 "frame 40", "attack", "wait 5", "frame 0", "wait 10", 157 "frame 0", "unbreakable end", "wait 1",}, 158 Death = KnightDeath, 159}) 160 161DefineAnimations("animations-man-of-light", { 162 Still = KnightStill, 163 Move = KnightMove, 164 Attack = {"unbreakable begin", "frame 25", "wait 3", "frame 30", "wait 3", "frame 35", "wait 3", 165 "frame 40", "attack", "sound uther-lightbringer-attack", "wait 5", "frame 0", "wait 10", 166 "frame 0", "unbreakable end", "wait 1",}, 167 SpellCast = {"unbreakable begin", "frame 25", "wait 3", "frame 30", "wait 3", "frame 35", "wait 3", 168 "frame 40", "attack", "wait 5", "frame 0", "wait 10", 169 "frame 0", "unbreakable end", "wait 1",}, 170 Death = KnightDeath, 171}) 172 173 174-- 175-- archer, ranger, and female-hero 176-- 177 178local ArcherStill = UnitStill 179local ArcherMove = {"unbreakable begin","frame 0", "move 3", "wait 2", "frame 5", "move 3", "wait 1", 180 "frame 5", "move 3", "wait 2", "frame 10", "move 2", "wait 1", 181 "frame 10", "move 3", "wait 1", "frame 0", "move 2", "wait 1", 182 "frame 0", "move 3", "wait 2", "frame 15", "move 3", "wait 1", 183 "frame 15", "move 3", "wait 2", "frame 20", "move 2", "wait 1", 184 "frame 20", "move 3", "wait 1", "frame 0", "move 2", "unbreakable end", "wait 1",} 185local ArcherDeath = {"unbreakable begin", "frame 35", "wait 3", "frame 40", "wait 3", "frame 45", "wait 100", 186 "frame 45", "unbreakable end", "wait 1",} 187 188DefineAnimations("animations-archer", { 189 Still = ArcherStill, 190 Move = ArcherMove, 191 Attack = {"unbreakable begin", "frame 25", "wait 10", "frame 30", "attack", "sound archer-attack", "wait 10", 192 "frame 0", "wait 44", "frame 0", "unbreakable end", "wait 1",}, 193 Death = ArcherDeath, 194}) 195 196DefineAnimations("animations-ranger", { 197 Still = ArcherStill, 198 Move = ArcherMove, 199 Attack = {"unbreakable begin", "frame 25", "wait 10", "frame 30", "attack", "sound ranger-attack", "wait 10", 200 "frame 0", "wait 44", "frame 0", "unbreakable end", "wait 1",}, 201 Death = ArcherDeath, 202}) 203 204DefineAnimations("animations-female-hero", { 205 Still = ArcherStill, 206 Move = ArcherMove, 207 Attack = {"unbreakable begin", "frame 25", "wait 10", "frame 30", "attack", "sound alleria-attack", "wait 10", 208 "frame 0", "wait 44", "frame 0", "unbreakable end", "wait 1",}, 209 Death = ArcherDeath, 210}) 211 212 213-- 214-- mage and white-mage 215-- 216 217local MageStill = UnitStill 218local MageMove = {"unbreakable begin","frame 0", "move 3", "wait 2", "frame 5", "move 3", "wait 1", 219 "frame 5", "move 3", "wait 2", "frame 10", "move 2", "wait 1", 220 "frame 10", "move 3", "wait 2", "frame 0", "move 2", "wait 1", 221 "frame 0", "move 3", "wait 2", "frame 15", "move 3", "wait 1", 222 "frame 15", "move 3", "wait 2", "frame 20", "move 2", "wait 1", 223 "frame 20", "move 3", "wait 2", "frame 0", "move 2", "unbreakable end", "wait 1",} 224local MageDeath = {"unbreakable begin", "frame 45", "wait 5", "frame 50", "wait 5", "frame 55", "wait 5", 225 "frame 60", "wait 5", "frame 65", "wait 5", "frame 70", "wait 5", 226 "frame 75", "wait 5", "frame 75", "unbreakable end", "wait 1",} 227 228DefineAnimations("animations-mage", { 229 Still = MageStill, 230 Move = MageMove, 231 Attack = {"unbreakable begin", "frame 25", "wait 5", "frame 30", "wait 5", 232 "frame 35", "attack", "sound mage-attack", "wait 7", 233 "frame 40", "wait 5", "frame 0", "wait 17", "frame 0", "unbreakable end", "wait 1",}, 234 SpellCast = {"unbreakable begin", "frame 25", "wait 5", "frame 30", "wait 5", 235 "frame 35", "attack", "wait 7", 236 "frame 40", "wait 5", "frame 0", "wait 17", "frame 0", "unbreakable end", "wait 1",}, 237 Death = MageDeath, 238}) 239 240DefineAnimations("animations-white-mage", { 241 Still = MageStill, 242 Move = MageMove, 243 Attack = {"unbreakable begin", "frame 25", "wait 5", "frame 30", "wait 5", 244 "frame 35", "attack", "sound khadgar-attack", "wait 7", 245 "frame 40", "wait 5", "frame 0", "wait 17", "frame 0", "unbreakable end", "wait 1",}, 246 SpellCast = {"unbreakable begin", "frame 25", "wait 5", "frame 30", "wait 5", 247 "frame 35", "attack", "wait 7", 248 "frame 40", "wait 5", "frame 0", "wait 17", "frame 0", "unbreakable end", "wait 1",}, 249 Death = MageDeath, 250}) 251 252 253DefineAnimations("animations-dwarves", { 254 Still = UnitStill, 255 Move = {"unbreakable begin", "frame 0", "move 3", "wait 2", "frame 10", "move 3", "wait 1", 256 "frame 10", "move 4", "wait 2", "frame 25", "move 3", "wait 1", 257 "frame 25", "move 3", "wait 2", "frame 40", "move 3", "wait 1", 258 "frame 40", "move 4", "wait 2", "frame 55", "move 3", "wait 1", 259 "frame 55", "move 3", "wait 1", "frame 0", "move 3", "unbreakable end", "wait 1",}, 260 Attack = {"unbreakable begin", "frame 15", "wait 3", 261 "frame 30", "attack", "sound dwarves-attack", "wait 5", 262 "frame 45", "wait 3", "frame 0", "wait 13", "frame 0", "unbreakable end", "wait 1",}, 263 SpellCast = {"unbreakable begin", "frame 15", "wait 3", 264 "frame 30", "attack", "wait 5", 265 "frame 45", "wait 3", "frame 0", "wait 13", "frame 0", "unbreakable end", "wait 1",}, 266 Death = {"unbreakable begin", "frame 5", "wait 3", "frame 20", "wait 3", "frame 35", "wait 3", 267 "frame 50", "wait 3", "frame 60", "wait 3", "frame 60", "unbreakable end", "wait 1",}, 268}) 269 270 271-- 272-- gryphon-rider and flying-angel 273-- 274 275local GryphonRiderStill = {"frame 0", "wait 6", "frame 5", "wait 6", "frame 10", "wait 6", 276 "frame 15", "wait 6",} 277local GryphonRiderMove = {"unbreakable begin", "frame 0", "wait 1", "frame 0", "move 3", "wait 1", 278 "frame 0", "move 3", "wait 1", "frame 5", "move 3", "wait 1", 279 "frame 5", "move 2", "wait 1", "frame 5", "move 3", "wait 1", 280 "frame 10", "move 3", "wait 1", "frame 10", "move 3", "wait 1", 281 "frame 10", "move 3", "wait 1", "frame 15", "move 3", "wait 1", 282 "frame 15", "move 3", "wait 1", "frame 0", "move 3", "unbreakable end", "wait 1",} 283local GryphonRiderDeath = {"unbreakable begin", "frame 35", "wait 5", "frame 40", "wait 5", "frame 45", "wait 5", 284 "frame 50", "wait 5", "frame 55", "wait 5", "frame 60", "wait 5", 285 "frame 60", "unbreakable end", "wait 1",} 286 287DefineAnimations("animations-gryphon-rider", { 288 Still = GryphonRiderStill, 289 Move = GryphonRiderMove, 290 Attack = {"unbreakable begin", "frame 0", "wait 6", "frame 5", "wait 6", 291 "frame 10", "wait 6", "frame 15", "wait 6", "frame 15", "wait 1", 292 "frame 20", "wait 6", "frame 25", "wait 6", 293 "frame 30", "attack", "sound gryphon-rider-attack", "wait 8", 294 "frame 0", "wait 6", "frame 5", "wait 6", "frame 10", "wait 6", 295 "frame 15", "wait 6", "frame 0", "wait 6", "frame 5", "wait 6", 296 "frame 10", "wait 6", "frame 15", "wait 6", "frame 0", "wait 6", 297 "frame 5", "wait 6", "frame 10", "wait 6", "frame 15", "wait 6", 298 "frame 0", "wait 6", "frame 5", "wait 6", "frame 10", "wait 6", 299 "frame 15", "wait 6", "frame 0", "wait 6", "frame 5", "wait 6", 300 "frame 10", "wait 6", "frame 15", "wait 6", "frame 0", "wait 6", 301 "frame 5", "wait 6", "frame 10", "wait 6", "frame 15", "wait 6", 302 "frame 0", "unbreakable end", "wait 1", }, 303 Death = GryphonRiderDeath, 304}) 305 306DefineAnimations("animations-flying-angel", { 307 Still = GryphonRiderStill, 308 Move = GryphonRiderMove, 309 Attack = {"unbreakable begin", "frame 0", "wait 6", "frame 5", "wait 6", 310 "frame 10", "wait 6", "frame 15", "wait 6", "frame 15", "wait 1", 311 "frame 20", "wait 6", "frame 25", "wait 6", 312 "frame 30", "attack", "sound kurdan-and-sky-ree-attack", "wait 8", 313 "frame 0", "wait 6", "frame 5", "wait 6", "frame 10", "wait 6", 314 "frame 15", "wait 6", "frame 0", "wait 6", "frame 5", "wait 6", 315 "frame 10", "wait 6", "frame 15", "wait 6", "frame 0", "wait 6", 316 "frame 5", "wait 6", "frame 10", "wait 6", "frame 15", "wait 6", 317 "frame 0", "wait 6", "frame 5", "wait 6", "frame 10", "wait 6", 318 "frame 15", "wait 6", "frame 0", "wait 6", "frame 5", "wait 6", 319 "frame 10", "wait 6", "frame 15", "wait 6", "frame 0", "wait 6", 320 "frame 5", "wait 6", "frame 10", "wait 6", "frame 15", "wait 6", 321 "frame 0", "unbreakable end", "wait 1", }, 322 Death = GryphonRiderDeath, 323}) 324 325 326DefineAnimations("animations-human-oil-tanker", { 327 Still = {"frame 0", "wait 4", "frame 0", "wait 1",}, 328 Move = {"unbreakable begin", "frame 0", "move 2", "wait 1", "frame 0", "move 2", "wait 1", 329 "frame 0", "move 2", "wait 1", "frame 0", "move 2", "wait 1", 330 "frame 0", "move 2", "wait 1", "frame 0", "move 2", "wait 1", 331 "frame 0", "move 2", "wait 1", "frame 0", "move 2", "wait 1", 332 "frame 0", "move 2", "wait 1", "frame 0", "move 2", "wait 1", 333 "frame 0", "move 2", "wait 1", "frame 0", "move 2", "wait 1", 334 "frame 0", "move 2", "wait 1", "frame 0", "move 2", "wait 1", 335 "frame 0", "move 2", "wait 1", "frame 0", "move 2", "unbreakable end", "wait 1",}, 336 Attack = {"unbreakable begin", "frame 0", "attack", "wait 30", 337 "frame 0", "wait 99", "frame 0", "unbreakable end", "wait 1",}, 338 Death = {"unbreakable begin", "frame 5", "wait 50", "frame 10", "wait 50", "frame 10", "unbreakable end", "wait 1",}, 339}) 340 341 342DefineAnimations("animations-human-transport", { 343 Still = {"frame 0", "wait 4", "frame 0", "wait 1",}, 344 Move = {"unbreakable begin", "frame 0", "move 2", "wait 1", "frame 0", "move 2", "wait 1", 345 "frame 0", "move 2", "wait 1", "frame 0", "move 2", "wait 1", 346 "frame 0", "move 2", "wait 1", "frame 0", "move 2", "wait 1", 347 "frame 0", "move 2", "wait 1", "frame 0", "move 2", "wait 1", 348 "frame 0", "move 2", "wait 1", "frame 0", "move 2", "wait 1", 349 "frame 0", "move 2", "wait 1", "frame 0", "move 2", "wait 1", 350 "frame 0", "move 2", "wait 1", "frame 0", "move 2", "wait 1", 351 "frame 0", "move 2", "wait 1", "frame 0", "move 2", "unbreakable end", "wait 1",}, 352 Attack = {"unbreakable begin", "frame 0", "attack", "wait 119", 353 "frame 0", "unbreakable end", "wait 1",}, 354 Death = {"unbreakable begin", "frame 5", "wait 50", "frame 10", "wait 50", "frame 10", "unbreakable end", "wait 1",}, 355}) 356 357 358DefineAnimations("animations-elven-destroyer", { 359 Still = {"frame 0", "wait 4", "frame 0", "wait 1", }, 360 Move = {"unbreakable begin", "frame 0", "move 2", "wait 1", "frame 0", "move 2", "wait 1", 361 "frame 0", "move 2", "wait 1", "frame 0", "move 2", "wait 1", 362 "frame 0", "move 2", "wait 1", "frame 0", "move 2", "wait 1", 363 "frame 0", "move 2", "wait 1", "frame 0", "move 2", "wait 1", 364 "frame 0", "move 2", "wait 1", "frame 0", "move 2", "wait 1", 365 "frame 0", "move 2", "wait 1", "frame 0", "move 2", "wait 1", 366 "frame 0", "move 2", "wait 1", "frame 0", "move 2", "wait 1", 367 "frame 0", "move 2", "wait 1", "frame 0", "move 2", "unbreakable end", "wait 1",}, 368 Attack = {"unbreakable begin", "frame 0", "attack", "sound elven-destroyer-attack", "wait 119", 369 "frame 0", "unbreakable end", "wait 1",}, 370 Death = {"unbreakable begin", "frame 5", "wait 50", "frame 10", "wait 50", "frame 10", "unbreakable end", "wait 1",}, 371}) 372 373 374DefineAnimations("animations-battleship", { 375 Still = {"frame 0", "wait 4", "frame 0", "wait 1", }, 376 Move = {"unbreakable begin", "frame 0", "move 2", "wait 2", "frame 0", "move 2", "wait 2", 377 "frame 0", "move 2", "wait 1", "frame 0", "move 2", "wait 2", 378 "frame 0", "move 2", "wait 2", "frame 0", "move 2", "wait 1", 379 "frame 0", "move 2", "wait 2", "frame 0", "move 2", "wait 2", 380 "frame 0", "move 2", "wait 1", "frame 0", "move 2", "wait 2", 381 "frame 0", "move 2", "wait 2", "frame 0", "move 2", "wait 1", 382 "frame 0", "move 2", "wait 2", "frame 0", "move 2", "wait 1", 383 "frame 0", "move 2", "wait 2", "frame 0", "move 2", "unbreakable end", "wait 1",}, 384 Attack = {"unbreakable begin", "frame 0", "attack", "sound battleship-attack", "wait 127", 385 "frame 0", "wait 102", "frame 0", "unbreakable end", "wait 1",}, 386 Death = {"unbreakable begin", "frame 5", "wait 50", "frame 10", "wait 50", "frame 10", "unbreakable end", "wait 1",}, 387}) 388 389 390DefineAnimations("animations-gnomish-submarine", { 391 Still = {"frame 0", "wait 4", "frame 0", "wait 1",}, 392 Move = {"unbreakable begin", "frame 0", "move 2", "wait 2", "frame 0", "move 2", "wait 1", 393 "frame 0", "move 2", "wait 1", "frame 0", "move 2", "wait 2", 394 "frame 0", "move 2", "wait 1", "frame 0", "move 2", "wait 1", 395 "frame 0", "move 2", "wait 2", "frame 0", "move 2", "wait 1", 396 "frame 0", "move 2", "wait 1", "frame 0", "move 2", "wait 2", 397 "frame 0", "move 2", "wait 1", "frame 0", "move 2", "wait 1", 398 "frame 0", "move 2", "wait 1", "frame 0", "move 2", "wait 1", 399 "frame 0", "move 2", "wait 2", "frame 0", "move 2", "unbreakable end", "wait 1",}, 400 Attack = {"unbreakable begin", "frame 5", "wait 10", "frame 10", "wait 25", 401 "frame 10", "attack", "sound gnomish-submarine-attack", "wait 25", 402 "frame 5", "wait 25", "frame 0", "wait 29", "frame 0", "unbreakable end", "wait 1",}, 403 Death = {"unbreakable begin", "frame 0", "unbreakable end", "wait 1",}, 404}) 405 406 407DefineAnimations("animations-balloon", { 408 Still = {"frame 0", "wait 1", "frame 5", "wait 1", "frame 5", "wait 1", 409 "frame 0", "wait 1", }, 410 Move = {"unbreakable begin", "frame 5", "move 4", "wait 1", "frame 5", "move 3", "wait 1", 411 "frame 5", "move 3", "wait 1", "frame 0", "move 3", "wait 1", 412 "frame 0", "move 3", "wait 1", "frame 5", "move 4", "wait 1", 413 "frame 5", "move 3", "wait 1", "frame 5", "move 3", "wait 1", 414 "frame 0", "move 3", "wait 1", "frame 0", "move 3", "unbreakable end", "wait 1", }, 415 Attack = {"unbreakable begin", "frame 0", "unbreakable end", "wait 1", }, 416 Death = {"unbreakable begin", "frame 0", "unbreakable end", "wait 1", }, 417}) 418 419 420DefineAnimations("animations-human-guard-tower", { 421 Still = {"frame 0", "wait 4", "frame 0", "wait 1",}, 422 Attack = {"unbreakable begin", "frame 0", "attack", "wait 59", 423 "frame 0", "unbreakable end", "wait 1",}, 424}) 425 426-------- 427-- Cannon Tower, Cannon Tower 428DefineAnimations("animations-human-cannon-tower", { 429 Still = {"frame 0", "wait 4", "frame 0", "wait 1",}, 430 Attack = {"unbreakable begin", "frame 0", "attack", "wait 150", 431 "frame 0", "unbreakable end", "wait 1",}, 432}) 433 434