public static SkillSlot UnserializeSkillSlot(int nSerialized) { int iSkillSlot = nSerialized & (15); //select the first 4 bits Chr chr = TarChr.UnserializeChr(nSerialized >> 4); //chop off the last 4 bits return(chr.arSkillSlots[iSkillSlot]); }
public static TarChr AddTarget(Skill _skill, FnValidSelection _IsValidSelection) { TarChr tarchr = new TarChr(_skill, _IsValidSelection); _skill.lstTargets.Add(tarchr); return(tarchr); }
public override int[] Serialize() { int[] arnSerializedSelections = new int[skillSelected.lstTargets.Count + 2]; //First, add the character who's set to be acting arnSerializedSelections[0] = TarChr.SerializeChr(chrActing); //Second, add the serialization of the use skill arnSerializedSelections[1] = Serializer.SerializeSkillSlot(skillslotSelected); //Then add all the selections afterward for (int i = 0; i < skillSelected.lstTargets.Count; i++) { //For each Target, ask it how we should serialize the selected object we have stored // Note - i+1, since we're adding all selections after the used skill arnSerializedSelections[i + 2] = skillSelected.lstTargets[i].Serialize(lstSelections[i]); } return(arnSerializedSelections); }
public override void InitTargets() { TarMana.AddTarget(this, manaCost); TarChr.AddTarget(this, Target.AND(TarChr.IsDiffTeam(chrOwner), TarChr.IsFrontliner())); }
public override void InitTargets() { TarMana.AddTarget(this, manaCost); TarChr.AddTarget(this, TarChr.IsDiffTeam(chrOwner)); }
public override void InitTargets() { TarMana.AddTarget(this, manaCost); TarChr.AddTarget(this, TarChr.TRUE); }
public static int SerializeSkillSlot(SkillSlot skillslot) { return((TarChr.SerializeChr(skillslot.chrOwner) << 4) + (skillslot.iSlot)); }
public override void InitTargets() { TarMana.AddTarget(this, manaCost); TarChr.AddTarget(this, TarChr.IsFrontliner()); }