本文整理汇总了C#中HREngine.Bots.Minion.updateReadyness方法的典型用法代码示例。如果您正苦于以下问题:C# Minion.updateReadyness方法的具体用法?C# Minion.updateReadyness怎么用?C# Minion.updateReadyness使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类HREngine.Bots.Minion
的用法示例。
在下文中一共展示了Minion.updateReadyness方法的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: createNewMinion
public Minion createNewMinion(Handmanager.Handcard hc, int zonepos, bool own)
{
Minion m = new Minion
{
handcard = new Handmanager.Handcard(hc),
zonepos = zonepos,
entityID = hc.entity,
Angr = hc.card.Attack,
Hp = hc.card.Health,
maxHp = hc.card.Health,
name = hc.card.name,
playedThisTurn = true,
numAttacksThisTurn = 0
};
m.own = own;
m.isHero = false;
m.entityID = hc.entity;
m.playedThisTurn = true;
m.numAttacksThisTurn = 0;
m.windfury = hc.card.windfury;
m.taunt = hc.card.tank;
m.charge = (hc.card.Charge) ? 1 : 0;
m.divineshild = hc.card.Shield;
m.poisonous = hc.card.poisionous;
m.stealth = hc.card.Stealth;
m.updateReadyness();
if (m.name == CardDB.cardName.lightspawn)
{
m.Angr = m.Hp;
}
return m;
}
示例2: BoardTester
//.........这里部分代码省略.........
tempminion.playedThisTurn = ptt;
tempminion.windfury = wndfry;
tempminion.stealth = stl;
tempminion.poisonous = pois;
tempminion.immune = immn;
tempminion.concedal = cncdl;
tempminion.destroyOnOwnTurnStart = destroyOnOwnTurnStart;
tempminion.destroyOnOwnTurnEnd = destroyOnOwnTurnEnd;
tempminion.destroyOnEnemyTurnStart = destroyOnEnemyTurnStart;
tempminion.destroyOnEnemyTurnEnd = destroyOnEnemyTurnEnd;
tempminion.shadowmadnessed = shadowmadnessed;
tempminion.cantLowerHPbelowONE = cntlower;
tempminion.cantBeTargetedBySpellsOrHeroPowers = cnttrgt;
tempminion.charge = chrg;
tempminion.AdjacentAngr = adjadmg;
tempminion.tempAttack = tmpdmg;
tempminion.spellpower = spllpwr;
tempminion.ancestralspirit = ancestralspirit;
tempminion.ownBlessingOfWisdom = ownBlessingOfWisdom;
tempminion.enemyBlessingOfWisdom = enemyBlessingOfWisdom;
tempminion.ownPowerWordGlory = ownPwordGlory;
tempminion.enemyPowerWordGlory = enemyPwordGlory;
tempminion.souloftheforest = souloftheforest;
tempminion.explorershat = explorersHat;
tempminion.infest = infest;
tempminion.canAttackNormal = false;
if (ready == true) tempminion.canAttackNormal = true;
if (maxhp > hp) tempminion.wounded = true;
tempminion.updateReadyness();
this.ownminions.Add(tempminion);
}
}
if (readstate == 4) // minion or enchantment
{
if (s.Contains(" zp:"))
{
string minionname = s.Split(' ')[0];
string minionid = s.Split(' ')[1];
int zp = Convert.ToInt32(s.Split(new string[] { " zp:" }, StringSplitOptions.RemoveEmptyEntries)[1].Split(' ')[0]);
int ent = 1000 + j;
if (s.Contains(" e:")) ent = Convert.ToInt32(s.Split(new string[] { " e:" }, StringSplitOptions.RemoveEmptyEntries)[1].Split(' ')[0]);
int attack = Convert.ToInt32(s.Split(new string[] { " A:" }, StringSplitOptions.RemoveEmptyEntries)[1].Split(' ')[0]);
int hp = Convert.ToInt32(s.Split(new string[] { " H:" }, StringSplitOptions.RemoveEmptyEntries)[1].Split(' ')[0]);
int maxhp = Convert.ToInt32(s.Split(new string[] { " mH:" }, StringSplitOptions.RemoveEmptyEntries)[1].Split(' ')[0]);
bool ready = s.Split(new string[] { " rdy:" }, StringSplitOptions.RemoveEmptyEntries)[1].Split(' ')[0] == "True" ? true : false;
int natt = 0;
//if (s.Contains(" natt:")) natt = Convert.ToInt32(s.Split(new string[] { " natt:" }, StringSplitOptions.RemoveEmptyEntries)[1].Split(' ')[0]);
// optional params (bools)
bool ex = s.Contains(" ex");
bool taunt = s.Contains(" tnt");
bool frzn = s.Contains(" frz");
bool silenced = s.Contains(" silenced");
bool divshield = s.Contains(" divshield");
bool ptt = s.Contains(" ptt");
示例3: BoardTester
//.........这里部分代码省略.........
tempminion.maxHp = maxhp;
tempminion.Ready = ready;
tempminion.numAttacksThisTurn = natt;
tempminion.exhausted = ex;
tempminion.taunt = taunt;
tempminion.frozen = frzn;
tempminion.silenced = silenced;
tempminion.divineshild = divshield;
tempminion.playedThisTurn = ptt;
tempminion.windfury = wndfry;
tempminion.stealth = stl;
tempminion.poisonous = pois;
tempminion.immune = immn;
tempminion.concedal = cncdl;
tempminion.destroyOnOwnTurnStart = destroyOnOwnTurnStart;
tempminion.destroyOnOwnTurnEnd = destroyOnOwnTurnEnd;
tempminion.destroyOnEnemyTurnStart = destroyOnEnemyTurnStart;
tempminion.destroyOnEnemyTurnEnd = destroyOnEnemyTurnEnd;
tempminion.shadowmadnessed = shadowmadnessed;
tempminion.cantLowerHPbelowONE = cntlower;
tempminion.charge = chrg;
tempminion.AdjacentAngr = adjadmg;
tempminion.tempAttack = tmpdmg;
tempminion.spellpower = spllpwr;
tempminion.ancestralspirit = ancestralspirit;
tempminion.ownBlessingOfWisdom = ownBlessingOfWisdom;
tempminion.enemyBlessingOfWisdom = enemyBlessingOfWisdom;
tempminion.souloftheforest = souloftheforest;
if (maxhp > hp) tempminion.wounded = true;
tempminion.updateReadyness();
this.ownminions.Add(tempminion);
}
}
if (readstate == 4) // minion or enchantment
{
if (s.Contains(" zp:"))
{
string minionname = s.Split(' ')[0];
string minionid = s.Split(' ')[1];
int zp = Convert.ToInt32(s.Split(new string[] { " zp:" }, StringSplitOptions.RemoveEmptyEntries)[1].Split(' ')[0]);
int ent = 1000 + j;
if (s.Contains(" e:")) ent = Convert.ToInt32(s.Split(new string[] { " e:" }, StringSplitOptions.RemoveEmptyEntries)[1].Split(' ')[0]);
int attack = Convert.ToInt32(s.Split(new string[] { " A:" }, StringSplitOptions.RemoveEmptyEntries)[1].Split(' ')[0]);
int hp = Convert.ToInt32(s.Split(new string[] { " H:" }, StringSplitOptions.RemoveEmptyEntries)[1].Split(' ')[0]);
int maxhp = Convert.ToInt32(s.Split(new string[] { " mH:" }, StringSplitOptions.RemoveEmptyEntries)[1].Split(' ')[0]);
bool ready = s.Split(new string[] { " rdy:" }, StringSplitOptions.RemoveEmptyEntries)[1].Split(' ')[0] == "True" ? true : false;
int natt = 0;
//if (s.Contains(" natt:")) natt = Convert.ToInt32(s.Split(new string[] { " natt:" }, StringSplitOptions.RemoveEmptyEntries)[1].Split(' ')[0]);
//optional params (bools)
bool ex = false;//exhausted
if (s.Contains(" ex")) ex = true;
bool taunt = false;
if (s.Contains(" tnt")) taunt = true;
示例4: getMinions
private void getMinions()
{
Dictionary<int, HREntity> allEntitys = HRGame.GetEntityMap();
ownMinions.Clear();
enemyMinions.Clear();
HRPlayer ownPlayer = HRPlayer.GetLocalPlayer();
HRPlayer enemyPlayer = HRPlayer.GetEnemyPlayer();
// ALL minions on Playfield:
List<HRCard> list = HRCard.GetCards(ownPlayer, HRCardZone.PLAY);
list.AddRange(HRCard.GetCards(enemyPlayer, HRCardZone.PLAY));
List<HREntity> enchantments = new List<HREntity>();
foreach (HRCard item in list)
{
HREntity entitiy = item.GetEntity();
int zp = entitiy.GetZonePosition();
if (entitiy.GetCardType() == HRCardType.MINION && zp >= 1)
{
//Helpfunctions.Instance.ErrorLog("zonepos " + zp);
CardDB.Card c = CardDB.Instance.getCardDataFromID(CardDB.Instance.cardIdstringToEnum(entitiy.GetCardId()));
Minion m = new Minion();
m.name = c.name;
m.handcard.card = c;
m.Angr = entitiy.GetATK();
m.maxHp = entitiy.GetHealth();
m.Hp = m.maxHp - entitiy.GetDamage();
if (m.Hp <= 0) continue;
m.wounded = false;
if (m.maxHp > m.Hp) m.wounded = true;
m.exhausted = entitiy.IsExhausted();
m.taunt = (entitiy.HasTaunt()) ? true : false;
m.numAttacksThisTurn = entitiy.GetNumAttacksThisTurn();
int temp = entitiy.GetNumTurnsInPlay();
m.playedThisTurn = (temp == 0) ? true : false;
m.windfury = (entitiy.HasWindfury()) ? true : false;
m.frozen = (entitiy.IsFrozen()) ? true : false;
m.divineshild = (entitiy.HasDivineShield()) ? true : false;
m.stealth = (entitiy.IsStealthed()) ? true : false;
m.poisonous = (entitiy.IsPoisonous()) ? true : false;
m.immune = (entitiy.IsImmune()) ? true : false;
m.silenced = (entitiy.GetTag(HRGameTag.SILENCED) >= 1) ? true : false;
m.charge = 0;
if (!m.silenced && m.name == CardDB.cardName.southseadeckhand && entitiy.GetTag(HRGameTag.CHARGE) == 1) m.charge = 1;
if (!m.silenced && m.handcard.card.Charge) m.charge = 1;
m.zonepos = zp;
m.entitiyID = entitiy.GetEntityId();
//Helpfunctions.Instance.ErrorLog( m.name + " ready params ex: " + m.exhausted + " charge: " +m.charge + " attcksthisturn: " + m.numAttacksThisTurn + " playedthisturn " + m.playedThisTurn );
List<miniEnch> enchs = new List<miniEnch>();
foreach (HREntity ent in allEntitys.Values)
{
if (ent.GetTag(HRGameTag.ATTACHED) == m.entitiyID && ent.GetZone() == HRCardZone.PLAY)
{
CardDB.cardIDEnum id = CardDB.Instance.cardIdstringToEnum(ent.GetCardId());
int creator = ent.GetTag(HRGameTag.CREATOR);
int controler = ent.GetTag(HRGameTag.CONTROLLER);
enchs.Add(new miniEnch(id, creator, controler));
}
}
m.loadEnchantments(enchs, entitiy.GetControllerId());
m.Ready = false; // if exhausted, he is NOT ready
m.updateReadyness();
if (entitiy.GetControllerId() == this.ownPlayerController) // OWN minion
{
m.own = true;
this.ownMinions.Add(m);
}
else
//.........这里部分代码省略.........
示例5: minionLostCharge
public void minionLostCharge(Minion m)
{
m.charge--;
m.updateReadyness();
}
示例6: getMinions
//.........这里部分代码省略.........
entitiy = ent;
break;
}
}
//Helpfunctions.Instance.ErrorLog("zonepos " + zp);
CardDB.Card c = CardDB.Instance.getCardDataFromID(CardDB.Instance.cardIdstringToEnum(entitiy.Id));
Minion m = new Minion();
m.name = c.name;
m.handcard.card = c;
m.Angr = entitiy.GetTag(GAME_TAG.ATK);
m.maxHp = entitiy.GetTag(GAME_TAG.HEALTH);
m.Hp = entitiy.GetTag(GAME_TAG.HEALTH) - entitiy.GetTag(GAME_TAG.DAMAGE);
if (m.Hp <= 0) continue;
m.wounded = false;
if (m.maxHp > m.Hp) m.wounded = true;
m.exhausted = (entitiy.GetTag(GAME_TAG.EXHAUSTED) == 0) ? false : true;
m.taunt = (entitiy.GetTag(GAME_TAG.TAUNT) == 0) ? false : true;
m.numAttacksThisTurn = entitiy.GetTag(GAME_TAG.NUM_ATTACKS_THIS_TURN);
int temp = entitiy.GetTag(GAME_TAG.NUM_TURNS_IN_PLAY);
m.playedThisTurn = (temp == 0) ? true : false;
m.windfury = (entitiy.GetTag(GAME_TAG.WINDFURY) == 0) ? false : true;
m.frozen = (entitiy.GetTag(GAME_TAG.FROZEN) == 0) ? false : true;
m.divineshild = (entitiy.GetTag(GAME_TAG.DIVINE_SHIELD) == 0) ? false : true;
m.stealth = (entitiy.GetTag(GAME_TAG.STEALTH) == 0) ? false : true;
m.poisonous = (entitiy.GetTag(GAME_TAG.POISONOUS) == 0) ? false : true;
m.immune = (entitiy.GetTag(GAME_TAG.IMMUNE_WHILE_ATTACKING) == 0) ? false : true;
m.silenced = (entitiy.GetTag(GAME_TAG.SILENCED) == 0) ? false : true;
// Drew: fixed | is the tag removed when silenced, via Mass Dispel?
m.cantBeTargetedBySpellsOrHeroPowers = (entitiy.GetTag(GAME_TAG.CANT_BE_TARGETED_BY_HERO_POWERS) == 0) ? false : true;
m.charge = 0;
m.spellpower = entitiy.GetTag(GAME_TAG.SPELLPOWER);
if (!m.silenced && m.name == CardDB.cardName.southseadeckhand &&
entitiy.GetTag(GAME_TAG.CHARGE) == 1) m.charge = 1;
if (!m.silenced && m.handcard.card.Charge) m.charge++;
m.zonepos = zp;
m.entitiyID = entitiy.EntityId;
//Helpfunctions.Instance.ErrorLog( m.name + " ready params ex: " + m.exhausted + " charge: " +m.charge + " attcksthisturn: " + m.numAttacksThisTurn + " playedthisturn " + m.playedThisTurn );
List<miniEnch> enchs = new List<miniEnch>();
foreach (HSCard ent in allcards)
{
if (ent.GetTag(GAME_TAG.ATTACHED) == m.entitiyID && ent.GetTag(GAME_TAG.ZONE) == 1) //1==play
{
CardDB.cardIDEnum id = CardDB.Instance.cardIdstringToEnum(ent.Id);
int controler = ent.GetTag(GAME_TAG.CONTROLLER);
int creator = ent.GetTag(GAME_TAG.CREATOR);
enchs.Add(new miniEnch(id, creator, controler));
}
}
m.loadEnchantments(enchs, entitiy.GetTag(GAME_TAG.CONTROLLER));
m.Ready = false; // if exhausted, he is NOT ready
m.updateReadyness();
if (entitiy.GetTag(GAME_TAG.CONTROLLER) == this.ownPlayerController) // OWN minion
{
m.own = true;
this.ownMinions.Add(m);
}
else
{
m.own = false;
this.enemyMinions.Add(m);
}
}
}
}
示例7: minionGetWindfurry
public void minionGetWindfurry(Minion m)
{
if (m.windfury) return;
m.windfury = true;
m.updateReadyness();
}
示例8: minionGetCharge
public void minionGetCharge(Minion m)
{
m.charge++;
m.updateReadyness();
}
示例9: minionGetControlled
public void minionGetControlled(Minion m, bool newOwner, bool canAttack)
{
List<Minion> newOwnerList = (newOwner) ? this.ownMinions : this.enemyMinions;
List<Minion> oldOwnerList = (newOwner) ? this.enemyMinions : this.ownMinions;
if (newOwnerList.Count >= 7) return;
this.tempTrigger.ownMinionsChanged = true;
this.tempTrigger.enemyMininsChanged = true;
//end buffs/aura
m.handcard.card.sim_card.onAuraEnds(this, m);
this.minionGetOrEraseAllAreaBuffs(m, false);
//remove minion from list
oldOwnerList.Remove(m);
//change site (and minion is played in this turn)
m.playedThisTurn = true;
m.own = !m.own;
// add minion to new list + new buffs
newOwnerList.Add(m);
m.handcard.card.sim_card.onAuraStarts(this, m);
this.minionGetOrEraseAllAreaBuffs(m, true);
if (m.charge >= 1 || canAttack) // minion can attack if its shadowmadnessed (canAttack = true) or it has charge
{
this.minionGetCharge(m);
}
m.updateReadyness();
}
示例10: createNewMinion
public Minion createNewMinion(Handmanager.Handcard hc, int zonepos, bool own)
{
Minion m = new Minion();
Handmanager.Handcard handc = new Handmanager.Handcard(hc);
//Handmanager.Handcard handc = hc; // new Handcard(hc)?
m.handcard = handc;
m.own = own;
m.isHero = false;
m.entitiyID = hc.entity;
m.Angr = hc.card.Attack;
m.Hp = hc.card.Health;
m.maxHp = hc.card.Health;
m.name = hc.card.name;
m.playedThisTurn = true;
m.numAttacksThisTurn = 0;
m.zonepos = zonepos;
m.windfury = hc.card.windfury;
m.taunt = hc.card.tank;
m.charge = (hc.card.Charge) ? 1 : 0;
m.divineshild = hc.card.Shield;
m.poisonous = hc.card.poisionous;
m.stealth = hc.card.Stealth;
m.updateReadyness();
if (m.name == CardDB.cardName.lightspawn)
{
m.Angr = m.Hp;
}
//trigger on summon effect!
this.triggerAMinionIsSummoned(m);
//activate onAura effect
m.handcard.card.sim_card.onAuraStarts(this, m);
//buffs minion
this.minionGetOrEraseAllAreaBuffs(m, true);
return m;
}
示例11: attackWithWeapon
//a hero attacks a minion
public void attackWithWeapon(Minion hero, Minion target, int penality)
{
bool own = hero.own;
this.attacked = true;
this.evaluatePenality += penality;
hero.numAttacksThisTurn++;
//hero will end his readyness
hero.updateReadyness();
//heal whether truesilverchampion equipped
if (own)
{
if (this.ownWeaponName == CardDB.cardName.truesilverchampion)
{
int heal = this.getMinionHeal(2);//minionheal because it's ignoring spellpower
this.minionGetDamageOrHeal(hero, -heal);
doDmgTriggers();
}
}
else
{
if (this.enemyWeaponName == CardDB.cardName.truesilverchampion)
{
int heal = this.getEnemyMinionHeal(2);
this.minionGetDamageOrHeal(hero, -heal);
doDmgTriggers();
}
}
if (logging) Helpfunctions.Instance.logg("attck with weapon trgt: " + target.entitiyID);
// hero attacks enemy----------------------------------------------------------------------------------
if (target.isHero)// trigger secret and change target if necessary
{
int newTarget = this.secretTrigger_CharIsAttacked(hero, target);
if (newTarget >= 1)
{
//search new target!
foreach (Minion m in this.ownMinions)
{
if (m.entitiyID == newTarget)
{
target = m;
break;
}
}
foreach (Minion m in this.enemyMinions)
{
if (m.entitiyID == newTarget)
{
target = m;
break;
}
}
if (this.ownHero.entitiyID == newTarget) target = this.ownHero;
if (this.enemyHero.entitiyID == newTarget) target = this.enemyHero;
}
}
this.minionAttacksMinion(hero, target);
//-----------------------------------------------------------------------------------------------------
//gorehowl is not killed if he attacks minions
if (own)
{
if (ownWeaponName == CardDB.cardName.gorehowl && !target.isHero)
{
this.ownWeaponAttack--;
hero.Angr--;
}
else
{
this.lowerWeaponDurability(1, true);
}
}
else
{
if (enemyWeaponName == CardDB.cardName.gorehowl && !target.isHero)
{
this.enemyWeaponAttack--;
hero.Angr--;
}
else
{
this.lowerWeaponDurability(1, false);
}
}
}
示例12: onInspire
//insprire: Can attack as normal this turn.
public override void onInspire(Playfield p, Minion m)
{
m.canAttackNormal = true;
m.updateReadyness();
}
示例13: getMinions
//.........这里部分代码省略.........
m.handcard.card = c;
m.Angr = entitiy.GetTag(GAME_TAG.ATK);
m.maxHp = entitiy.GetTag(GAME_TAG.HEALTH);
m.Hp = m.maxHp - entitiy.GetTag(GAME_TAG.DAMAGE);
if (m.Hp <= 0) continue;
m.wounded = false;
if (m.maxHp > m.Hp) m.wounded = true;
m.exhausted = entitiy.IsExhausted;
m.taunt = (entitiy.HasTaunt);
m.numAttacksThisTurn = entitiy.GetTag(GAME_TAG.NUM_ATTACKS_THIS_TURN);
int temp = entitiy.GetTag(GAME_TAG.NUM_TURNS_IN_PLAY);
m.playedThisTurn = (temp == 0) ? true : false;
m.windfury = (entitiy.HasWindfury);
m.frozen = (entitiy.IsFrozen);
m.divineshild = (entitiy.HasDivineShield);
m.stealth = (entitiy.IsStealthed);
m.poisonous = (entitiy.IsPoisonous);
m.immune = (entitiy.IsImmune);
m.silenced = entitiy.IsSilenced;
m.spellpower = entitiy.GetTag(GAME_TAG.SPELLPOWER);
m.charge = 0;
if (!m.silenced && m.name == CardDB.cardName.southseadeckhand && entitiy.HasCharge) m.charge = 1;
if (!m.silenced && m.handcard.card.Charge) m.charge = 1;
if (m.charge == 0 && entitiy.HasCharge) m.charge = 1;
m.zonepos = zp;
m.entitiyID = entitiy.EntityId;
if(m.name == CardDB.cardName.unknown) Helpfunctions.Instance.ErrorLog("unknown card error");
Helpfunctions.Instance.ErrorLog(m.entitiyID + " ." + entitiy.Id + ". " + m.name + " ready params ex: " + m.exhausted + " charge: " + m.charge + " attcksthisturn: " + m.numAttacksThisTurn + " playedthisturn " + m.playedThisTurn);
//Helpfunctions.Instance.ErrorLog("spellpower check " + entitiy.SpellPowerAttack + " " + entitiy.SpellPowerHealing + " " + entitiy.SpellPower);
List<miniEnch> enchs = new List<miniEnch>();
/*foreach (Entity ent in allEntitys.Values)
{
if (ent.Attached == m.entitiyID && ent.Zone == HSRangerLib.TAG_ZONE.PLAY)
{
CardDB.cardIDEnum id = CardDB.Instance.cardIdstringToEnum(ent.CardId);
int creator = ent.CreatorId;
int controler = ent.ControllerId;
enchs.Add(new miniEnch(id, creator, controler));
}
}*/
foreach (HSCard ent in item.AttachedCards)
{
CardDB.cardIDEnum id = CardDB.Instance.cardIdstringToEnum(ent.Id);
int creator = ent.CreatorId;
int controler = ent.ControllerId;
enchs.Add(new miniEnch(id, creator, controler));
}
m.loadEnchantments(enchs, entitiy.ControllerId);
m.Ready = false; // if exhausted, he is NOT ready
m.updateReadyness();
if (entitiy.ControllerId == this.ownPlayerController) // OWN minion
{
m.own = true;
this.ownMinions.Add(m);
}
else
{
m.own = false;
this.enemyMinions.Add(m);
}
}
// minions added
}
}