作者game7895 (game)
看板WarCraft
标题[WE]技能演示 ─ 白热 Zeal
时间Tue Nov 11 00:01:25 2008
明天程设期中考,所以写出了这个(爆
话说,身为一个pal控,尤其是没练过盾丁、没练过祝鎚丁的zealot con,
zeal,那咻咻咻的风声与打击血肉的声音,永远是最令我们热血沸腾的声响
加上自己的地图需要,因此制作出了这招,白热!
范例地图︰
http://chikaru.myweb.hinet.net/zeal.w3x (未锁)
所需物件︰
白热丁一只,模组以圣骑士为佳
底技能一个,在此用连结(channel)
众多当靶子的单位
所需变数︰
Pal_ZealCount 类型︰整数(integer) 计算攻击次数
Pal_Zero 类型︰部队(unit) 纪录施法单位
Pal_ZealSound[array] 类型︰音效(sound) 播放打击音效
Pal_ZealSountInt 类型︰整数(integer) 制作打击音效随机效果
Pal_ZealTarget 类型︰部队(unit) 纪录攻击目标
Pal_ZealTargetGroup 类型︰部队群组(unit group) 抓取攻击目标
触发一︰设定变数
Pal Zeal set
Events
Unit - A unit Starts the effect of an ability
Conditions
(Ability being cast) Equal to 白热
Actions
//变数初始化,把单位群组清空、整数重置、设定音效、施法单位
Unit Group - Remove all units from Pal_ZealTargetGroup
Set Pal_ZealSound[1] = MetalHeavyBashFlesh1 <gen>
Set Pal_ZealSound[2] = MetalHeavyBashFlesh2 <gen>
Set Pal_ZealSound[3] = MetalHeavyBashFlesh3 <gen>
Set Pal_ZealHero = (Casting unit)
Set Pal_ZealCount = 1
//变数初始化结束
Unit Group - Pick every unit in (Units within 200.00 of (Position of
Pal_ZealHero)) and do (Actions)
//抓取pal周遭200范围内的单位
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do
(Else Actions)
If - Conditions
(Picked unit) Not equal to Pal_ZealHero
((Picked unit) is dead) Equal to False
//不抓到pal本身,不抓刚死的单位
Then - Actions
Unit Group - Add (Picked unit) to Pal_ZealTargetGroup
//将抓到的单位放进目标群组内
Else - Actions
Do nothing
If (All Conditions are True) then do (Then Actions) else do
(Else Actions)
If - Conditions
(Pal_ZealTargetGroup is empty) Equal to False
//如果目标群组不是空的,表示有抓到目标等着被打,该开启攻击触发
//并设定zeal的超快动画播放速度
Then - Actions
Unit - Pause Pal_ZealHero
Animation - Change Pal_ZealHero's animation speed to 450.00%
of its original speed
Trigger - Turn on
Pal Zeal atk <gen>
Else - Actions |
Do nothing |
┌──────────────┘
↓
Pal Zeal atk
Events
Time - Every 0.25 seconds of game time
//每0.25秒攻击一次,这是一个15f的zeal
Conditions
Actions
If (All Conditions are True) then do (Then Actions) else do
(Else Actions)
If - Conditions
Pal_ZealCount Less than or equal to ((Level of 白热 for
Pal_ZealHero) + 1)
//攻击次数,等级一2次,等级二3次,依此类推,技能等级+1次
Then - Actions
Sound - Stop Pal_ZealSound[Pal_ZealSoundInt] Immediately
//因为攻击音效比0.25秒长,如果不先停掉,後面的会被盖住而无法播放,因此要先暂停
Set Pal_ZealTarget = (Random unit from Pal_ZealTargetGroup)
//从目标群组中随便抓一个出来打
Unit - Make Pal_ZealHero face
Pal_ZealTarget over 0.00 seconds
//其实这里在抓目标时(黄色区域),也可以直接输入
// Random unit from Pal_ZealTargetGroup
//但是,这样在之後给伤害的地方(紫色区域)就无法确认是否随机取能取到同一单位
//因此先用一个单位变数固定下来
Animation - Play Pal_ZealHero's attack animation
//播放攻击动画
Unit - Cause Pal_ZealHero to damage
Pal_ZealTarget, dealing
100.00 damage of attack type Normal and damage type Normal
//真正伤害,每打一次100
If (All Conditions are True) then do (Then Actions) else do
(Else Actions)
If - Conditions
(Pal_ZealTarget is dead) Equal to True
Then - Actions
Unit Group - Remove Pal_ZealTarget from
Pal_ZealTargetGroup
//如果单位被敲死了,立刻从部队群组删掉,避免空挥
Else - Actions
Set Pal_ZealSoundInt = (Random integer number between 1 and 3)
Sound - Play Pal_ZealSound[Pal_ZealSoundInt] at 100.00%
volume, attached to Pal_ZealHero
//老是同一种打击音效很枯燥,而且效果很差,所以从三种音效中随机取一种
Set Pal_ZealCount = (Pal_ZealCount + 1)
//所有动作结束,攻击次数加一
Else - Actions
Animation - Change Pal_ZealHero's animation speed to 100.00%
of its original speed
//回复正常动画播放速度
Unit - Unpause Pal_ZealHero
Trigger - Turn off (This trigger)
实际效果就如附档般,zealot!
而且预告一下,
这个技能将在圣域英雄(
http://storyduke.myweb.hinet.net/webs/SH/SH.htm)
的下一版中出现。
也就是乌瑟大人去把防护洗成惩戒了。
--
WarCraftIII:The Frozen Throne │游戏时间 0:28
圣域英雄 Sanctum Heroes ┌────┴═══════
Where amazing happens. │同盟军 115 ︰ 117 天谴军
领先者改变,天谴军取得分数领先! └────────────
[同盟]珍娜︰还有机会
[同盟]葛瑞斯华德︰稳住 http://storyduke.myweb.hinet.net/webs/SH/SH.htm
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.228.174.184
1F:推 jesil:看不懂推 11/11 00:06
2F:推 Warrix:push 11/11 00:12
3F:推 tommy91124:听不懂推 11/11 00:12
4F:推 bilsted:强大邦推! 11/11 00:15
5F:推 egg123:看懂了推 11/11 00:20
6F:推 kevin31723:超棒 11/11 00:20
7F:推 narsilx:很像 11/11 00:30
8F:推 wix3000:END推 收精华 11/11 00:32
9F:推 DVDRip:感觉就很帅推 11/11 00:39
10F:推 gozha:为什麽卡干都要打他的脸XDDDDD 11/11 00:40
11F:推 SaVanNaSG:看不懂...可是...确定是认真文=ˇ= 11/11 00:40
12F:推 MoonSkyFish:可以设定成随英雄本身攻速增加而减少攻击间隔跟技能CD 11/11 00:41
13F:推 dinotea:期末加5分!!! 11/11 00:43
14F:→ mirostory:高手! 11/11 00:44
15F:推 dzihaenn:推 每ㄧ级牺牲增加12%白热伤害也要做出来吧XDDD 11/11 00:46
16F:推 wix3000:要是我的触发注解也能写的那麽详细就好了 11/11 00:47
17F:推 young1320:看不懂推 11/11 00:55
18F:推 yanion:我以为我到了DII版! 11/11 00:56
19F:推 wxes50608:看我连续21推 11/11 00:56
20F:推 zeals:注解写得很详细 程式基础薄弱的人也看得懂... 11/11 01:03
21F:推 FrostMaiden:不推不行 11/11 01:12
22F:→ game7895:协同不是写不出来,不过减少CD这个就……很难 11/11 01:36
23F:推 williams1002:推 11/11 02:26
24F:→ terry1020:没有判对敌我方的条件 这是单机游戏@@? 11/11 11:33
25F:→ terry1020: 断 11/11 11:33
26F:→ game7895:只是单纯忘了加上而已 :P 11/11 18:08
27F:推 larchrono:又多了一位新一代高手^^ 11/11 19:03
28F:推 kyo7695:施放技能是不是会让技能表不见啊 11/12 01:31
29F:推 kyo19830320:有点小问题,刚刚测试发现,如果对到单一目标而且自己 11/12 18:37
30F:→ kyo19830320:身旁有屍体的话~该目标若在5下攻击内死亡,则他会朝 11/12 18:37
31F:→ kyo19830320:着屍体乱挥@@" 11/12 18:37
32F:→ kyo19830320:好像没有解决空挥的问题 囧> 11/12 18:38
33F:→ game7895:原本的情况是非单一目标也会空挥,那句主要是针对这点 11/12 22:00