|
制作DJ的格斗
这里是DJ的行为脚本,你可以看到它非常类示Karin的行为脚本。这次我去掉了大量的注释,因此你看看能领会到什么。.把这些代码作为行为并拖放到DJ所在的精灵通道7上。
property mycounter
property myQlist
property spritenum
property health
on beginsprite me
sprite(spritenum).mycounter = 0
sprite(spritenum).myqlist = [#blank,#blank]
sprite(spritenum).health = 200
end
---recive events
on punch me
if sprite(spritenum).myQlist[1] = #blank then
sprite(spritenum).myQlist[1] = #punch
sprite(spritenum).mycounter = 0
else
sprite(spritenum).myQlist[2] = #punch
end if
end
on kick me
if sprite(spritenum).myQlist[1] = #blank then
sprite(spritenum).myQlist[1] = #kick
sprite(spritenum).mycounter = 0
else
sprite(spritenum).myQlist[2] = #kick
end if
end
on left me
if sprite(spritenum).myQlist[1] = #blank then
sprite(spritenum).myQlist[1] = #left
sprite(spritenum).mycounter = 0
else
sprite(spritenum).myQlist[2] = #left
end if
end
on right me
if sprite(spritenum).myQlist[1] = #blank then
sprite(spritenum).myQlist[1] = #right
sprite(spritenum).mycounter = 0
else
sprite(spritenum).myQlist[2] = #right
end if
end
on exitframe me
--this is its frame tikker
---puts in the next move
--animation
case sprite(spritenum).myQlist[1] of
#blank:
a = (1) + sprite(spritenum).mycounter mod 8
sprite(spritenum).member = (member a of castlib("DJ"))
sprite(spritenum).mycounter = sprite(spritenum).mycounter + 1
if sprite(spritenum).mycounter/8 = 1 then
sprite(spritenum).mycounter = 0
--shift list
sprite(spritenum).myqlist[1] = sprite(spritenum).myqlist[2]
sprite(spritenum).myqlist[2] = #blank
end if
#punch:
a = (16) + sprite(spritenum).mycounter mod 8
sprite(spritenum).member = (member a of castlib("DJ"))
sprite(spritenum).mycounter = sprite(spritenum).mycounter + 1
if sprite(spritenum).mycounter/8 = 1 then
sprite(spritenum).mycounter = 0
--shift list
sprite(spritenum).myqlist[1] = sprite(spritenum).myqlist[2]
sprite(spritenum).myqlist[2] = #blank
end if
--collision
if sprite(spritenum).mycounter/2.0 = 1 then
if sprite 7 intersects 4 then
sprite(4).health = sprite(4).health - 10
sprite(4).locz = 8
sprite(spritenum).locz = 9
end if
end if
#kick:
a = (9) + sprite(spritenum).mycounter mod 7
sprite(spritenum).member = (member a of castlib("DJ"))
sprite(spritenum).mycounter = sprite(spritenum).mycounter + 1
if sprite(spritenum).mycounter/7 = 1 then
sprite(spritenum).mycounter = 0
--shift list
sprite(spritenum).myqlist[1] = sprite(spritenum).myqlist[2]
sprite(spritenum).myqlist[2] = #blank
end if
--collision
if sprite(spritenum).mycounter/4.0 = 1 then
if sprite 7 intersects 4 then
sprite(4).health = sprite(4).health - 10
sprite(4).locz = 8
sprite(spritenum).locz = 9
end if
end if
#left:
a = (24) + sprite(spritenum).mycounter mod 7
sprite(spritenum).member = (member a of castlib("DJ"))
sprite(spritenum).mycounter = sprite(spritenum).mycounter + 1
sprite(spritenum).loch = sprite(spritenum).loch - 6
if sprite(spritenum).mycounter/7 = 1 then
sprite(spritenum).mycounter = 0
--shift list
sprite(spritenum).myqlist[1] = sprite(spritenum).myqlist[2]
sprite(spritenum).myqlist[2] = #blank
--check to see if you should turn
if sprite(spritenum).loch < sprite(4).loch then
sprite(spritenum).fliph = 0
end if
end if
#right:
a = (31) + sprite(spritenum).mycounter mod 7
sprite(spritenum).member = (member a of castlib("DJ"))
sprite(spritenum).mycounter = sprite(spritenum).mycounter + 1
sprite(spritenum).loch = sprite(spritenum).loch + 6
if sprite(spritenum).mycounter/7 = 1 then
sprite(spritenum).mycounter = 0
--shift list
sprite(spritenum).myqlist[1] = sprite(spritenum).myqlist[2]
sprite(spritenum).myqlist[2] = #blank
--check to see if you should turn
if sprite(spritenum).loch > sprite(4).loch then
sprite(spritenum).fliph = 1
end if
end if
end case
end
|