PTT推薦

Re: [推薦] 碼農修真

看板CFantasy標題Re: [推薦] 碼農修真作者
xga00mex
(七祈綺契)
時間推噓 6 推:6 噓:0 →:28

※ 引述《aeoluns (風兒)》之銘言
: 感謝板友推薦,剛剛看到三十二章
: 有一段程式碼沒看懂,想和大家討論一下
: {
: 提供靈氣,
: 那么,
: 敏捷術開啟運行,
: 截斷靈氣,
: 那么,
: 敏捷術停止運行。}

function magics(human){
function agileMagic(mana){
if(mana){
human.useMagic("agileMagic")
}else{
human.stopMagic("agileMagic")
}
}

return {
agileMagic: agileMagic
}
}

菜雞 有錯歡迎提出
但有錯我也不更正==手機好難打
沒寫過遊戲大概是這樣
他那個當pseudo code我是覺得還好


--

※ PTT留言評論
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 125.230.42.28 (臺灣)
PTT 網址

peterturtle 09/09 12:34截斷靈氣要寫 if (!mana) 不是 else

我就懶== 真要說我還要判斷他傳的是不是靈氣

hkncanaan 09/09 12:35建議起一個interface Magic,裡面定對一個功能叫run

hkncanaan 09/09 12:35和stop

太麻煩了 我手機打這段打快20分鐘

※ 編輯: xga00mex (125.230.42.28 臺灣), 09/09/2020 12:39:44

peterturtle 09/09 12:41寫 if(!mana) 才能表現出冗碼啊 www

peterturtle 09/09 12:42不然其實我看起來比較像兩個 function

song7775 09/09 12:54所以說這程式功能很怪阿w

song7775 09/09 12:57啟動跟關閉兩個功能塞在同一個函數裡面

xga00mex 09/09 12:57他那個我覺得像是提一個要求 實作細節工程師隨意=

xga00mex 09/09 12:57=

song7775 09/09 13:04要進else只有mana==0 但都==0了為啥不是回傳mana不

song7775 09/09 13:04足而是停下使用法術

song7775 09/09 13:05human.useMagic()那端沒有mana的相關判斷嗎w

xga00mex 09/09 13:08好問題 我有想過要不要傳過去 後來想想算了 停下就

xga00mex 09/09 13:08當他魔力不足能燒血條吧==

xga00mex 09/09 13:09說真的小說寫到太詳細反而很無聊 像瘋法推的那個中

xga00mex 09/09 13:09醫一堆古籍文言文我只想叫他給我全部翻成白話文

xga00mex 09/09 13:11不過這個碼農也有點太簡化就是了

song7775 09/09 13:12這感覺不是簡化 是基本程式邏輯都不清楚

做一個switch函數來call開/關我覺得還好吧== 回傳法力不足一樣要關法術啊或是等他跳錯自己停(? 想了一下human不該當magics參數 應該把magics當human私有函數的

※ 編輯: xga00mex (125.230.42.28 臺灣), 09/09/2020 13:30:18

ms0301990 09/09 13:43不懂的覺得可以看,相關專業頭很痛的作品lol

song7775 09/09 13:51比較直覺的思考是法術端在吃不到mana的時候就會自

song7775 09/09 13:51動停止吧

song7775 09/09 13:59總覺得應該往回推先畫出流程圖w

song7775 09/09 14:03有個問題是沒有agileMagic()函數的說明

xga00mex 09/09 14:10我不是來寫能動的程式的==那種不重要的細節沒差吧

xga00mex 09/09 14:12這個把human拿掉 判斷式裡改console.log應該也能動

xga00mex 09/09 14:13就是了

※ 編輯: xga00mex (125.230.42.28 臺灣), 09/09/2020 14:13:44

song7775 09/09 14:18如果agileMagic()會在沒mana的時候自動停止那就不

song7775 09/09 14:18需要寫出mana==0的時候停止法術了嘛

song7775 09/09 14:18反正不重要啦w

warlockeric 09/09 15:46覺得不用return那行耶

mn435 09/09 15:48=0自動停止那很恐怖吧 那等於一直空轉 修真世界法力

mn435 09/09 15:48真的歸零可能跟廢功沒兩樣

這是js的閉包寫法== 要用的話就 var customMagic = magics(human) customMagic.agileMagic(mana) 不能不return 作者寫的是提供/截斷 不做手動停止的話 有可能是自己被抽乾(假設靈氣直接抽自身) 或沒影響(給定量靈氣到用完為止) 前者好處是不用一直刷新 後者好處是不怕被抽乾 我自己覺得作者是想寫前者 但我沒把human.useMagic的實作細節寫出來所以就當通用吧==

※ 編輯: xga00mex (125.230.42.28 臺灣), 09/09/2020 16:30:29

song7775 09/09 20:15所以才會說不知道法術是啥內容需要說明嘛w

song7775 09/09 20:17畢竟也有可能是施法後法術有持續時間