[閒聊] 屬性值互換的可能性

看板mud_sanc (Sanctuary - 聖殿)作者 (小太保)時間16年前 (2010/01/12 13:49), 編輯推噓6(606)
留言12則, 4人參與, 最新討論串1/1
首先,它一定是用 temp_mod 的方式去寫,這樣的好處是.. 一、容易控制有效時間及做效果的移除(quit 就移除)。 二、作用時間內例如 air 原先 2000 mag 原先 5000,則 temp_mod 的寫法如下... ppl->temp_mod("stat/air",3000,"某效果名",時間); ppl->temp_mod("stat/mag",-3000,"某效果名",時間); 或者是透過修改 _score.c 呼叫的函數,直接在裡面進行轉 換,例如原先是氣勁(2000) 魔力(5000) 直接互換。 因為更動顯示的同時屬性也一起變更,因此這樣寫也是可以 ,實作上... ppl->new_stat(me); ↓ 設定特殊判斷,變更讀取模式.. maxs=get_stat_2(me); j=sizeof(maxs); for(i=0;i<j;i=i+2) { value=maxs[i+1]; if(value>0) me->set("stat/"+maxs[i],50+value); } 將上面的 maxs 順序調換一下,就可將讀取到的 air 設 到玩家的 mag 欄位,讀到的 mag 欄位設到 air 欄位。 不過這樣子寫 bug 很多。所以我傾向改良式的第一種寫法 =================================================== 目前想討論的是,單純兩個屬性的屬性值對調,會有什麼 問題,以及哪些屬性之間是可對調、哪些不行(如 int), 或者若全部都可以對調,要如何設定對調比例等等。 有興趣的可以閒聊一下。 Laechan -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.225.162.92

01/12 13:53, , 1F
這個有趣...把str變到int去...XD
01/12 13:53, 1F

01/12 14:10, , 2F
那就得把 str 打 X折 後才能移轉到 int
01/12 14:10, 2F

01/12 14:10, , 3F
也就是上面的「如何設定對調比例」
01/12 14:10, 3F

01/12 15:43, , 4F
...我上一篇提的主要是元素轉換而已..avert
01/12 15:43, 4F

01/12 15:49, , 5F
如果真的要轉的話...依目前屬性最高之間的比例來判斷
01/12 15:49, 5F

01/12 15:50, , 6F
轉換比例....
01/12 15:50, 6F

01/12 17:20, , 7F
fel:5162,mag:5222,air:7180,str:6686,con:3190
01/12 17:20, 7F

01/12 17:21, , 8F
dex:4856,int:2137..
01/12 17:21, 8F

01/12 17:28, , 9F
ㄟ應該不會用最高值唷,而且,總不能str->0=>int+xxx吧
01/12 17:28, 9F

01/12 18:16, , 10F
..我只是po出來當打幾折用的...
01/12 18:16, 10F

01/13 22:16, , 11F
應該很多人會很想先把屬性轉到INT去吧...
01/13 22:16, 11F

01/13 22:18, , 12F
賢者如果會用這招..或許屬性不會很難配..
01/13 22:18, 12F
文章代碼(AID): #1BJ0rOAy (mud_sanc)
文章代碼(AID): #1BJ0rOAy (mud_sanc)