Re: [ASSETS] LOG 1 MONSTERS - Enhanced Edition
Posted: Thu Nov 27, 2014 5:30 pm
Tentacles. I went back to the LoG1 source and tried to clean a few things up. Thom and I were overthinking it.
Code: Select all
---
defineAnimationEvent{
animation = "assets/animations/monsters/drainage_tentacles/drainage_tentacles_attack.fbx",
event = "attack",
frame = 15,
}
defineAnimationEvent{
animation = "assets/animations/monsters/drainage_tentacles/drainage_tentacles_attack.fbx",
event = "attack",
frame = 20,
}
defineAnimationEvent{
animation = "assets/animations/monsters/drainage_tentacles/drainage_tentacles_attack.fbx",
event = "attack",
frame = 25,
}
defineAnimationEvent{
animation = "assets/animations/monsters/drainage_tentacles/drainage_tentacles_attack_left.fbx",
event = "attack",
frame = 12,
}
defineAnimationEvent{
animation = "assets/animations/monsters/drainage_tentacles/drainage_tentacles_attack_left.fbx",
event = "attack",
frame = 18,
}
defineAnimationEvent{
animation = "assets/animations/monsters/drainage_tentacles/drainage_tentacles_attack_left.fbx",
event = "attack",
frame = 24,
}
defineAnimationEvent{
animation = "assets/animations/monsters/drainage_tentacles/drainage_tentacles_attack_right.fbx",
event = "attack",
frame = 11,
}
defineAnimationEvent{
animation = "assets/animations/monsters/drainage_tentacles/drainage_tentacles_attack_right.fbx",
event = "attack",
frame = 18,
}
defineAnimationEvent{
animation = "assets/animations/monsters/drainage_tentacles/drainage_tentacles_attack_right.fbx",
event = "attack",
frame = 25,
}
defineAnimationEvent{
animation = "assets/animations/monsters/drainage_tentacles/drainage_tentacles_attack_back.fbx",
event = "attack",
frame = 12,
}
defineAnimationEvent{
animation = "assets/animations/monsters/drainage_tentacles/drainage_tentacles_attack_back.fbx",
event = "attack",
frame = 18,
}
defineAnimationEvent{
animation = "assets/animations/monsters/drainage_tentacles/drainage_tentacles_attack_back.fbx",
event = "attack",
frame = 26,
}
---
defineMaterial{
name = "drainage_tentacles",
diffuseMap = "assets/textures/monsters/drain_tentacles_dif.tga",
specularMap = "assets/textures/monsters/drain_tentacles_spec.tga",
normalMap = "assets/textures/monsters/drain_tentacles_normal.tga",
doubleSided = false,
lighting = true,
alphaTest = false,
blendMode = "Opaque",
textureAddressMode = "Wrap",
glossiness = 35,
depthBias = 0,
}
---
defineSound{
name = "tentacles_attack",
filename = "assets/samples/monsters/tentacles_attack_01.wav",
loop = false,
volume = 1,
minDistance = 1,
maxDistance = 10,
}
defineSound{
name = "tentacles_walk",
filename = "assets/samples/monsters/tentacles_walk_01.wav",
loop = false,
volume = 1,
minDistance = 1,
maxDistance = 10,
}
defineSound{
name = "tentacles_rise",
filename = "assets/samples/monsters/tentacles_rise_01.wav",
loop = false,
volume = 1,
minDistance = 1,
maxDistance = 10,
}
defineSound{
name = "tentacles_retreat",
filename = "assets/samples/monsters/tentacles_retreat_01.wav",
loop = false,
volume = 1,
minDistance = 1,
maxDistance = 10,
}
defineSound{
name = "tentacles_hit",
filename = {
"assets/samples/weapons/hit_bone_01.wav",
"assets/samples/weapons/hit_bone_02.wav",
"assets/samples/weapons/hit_flesh_01.wav",
},
loop = false,
volume = 1,
minDistance = 1,
maxDistance = 10,
}
defineSound{
name = "tentacles_die",
filename = "assets/samples/monsters/tentacles_die_01.wav",
loop = false,
volume = 1,
minDistance = 1,
maxDistance = 10,
}
---
defineObject{
name = "tentacles",
baseObject = "base_monster",
components = {
{
name = "model",
class = "Model",
model = "assets/models/monsters/drainage_tentacles.fbx",
storeSourceData = true,
},
{
class = "Animation",
name = "animation",
currentLevelOnly = true,
animations = {
idle = "assets/animations/monsters/drainage_tentacles/drainage_tentacles_idle.fbx",
turnLeft = "assets/animations/monsters/drainage_tentacles/drainage_tentacles_turn_left.fbx",
turnRight = "assets/animations/monsters/drainage_tentacles/drainage_tentacles_turn_right.fbx",
hide = "assets/animations/monsters/drainage_tentacles/drainage_tentacles_hide.fbx",
reveal = "assets/animations/monsters/drainage_tentacles/drainage_tentacles_raise.fbx",
attack = "assets/animations/monsters/drainage_tentacles/drainage_tentacles_attack.fbx",
attackBack = "assets/animations/monsters/drainage_tentacles/drainage_tentacles_attack_back.fbx",
attackLeft = "assets/animations/monsters/drainage_tentacles/drainage_tentacles_attack_left.fbx",
attackRight = "assets/animations/monsters/drainage_tentacles/drainage_tentacles_attack_right.fbx",
getHitFrontLeft = "assets/animations/monsters/drainage_tentacles/drainage_tentacles_get_hit_front_left.fbx",
getHitFrontRight = "assets/animations/monsters/drainage_tentacles/drainage_tentacles_get_hit_front_right.fbx",
getHitBack = "assets/animations/monsters/drainage_tentacles/drainage_tentacles_get_hit_front_left.fbx",
getHitLeft = "assets/animations/monsters/drainage_tentacles/drainage_tentacles_get_hit_front_right.fbx",
getHitRight = "assets/animations/monsters/drainage_tentacles/drainage_tentacles_get_hit_front_left.fbx",
fall = "assets/animations/monsters/drainage_tentacles/drainage_tentacles_get_hit_front_left.fbx",
},
},
{
class = "Monster",
meshName = "drainage_tentacles_mesh",
level=1,
health = 420,
exp = 320,
traits = { "animal" },
immunities = { "assassination", "backstab" },
hitEffect = "hit_goo",
capsuleHeight = 1,
capsuleRadius = 0.1,
hitSound = "tentacles_hit",
dieSound = "tentacles_die",
},
{
class = "TentacleBrain",
name = "brain",
sight = 2.5,
allAroundSight = true,
},
{
class = "MonsterMove",
name = "move",
sound = "tentacles_walk",
},
{
class = "MonsterTurn",
name = "turn",
animations = { "turnLeft", "turnRight" },
sound = "tentacles_walk",
},
{
class = "TentacleHide",
name = "hide"
},
{
class = "MonsterAttack",
name = "basicAttack",
sound = "tentacles_attack",
impactSound = "tentacles_hit",
accuracy = 15,
cooldown = 3,
attackPower = 25,
animationSpeed = 1,
animations = { "attack", "attackBack", "attackLeft", "attackRight" },
onDealDamage = function(self, champion, damage)
if math.random() <= 0.2 then
champion:setConditionValue("paralyzed", 10)
end
end,
},
},
}