public override void OnEvent(EventData eventData) { SubCode subCode = ParameterTool.GetParameters <SubCode>(eventData.Parameters, ParameterCode.SubCode, false); switch (subCode) { case SubCode.CreateEnemy: //Debug.Log("Get the response from server.."); CreateEnemyModel model = ParameterTool.GetParameters <CreateEnemyModel>(eventData.Parameters, ParameterCode.CreateEnemyModel); if (OnCreateEnemy != null) { OnCreateEnemy(model); } break; case SubCode.AsyncPostionAndEularAngler: EnemyPostionModel enemyPosmodel = ParameterTool.GetParameters <EnemyPostionModel>(eventData.Parameters, ParameterCode.EnemyPostionModel); if (OnAsyncEnemyPostionRotation != null) { OnAsyncEnemyPostionRotation(enemyPosmodel); } break; case SubCode.SyncEnemyAnimation: EnemyAnimationModel enemyAnimmodel = ParameterTool.GetParameters <EnemyAnimationModel>(eventData.Parameters, ParameterCode.EnemyAnimationModel); if (OnSyncEnemyAnimation != null) { OnSyncEnemyAnimation(enemyAnimmodel); } break; } }
public override void OnOperationResponse(ExitGames.Client.Photon.OperationResponse response) { SubCode subCode = ParameterTool.GetParameters <SubCode>(response.Parameters, ParameterCode.SubCode, false); switch (subCode) { case SubCode.SendTeam: if (response.ReturnCode == (short)ReturnCode.GetTeam) { List <Role> list = ParameterTool.GetParameters <List <Role> >(response.Parameters, ParameterCode.RoleList); int masterRoleID = ParameterTool.GetParameters <int>(response.Parameters, ParameterCode.MasterRoleID, false); //组队成功 if (OnGetTeam != null) { OnGetTeam(list, masterRoleID); } } else if (response.ReturnCode == (short)ReturnCode.WaitTeam) { if (OnWaitTeam != null) { OnWaitTeam(); } //正在组队 } break; case SubCode.CancelTeam: if (OnCancelTeam != null && response.ReturnCode == (short)ReturnCode.Success) { OnCancelTeam(); } break; } }
public override void OnOperationResponse(ExitGames.Client.Photon.OperationResponse response) { SubCode subCode = ParameterTool.GetParameters <SubCode>(response.Parameters, ParameterCode.SubCode, false); //Debug.Log("InventoryItemDB:"+subCode); switch (subCode) { case SubCode.GetInventoryItemDB: List <InventoryItemDB> list = ParameterTool.GetParameters <List <InventoryItemDB> >(response.Parameters, ParameterCode.InventoryItemdbList); //Debug.Log(list); if (list == null || list.Count == 0) { //Debug.Log("数据库没有装备信息"); return; } if (OnGetInventoryItemDB != null) { OnGetInventoryItemDB(list); } break; case SubCode.AddInventoryItemDB: InventoryItemDB itemDB = ParameterTool.GetParameters <InventoryItemDB>(response.Parameters, ParameterCode.InventoryItemdb); if (OnAddInventoryItemDB != null) { OnAddInventoryItemDB(itemDB); } break; case SubCode.UpdateInventoryItemDB: OnUpdateInventoryItemDB(); break; case SubCode.UpdateInventoryItemDBList: if (OnUpdateInventoryItemDBList != null) { OnUpdateInventoryItemDBList(); } break; case SubCode.GetShopInventoryDBList: List <ShopInventoryDB> shoplist = ParameterTool.GetParameters <List <ShopInventoryDB> >(response.Parameters, ParameterCode.ShopInventorydbList); if (OnGetShopInventoryDB != null) { OnGetShopInventoryDB(shoplist); } break; } }
public void OnEvent(EventData eventData) { ControllerBase controller; OperationCode opCode = ParameterTool.GetParameters <OperationCode>(eventData.Parameters, ParameterCode.OperationCode, false); controllers.TryGetValue((byte)opCode, out controller); if (controller != null) { controller.OnEvent(eventData); } else { Debug.LogWarning("receieve unknown event+OperationCode:" + opCode); } }
public override void OnOperationResponse(OperationResponse response) { SubCode subcode = ParameterTool.GetParameters <SubCode>(response.Parameters, ParameterCode.SubCode, false); switch (subcode) { case SubCode.GetPlayerList: List <Role> playerList = ParameterTool.GetParameters <List <Role> >(response.Parameters, ParameterCode.PlayerList); if (OnGetPlayerList != null) { OnGetPlayerList(playerList); } break; } }
public override void OnEvent(EventData eventData) { SubCode subcode = ParameterTool.GetParameters <SubCode>(eventData.Parameters, ParameterCode.SubCode, false); switch (subcode) { case SubCode.GetPlayerList: List <Role> list = ParameterTool.GetParameters <List <Role> >(eventData.Parameters, ParameterCode.PlayerList); if (OnGetPlayerList != null) { OnGetPlayerList(list); } break; } }
public override void OnOperationResponse(ExitGames.Client.Photon.OperationResponse response) { object subobject; response.Parameters.TryGetValue((byte)ParameterCode.SubCode, out subobject); SubCode subCode = (SubCode)subobject; switch (subCode) { case SubCode.GetRole: switch (response.ReturnCode) { case (short)ReturnCode.Success: List <Role> list = ParameterTool.GetParameters <List <Role> >(response.Parameters, ParameterCode.RoleList); OnGetRole(list); break; case (short)ReturnCode.Empty: OnGetEmptyRole(); //当服务器没有该角色信息的时候跳转到创建角色的界面。 break; } break; case SubCode.AddRole: switch (response.ReturnCode) { case (short)ReturnCode.Success: Role role = ParameterTool.GetParameters <Role>(response.Parameters, ParameterCode.Role); OnAddRole(role); break; case (short)ReturnCode.Fail: //添加角色失败 MessageManager._instance.SendMessage(response.DebugMessage); break; } break; case SubCode.SelectRole: if (OnseletRole != null) { OnseletRole(); } break; } }
public override void OnEvent(EventData eventData) { SubCode subcode = ParameterTool.GetParameters <SubCode>(eventData.Parameters, ParameterCode.SubCode, false); switch (subcode) { case SubCode.GetTeam: List <Role> list = ParameterTool.GetParameters <List <Role> >(eventData.Parameters, ParameterCode.RoleList); int masterRoleID = ParameterTool.GetParameters <int>(eventData.Parameters, ParameterCode.MasterRoleID, false); //组队成功 if (OnGetTeam != null) { OnGetTeam(list, masterRoleID); } break; case SubCode.AsyncPostionAndEularAngler: int roleid = ParameterTool.GetParameters <int>(eventData.Parameters, ParameterCode.RoleID, false); Vector3 pos = ParameterTool.GetParameters <Vector3Obj>(eventData.Parameters, ParameterCode.Postion).ToVector3(); Vector3 eularAnglers = ParameterTool.GetParameters <Vector3Obj>(eventData.Parameters, ParameterCode.EulerAnglers).ToVector3(); if (OnAsyncPostionAndRotation != null) { OnAsyncPostionAndRotation(roleid, pos, eularAnglers); } break; case SubCode.AsyncPlayerMoveAnimation: int roleid2 = ParameterTool.GetParameters <int>(eventData.Parameters, ParameterCode.RoleID, false); PlayerMoveAnimationModel model = ParameterTool.GetParameters <PlayerMoveAnimationModel>(eventData.Parameters, ParameterCode.PlayerMoveAnimationModel); if (OnAsyncPlayerMoveAnimation != null) { OnAsyncPlayerMoveAnimation(roleid2, model); } break; case SubCode.SyncPlayerAnimation: int roleid3 = ParameterTool.GetParameters <int>(eventData.Parameters, ParameterCode.RoleID, false); PlayerAnimationModel animationModel = ParameterTool.GetParameters <PlayerAnimationModel>(eventData.Parameters, ParameterCode.PlayerAnimationModel); if (OnSyncPlayerAnimation != null) { OnSyncPlayerAnimation(roleid3, animationModel); } break; } }
/// <summary> /// 从服务器接接到响应 /// </summary> /// <param name="response"></param> public override void OnOperationResponse(ExitGames.Client.Photon.OperationResponse response) { object subobject; response.Parameters.TryGetValue((byte)ParameterCode.SubCode, out subobject); SubCode subCode = (SubCode)subobject; switch (subCode) { case SubCode.GetTask: List <TaskDB> list = ParameterTool.GetParameters <List <TaskDB> >(response.Parameters, ParameterCode.TaskdbList); if (OnGetTaskList != null) { OnGetTaskList(list); } break; case SubCode.AddTask: TaskDB taskDB = ParameterTool.GetParameters <TaskDB>(response.Parameters, ParameterCode.Taskdb); if (OnAddTask != null) { if (response.ReturnCode == (short)ReturnCode.Success) { OnAddTask(taskDB); } } break; case SubCode.UpdateTask: if (OnUpdateTask != null) { if (response.ReturnCode == (short)ReturnCode.Success) { OnUpdateTask(); } } break; } }