關於自定義狀態,其中客戶端的stateiconinfo編寫疑問
目前發現伺服端發送狀態封包資料時,除了狀態的持續時間,還有發送該狀態的val值 WBUFW(buf,0)=0x196;WBUFW(buf,2)=type;
WBUFL(buf,4)=bl->id;
WBUFB(buf,8)=flag;
WBUFL(buf,9)=tick;//MaxMS
WBUFL(buf,13)=tick;//RemainMS
WBUFL(buf,17)=val1; //這邊
WBUFL(buf,21)=val2; //還有這裡
WBUFL(buf,25)=val3; //跟這裡
這邊想請問,如果要在狀態說明中添加該值的顯示要怎麼辦到呢?
這是我自定義的狀態說明StateIconList =
{
haveTimeLimit = 1,
posTimeLimitStr = 2,
descript =
{
{"生命", COLOR_TITLE_BUFF },
{"%s", COLOR_TIME },
{"剩餘生命數:", COLOR_TITLE_TOGGLE },
}
} 其中有一行剩餘生命數,我希望後頭可以讓他顯示val1的值,這有辦法做的到嗎?請各位高手幫我解惑一下,感激不盡。
自定義的stateiconinfo是以SI表示嗎?
src/map/status.h
SI那邊也定義了嗎?
SC 必須對應 SI 應該就可以了,還沒嘗試這麼做過....!
sense 發表於 2015-7-1 12:40 AM static/image/common/back.gif
自定義的stateiconinfo是以SI表示嗎?
src/map/status.h
有,SI都有定義了
進遊戲可以正常看到狀態圖示、說明、剩餘時間的顯示,但是現在就是希望可以看到狀態的VAL值。
直接新增一個%d 或%s 會如何? goddameit 發表於 2015-7-1 09:20 AM static/image/common/back.gif
直接新增一個%d 或%s 會如何?
遊戲中的狀態說明就會直接出現 %d 或 %s
沒有人有解決辦法嗎?
推一下避免閒置問題。 he01204046 發表於 2015-7-3 09:08 AM static/image/common/back.gif
沒有人有解決辦法嗎?
推一下避免閒置問題。
看了一下攜帶箭矢的那狀態(SI_CLIENT_ONLY_EQUIP_ARROW)
是直接送封包給客戶端,貌似跟SC的val沒太大的關係,如果真是這樣技術上有點難度 .... !
本帖最後由 he01204046 於 2015-7-3 07:56 PM 編輯
sense 發表於 2015-7-3 09:50 AM static/image/common/back.gif
看了一下攜帶箭矢的那狀態(SI_CLIENT_ONLY_EQUIP_ARROW)
是直接送封包給客戶端,貌似跟SC的val沒太大的關 ...
不知道是不是服務器不同,我使用的3CEAM『SI_CLIENT_ONLY_EQUIP_ARROW』是被註解掉的狀態,另外去找了ra確實有該狀態和相關程式存在。void clif_arrowequip(struct map_session_data *sd,int val)
{
int fd;
nullpo_retv(sd);
#if PACKETVER >= 20121128 //這裡是ra新增的,3ceam則沒有
clif_status_change(&sd->bl, SI_CLIENT_ONLY_EQUIP_ARROW, 1, INVALID_TIMER, 0, 0, 0);
#endif //至此
fd=sd->fd;
WFIFOHEAD(fd, packet_len(0x013c));
WFIFOW(fd,0)=0x013c;
WFIFOW(fd,2)=val+2; //Item ID of the arrow
WFIFOSET(fd,packet_len(0x013c));
}搜尋 efstids.lua 有該代碼存在EFST_CLIENT_ONLY_EQUIP_ARROW = 695,但是搜尋 stateiconinfo.lua 卻沒有相關的說明文字,箭矢部份應該是直接寫在登入器裡面了。
另外狀態的封包0x983跟箭矢的封包0x013c也不一致,所以箭矢可能無法用來參考。
http://goo.gl/vgaiPB
尚未有人回應.
我看了許多lua lub, 也沒見到有使用到這功能的存在. goddameit 發表於 2015-7-4 02:54 PM static/image/common/back.gif
http://goo.gl/vgaiPB
尚未有人回應.
感謝壇主還特地跑到別的論壇幫我發問。
現在只能看看懂lua的高手有沒有解答了。
頁:
[1]