public void BuildEnemy(MasterEnemyParam _enemy, int _iLevel) { hp = GetParamLevel(_enemy.hp, _iLevel); hp_max = hp; attack = GetParamLevel(_enemy.attack, _iLevel); speed = GetParamLevel(_enemy.speed, _iLevel); def = GetParamLevel(_enemy.def, _iLevel); mind = GetParamLevel(_enemy.mind, _iLevel); luck = GetParamLevel(_enemy.luck, _iLevel); }
public void Initialize( DataEnemyParam _data , MasterEnemyParam _master) { m_goRoot.SetActive(true); m_dataEnemyParam = _data; m_masterEnemyParam = _master; m_txtBossName.text = m_masterEnemyParam.name; m_barBossHp.SetValueMax(m_dataEnemyParam.hp_max); }
private void create_enemies(int _iCurrentFloor, string _strDungeonId) { gameMain.ClearEnemy(); MasterFloorParam floor_param = DataManager.Instance.masterFloor.list.Find(p => p.dungeon_id == _strDungeonId && (p.start <= _iCurrentFloor && _iCurrentFloor <= p.end)); int[] enemy_index_prob = floor_param.GetEnemyIndexProb(); int enemy_num = UtilRand.GetRand(10, 3); int[] pos_index = new int[enemy_num]; int[] pos_index_prob = new int[10]; for (int i = 0; i < 10; i++) { pos_index_prob[i] = 100; } for (int i = 0; i < enemy_num; i++) { int iResult = UtilRand.GetIndex(pos_index_prob); pos_index[i] = iResult; pos_index_prob[iResult] = 0; //Debug.Log(iResult); } for (int i = 0; i < enemy_num; i++) { //float x = UtilRand.GetRange(8.5f, 3.5f); float x = 3.5f + ((8.5f - 3.5f) / 10.0f) * pos_index[i]; int index = UtilRand.GetIndex(enemy_index_prob); int enemy_id = floor_param.GetEnemyId_fromIndex(index); MasterEnemyParam enemy = DataManager.Instance.masterEnemy.list.Find(p => p.enemy_id == enemy_id); gameMain.CreateEnemy(enemy, x, false); } if (_iCurrentFloor % 10 == 0) { MasterEnemyParam boss = DataManager.Instance.masterEnemy.list.Find(p => p.enemy_id == floor_param.boss); DataEnemyParam data = gameMain.CreateEnemy(boss, 9.0f, true); gameMain.panelBossStatus.Initialize(data, boss); } else { gameMain.panelBossStatus.Disable(); } }
public void CreateDropObject(EnemyBase enemyBase, MasterEnemyParam master_param) { Quaternion rot = new Quaternion(0.0f, 0.0f, 0.0f, 0.0f); GameObject obj = Instantiate(m_prefDropObject, enemyBase.gameObject.transform.position, rot, m_goFloor.transform) as GameObject; obj.SetActive(true); DropObject script = obj.GetComponent <DropObject>(); int iDropItemId = master_param.GetDropItemId(); MasterItemParam drop_item = DataManager.Instance.masterItem.list.Find(p => p.item_id == iDropItemId); script.Initialize(drop_item); }
public DataEnemyParam CreateEnemy(MasterEnemyParam _master, float _fPosX, bool _bIsBoss) { Enemy enemy = PrefabManager.Instance.MakeScript <Enemy>(m_prefEnemy, m_goStage); Vector3 scale = Vector3.one * ((float)_master.size / 100.0f); if (_bIsBoss) { scale *= 2.0f; } //enemy.gameObject.transform.localScale = scale; enemy.Initialize(_master, _fPosX, this, _bIsBoss, scale); enemy_list.Add(enemy); return(enemy.enemy_param); }
/* * [SerializeField] * private int show_hp; * [SerializeField] * private int show_hp_max; * [SerializeField] * private int show_attack; * [SerializeField] * private int show_defence; * [SerializeField] * private int show_speed; */ public void Initialize(MasterEnemyParam _master, float _fPos, GameMain _game, bool _isBoss, Vector3 _scale) { enemy_param = _master.Create(_isBoss); master_param = _master; m_gameMain = _game; SetSprite(_master.sprite_name); if (_isBoss) { gameObject.name += "boss"; } m_goSpriteRoot.transform.localScale = _scale; Touched = false; /* * show_hp = enemy_param.hp; * show_hp_max = enemy_param.hp_max; * show_attack = enemy_param.attack; * show_defence = enemy_param.defence; * show_speed = enemy_param.speed; */ transform.localPosition = new Vector3(_fPos, 0.0f, 0.0f); }
public override void OnUpdate() { base.OnUpdate(); if (enemy.is_setenemy) { MasterEnemyParam master_enemy = DataManager.Instance.masterEnemy.list.Find(p => p.enemy_id == enemy.enemy_id); enemy.dataUnitParam.BuildEnemy(master_enemy, enemy.enemy_level); if (enemy.is_boss) { //enemy.gameObject.transform.localScale = Vector3.one * 2.0f; } enemy.m_sprEnemy.sprite = enemy.m_sprAtlas.GetSprite(master_enemy.sprite_name); if (enemy.m_sprEnemy.gameObject.GetComponent <BoxCollider2D>() != null) { GameObject.Destroy(enemy.m_sprEnemy.gameObject.GetComponent <BoxCollider2D>()); } enemy.m_bcEnemy = enemy.m_sprEnemy.gameObject.AddComponent <BoxCollider2D>(); enemy.attack_timer = enemy.attack_interval; Finish(); } }
public MasterEnemyParam GetLevel(int _iLevel) { MasterEnemyParam ret = new MasterEnemyParam(); return(ret); }