幫忙理解海商或soldout中inc-turn中的程序碼

製作Webgame技術交流、Webgame相關程式功能改造、中文化技巧等相關討論。

版主: Mr.Simon, 涅魂, 小剎, BSM

playgamemy
 
文章: 1
註冊時間: 2016-11-08 11:50 am
性別: 男生

幫忙理解海商或soldout中inc-turn中的程序碼

文章playgamemy » 2016-11-10 10:59 am

本人有意製造一個以商人物語前身 - soldout 為藍本的手機遊戲, 用unity 或 corona sdk 作前台, php+Apache 或 Nodejs+ mongoDB 作伺服。

其實我從未寫過任何程式,亦明白工程會挻浩大,但經過詳細研究,我有信心總能完成,整個開發大概一年時間。

問題在於我懂c# 和 JavaScript , 但 Perl 我真的怎看也不懂,線上教材又少,想借大家的知識去解讀一下inc-turn 文件內,每更新及回合結算背後的算術式,作為開發的參考。 程序碼為小羽大所分享的這個http://www.et99.net/viewtopic.php?f=114&t=103117

1.
代碼: 選擇全部
foreach $cnt (0..$DT->{showcasecount}-1)
         {
            $itemno=$DT->{showcase}[$cnt];
            if($itemno && $DT->{item}[$itemno-1])
            {
               #維持費計算用資料集
               $showcaseitemno{$itemno}++;
               
               #購買客數計算
               $rank=$DT->{temprank};
               $rank=99 if $rank<100;
               my $ichioshi=$cnt==0 ? 4:3;
               my $buypeopletemp=$ITEM[$itemno]->{buypeople}
                  *(($ITEM[$itemno]->{price}/$DT->{price}[$cnt])**($cnt==0?4:3))
                  /($ITEM[$itemno]->{buypeoplebase}+1);
               $buypeople=$rank / ($dtranksum/($#DT+1)) * $buypeopletemp;


不明白在此$itemno 應是在[showcase]中的位置, 所以應是道具的獨有號碼, 所以才能叫出
代碼: 選擇全部
$ITEM[$itemno]->{buypeople}
那請問
代碼: 選擇全部
if($itemno && $DT->{item}[$itemno-1])
是什麼?

2.
代碼: 選擇全部
if($buypeople>0)
                  {$sale=$buypeople/2*0+rand($buypeople * ($rank>1?1:$rank));}


$buypeople/2*0是什麼玩法 :shock: ?那不就是0嗎?還是我理解錯了?

小弟係香港人,亦長期在外地,中文有言語不通之處,敬請原諒。



回到 Webgame製作&改造

誰在線上

正在瀏覽這個版面的使用者:沒有註冊會員 和 2 位訪客

cron