作者oldriver (oldriver)
看板WOW
標題Re: [問題] 請問隨機召喚坐騎跟小寵物的巨集
時間Sat Jul 18 18:36:17 2009
※ 引述《momomasun (宅男一號)》之銘言:
: ※ 引述《fhui (方回)》之銘言:
: : 目前正在用的隨機召喚小寵物巨集:
: : /script CallCompanion("CRITTER", random(GetNumCompanions("CRITTER")))
: : 居然可以一行寫完,我自己也嚇一跳. @@
: : 這巨集的引用"不需要做任何改動",不論玩家等級職業如何,或是有幾隻
: : 小寵物都一樣通用.
: : 座騎的話,因為要分能飛跟不能飛,所以不能照本宣科... /sigh
: 請問一下
: 我想把這個巨集的後面附加上 SendChatMessage("CRITTER","SAY")end)
: 當我叫出寵物時 會講"就決定是你了 XXX"
: 卻連小寵物都叫不出來 請問是哪邊寫錯呢???
: 又我想要像叫座騎那樣
: 只隨機叫出某幾隻喜愛的寵物就好 又該怎樣改寫呢???
先貼結論
/跑
p=GetNumCompanions("CRITTER");
p=random(p);
creatureID, creatureName=GetCompanionInfo("CRITTER",p);
SendChatMessage('就決定是你了'..creatureName,"SAY");
CallCompanion("CRITTER",p);
請自行接成一行
/*以下為講解*/
順便講解一下邊用到的幾個api
這樣後人爬文比較方便
0.p
變數名稱,代表將來要叫第幾隻寵物
1.GetNumCompanions("type");
"type"可以是"CRITTER"或"MOUNT"
這個api會回傳總共有多少隻寵物或座騎給你
如果你有30隻,就會回傳30
2.random(a,b)
隨機從a~b之間挑一個數出來
如果只有填入一個參數,像是random(p)就會自動從1~p隨機選一個數字
3.creatureID, creatureName=GetCompanionInfo("CRITTER",p)
這api只用到部份功能而已,GetCompanionInfo傳回第N號寵物或座騎的資訊
是用依序的方式傳回,第一個是creatureID,再來是creatureName(寵物名)
之後還有,但是這邊用不到,省略
4.SendChatMessage('就決定是你了'..creatureName,"SAY");
喊話用,就決定是你了可以自行更改成喜歡的部分
萬一後面還要加字,請自行在creatureName後面加上..'你想要喊的話'
這個api有前人教學過了,更完整的用法請自行翻閱精華區
5.CallCompanion("type",p);
呼叫第P號寵物或座騎,看type參數決定
/*以下為程式流程*/
1.先查出使用者有幾隻寵物
2.從這些寵物中隨機選一隻
3.查出被選到的寵物的名字
4.將得到的名字用力地喊出
5.招換被抽到的第P號寵物
--
A A ! B B ! A ! A A ! B B ! A A ! B B ! A ! A A ! B B B B B !
A A ! B B ! A ! A A ! B B ! A A ! B B ! A ! A A ! リバースカード !
← ! → ! A ! B ! エネミーコントーローラー !
→ B → B → B → B → B → B → B → B
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.224.200.239
推 enchyi:快推,不然別人以為我們看不懂~ 07/18 18:41
推 a1121210:寵物還好... 07/18 18:45
→ a1121210:問題是坐騎有60% 100% 280% 烏龜 很難控制 07/18 18:45
→ skyabsence:還有310%... 07/18 18:46
推 enchyi:座騎能判定飛跟不飛還又地點就快寫滿255了 Orz 07/18 18:47
推 ef9527:快推,不然別人以為我們看不懂~ 07/18 19:46