mirror of
https://github.com/Sneed-Group/Poodletooth-iLand
synced 2024-10-31 00:37:54 +00:00
Add Cigar Smoke Cog attack
This commit is contained in:
parent
1e1a7e25fc
commit
0c4d6feffa
7 changed files with 207 additions and 35 deletions
|
@ -91,6 +91,8 @@ def createParticleEffect(name = None, file = None, numParticles = None, color =
|
||||||
return loadParticleFile('shred.ptf')
|
return loadParticleFile('shred.ptf')
|
||||||
elif name == 'Smile':
|
elif name == 'Smile':
|
||||||
return loadParticleFile('smile.ptf')
|
return loadParticleFile('smile.ptf')
|
||||||
|
elif name == 'Smoke':
|
||||||
|
return loadParticleFile('smoke.ptf')
|
||||||
elif name == 'SpriteFiredFlecks':
|
elif name == 'SpriteFiredFlecks':
|
||||||
return loadParticleFile('spriteFiredFlecks.ptf')
|
return loadParticleFile('spriteFiredFlecks.ptf')
|
||||||
elif name == 'Synergy':
|
elif name == 'Synergy':
|
||||||
|
|
|
@ -370,6 +370,8 @@ def chooseSuitShot(attack, attackDuration):
|
||||||
camTrack.append(defaultCamera(openShotDuration=2.9))
|
camTrack.append(defaultCamera(openShotDuration=2.9))
|
||||||
elif name == CHOMP:
|
elif name == CHOMP:
|
||||||
camTrack.append(defaultCamera(openShotDuration=2.8))
|
camTrack.append(defaultCamera(openShotDuration=2.8))
|
||||||
|
elif name == CIGAR_SMOKE:
|
||||||
|
camTrack.append(defaultCamera(openShotDuration=3.0))
|
||||||
elif name == CLIPON_TIE:
|
elif name == CLIPON_TIE:
|
||||||
camTrack.append(defaultCamera(openShotDuration=3.3))
|
camTrack.append(defaultCamera(openShotDuration=3.3))
|
||||||
elif name == CRUNCH:
|
elif name == CRUNCH:
|
||||||
|
|
|
@ -136,7 +136,7 @@ def doSuitAttack(attack):
|
||||||
elif name == CHOMP:
|
elif name == CHOMP:
|
||||||
suitTrack = doChomp(attack)
|
suitTrack = doChomp(attack)
|
||||||
elif name == CIGAR_SMOKE:
|
elif name == CIGAR_SMOKE:
|
||||||
suitTrack = doDefault(attack)
|
suitTrack = doCigarSmoke(attack)
|
||||||
elif name == CLIPON_TIE:
|
elif name == CLIPON_TIE:
|
||||||
suitTrack = doClipOnTie(attack)
|
suitTrack = doClipOnTie(attack)
|
||||||
elif name == CRUNCH:
|
elif name == CRUNCH:
|
||||||
|
@ -2249,6 +2249,60 @@ def doPickPocket(attack):
|
||||||
return multiTrackList
|
return multiTrackList
|
||||||
|
|
||||||
|
|
||||||
|
def doCigarSmoke(attack):
|
||||||
|
suit = attack['suit']
|
||||||
|
battle = attack['battle']
|
||||||
|
target = attack['target']
|
||||||
|
toon = target['toon']
|
||||||
|
dmg = target['hp']
|
||||||
|
BattleParticles.loadParticles()
|
||||||
|
smoke = BattleParticles.createParticleEffect('Smoke')
|
||||||
|
BattleParticles.setEffectTexture(smoke, 'snow-particle')
|
||||||
|
cigar = globalPropPool.getProp('cigar')
|
||||||
|
suitTrack = getSuitTrack(attack)
|
||||||
|
cigarPosPoints = [Point3(-0.05, -0.2, -0.25), VBase3(180.0, 0.0, 0.0)]
|
||||||
|
cigarPropTrack = getPropTrack(cigar, suit.getRightHand(), cigarPosPoints, 0.6, 3.6, scaleUpPoint=Point3(6.0, 6.0, 6.0))
|
||||||
|
toonTrack = getToonTrack(attack, 3.55, ['cringe'], 3.0, ['sidestep'])
|
||||||
|
multiTrackList = Parallel(suitTrack, toonTrack)
|
||||||
|
smokeTrack = getPartTrack(smoke, 3.45, 1.5, [smoke, suit, 0])
|
||||||
|
multiTrackList.append(cigarPropTrack)
|
||||||
|
multiTrackList.append(smokeTrack)
|
||||||
|
|
||||||
|
def changeColor(parts):
|
||||||
|
track = Parallel()
|
||||||
|
for partNum in xrange(0, parts.getNumPaths()):
|
||||||
|
nextPart = parts.getPath(partNum)
|
||||||
|
track.append(Func(nextPart.setColorScale, Vec4(0, 0, 0, 1)))
|
||||||
|
|
||||||
|
return track
|
||||||
|
|
||||||
|
def resetColor(parts):
|
||||||
|
track = Parallel()
|
||||||
|
for partNum in xrange(0, parts.getNumPaths()):
|
||||||
|
nextPart = parts.getPath(partNum)
|
||||||
|
track.append(Func(nextPart.clearColorScale))
|
||||||
|
|
||||||
|
return track
|
||||||
|
|
||||||
|
if dmg > 0:
|
||||||
|
headParts = toon.getHeadParts()
|
||||||
|
torsoParts = toon.getTorsoParts()
|
||||||
|
legsParts = toon.getLegsParts()
|
||||||
|
colorTrack = Sequence()
|
||||||
|
colorTrack.append(Wait(3.6))
|
||||||
|
colorTrack.append(Func(battle.movie.needRestoreColor))
|
||||||
|
colorTrack.append(changeColor(headParts))
|
||||||
|
colorTrack.append(changeColor(torsoParts))
|
||||||
|
colorTrack.append(changeColor(legsParts))
|
||||||
|
colorTrack.append(Wait(2.2))
|
||||||
|
colorTrack.append(resetColor(headParts))
|
||||||
|
colorTrack.append(resetColor(torsoParts))
|
||||||
|
colorTrack.append(resetColor(legsParts))
|
||||||
|
colorTrack.append(Func(battle.movie.clearRestoreColor))
|
||||||
|
multiTrackList.append(colorTrack)
|
||||||
|
return multiTrackList
|
||||||
|
|
||||||
|
|
||||||
def doFilibuster(attack):
|
def doFilibuster(attack):
|
||||||
suit = attack['suit']
|
suit = attack['suit']
|
||||||
target = attack['target']
|
target = attack['target']
|
||||||
|
|
|
@ -4836,6 +4836,69 @@ def snowdisk(self):
|
||||||
self.addForceGroup(f0)
|
self.addForceGroup(f0)
|
||||||
|
|
||||||
|
|
||||||
|
@particle
|
||||||
|
def smoke(self):
|
||||||
|
self.reset()
|
||||||
|
self.setPos(0.000, 3.500, 5.100)
|
||||||
|
self.setHpr(-180.000, 80.000, -180.000)
|
||||||
|
self.setScale(0.0250, 0.0250, 0.0250)
|
||||||
|
p0 = Particles.Particles('particles-1')
|
||||||
|
|
||||||
|
p0.setFactory("PointParticleFactory")
|
||||||
|
p0.setRenderer("SpriteParticleRenderer")
|
||||||
|
p0.setEmitter("SphereVolumeEmitter")
|
||||||
|
p0.setPoolSize(50)
|
||||||
|
p0.setBirthRate(0.0300)
|
||||||
|
p0.setLitterSize(1)
|
||||||
|
p0.setLitterSpread(1)
|
||||||
|
p0.setSystemLifespan(0.0000)
|
||||||
|
p0.setLocalVelocityFlag(1)
|
||||||
|
p0.setSystemGrowsOlderFlag(0)
|
||||||
|
|
||||||
|
p0.factory.setLifespanBase(1.6000)
|
||||||
|
p0.factory.setLifespanSpread(0.0000)
|
||||||
|
p0.factory.setMassBase(1.0000)
|
||||||
|
p0.factory.setMassSpread(0.0000)
|
||||||
|
p0.factory.setTerminalVelocityBase(400.0000)
|
||||||
|
p0.factory.setTerminalVelocitySpread(0.0000)
|
||||||
|
|
||||||
|
p0.renderer.setAlphaMode(BaseParticleRenderer.PRALPHAUSER)
|
||||||
|
p0.renderer.setUserAlpha(1.00)
|
||||||
|
|
||||||
|
p0.renderer.setIgnoreScale(1)
|
||||||
|
p0.renderer.addTextureFromFile('phase_6/maps/tt_t_efx_ext_smoke_a.rgb')
|
||||||
|
p0.renderer.setColor(Vec4(0.10, 0.10, 0.10, 0.10))
|
||||||
|
p0.renderer.setXScaleFlag(1)
|
||||||
|
p0.renderer.setYScaleFlag(1)
|
||||||
|
p0.renderer.setAnimAngleFlag(0)
|
||||||
|
p0.renderer.setInitialXScale(0.6)
|
||||||
|
p0.renderer.setFinalXScale(0.3)
|
||||||
|
p0.renderer.setInitialYScale(0.6)
|
||||||
|
p0.renderer.setFinalYScale(0.3)
|
||||||
|
p0.renderer.setNonanimatedTheta(0.0000)
|
||||||
|
p0.renderer.setAlphaBlendMethod(BaseParticleRenderer.PPBLENDLINEAR)
|
||||||
|
p0.renderer.setAlphaDisable(0)
|
||||||
|
|
||||||
|
p0.emitter.setEmissionType(BaseParticleEmitter.ETRADIATE)
|
||||||
|
p0.emitter.setAmplitude(2.0000)
|
||||||
|
p0.emitter.setAmplitudeSpread(0.0000)
|
||||||
|
p0.emitter.setOffsetForce(Vec3(0.0000, 0.0000, -4.0000))
|
||||||
|
p0.emitter.setExplicitLaunchVector(Vec3(1.0000, 0.0000, 0.0000))
|
||||||
|
p0.emitter.setRadiateOrigin(Point3(0.0000, 0.0000, 0.0000))
|
||||||
|
|
||||||
|
p0.emitter.setRadius(0.0200)
|
||||||
|
self.addParticles(p0)
|
||||||
|
f0 = ForceGroup.ForceGroup('forces')
|
||||||
|
|
||||||
|
force0 = LinearSinkForce(Point3(0.0000, 0.0000, -4.0000), LinearDistanceForce.FTONEOVERR, 1.0000, 2.5308, 1)
|
||||||
|
force0.setActive(1)
|
||||||
|
f0.addForce(force0)
|
||||||
|
force1 = LinearVectorForce(Vec3(0.0000, -5.0000, 0.0000), 1.0000, 0)
|
||||||
|
force1.setActive(1)
|
||||||
|
f0.addForce(force1)
|
||||||
|
self.addForceGroup(f0)
|
||||||
|
|
||||||
|
|
||||||
@particle
|
@particle
|
||||||
def bossCogFrontAttack(self):
|
def bossCogFrontAttack(self):
|
||||||
self.reset()
|
self.reset()
|
||||||
|
|
|
@ -1471,11 +1471,11 @@ SuitAttributes = {'f': {'name': TTLocalizer.SuitFlunky,
|
||||||
75,
|
75,
|
||||||
80,
|
80,
|
||||||
90),
|
90),
|
||||||
(25,
|
(20,
|
||||||
25,
|
20,
|
||||||
25,
|
20,
|
||||||
25,
|
20,
|
||||||
25)),
|
20)),
|
||||||
('PowerTrip',
|
('PowerTrip',
|
||||||
(10,
|
(10,
|
||||||
13,
|
13,
|
||||||
|
@ -1503,11 +1503,27 @@ SuitAttributes = {'f': {'name': TTLocalizer.SuitFlunky,
|
||||||
75,
|
75,
|
||||||
85,
|
85,
|
||||||
95),
|
95),
|
||||||
(30,
|
(20,
|
||||||
30,
|
20,
|
||||||
30,
|
20,
|
||||||
30,
|
20,
|
||||||
30)),
|
20)),
|
||||||
|
('CigarSmoke',
|
||||||
|
(10,
|
||||||
|
12,
|
||||||
|
15,
|
||||||
|
18,
|
||||||
|
20),
|
||||||
|
(55,
|
||||||
|
65,
|
||||||
|
75,
|
||||||
|
85,
|
||||||
|
95),
|
||||||
|
(15,
|
||||||
|
15,
|
||||||
|
15,
|
||||||
|
15,
|
||||||
|
15)),
|
||||||
('TeeOff',
|
('TeeOff',
|
||||||
(8,
|
(8,
|
||||||
9,
|
9,
|
||||||
|
@ -2210,11 +2226,27 @@ SuitAttributes = {'f': {'name': TTLocalizer.SuitFlunky,
|
||||||
70,
|
70,
|
||||||
75,
|
75,
|
||||||
80),
|
80),
|
||||||
(50,
|
(33,
|
||||||
50,
|
33,
|
||||||
50,
|
33,
|
||||||
50,
|
33,
|
||||||
50)), ('TeeOff',
|
33)),
|
||||||
|
('CigarSmoke',
|
||||||
|
(10,
|
||||||
|
12,
|
||||||
|
15,
|
||||||
|
18,
|
||||||
|
20),
|
||||||
|
(55,
|
||||||
|
65,
|
||||||
|
75,
|
||||||
|
85,
|
||||||
|
95),
|
||||||
|
(33,
|
||||||
|
33,
|
||||||
|
33,
|
||||||
|
33,
|
||||||
|
33)), ('TeeOff',
|
||||||
(10,
|
(10,
|
||||||
12,
|
12,
|
||||||
14,
|
14,
|
||||||
|
@ -2225,11 +2257,11 @@ SuitAttributes = {'f': {'name': TTLocalizer.SuitFlunky,
|
||||||
75,
|
75,
|
||||||
85,
|
85,
|
||||||
90),
|
90),
|
||||||
(50,
|
(33,
|
||||||
50,
|
33,
|
||||||
50,
|
33,
|
||||||
50,
|
33,
|
||||||
50)))},
|
33)))},
|
||||||
'bf': {'name': TTLocalizer.SuitBottomFeeder,
|
'bf': {'name': TTLocalizer.SuitBottomFeeder,
|
||||||
'singularname': TTLocalizer.SuitBottomFeederS,
|
'singularname': TTLocalizer.SuitBottomFeederS,
|
||||||
'pluralname': TTLocalizer.SuitBottomFeederP,
|
'pluralname': TTLocalizer.SuitBottomFeederP,
|
||||||
|
@ -2649,11 +2681,11 @@ SuitAttributes = {'f': {'name': TTLocalizer.SuitFlunky,
|
||||||
80,
|
80,
|
||||||
85,
|
85,
|
||||||
90),
|
90),
|
||||||
(40,
|
(35,
|
||||||
40,
|
35,
|
||||||
40,
|
35,
|
||||||
40,
|
35,
|
||||||
40)), ('RestrainingOrder',
|
35)), ('RestrainingOrder',
|
||||||
(6,
|
(6,
|
||||||
7,
|
7,
|
||||||
9,
|
9,
|
||||||
|
@ -2668,7 +2700,22 @@ SuitAttributes = {'f': {'name': TTLocalizer.SuitFlunky,
|
||||||
25,
|
25,
|
||||||
25,
|
25,
|
||||||
25,
|
25,
|
||||||
25)), ('FingerWag',
|
25)), ('CigarSmoke',
|
||||||
|
(10,
|
||||||
|
12,
|
||||||
|
15,
|
||||||
|
18,
|
||||||
|
20),
|
||||||
|
(55,
|
||||||
|
65,
|
||||||
|
75,
|
||||||
|
85,
|
||||||
|
95),
|
||||||
|
(15,
|
||||||
|
15,
|
||||||
|
15,
|
||||||
|
15,
|
||||||
|
15)), ('FingerWag',
|
||||||
(5,
|
(5,
|
||||||
6,
|
6,
|
||||||
7,
|
7,
|
||||||
|
@ -2679,11 +2726,11 @@ SuitAttributes = {'f': {'name': TTLocalizer.SuitFlunky,
|
||||||
65,
|
65,
|
||||||
75,
|
75,
|
||||||
80),
|
80),
|
||||||
(35,
|
(25,
|
||||||
35,
|
25,
|
||||||
35,
|
25,
|
||||||
35,
|
25,
|
||||||
35)))},
|
25)))},
|
||||||
'sd': {'name': TTLocalizer.SuitSpinDoctor,
|
'sd': {'name': TTLocalizer.SuitSpinDoctor,
|
||||||
'singularname': TTLocalizer.SuitSpinDoctorS,
|
'singularname': TTLocalizer.SuitSpinDoctorS,
|
||||||
'pluralname': TTLocalizer.SuitSpinDoctorP,
|
'pluralname': TTLocalizer.SuitSpinDoctorP,
|
||||||
|
|
|
@ -106,7 +106,8 @@ tf = (('phone', 'phone', 5),
|
||||||
m = (('speak', 'speak', 5),
|
m = (('speak', 'speak', 5),
|
||||||
('magic2', 'magic2', 5),
|
('magic2', 'magic2', 5),
|
||||||
('magic1', 'magic1', 5),
|
('magic1', 'magic1', 5),
|
||||||
('golf-club-swing', 'golf-club-swing', 5))
|
('golf-club-swing', 'golf-club-swing', 5),
|
||||||
|
('cigar-smoke', 'cigar-smoke', 8))
|
||||||
mh = (('magic1', 'magic1', 5),
|
mh = (('magic1', 'magic1', 5),
|
||||||
('smile', 'smile', 5),
|
('smile', 'smile', 5),
|
||||||
('golf-club-swing', 'golf-club-swing', 5),
|
('golf-club-swing', 'golf-club-swing', 5),
|
||||||
|
@ -121,7 +122,7 @@ bc = (('phone', 'phone', 5), ('hold-pencil', 'hold-pencil', 5))
|
||||||
nc = (('phone', 'phone', 5), ('throw-object', 'throw-object', 5))
|
nc = (('phone', 'phone', 5), ('throw-object', 'throw-object', 5))
|
||||||
mb = (('magic1', 'magic1', 5), ('throw-paper', 'throw-paper', 3.5))
|
mb = (('magic1', 'magic1', 5), ('throw-paper', 'throw-paper', 3.5))
|
||||||
ls = (('throw-paper', 'throw-paper', 5), ('throw-object', 'throw-object', 5), ('hold-pencil', 'hold-pencil', 5))
|
ls = (('throw-paper', 'throw-paper', 5), ('throw-object', 'throw-object', 5), ('hold-pencil', 'hold-pencil', 5))
|
||||||
rb = (('glower', 'glower', 5), ('magic1', 'magic1', 5), ('golf-club-swing', 'golf-club-swing', 5))
|
rb = (('glower', 'glower', 5), ('cigar-smoke', 'cigar-smoke', 8), ('magic1', 'magic1', 5), ('golf-club-swing', 'golf-club-swing', 5))
|
||||||
bf = (('pickpocket', 'pickpocket', 5),
|
bf = (('pickpocket', 'pickpocket', 5),
|
||||||
('rubber-stamp', 'rubber-stamp', 5),
|
('rubber-stamp', 'rubber-stamp', 5),
|
||||||
('shredder', 'shredder', 3.5),
|
('shredder', 'shredder', 3.5),
|
||||||
|
@ -140,7 +141,7 @@ ac = (('throw-object', 'throw-object', 5),
|
||||||
('stomp', 'stomp', 5),
|
('stomp', 'stomp', 5),
|
||||||
('phone', 'phone', 5),
|
('phone', 'phone', 5),
|
||||||
('throw-paper', 'throw-paper', 5))
|
('throw-paper', 'throw-paper', 5))
|
||||||
bs = (('magic1', 'magic1', 5), ('throw-paper', 'throw-paper', 5), ('finger-wag', 'fingerwag', 5))
|
bs = (('magic1', 'magic1', 5), ('cigar-smoke', 'cigar-smoke', 8), ('throw-paper', 'throw-paper', 5), ('finger-wag', 'fingerwag', 5))
|
||||||
sd = (('magic2', 'magic2', 5),
|
sd = (('magic2', 'magic2', 5),
|
||||||
('quick-jump', 'jump', 6),
|
('quick-jump', 'jump', 6),
|
||||||
('stomp', 'stomp', 5),
|
('stomp', 'stomp', 5),
|
||||||
|
|
|
@ -2499,6 +2499,9 @@ SuitAttackTaunts = {'Audit': ["I believe your books don't balance.",
|
||||||
"Why don't you chomp on this?",
|
"Why don't you chomp on this?",
|
||||||
"I'm going to have you for dinner.",
|
"I'm going to have you for dinner.",
|
||||||
'I love to feed on Toons!'],
|
'I love to feed on Toons!'],
|
||||||
|
'CigarSmoke': ['Gentlemen.',
|
||||||
|
'I need a good smoke.',
|
||||||
|
'Smoking is a dirty habit.'],
|
||||||
'ClipOnTie': ['Better dress for our meeting.',
|
'ClipOnTie': ['Better dress for our meeting.',
|
||||||
"You can't go OUT without your tie.",
|
"You can't go OUT without your tie.",
|
||||||
'The best dressed ' + Cogs + ' wear them.',
|
'The best dressed ' + Cogs + ' wear them.',
|
||||||
|
|
Loading…
Reference in a new issue