//------------------------------------------------------------------------- void _s2allcPlayerEnter(List <string> vec_param) { if (!mScene.isInit()) { return; } int index = 0; _tScenePlayer scene_player; scene_player.et_player_rpcid = uint.Parse(vec_param[++index]); scene_player.nickname = (string)vec_param[++index]; scene_player.is_bot = false; int player_gold = int.Parse(vec_param[++index]); scene_player.rate = float.Parse(vec_param[++index]); int turret_id = int.Parse(vec_param[++index]); bool buffer_power = bool.Parse(vec_param[++index]); bool buffer_freeze = bool.Parse(vec_param[++index]); bool buffer_longpress = bool.Parse(vec_param[++index]); bool buffer_rapid = bool.Parse(vec_param[++index]); float turret_angle = float.Parse(vec_param[++index]); int turret_rate = int.Parse(vec_param[++index]); TbDataTurret.TurretType turret_type = (TbDataTurret.TurretType)(short.Parse(vec_param[++index])); int locked_fish_objid = int.Parse(vec_param[++index]); Dictionary <uint, CRenderTurret> map_turret = mScene.getMapTurret(); if (map_turret.ContainsKey(scene_player.et_player_rpcid)) { map_turret[scene_player.et_player_rpcid].Dispose(); map_turret.Remove(scene_player.et_player_rpcid); } if (mScene.getMyPlayerId() == scene_player.et_player_rpcid) { mScene.setMyTurret(null); } CRenderTurret turret = new CRenderTurret(mScene); turret.create(turret_id, ref scene_player, player_gold, buffer_power, buffer_freeze, buffer_longpress, buffer_rapid, turret_rate, turret_angle, locked_fish_objid, turret_type); map_turret[scene_player.et_player_rpcid] = turret; if (mScene.getMyPlayerId() == scene_player.et_player_rpcid) { mScene.setMyTurret(turret); } }
//------------------------------------------------------------------------- void _hitFish(CRenderFish render_fish) { if (mRenderFishID.Contains(render_fish.FishObjId)) { return; } mMaxHitFish--; addFishList(render_fish); if (!render_fish.canHitByFishNet()) { return; } if (mScene.getMyPlayerId() == mPlayerId) { List <string> vec_param = new List <string>(); vec_param.Add("playerFishNetHit"); vec_param.Add(mPlayerId.ToString()); vec_param.Add(render_fish.FishObjId.ToString()); mScene.getListener().onSceneRender2Logic(vec_param); } }
//------------------------------------------------------------------------- public bool isPlayerBullet() { return(mScene.getMyPlayerId() == mPlayerId); }
//------------------------------------------------------------------------- public void update(float elapsed_tm) { CRenderLevel level = mScene.getLevel(); if (level == null) { return; } mfTotalSecond += elapsed_tm; if (mScene.getMyPlayerId() == mPlayer.et_player_rpcid && !mScene.isSingleMode()) { mfIdleSecond += elapsed_tm; if (mfIdleSecond > 60.0f) { mfObCountdown -= elapsed_tm; if (mfObCountdown <= 0.0f) { mfIdleSecond = 0.0f; mfObCountdown = 60.0f; mScene.getListener().onScenePlayerChange2Ob(); } else { string str = "由于您一分钟没有发射炮弹 系统将在[ff0000]" + ((int)mfObCountdown).ToString() + "秒[-]后进入[00ffff]观战模式[-]"; //mScene.getListener().onSceneShowMessageBox(str, false, "", 1, (int)_eMessageBoxLayer.Ob, false, false); } } else { mfObCountdown = 60.0f; } if (mRenderBufferMgr.hasBuffer("BufLongpress") || mRenderBufferMgr.hasBuffer("BufRapid")) { mfIdleSecond = 0.0f; mfObCountdown = 60.0f; } } mCSpriteTurretShow.update(elapsed_tm); mRenderBufferMgr.update(elapsed_tm); }