public void EnemyParse() { string sql = "SELECT*FROM Enemy "; IDataReader dataReader = DBManager.GetInstance().DataBaseRead(sql); EnemyCache enemyCache = EnemyCache.GetInstance(); while (dataReader.Read()) { string spritePath = string.Empty; spritePath = dataReader.GetString(0); if (Application.platform == RuntimePlatform.Android) { spritePath = spritePath.Replace("./Assets/Resources/", "").Replace(".png", ""); Sprite sprite = Resources.Load <Sprite>(spritePath); enemyCache.normalEnemies.Add(sprite); } else { Sprite sprite = SpriteLoader.LoadNewSprite(spritePath); enemyCache.normalEnemies.Add(sprite); } } sql = "SELECT*FROM Boss"; dataReader = DBManager.GetInstance().DataBaseRead(sql); while (dataReader.Read()) { Enemy boss = new Enemy(); string spritePath = string.Empty; string name = dataReader.GetString(0); spritePath = dataReader.GetString(1); enemyCache.bosses.Add(name, boss); boss.speed = dataReader.GetFloat(2); // Debug.Log(dataReader.GetFloat(2)); boss.hp = dataReader.GetInt32(4); Sprite sprite; if (Application.platform == RuntimePlatform.Android) { spritePath = spritePath.Replace("./Assets/Resources/", "").Replace(".png", ""); sprite = Resources.Load <Sprite>(spritePath); } else { sprite = SpriteLoader.LoadNewSprite(spritePath); } boss.sprite = sprite; boss.maxHp = boss.hp; } }
public void DiceParse() { string sql = "SELECT*FROM AttackType "; IDataReader dataReader = DBManager.GetInstance().DataBaseRead(sql); while (dataReader.Read()) { DiceStatus diceStatus = new DiceStatus(); try { diceStatus.diceName = dataReader.GetString(0); //diceStatus.diceEye = 1; if (Application.platform == RuntimePlatform.Android) { string spritePath = string.Empty; spritePath = dataReader.GetString(1); spritePath = spritePath.Replace("./Assets/Resources/", "").Replace(".png", ""); Debug.Log("안드로이드 리소스 로딩"); Debug.Log(spritePath); diceStatus.sprite = Resources.Load <Sprite>(spritePath); diceStatus.dotSprite = Resources.Load <Sprite>(spritePath.Replace("Dice", "Dot")); if (!dataReader.IsDBNull(10)) { diceStatus.attackType.effect = Resources.Load <Sprite>(dataReader.GetString(10).Replace("./Assets/Resources/", "").Replace(".png", "")); } } else { diceStatus.sprite = SpriteLoader.LoadNewSprite(dataReader.GetString(1)); diceStatus.dotSprite = SpriteLoader.LoadNewSprite(dataReader.GetString(1).Replace("Dice.png", "Dot.png")); if (!dataReader.IsDBNull(10)) { Debug.Log("이미지 로딩"); diceStatus.attackType.effect = SpriteLoader.LoadNewSprite(dataReader.GetString(10)); } } diceStatus.attackType.ofensiveType = EnumUtills.Parse <OfensiveType>(dataReader.GetString(2)); diceStatus.attackType.damageType = EnumUtills.Parse <DamageType>(dataReader.GetString(3)); diceStatus.attackType.target = EnumUtills.Parse <Target>(dataReader.GetString(4)); diceStatus.attackType.damage = dataReader.GetFloat(5); diceStatus.attackType.attackSpeed = dataReader.GetFloat(6); diceStatus.attackType.diffusion = dataReader.GetFloat(7); diceStatus.attackType.range = dataReader.GetInt32(8); diceStatus.describe = dataReader.GetString(9); string path = ""; try { path = "Animation/" + dataReader.GetString(1).Replace("./Assets/Resources/", "").Replace("Dice.png", "Dot"); diceStatus.animator = Resources.Load <RuntimeAnimatorController>(path); Debug.Log(path); if (diceStatus.animator != null) { Debug.Log("애니메이션 존재"); } } catch (Exception e) { Debug.Log(e); } if (!dataReader.IsDBNull(11)) { diceStatus.attackType.animationEffect = Resources.Load <RuntimeAnimatorController>(dataReader.GetString(11)); } // 12번은 디버프 적용 부위 설정임. diceStatus.attackType.potential = dataReader.GetFloat(13); DiceCache.GetInstance().diceCache.Add(diceStatus.diceName, diceStatus); } catch (Exception e) { Debug.Log("데이터 파싱 에러" + e); } } }