//参加战斗的2方队列 void InitFightList(RoleBase[] player, RoleBase[] ai) { for (int i = 0; i < playerRoles.Length; i++) { playerRoles[i] = player[i]; var role = playerRoles[i]; if (role != null) { /*role.SetGo(playerGos[i]);*/ role.BeginFight(); role.CopyAllValue(); role.SetFightIndex(EnumType.FightListType.Player, i); } } GameLevelModel gameLevel = ModelManager.Get <GameLevelModel>("GameLevelModel"); //如果进入随机关卡了 每一关敌人的全属性就+value% int curDis = gameLevel.GetLevel() - GameLevelModel.MaxLevel; float value = 10f; for (int i = 0; i < aiRoles.Length; i++) { aiRoles[i] = null; aiRoles[i] = ai[i]; var role = aiRoles[i]; if (role != null) { if (curDis > 0) { for (int j = 0; j < 9; j++) { role.attributes[j] *= (1 + curDis * value / 100); } } role.BeginFight(); role.SetFightIndex(EnumType.FightListType.Ai, i); } } }
void UpdateLevelView(dynamic ob = null) { gameLevelText.text = "Level " + gameLevelModel.GetLevel().ToString(); }
//获得关卡奖励(不包括金币,金币奖励在 playerData类中处理) void GetReward(dynamic dy) { GameLevelModel gameLevel = ModelManager.Get <GameLevelModel>("GameLevelModel"); EquipModel equipModel = ModelManager.Get <EquipModel>("EquipModel"); int curLevel = gameLevel.GetLevel(); if (curLevel % ConstConfig.equipRewardLevel == 0) { //获得装备奖励 //第一个装备的id为1,随机直接int里随机 //获得随机3件装备 List <Equip> equipIds = new List <Equip>(MaxEquipReward); //概率 30 30 20 10 10 int gailv1 = 30; //1-30 int gailv2 = 60; //31-60 int gailv3 = 80; //61-80 int gailv4 = 90; //81-90 int gailv5 = 100; //91-100 for (int i = 0; i < MaxEquipReward; i++) { int randomRes = Random.Range(1, 101); int resLevel = 0; if (randomRes >= 1 && randomRes <= gailv1) { resLevel = 1; } else if (randomRes >= gailv1 + 1 && randomRes <= gailv2) { resLevel = 2; } else if (randomRes >= gailv2 + 1 && randomRes <= gailv3) { resLevel = 3; } else if (randomRes >= gailv3 + 1 && randomRes <= gailv4) { resLevel = 4; } else if (randomRes >= gailv4 + 1 && randomRes <= gailv5) { resLevel = 5; } var targetIds = EquipModel.equipIds[resLevel]; int id = targetIds[Random.Range(0, targetIds.Count)]; Equip e = new Equip(id); equipIds.Add(e); equipModel.AddEquip(e); } ViewManager.Get <WndFightOver>("WndFightOver").ShowEquipReward(equipIds); } if (curLevel % ConstConfig.talentRewardLevel == 0) { if (ModelManager.Get <TalentModel>("TalentModel").canUseTalent.Count > 0) { ViewManager.Get("WndTalent").SetVisible(true); } } }