public void OnClickSaveFormation() { bool isDiff = false; UserPartyData partyData = UserDataManager.Inst.GetUserPartyInfo(); List <int> indexList = new List <int>(); for (int i = 0; i < 10; i++) { indexList.Add(formationSlot[i]); if (partyData.formationDataDic[i].index != formationSlot[i]) { isDiff = true; } } if (isDiff == false) { DebugLog.Log(false, "Party Already Save"); SimpleErrorPopupVC.Inst.UpdateErrorText("Party Already Save"); return; } // TODO : 추후 파티가 늘어날수도 int partyIndex = 1; #if UNITY_EDITOR Cheat.Inst.RequestSavePartyCheat(partyIndex, indexList); #else PacketManager.Inst.RequestSaveParty(partyIndex, indexList); #endif }
public void SetPartyInfo(UserPartyData getPartyInfo) { if (partyInfo.formationDataDic.Count > 0) { for (int i = 0; i < 10; i++) { if (partyInfo.formationDataDic[i] != null) { if (partyInfo.formationDataDic[i].index != 0) { if (i <= DEFINE.ServantMaxFormationNum) { servantDic[partyInfo.formationDataDic[i].index].partyIndex = 0; servantDic[partyInfo.formationDataDic[i].index].state = 1; servantDic[partyInfo.formationDataDic[i].index].isPlaced = false; } else { monsterDic[partyInfo.formationDataDic[i].index].partyIndex = 0; monsterDic[partyInfo.formationDataDic[i].index].state = 1; monsterDic[partyInfo.formationDataDic[i].index].isPlaced = false; } } } } } partyInfo = getPartyInfo; for (int i = 0; i < 10; i++) { if (partyInfo.formationDataDic[i].index != 0) { if (i <= DEFINE.ServantMaxFormationNum) { servantDic[partyInfo.formationDataDic[i].index].partyIndex = partyInfo.partyIndex; servantDic[partyInfo.formationDataDic[i].index].state = 5; servantDic[partyInfo.formationDataDic[i].index].isPlaced = true; } else { monsterDic[partyInfo.formationDataDic[i].index].partyIndex = partyInfo.partyIndex; monsterDic[partyInfo.formationDataDic[i].index].state = 5; monsterDic[partyInfo.formationDataDic[i].index].isPlaced = true; } } } if (partyInfo.formationDataDic[0].index > 0) { userMainCharInfo.mainCharID = servantDic[partyInfo.formationDataDic[0].index].id; userMainCharInfo.mainCharType = CHAR_TYPE.SERVANT; userMainCharInfo.grade = 5; // 현재는 Common Servant 뿐 } }
public void SetFormation() { UserPartyData partyInfo = UserDataManager.Inst.GetUserPartyInfo(); if (partyInfo == null) { DebugLog.Log(false, "Invalid Party Info"); return; } for (int i = 0; i < 10; i++) { formationSlot[i] = partyInfo.formationDataDic[i].index; } }
public void InitUserInfo() { userInfo = null; userMainCharInfo = new MainCharInfo(); userLobbyInfo = new UserLobbyInfo(); servantDic = new Dictionary <int, UserServantData>(); monsterDic = new Dictionary <int, UserMonsterData>(); equipmentDic = new Dictionary <int, UserEquipmentData>(); weaponDic = new Dictionary <int, UserEquipmentData>(); armorDic = new Dictionary <int, UserEquipmentData>(); accessoryDic = new Dictionary <int, UserEquipmentData>(); itemDic = new Dictionary <int, UserItemData>(); partyInfo = new UserPartyData(); stageState = new UserStageStateData(); stageActionInfo = new battleActionData(); stageReward = new stageRewardData(); }
public void OnEnable() { Sprite xSprite = Resources.Load <Sprite>("UI/Common/exit"); UserPartyData partyData = UserDataManager.Inst.GetUserPartyInfo(); if (partyData.partyIndex == 0) { DebugLog.Log(true, "Invalid User Data"); return; } for (int i = 0; i < partyData.formationDataDic.Count; i++) { if (partyData.formationDataDic.ContainsKey(i) == false) { continue; } if (partyData.formationDataDic[i].index == 0) { GradeImage[i].sprite = CSVData.Inst.GetSpriteGrade(GRADE_TYPE.COMMON); IconImage[i].sprite = xSprite; objectInfo[i].SetActive(false); continue; } if (i <= DEFINE.ServantMaxFormationNum) { UserServantData servantData = UserDataManager.Inst.GetServantInfo(partyData.formationDataDic[i].index); if (servantData == null) { DebugLog.Log(true, "Invalid Servant Index : " + partyData.formationDataDic[i].index); } DBServantData dBServantData = CSVData.Inst.GetServantData(servantData.id); if (dBServantData == null) { DebugLog.Log(true, "Invalid Servant ID : " + servantData.id); } GradeImage[i].sprite = CSVData.Inst.GetSpriteGrade((GRADE_TYPE)servantData.grade); IconImage[i].sprite = dBServantData.servantIcon; imageClass[i].sprite = CSVData.Inst.GetSpriteServantJob(servantData.jobType); textLevel[i].text = servantData.level.ToString(); if (servantData.level >= DEFINE.MAX_LEVEL) { textExpPer[i].text = "MAX"; imageExp[i].fillAmount = 1f; } else { DBExpData dbExpData = CSVData.Inst.GetExpData(servantData.level); if (dbExpData == null) { DebugLog.Log(false, "Invalid Level Data"); } else { int exExp = 0; if (servantData.level - 1 > 0) { DBExpData exDBExpData = CSVData.Inst.GetExpData(servantData.level - 1); if (exDBExpData == null) { DebugLog.Log(false, "Invalid Level Data"); } else { exExp = exDBExpData.charExp; } } float expPer = (exExp - servantData.exp) / (float)(exExp - dbExpData.charExp); textExpPer[i].text = (int)(expPer * 100) + "%"; imageExp[i].fillAmount = expPer; } } objectInfo[i].SetActive(true); } else { UserMonsterData monsterData = UserDataManager.Inst.GetMonsterInfo(partyData.formationDataDic[i].index); if (monsterData == null) { DebugLog.Log(true, "Invalid Monster Index : " + partyData.formationDataDic[i].index); } DBMonsterData dbMonsterData = CSVData.Inst.GetMonsterData(monsterData.id); if (dbMonsterData == null) { DebugLog.Log(true, "Invalid Monster ID : " + monsterData.id); } GradeImage[i].sprite = CSVData.Inst.GetSpriteGrade((GRADE_TYPE)monsterData.grade); IconImage[i].sprite = dbMonsterData.monsterIcon; imageClass[i].sprite = CSVData.Inst.GetSmallSpriteTribeType(monsterData.tribeType); imageType[i - 5].sprite = CSVData.Inst.GetSpriteElementType(monsterData.elementType); textLevel[i].text = monsterData.level.ToString(); if (monsterData.level >= DEFINE.MAX_LEVEL) { textExpPer[i].text = "MAX"; imageExp[i].fillAmount = 1f; } else { DBExpData dbExpData = CSVData.Inst.GetExpData(monsterData.level); if (dbExpData == null) { DebugLog.Log(false, "Invalid Level Data"); } else { int exExp = 0; if (monsterData.level - 1 > 0) { DBExpData exDBExpData = CSVData.Inst.GetExpData(monsterData.level - 1); if (exDBExpData == null) { DebugLog.Log(false, "Invalid Level Data"); } else { exExp = exDBExpData.charExp; } } float expPer = (exExp - monsterData.exp) / (float)(exExp - dbExpData.charExp); textExpPer[i].text = (int)(expPer * 100) + "%"; imageExp[i].fillAmount = expPer; } } objectInfo[i].SetActive(true); } } }