public void BonusWeakElement(EffectElement element) { if (IsWeakElement(element)) { _context.Attack = (Int16)(_context.Attack * 3 >> 1); } }
public void PenaltyAbsorbElement(EffectElement element) { if (CanAbsorbElement(element)) { _context.DefensePower = 0; } }
public void PenaltyHalfElement(EffectElement element) { if (IsHalfElement(element)) { _context.Attack >>= 1; } }
public Boolean CanAbsorbElement(EffectElement element) { if (IsAbsorbElement(element)) { _context.Flags |= BattleCalcFlags.Absorb; return(true); } return(false); }
public Boolean CanGuardElement(EffectElement element) { if (IsGuardElement(element)) { _context.Flags |= BattleCalcFlags.Guard; return(true); } return(false); }
public void AlterStatuses(EffectElement element) { if ((element & (EffectElement.Cold | EffectElement.Aqua)) != 0) { RemoveStatus(BattleStatus.Heat); } if ((element & EffectElement.Fire) != 0) { RemoveStatus(BattleStatus.Freeze); } }
public static void Effect(string effectName, Vector3 position, float volumeSound = -1f) { MusicManager musicManager = MusicManager.GetMusicManager(); GameObject ONE_SHOT = Instantiate(Resources.Load("Prefabs/ONE_SHOT", typeof(GameObject))) as GameObject; EffectElement found = musicManager.foundEffect(effectName); if (found.name != null) { volumeSound = volumeSound == -1f ? musicManager.volume : volumeSound; ONE_SHOT.transform.position = position; ONE_SHOT.GetComponent <OneShotEffect>().Play(found.variants[Random.Range(0, found.variants.Count)], volumeSound); } }
public Boolean CanAttackElement(EffectElement element) { if (CanGuardElement(element)) { return(false); } PenaltyHalfElement(element); PenaltyAbsorbElement(element); BonusWeakElement(element); AlterStatuses(element); return(true); }
public List <effect_data.Effect> GetEffect(uint eid) { EffectElement?[] effectElements = GetEffectElementsByKey(eid); var eff = new List <effect_data.Effect>(); if (effectElements.Length > 0) { for (int i = 0; i < effectElements.Length; i++) { EffectElement?item = effectElements[i]; EffectElement effectElement = item.Value; eff.Add(new effect_data.Effect((int)effectElement.Function, (int)effectElement.Attribute, effectElement.Value, effectElement.PipeLv)); } } return(eff); }
public void PlayEffect(string effectName, float volumeSound = -1f) { volumeSound = volumeSound == -1 ? volume : volumeSound; EffectElement found = foundEffect(effectName); if (found.name != null) { AudioSource newAudio = gameObject.AddComponent(typeof(AudioSource)) as AudioSource; Sound2D.Adapt2DSound(newAudio); newAudio.maxDistance = maxDistance; newAudio.minDistance = minDistance; newAudio.clip = found.variants[Random.Range(0, found.variants.Count)]; newAudio.volume = volumeSound; newAudio.Play(); newAudio.loop = false; allSourcesSoundsEffects.Add(newAudio); } }
public void ParseEntry(String[] raw) { int index = 0; Targets = (TargetType)CsvParser.Byte(raw[index++]); DefaultAlly = CsvParser.Boolean(raw[index++]); Display = (TargetDisplay)CsvParser.Byte(raw[index++]); AnimationId = CsvParser.Int16(raw[index++]); Dead = CsvParser.Boolean(raw[index++]); DefaultDead = CsvParser.Boolean(raw[index++]); ScriptId = CsvParser.Byte(raw[index++]); Power = CsvParser.Byte(raw[index++]); Rate = CsvParser.Byte(raw[index++]); Element = (EffectElement)CsvParser.Byte(raw[index++]); Status = (BattleStatus)CsvParser.UInt32(raw[index]); }
public Boolean IsAbsorbElement(EffectElement element) { return((AbsorbElement & element) != 0); }
public static void SetBattleFollowMessage(BattleMesages message, EffectElement element) { UIManager.Battle.SetBattleFollowMessage((Int32)message, UIManager.Battle.BtlGetAttrName((Int32)element)); }
public Boolean HasElement(EffectElement element) { return((Element & element) != 0); }
public Boolean IsGuardElement(EffectElement element) { return((GuardElement & element) != 0); }
public Boolean IsHalfElement(EffectElement element) { return((HalfElement & element) != 0); }
public Boolean IsWeakElement(EffectElement element) { return((WeakElement & element) != 0); }