public override void LearnDarknessSkill(Character.Stats monsterStats, Transform monster) { if (this.ActiveSkills == null) { this.ActiveSkills = new int[3]; } if (this.AcquiredSkills == null) { this.AcquiredSkills = new List <int>(); } ////랜덤으로 암속성 스킬 습득(패시브면 1번만 쓰고 사라짐 액티브면 저장) int randomSkillnum = Random.Range(0, 2); switch (randomSkillnum) { case 0: // default Skills LearnDefaultSkill(monsterStats, monster); break; case 1: switch (Random.Range(SkillKind.kDarkNessTmp1, SkillKind.kDarkNessTmp1 + 1)) //추후 수정 { //DarknessSkills - Active case SkillKind.kDarkNessTmp1: this.ActiveSkills[SkillCount] = SkillKind.kDarkNessTmp1; this.SkillCount++; AcquiredSkills.Add(SkillKind.kDarkNessTmp1); Debug.Log("어둠속성 스킬을 배웠습니다"); break; } break; } CheckOverlap(SkillKind.kDarkNessTmp1, SkillKind.kDarkNessTmp1); //추후 수정 }
public override void LearnWaterSkill(Character.Stats monsterStats, Transform monster) { if (this.ActiveSkills == null) { this.ActiveSkills = new int[3]; } if (this.AcquiredSkills == null) { this.AcquiredSkills = new List <int>(); } ////랜덤으로 수속성 스킬 습득(패시브면 1번만 쓰고 사라짐 액티브면 저장) /// int randomSkillnum = Random.Range(0, 2); switch (randomSkillnum) { case 0: // default Skills LearnDefaultSkill(monsterStats, monster); break; case 1: switch (Random.Range(SkillKind.kSlow, SkillKind.kSlow + 1)) //추후 수정 //WaterSkills - Active { case SkillKind.kSlow: this.ActiveSkills[SkillCount] = SkillKind.kSlow; this.SkillCount++; AcquiredSkills.Add(SkillKind.kSlow); Debug.Log("슬로우를 배웠습니다"); break; } break; } CheckOverlap(SkillKind.kSlow, SkillKind.kSlow);//추후 수정 }
public void AcquireSkill(SkillDefinition definition) { if (!HasAcquiredSkill(definition)) { AcquiredSkills.Add(definition); CombatText.NewText(new Rectangle((int)player.position.X, (int)player.position.Y, player.width, player.height), new Color(145, 228, 255), definition.DisplayName + " Unlocked!", true, false); } }
public override void LearnKingSlimeSkill(Character.Stats monsterStats, Transform monster) { if (this.ActiveSkills == null) { this.ActiveSkills = new int[4] { -1, -1, -1, -1 } } ; if (this.AcquiredSkills == null) { this.AcquiredSkills = new List <int>(); } for (int i = 0; i < 4; i++) { this.ActiveSkills[i] = i; this.SkillCount++; AcquiredSkills.Add(i); } }
public override void LearnFlameSkill(Character.Stats monsterStats, Transform monster) { if (this.ActiveSkills == null) { this.ActiveSkills = new int[3] { -1, -1, -1 } } ; if (this.AcquiredSkills == null) { this.AcquiredSkills = new List <int>(); } ////랜덤으로 화염스킬 습득(패시브면 1번만 쓰고 사라짐 액티브면 저장) /// int randomSkillnum = Random.Range(0, 2); switch (randomSkillnum) { case 0: // default Skills LearnDefaultSkill(monsterStats, monster); break; case 1: switch (Random.Range(SkillKind.kLava, SkillKind.kFlameColak + 1)) { //FlameSkills - Active case SkillKind.kLava: this.ActiveSkills[SkillCount] = SkillKind.kLava; this.SkillCount++; AcquiredSkills.Add(SkillKind.kLava); Debug.Log("라바를 배웠습니다"); break; case SkillKind.kFlameColak: this.ActiveSkills[SkillCount] = SkillKind.kFlameColak; this.SkillCount++; AcquiredSkills.Add(SkillKind.kFlameColak); Debug.Log("호염망토를 배웠습니다"); break; } break; } CheckOverlap(SkillKind.kLava, SkillKind.kFlameColak); }
protected void LearnDefaultSkill(Character.Stats monsterStats, Transform monster) { switch (Random.Range(0, SkillKind.defaultSkillCount)) { //DefaultSkills - Passive case SkillKind.kHaste: Haste(monsterStats); AcquiredSkills.Add(SkillKind.kHaste); Debug.Log("신속함을 배웠습니다"); break; case SkillKind.kRapid: Rapid(monsterStats); AcquiredSkills.Add(SkillKind.kRapid); Debug.Log("날렵한을 배웠습니다"); break; case SkillKind.kSharp: Sharp(monsterStats); AcquiredSkills.Add(SkillKind.kSharp); Debug.Log("날카로움를 배웠습니다"); break; case SkillKind.kHealty: Healty(monsterStats); AcquiredSkills.Add(SkillKind.kHealty); Debug.Log("건강함을 배웠습니다"); break; case SkillKind.kVolant: Volant(monsterStats); AcquiredSkills.Add(SkillKind.kVolant); Debug.Log("날쌘을 배웠습니다"); break; case SkillKind.kSonic: Sonic(monsterStats); AcquiredSkills.Add(SkillKind.kSonic); Debug.Log("소닉을 배웠습니다"); break; case SkillKind.kSuperArmor: SuperArmor(monsterStats, monster); AcquiredSkills.Add(SkillKind.kSuperArmor); Debug.Log("슈퍼아머를 배웠습니다"); break; case SkillKind.kGiant: Giant(monsterStats, monster); AcquiredSkills.Add(SkillKind.kGiant); Debug.Log("거대한을 배웠습니다"); break; //DefaultSkills - Active case SkillKind.kHeadHunter: this.ActiveSkills[SkillCount] = SkillKind.kHeadHunter; this.SkillCount++; AcquiredSkills.Add(SkillKind.kHeadHunter); Debug.Log("머리노리기를 배웠습니다"); break; case SkillKind.kSmash: this.ActiveSkills[SkillCount] = SkillKind.kSmash; this.SkillCount++; AcquiredSkills.Add(SkillKind.kSmash); Debug.Log("강격을 배웠습니다"); break; case SkillKind.kTwiceAttack: this.ActiveSkills[SkillCount] = SkillKind.kTwiceAttack; this.SkillCount++; AcquiredSkills.Add(SkillKind.kTwiceAttack); Debug.Log("난 한번에 두번 때려를 배웠습니다"); break; } }