精華區beta WarCraft 關於我們 聯絡資訊
明天程設期中考,所以寫出了這個(爆 話說,身為一個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. 同盟軍 115117 天譴軍 領先者改變,天譴軍取得分數領先! └──────────── [同盟]珍娜︰還有機會 [同盟]葛瑞斯華德︰穩住 http://storyduke.myweb.hinet.net/webs/SH/SH.htm -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.228.174.184
jesil:看不懂推 11/11 00:06
Warrix:push 11/11 00:12
tommy91124:聽不懂推 11/11 00:12
bilsted:強大邦推! 11/11 00:15
egg123:看懂了推 11/11 00:20
kevin31723:超棒 11/11 00:20
narsilx:很像 11/11 00:30
wix3000:END推 收精華 11/11 00:32