见习食神 发表于 2012-12-26 23:18:02

热血三国兵力科技搞定了

本帖最后由 见习食神 于 2012-12-26 23:22 编辑

兵力科技解决了,就是出征还是卡0秒,相当郁闷,谁弄好了出征的一起讨论下啊


yeungking 发表于 2012-12-27 04:25:38

请问你兵力和科技怎么弄的?

memeniu 发表于 2012-12-27 05:36:59

你是直接在sys_city_soldier里改的兵力吗?科技等级在另外一个表。如果不是 分享下 感谢

lsheva0 发表于 2012-12-27 17:38:04

发现一个问题,只要知道这个端以前玩家的账号,就可以直接进去玩他的号,密码随便输

memeniu 发表于 2012-12-27 18:30:17

帐号和密码都是明文显示的。最主要的是后面还有邮箱地址和其他信息,别有用心的可能猜解出邮箱号和密码甚至支付宝。在另外一个表里管理员是MD5加过密的

见习食神 发表于 2012-12-28 09:13:44

就是这么弄的兵和科技

archon911 发表于 2012-12-28 09:18:23

可以正常研究,可以正常招兵,可以正常出征但是不能指挥!~目前最主要的是寻求MYSQL恢复数据库初始状态的表。这样呢可以少走很多弯路。另外排行更新也很扯淡。

lsheva0 发表于 2012-12-28 09:28:22

怎么正常研究和出兵?求指教

lsheva0 发表于 2012-12-28 09:42:13

archon911

archon911 发表于 2012-12-30 12:27:03

等完整版吧,快了

asa0215 发表于 2012-12-30 13:45:16

本帖最后由 asa0215 于 2012-12-30 13:51 编辑

關於造兵卡0秒問題..給點思路
在 SoldierFunc.php
舉例一段

        else        //如果還沒有兵在造的話,則直接開始造
        {
                sql_query("insert into sys_city_draftqueue (`cid`,`xy`,`sid`,`count`,`queuetime`,`state`,`draft_interval`,`state_starttime`,`needtime`) values
                ('$cid','$xy','$sid','$soldierCount',unix_timestamp(),1,'$real_time_need',unix_timestamp(),'$needtime')");
                $lastid = sql_fetch_one_cell("select LAST_INSERT_ID()");
                sql_query("insert into mem_city_draft (select id,cid,xy,sid,count,state_starttime+needtime from sys_city_draftqueue where `id`='$lastid')");
        }
以上這段是沒有造兵排程時..可以直接招募的function
當我們按下招幕輸入要招多少兵後按確定...
便會進入排程的正在訓練...
等時間到...為什會卡0秒是因為只有寫入資料庫而已
並沒有額外的function去修改sys_city_draftqueue資料表的state(把1改成0)和刪除mem_city_draft資料表新增的那一段sql..

sys_city_draftqueue資料表是進兵營後左邊排程有調用到資料(state=0不顯示,1則是顯示)
mem_city_draft資料表是正在造的兵

所以結論就是要自己弄出個function去修改sys_city_draftqueue資料表的state(把1改成0)和刪除mem_city_draft資料表新增的那一段sql..
就OK啦..
然後在addCitySoldier()把兵加進去

科技卡0秒也是類似這樣...

想法有錯請指正了

luciferlgd 发表于 2015-7-4 18:12:16

技术贴 顶一下
页: [1]
查看完整版本: 热血三国兵力科技搞定了

本站内容如若侵犯到您的权益,请来电来函告知,我们会尽快处理!
联系QQ:1953150286,2251387361,123784736,免责申明