382 与私有木桩战斗时 客户端缓存进入前坐标作为攻击发包坐标
| | |
| | | }
|
| | | }
|
| | |
|
| | | GA_Hero.recordServerPos = new Vector3(package.PosX, 0, package.PosY);
|
| | |
|
| | | PlayerDatas.Instance.InitPlayerData(package);
|
| | | PlayerDatas.Instance.RequestWorldTick();
|
| | |
|
| | |
| | |
|
| | | if (ResetPlayerPosEvent != null)
|
| | | ResetPlayerPosEvent(vNetData);
|
| | |
|
| | | GA_Hero.recordServerPos = new Vector3(vNetData.PosX, 0, vNetData.PosX);
|
| | | }
|
| | | else
|
| | | {
|
| | |
| | | using System; |
| | | using System.Collections; |
| | | using System.Collections.Generic; |
| | | using UnityEngine; |
| | | |
| | | public class DTCA112_tagMCDBPlayer : DtcBasic |
| | | { |
| | |
| | | { |
| | | base.Done(vNetPack); |
| | | var package = vNetPack as HA112_tagMCDBPlayer; |
| | | |
| | | GA_Hero.recordServerPos = new Vector3(package.PosX, 0, package.PosY); |
| | | |
| | | PlayerDatas.Instance.UpdatePlayerData(package); |
| | | |
| | |
| | | } |
| | | } |
| | | |
| | | if (playerInitEvent != null)
|
| | | {
|
| | | playerInitEvent();
|
| | | if (playerInitEvent != null) |
| | | { |
| | | playerInitEvent(); |
| | | } |
| | | } |
| | | |
| | |
| | | using System.Collections.Generic;
|
| | |
|
| | | public class DTCB40A_tagMCPYPlayerMove : DtcBasic
|
| | | { |
| | | private static List<GameObject> _free = new List<GameObject>(); |
| | | private static List<GameObject> _list = new List<GameObject>(); |
| | | private static bool finished = false; |
| | | |
| | | {
|
| | | private static List<GameObject> _free = new List<GameObject>();
|
| | | private static List<GameObject> _list = new List<GameObject>();
|
| | | private static bool finished = false;
|
| | |
|
| | | public override void Done(GameNetPackBasic vNetPack)
|
| | | {
|
| | | base.Done(vNetPack);
|
| | |
| | | _dest = new Vector3(package.ClientPosX * Constants.F_BETA, _player.Pos.y, package.ClientPosY * Constants.F_BETA);
|
| | | }
|
| | |
|
| | | GA_Hero.recordServerPos = new Vector3(package.SeverPosX, 0, package.SeverPosY);
|
| | |
|
| | | _player.MoveToPosition(_dest, package.Dir, package.Speed, package.MoveType == 1);
|
| | |
|
| | | finished = package.MoveType == 0;
|
| | | } |
| | | |
| | | }
|
| | |
|
| | | }
|
| | |
| | | }
|
| | | else
|
| | | {
|
| | | if (StageLoad.Instance.currentStage is ClientHazyGrassStage)
|
| | | {
|
| | | _b405.PosX = (ushort)(ClientHazyGrassStage.recordOriginalPos.x * 2 + GA_Hero.MapOffset.x);
|
| | | _b405.PosY = (ushort)(ClientHazyGrassStage.recordOriginalPos.z * 2 + GA_Hero.MapOffset.z);
|
| | | }
|
| | | _b405.PosX = (ushort)(GA_Hero.recordServerPos.x + GA_Hero.MapOffset.x);
|
| | | _b405.PosY = (ushort)(GA_Hero.recordServerPos.z + GA_Hero.MapOffset.z);
|
| | | }
|
| | | }
|
| | |
|
| | |
| | | WorldTick = PlayerDatas.Instance.GetWorldTick()
|
| | | };
|
| | |
|
| | | GA_Hero.recordServerPos = new Vector3(_proto.DestX, 0, _proto.DestY);
|
| | |
|
| | | if (!CrossServerUtility.IsCrossServer())
|
| | | {
|
| | | GameNetSystem.Instance.SendInfo(_proto);
|
| | |
| | |
|
| | | public class GA_Hero : GActorPlayerBase, ICtrlGA
|
| | | {
|
| | | public static Vector3 recordServerPos;
|
| | | public static Vector3 MapOffset;
|
| | | public static bool s_MapSwitching = false;
|
| | | public static bool s_Flying = false;
|
| | |
| | | {
|
| | | if (PreFightMission.Instance.IsFinished())
|
| | | {
|
| | | // 发送冲锋包
|
| | | CB404_tagCMRush _b404 = new CB404_tagCMRush();
|
| | | // 防止乱冲
|
| | | if (SelectTarget != null)
|
| | | if (!ClientDungeonStageUtility.isClientDungeon)
|
| | | {
|
| | | _b404.ObjID = (uint)SelectTarget.ServerInstID;
|
| | | }
|
| | | _b404.PosX = (ushort)(Pos.x * 2 + GA_Hero.MapOffset.x);
|
| | | _b404.PosY = (ushort)(Pos.z * 2 + GA_Hero.MapOffset.z);
|
| | | // 发送冲锋包
|
| | | CB404_tagCMRush _b404 = new CB404_tagCMRush();
|
| | | // 防止乱冲
|
| | | if (SelectTarget != null)
|
| | | {
|
| | | _b404.ObjID = (uint)SelectTarget.ServerInstID;
|
| | | }
|
| | | _b404.PosX = (ushort)(Pos.x * 2 + GA_Hero.MapOffset.x);
|
| | | _b404.PosY = (ushort)(Pos.z * 2 + GA_Hero.MapOffset.z);
|
| | |
|
| | | GA_Hero.recordServerPos = new Vector3(_b404.PosX, 0, _b404.PosY);
|
| | |
|
| | | if (!CrossServerUtility.IsCrossServer())
|
| | | {
|
| | | GameNetSystem.Instance.SendInfo(_b404);
|
| | | }
|
| | | else
|
| | | {
|
| | | GameNetSystem.Instance.SendToCrossServer(_b404);
|
| | | if (!CrossServerUtility.IsCrossServer())
|
| | | {
|
| | | GameNetSystem.Instance.SendInfo(_b404);
|
| | | }
|
| | | else
|
| | | {
|
| | | GameNetSystem.Instance.SendToCrossServer(_b404);
|
| | | }
|
| | | }
|
| | | }
|
| | | PrevPos = Pos;
|
| | |
| | | using System.Collections;
|
| | | using System.Collections.Generic;
|
| | | using UnityEngine;
|
| | |
|
| | |
|
| | | public class ClientHazyGrassStage : DungeonStage
|
| | | {
|
| | | public static Vector3 recordOriginalPos;
|
| | | static readonly Vector3 PlayerBornPosition1 = new Vector3(19.401f, 4.985f, 5.494f);
|
| | |
|
| | | static List<int> s_RandomIndexs = new List<int>();
|
| | |
| | | var hero = PlayerDatas.Instance.hero;
|
| | | if (hero != null)
|
| | | {
|
| | | recordOriginalPos = hero.Pos;
|
| | | hero.Pos = PlayerBornPosition1;
|
| | | hero.Rotation = Quaternion.Euler(0, -9.537001f, 0);
|
| | | CameraController.Instance.Apply();
|