public void AddItemInList(List <Defines.ItemType> itemList, Char_EnemyStats stat) { foreach (Defines.ItemType type in itemList) { m_items.Add(type); } m_enemyStats = stat; }
public void InstantiateItemBox(Vector3 pos, Char_EnemyStats enemyStats) { GameObject go = Managers.Resources.Instantiate($"{m_prefabsPath}ItemBox_{enemyStats.enemyType}", m_itemBoxHolder); go.transform.position = pos; List <Defines.ItemType> items = new List <Defines.ItemType>(); //items.Add((Defines.ItemType)UnityEngine.Random.Range(1, (int)Defines.ItemType.Count)); items.Add(Defines.ItemType.HpPotion); go.GetComponent <ItemBoxBehavior>().AddItemInList(items, enemyStats); }
protected override void Init() { m_enemyStats = new Char_EnemyStats { HP = 10, AttackDamage = 10, Name = transform.name.Split('(')[0], Drop_Coin = 30, Drop_Exp = 16, }; m_animator = gameObject.GetComponent <Animator>(); base.Init(); }
public void DyingEnemyEvtListner(Char_EnemyStats stat) { if (stat.Name == m_huntingTarget) { m_curHuntingCnt++; Managers.UI.GetSceneUI <UI_QuestScene>().ChangeQuestProgressText(m_questType, $"{m_huntingTarget} 사냥 퀘스트 : {m_curHuntingCnt}/{m_goalHuntingCnt}"); Debug.Log($"{m_huntingTarget} 사냥 퀘스트 : {m_curHuntingCnt}/{m_goalHuntingCnt}"); } if (m_curHuntingCnt >= m_goalHuntingCnt) { Clear(); Managers.Quest.FinishQuset(m_questType); } }
public void LoadDataAndSpawnEnemy(int idx) { m_curMapIdx = Managers.World.CurMapIdx; string loadString = File.ReadAllText("Assets/Resources/Data/EnemyData.json"); JObject loaddata = JObject.Parse(loadString); JArray enemyStatsDatas = (JArray)loaddata[$"EnemyData_{idx}"][m_curMapIdx]; JArray enemyPosDatas = (JArray)loaddata[$"EnemyPos_{idx}"][m_curMapIdx]; for (int i = 0; i < enemyStatsDatas.Count; i++) { Char_EnemyStats stats = JsonConvert.DeserializeObject <Char_EnemyStats>(enemyStatsDatas[i].ToString()); Defines.Position pos = JsonConvert.DeserializeObject <Defines.Position>(enemyPosDatas[i].ToString()); Transform enemy = Managers.Object.SpawnEnemy(stats.Name, pos); enemy.GetComponent <Char_EnemyCtr>().m_enemyStats = stats; } }
void SpawnEnemyConstantly(Char_EnemyStats stat) { Managers.Object.SpawnObjectOnBoard(Defines.ObjectType.Enemy, stat.Name, new Defines.Position(UnityEngine.Random.Range(0, Managers.Board.BoardWidth), UnityEngine.Random.Range(0, Managers.Board.BoardHeight))); }