[討論] mpadd

看板mud_mars (瑪爾斯群英傳)作者 (桔子)時間12年前 (2012/12/14 14:52), 編輯推噓1(104)
留言5則, 3人參與, 最新討論串1/1
在這邊是想要聊一下有關mobprog的東西 在現在的mmorpg中, 常常看到"聲望"這種東西的設定 (好吧, 我就是指wow) 而在mud中其實也可以引入類似的作法, 讓遊戲內容更多元(拖戲) 不過實際上在mars寫area時, 就會發現能用的工具其實沒有很多 光是要寫一個程式語言中最簡單的 a += 1 就要寫成 if a = 0 mset a 1 elseif a = 1 mset a 2 end 類似這種形式, 過去很多quest都是用這種做法來寫 於是我在想, 如果能夠在主程式中增加一個mobprog 能夠做到簡單的+=, -=效果的話, 不管是寫quest, 聲望等等, 都能夠多很多變化 而這種prog, 其實寫起來不難 只要參照mset在quest的寫法即可, 舉例為: void do_mpadd( CHAR_DATA *ch, char *argument ) { char arg1 [MAX_INPUT_LENGTH]; char arg2 [MAX_INPUT_LENGTH]; char arg3 [MAX_INPUT_LENGTH]; CHAR_DATA *victim; smash_tilde( argument ); argument = one_argument( argument, arg1 ); argument = one_argument( argument, arg2 ); strcpy( arg3, argument ); if ( !str_cmp( arg2, "map" ) ) { victim->honor += 1; return; } do_mset( ch, "" ); return; } (欸, 其實我不會寫 lol, 只是要舉出victim->honor += 1;這行) 這樣如果要寫個啥聲望100時, 給東西等等的就很方便 不過說歸說, 實際上像mset在處理quest_value時看起來滿笨的 居然是用窮舉法阿... -- ◢ 舊的想法 = 被鞭 老人發文 = 居歪 + M ▆▄˙ ˙██ ◤◤ 新的想法 = 否決 新手發文 = 水桶 + D ▋◥◥◥ ˙ ˙ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.10.178

12/14 17:47, , 1F
你的 do_mset 跑到套套外面惹
12/14 17:47, 1F

12/14 17:47, , 2F
我應該會去完成這個吧 不提醒我都忘了
12/14 17:47, 2F

12/14 17:52, , 3F
我不會寫C 只能大概示意阿XDD
12/14 17:52, 3F

12/15 13:30, , 4F
這系統是古董XD
12/15 13:30, 4F

12/15 13:32, , 5F
這樣寫prog可以少很多行
12/15 13:32, 5F
文章代碼(AID): #1Goip44O (mud_mars)
文章代碼(AID): #1Goip44O (mud_mars)