国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

搖色子中的一些業(yè)務(wù)代碼從匹配房間到開(kāi)始游戲最后清算

xiaoxin

搖色子中的一些業(yè)務(wù)代碼從匹配房間到開(kāi)始游戲最后清算,都是寫(xiě)在一起的,自己也不知道性能怎么樣,請(qǐng)大佬指點(diǎn)一下

   public function matchRoom()
    {
        $user = $this->user;
        $room_prefix = 'hltz_room';
        $hourse_grade = Cache::get('hourse_grade' . $user);
        $client_id = Cache::get('client_id' . $user);
        if (!$this->isEnoughMoney($hourse_grade, $user)) {
            return ReturnService::returnError(10002, '余額不足');
        }
        /*
        |--------------------------------------------------------------------------
        | 匹配房間。(初級(jí)房間hltz_room100-200|中級(jí)房間hltz_room200-300|高級(jí)房間hltz_room300-400)
        |--------------------------------------------------------------------------
        */
        for ($i = $hourse_grade * 100; $i < $hourse_grade * 100 + 100; $i++) {
            $room = $room_prefix . $i;
            $room_count = Gateway::getUidCountByGroup($room);
            $time2 = !!Cache::get($room) ? Cache::get($room) : time();
            $room_time = time() - $time2;
            /*
            |--------------------------------------------------------------------------
            | 匹配房間成功。(房間人數(shù)小于8|非房間人數(shù)大于2并且超時(shí)的)
            |--------------------------------------------------------------------------
            */
            if ($room_count < 8 || !($room_time >= 20 && $room_count >= 2)) {
                if ($room_count == 0) {
                    Cache::set($room, time());
                }
                Gateway::joinGroup($client_id, $room);
                $result = [];
                $user_res = $user;
                $user_res = $user;
                $result = 'join';
                $result = $user_res;
                Gateway::sendToGroup($room, json_encode($result));
                $room_last_count = Gateway::getUidCountByGroup($room);
                $room_time = time() - Cache::get($room);
                $grade_money = $hourse_grade == 1 ? 10 : ($hourse_grade == 2 ? 50 : ($hourse_grade == 3 ? 100 : ''));
                /*
                |--------------------------------------------------------------------------
                | 游戲開(kāi)始。(在20秒內(nèi)房間人數(shù)達(dá)到八個(gè)人或者超過(guò)20秒房間人數(shù)達(dá)到兩人)
                |--------------------------------------------------------------------------
                */
                if ($room_time >= 20 && $room_last_count >= 2 || $room_last_count == 8) {
                    //告訴玩家游戲開(kāi)始了,準(zhǔn)備搖色子,并進(jìn)入三秒倒計(jì)時(shí)
                    $result_game_start = 'start';
                    Gateway::sendToGroup($room, json_encode($result_game_start));
                    $group_uid_list = Gateway::getUidListByGroup($room);
                    /*
                    |--------------------------------------------------------------------------
                    | 游戲開(kāi)始倒計(jì)時(shí)三秒
                    |--------------------------------------------------------------------------
                    */
                    sleep(3);
                    /*
                    |--------------------------------------------------------------------------
                    | 告訴玩家開(kāi)始擲骰,并將扣錢(qián)之后的結(jié)果告訴玩家
                    |--------------------------------------------------------------------------
                    */
                    //搖色子,并扣除玩家金額
                    $this->roll($room, $grade_money);
                    /*
                   |--------------------------------------------------------------------------
                   | 等待色子轉(zhuǎn)動(dòng)三秒
                   |--------------------------------------------------------------------------
                   */
                    //三秒色子的旋轉(zhuǎn)動(dòng)畫(huà)
                    sleep(3);
                    /*
                   |--------------------------------------------------------------------------
                   | 返回結(jié)果。(隨機(jī)玩家點(diǎn)數(shù),計(jì)算出最大的一個(gè)或幾個(gè),將玩家的所有錢(qián)分給最大的那些人)
                   |--------------------------------------------------------------------------
                   */
                    $this->roll_end($group_uid_list, $room_last_count, $grade_money, $room);
                    /*
                   |--------------------------------------------------------------------------
                   | 睡眠3秒
                   |--------------------------------------------------------------------------
                   */
                    //sleep(3);
                    /*
                   |--------------------------------------------------------------------------
                   | 解散群和清除相關(guān)redis數(shù)據(jù)
                   |--------------------------------------------------------------------------
                   */
                    Cache::rm('name');
                    foreach ($group_uid_list as $key => $val) {
                        Cache::rm('hourse_grade' . $val);
                    }
                    Cache::rm($room);
                    Gateway::ungroup($room);
                }
                return;
            }
        }
    }
3086 0 0
0個(gè)回答

年代過(guò)于久遠(yuǎn),無(wú)法發(fā)表回答
??