EA 23.261 Nightly Patch 3
January 18, 2026
34 files modified. 1 new file created.
Important Changes
Possible breaking changes. Click the filename to view the chunk.
ConTransmuteMimic (1)
public virtual void RevealMimicry(Chara c, bool surprise)
public virtual void RevealMimicry(Card c, bool surprise) EClass (1)
public static int curve(int _a, int start, int step, int rate = 75)
public static int curve(long _a, int start, int step, int rate = 75) TCOrbitChara (1)
public void RefreshAll()
public override void RefreshAll() TCOrbitThing (1)
public void RefreshAll()
public override void RefreshAll() ABILITY
public class ABILITY
{
public const int AI_Sleep = 5050;
public const int ActZap = 5051;
public const int ActDreamBug = 6020;
public const int ActBash = 5052;
public const int ActZap = 5051;
public const int AI_Sleep = 5050;
public const int AI_Meditate = 6003;
public const int TaskSleepOnBed = 5022;
public const int TaskTrain = 5021;
public const int ActWait = 5000;
public const int GoalSleep = 5027;
public const int ActWait = 5000;
public const int Melee = 5002;
public const int ActMelee = 5001;
public const int Ranged = 5003;
public const int Use = 5007;
public const int ActMelee = 5001;
public const int General = 5008;
public const int Melee = 5002;
public const int ActReleaseHeld = 5028;
public const int breathe_Holy = 50209;
public const int breathe_Chaos = 50210;
public const int ActGazeMana = 6623;
public const int breathe_Magic = 50211;
public const int breathe_Ether = 50212;
public const int breathe_Acid = 50213;
public const int breathe_Void = 50216;
public const int General = 5008;
public const int TaskMine = 5009;
public const int TaskDig = 5010;
public const int TaskFarm = 5020;
public const int TaskTrain = 5021;
public const int breathe_Fire = 50200;
public const int SpTransmuteMimic = 8794;
public const int breathe_Magic = 50211;
public const int breathe_Chaos = 50210;
public const int breathe_ = 7000;
public const int ActWombDark = 6801;
public const int ActDeathSentense = 6802;
public const int StManaCost = 6720;
public static readonly int[] IDS = new int[135]
public static readonly int[] IDS = new int[136]
{
5050, 6020, 6019, 6018, 6015, 6013, 6012, 6050, 6011, 6001,
5055, 5054, 5053, 5052, 5051, 6003, 5049, 6400, 6420, 6620,
5051, 6020, 6019, 6018, 6015, 6013, 6012, 6050, 6011, 6001,
5055, 5054, 5053, 5052, 5050, 6003, 5049, 6400, 6420, 6620,
6613, 6612, 6611, 6610, 6607, 6410, 6606, 6603, 6602, 6601,
6600, 6500, 6450, 6604, 5048, 5047, 5046, 5026, 5025, 5024,
5023, 5022, 5021, 5027, 5000, 5002, 5003, 5004, 5005, 5006,
5007, 5001, 5028, 5029, 5030, 5045, 5044, 5043, 5042, 5041,
5023, 5022, 5000, 5027, 5001, 5003, 5004, 5005, 5006, 5007,
5008, 5002, 5028, 5029, 5030, 5045, 5044, 5043, 5042, 5041,
5040, 5039, 5038, 5037, 5036, 5035, 5034, 5033, 5032, 5031,
6621, 6622, 6605, 6626, 50201, 50202, 50203, 50204, 50205, 50206,
50207, 50208, 50209, 50210, 6623, 50212, 50213, 50214, 50215, 50216,
5008, 5009, 5010, 5011, 5012, 5013, 5014, 5015, 5016, 5017,
5018, 5019, 5020, 50200, 8794, 50211, 7000, 6627, 6630, 6631,
50207, 50208, 50209, 6623, 50211, 50212, 50213, 50214, 50215, 50216,
5009, 5010, 5011, 5012, 5013, 5014, 5015, 5016, 5017, 5018,
5019, 5020, 5021, 50200, 8794, 50210, 7000, 6627, 6630, 6631,
6640, 6641, 6642, 6650, 6660, 8793, 6662, 6663, 6664, 6665,
6666, 6661, 6800, 6904, 6667, 6902, 6901, 6900, 6752, 6751,
6750, 6903, 6700, 6801, 6720
6750, 6903, 6700, 6801, 6802, 6720
};
}
public class Ability : Actpublic override long GetSourceValue(long v, int lv, SourceValueType type)
public override int GetPower(Card c)
{
int a = base.Value * 8 + 50;
long num = base.Value * 8 + 50;
if (!c.IsPC)
{
a = Mathf.Max(a, c.LV * 6 + 30);
num = (int)Mathf.Max(num, c.LV * 6 + 30);
if (c.IsPCFactionOrMinion && !base.source.aliasParent.IsEmpty())
{
a = Mathf.Max(a, c.Evalue(base.source.aliasParent) * 4 + 30);
num = (int)Mathf.Max(num, c.Evalue(base.source.aliasParent) * 4 + 30);
}
}
a = EClass.curve(a, 400, 100);
num = EClass.curve(num, 400, 100);
if (this is Spell)
{
a = a * Mathf.Max(100 + c.Evalue(411) - c.Evalue(93), 1) / 100;
num = num * Mathf.Max(100 + c.Evalue(411) - c.Evalue(93), 1) / 100;
}
else if (this is ActBreathe)
{
a = a * Mathf.Max(100 + c.Evalue(411), 1) / 100;
num = num * Mathf.Max(100 + c.Evalue(411), 1) / 100;
}
if (num > 214748364)
{
num = 214748364L;
}
return a;
return (int)num;
}
public override void OnChangeValue()AI_Idle
public override IEnumerable<Status> Run()
}
}
}
if (!EClass._zone.IsRegion && owner.id == "mimic" && EClass.rnd(5) == 0 && owner.mimicry == null)
if (!EClass._zone.IsRegion && owner.HasElement(1425) && EClass.rnd(5) == 0 && owner.mimicry == null)
{
owner.UseAbility(8794, owner);
}ActEffect
void AddCon<T>(int rate, int power) where T : Condition
TC.AddCondition(Condition.Create(n, power, delegate(Condition con)
{
con.givenByPcParty = CC.IsPCParty;
(con as ConDeathSentense)?.SetChara(CC);
if (!actRef.aliasEle.IsEmpty())
{
con.SetElement(EClass.sources.elements.alias[actRef.aliasEle].id);ActPray
_c.HealHP(999999);
_c.mana.Mod(999999);
_c.Cure(CureType.Prayer, 999999);
_c.RemoveCondition<ConDeathSentense>();
}
}
}ActThrow
public static EffectIRenderer Throw(Card c, Point p, Card target, Thing t, Throw
{
Msg.Say("shatter");
}
if (Act.TC != null && Act.TC.isChara && Act.TC.Chara.mimicry != null)
{
Act.TC.Chara.mimicry.RevealMimicry(c, surprise: false);
}
bool flag = method == ThrowMethod.Reward;
bool flag2 = method == ThrowMethod.Default;
switch (t.trait.ThrowType)AttackProcess
public bool Perform(int count, bool hasHit, float dmgMulti = 1f, bool maxRoll =
num2 += weapon.Evalue(91, ignoreGlobalElement: true);
num3 += weapon.Evalue(603, ignoreGlobalElement: true);
}
else
if (CC.HasElement(1426))
{
switch (CC.id)
{
case "mech_death":
case "rabbit_vopal":
case "mantis_killer":
list.Add(Element.Create(6650, 100));
break;
}
list.Add(Element.Create(6650, 100));
}
int bane;
if (TC?.Chara != null)AttackSource
Wrath,
ManaBackfire,
DeathSentense,
Euthanasia,
Shockwave,
MagicSword,
MoonSpear,BaseCondition
public virtual void SetOwner(Chara _owner, bool onDeserialize = false)
{
owner = _owner;
phase = GetPhase();
if (EmoIcon > owner.emoIcon)
{
owner.emoIcon = EmoIcon;
}
RefreshEmoIcon();
if (UseElements)
{
elements = new ElementContainerCondition();public virtual void SetOwner(Chara _owner, bool onDeserialize = false)
}
}
public void RefreshEmoIcon()
{
if (EmoIcon > owner.emoIcon)
{
owner.emoIcon = EmoIcon;
}
}
public SourceElement.Row GetElementSource(int i)
{
string text = base.source.elements[i];BaseStats
public virtual void WriteNote(UINote n, Action<UINote> onWriteNote = null)
{
n.Clear();
n.AddHeader(source.GetName());
n.AddText("NoteText_flavor_element", source.GetDetail());
string text = (Lang.Has("contype_" + Type) ? ("(" + ("contype_" + Type).lang() + ") ") : "");
n.AddText("NoteText_flavor_element", text + source.GetDetail());
_WriteNote(n);
n.Build();
}BaseTileMap
public virtual void DrawTile()
thingPos.y += num12;
if (tileType.UseMountHeight)
{
if (tileType != TileType.Illumination || !this.cell.HasObj)
if ((tileType != TileType.Illumination || !this.cell.HasObj) && !tileType.AlwaysShow)
{
if (noRoofMode && currentRoom == null && t.altitude >= lowWallObjAltitude && tileType != TileType.ObjFloat)
{Card
public void DamageHP(long dmg, int ele, int eleP = 100, AttackSource attackSourc
if (!HasElement(1241))
{
AttackSource attackSource2 = attackSource;
if ((uint)(attackSource2 - 3) > 2u && (uint)(attackSource2 - 13) > 4u)
if ((uint)(attackSource2 - 3) > 2u && (uint)(attackSource2 - 13) > 5u)
{
foreach (Chara chara4 in EClass._map.charas)
{ if (!isDestroyed)
{
Die();
if (isChara && !Chara.isDead)
{
hp = 0;
Chara.AddCondition<ConFaint>(1000, force: true);
}
}
for (int i = 0; i < 1 + EClass.rnd(num + 1); i++)
{Chara
public void RefreshSpeed(Element.BonusInfo info = null)
info?.AddText("minSpeed".lang((elements.ValueWithoutLink(79) / 3).ToString() ?? ""));
}
int num = 100;
if (EClass._zone.map != null && (EClass._zone.IsUnderwater || (base.Cell.IsTopWater && !base.Cell.isFloating)))
if (EClass._zone.map != null && (EClass._zone.IsUnderwater || (base.Cell.IsTopWaterAndNoSnow && !base.Cell.isFloating)))
{
int num2 = Evalue(200);
int num3 = Evalue(1252);public override void Die(Element e = null, Card origin = null, AttackSource attackSource = AttackSource.None, Chara originalTarget = null)
{
combatCount = 0;
if (isDead || host != null)
if (isDead)
{
return;
}
if (host != null)
{
base.hp = -1;
if ((uint)(attackSource - 17) > 1u)
{
AddCondition<ConFaint>(200, force: true);
return;
}
ActRide.Unride(host, this);
}
bool isInActiveZone = IsInActiveZone;
if (isInActiveZone)
{public override void Die(Element e = null, Card origin = null, AttackSource atta
Destroy();
return;
}
if (attackSource == AttackSource.DeathSentense)
if ((uint)(attackSource - 17) <= 1u)
{
if (trait is TraitLittleOne)
if (attackSource == AttackSource.Euthanasia && trait is TraitLittleOne)
{
MakeEgg();
if (IsPCFaction)public override void Die(Element e = null, Card origin = null, AttackSource atta
}
if (isInActiveZone)
{
if (attackSource == AttackSource.DeathSentense)
if (attackSource == AttackSource.DeathSentense || attackSource == AttackSource.Euthanasia)
{
Msg.Say("goto_heaven", this);
}public override void Die(Element e = null, Card origin = null, AttackSource atta
switch (id)
{
case "littleOne":
if (attackSource != AttackSource.DeathSentense && !IsPCFaction)
if (attackSource != AttackSource.Euthanasia && !IsPCFaction)
{
EClass.player.flags.little_killed = true;
EClass.player.little_dead++;public override void Die(Element e = null, Card origin = null, AttackSource atta
chara2.MakeMinion((origin.IsPCParty || origin.IsPCPartyMinion) ? EClass.pc : origin.Chara, MinionType.Friend);
Msg.Say("plant_pop", this, chara2);
}
EClass._zone.OnCharaDie();
EClass._zone.events.OnCharaDie(this);
}public void Cure(CureType type, int p = 100, BlessedState state = BlessedState.N
case CureType.Unicorn:
SAN.Mod(-20);
RemoveCondition<ConBrightnessOfLife>();
RemoveCondition<ConDeathSentense>();
break;
case CureType.Jure:
SAN.Mod(-999);public void Cure(CureType type, int p = 100, BlessedState state = BlessedState.N
{
SetFeat(1206, 0, msg: true);
}
RemoveCondition<ConBrightnessOfLife>();
RemoveCondition<ConDeathSentense>();
break;
case CureType.CureBody:
case CureType.CureMind:public bool TryNeckHunt(Chara TC, int power, bool harvest = false)
{
return false;
}
if (TC.hp > (long)TC.MaxHP * (long)Mathf.Min(5 + (int)Mathf.Sqrt(power), harvest ? 35 : 25) / 100)
if (TC.hp > (long)TC.MaxHP * (long)(Mathf.Min(5 + (int)Mathf.Sqrt(power), harvest ? 35 : 25) + Evalue(1426) * 5) / 100)
{
return false;
}ConDeathSentense
using Newtonsoft.Json;
public class ConDeathSentense : BaseDebuff
{
[JsonProperty]
public int uidGiver;
[JsonProperty]
public bool euthanasia;
public override Emo2 EmoIcon => Emo2.death;
public override void Tick()
{
if (TryRemove())
{
return;
}
Mod(-1);
if (base.value <= 0 && owner.IsAliveInCurrentZone)
{
owner.Die(null, null, AttackSource.DeathSentense);
owner.Say("death_sentense", owner);
if (!euthanasia && owner.IsPowerful)
{
owner.DamageHP(owner.MaxHP / (EClass.debug.enable ? 1 : 13) + 1, AttackSource.DeathSentense);
}
else
{
owner.Die(null, null, euthanasia ? AttackSource.Euthanasia : AttackSource.DeathSentense);
}
}
}
public bool TryRemove()
{
if (uidGiver != 0 && EClass._map.FindChara(uidGiver) == null)
{
Kill();
return true;
}
return false;
}
public void SetChara(Chara c)
{
if (c != null)
{
uidGiver = c.uid;
}
}
public override void OnRemoved()
{
base.OnRemoved();
}
}ConTransmuteMimic
public virtual void TrySetAct(ActPlan p)
}
}
public virtual void RevealMimicry(Chara c, bool surprise)
public virtual void RevealMimicry(Card c, bool surprise)
{
if (owner.IsHostile(c))
if (owner.IsHostile(c.Chara))
{
owner.DoHostileAction(c, immediate: true);
}Condition
public void Kill(bool silent = false)
elements.SetParent();
}
OnRemoved();
if (EmoIcon != 0 && owner.emoIcon == EmoIcon)
{
owner.emoIcon = Emo2.none;
foreach (Condition condition in owner.conditions)
{
condition.RefreshEmoIcon();
}
owner.renderer?.orbit?.RefreshAll();
}
owner.SetDirtySpeed();
if (ShouldRefresh)
{ConditionType
Disease,
Wrath,
Buff,
Stance
Stance,
Sentense
}EClass
return Rand.rnd(a);
}
public static int curve(int _a, int start, int step, int rate = 75)
public static int curve(long _a, int start, int step, int rate = 75)
{
if (_a <= start)
{
return _a;
return (int)_a;
}
long num = _a;
for (int i = 0; i < 10; i++)ELEMENT
public const int nerve = 754;
public const int antidote = 753;
public const int comfort = 750;
public const int cute = 752;
public const int rare = 751;
public const int antidote = 753;
public const int cute = 752;
public const int _void = 0;
public const int quality = 2;
public static readonly int[] IDS = new int[36]
{
765, 761, 763, 762, 759, 756, 755, 760, 754, 753,
750, 752, 751, 0, 2, 1, 3, 5, 10, 11,
765, 761, 763, 762, 759, 756, 755, 760, 754, 750,
751, 753, 752, 0, 2, 1, 3, 5, 10, 11,
12, 13, 15, 16, 17, 18, 14, 21, 22, 23,
24, 25, 26, 29, 85, 20
};ENC
public const int mod_splash = 608;
public const int sanctified = 432;
public const int defense_range = 435;
public const int mod_drill = 606;
public const int negateSunburn = 431;
public const int defense_range = 435;
public const int sanctified = 432;
public const int negateConfusion = 425;
public const int bane_fish = 467;
public const int sustain_STR = 440;
public const int bane_all = 468;
public const int sustain_STR = 440;
public const int sustain_END = 441;
public const int sustain_DEX = 442;
public const int bane_man = 464;
public const int bane_god = 466;
public const int bane_machine = 465;
public const int sustain_figure = 450;
public const int bane_machine = 465;
public const int bane_god = 466;
public static readonly int[] IDS = new int[107]
{
653, 652, 651, 650, 641, 621, 624, 620, 623, 622,
654, 640, 655, 851, 660, 661, 662, 663, 664, 665,
666, 667, 850, 609, 865, 852, 656, 608, 432, 606,
666, 667, 850, 609, 865, 852, 656, 608, 435, 606,
417, 418, 419, 420, 421, 422, 423, 416, 424, 426,
427, 428, 429, 430, 431, 435, 425, 436, 415, 412,
427, 428, 429, 430, 431, 432, 425, 436, 415, 412,
380, 381, 382, 383, 400, 401, 402, 414, 403, 405,
406, 407, 408, 607, 410, 411, 404, 437, 409, 439,
482, 483, 484, 485, 486, 487, 488, 481, 489, 600,
601, 602, 603, 604, 605, 438, 490, 480, 491, 467,
440, 468, 441, 442, 444, 445, 446, 447, 443, 460,
461, 462, 463, 464, 466, 450, 465
468, 440, 441, 442, 444, 445, 446, 447, 443, 460,
461, 462, 463, 464, 465, 450, 466
};
}Emo2
brush_like,
brush_like2,
brush_like3,
hintEvent
hintEvent,
death
}FACTION
public const int bfBeach = 3604;
public const int bfUndersea = 3606;
public const int bfFertile = 3700;
public const int bfUndersea = 3606;
public const int bfGeyser = 3701;
public const int bfPlain = 3600;
public const int fPromo = 2202;
public const int fEducation = 2116;
public const int fElec = 2201;
public const int fSoil = 2200;
public const int fLoyal = 2117;
public const int fEducation = 2116;
public const int bfTranquil = 3703;
public const int fAttraction = 2206;
public const int fRation = 2207;
public const int bfVolcano = 3704;
public const int fConstruction = 2003;
public const int fRation = 2207;
public const int fAttraction = 2206;
public static readonly int[] IDS = new int[53]
{
3601, 3602, 3603, 3604, 3606, 3700, 3701, 3600, 3702, 3605,
3500, 2120, 2205, 2204, 2203, 2202, 2201, 2200, 2119, 2118,
2117, 2116, 3703, 2206, 3704, 4000, 3706, 2115, 4006, 4005,
3601, 3602, 3603, 3604, 3700, 3606, 3701, 3600, 3702, 3605,
3500, 2120, 2205, 2204, 2203, 2202, 2116, 2201, 2200, 2119,
2118, 2117, 3703, 2207, 3704, 4000, 3706, 2115, 4006, 4005,
4004, 4003, 4002, 4001, 3900, 3805, 3804, 3803, 3802, 3801,
3800, 3784, 3783, 3782, 3781, 3780, 3710, 3709, 3708, 3707,
3705, 2003, 2207
3705, 2003, 2206
};
}
public class Faction : EClassFEAT
public class FEAT
{
public const int featShiva = 1224;
public const int featLoyal = 1225;
public const int featMagicManner = 1651;
public const int featMAG = 1625;
public const int featLife = 1610;
public const int featDreamWaker = 1653;
public const int featHeavyCasting = 1654;
public const int featModelBeliever = 1655;
public const int featAcidBody = 1223;
public const int featFairyResist = 1212;
public const int featSlowFood = 1200;
public const int featSnail = 1211;
public const int featManaBond = 1201;
public const int featUndead = 1210;
public const int featFastLearner = 1202;
public const int featFluffyTail = 1209;
public const int featGrowParts = 1203;
public const int featFoxLearn = 1208;
public const int featFairyWeak = 1204;
public const int featFoxBless = 1207;
public const int featCannibalism = 1205;
public const int featElea = 1213;
public const int featMelilithCurse = 1206;
public const int featFoxBless = 1207;
public const int featFairyWeak = 1204;
public const int featFoxLearn = 1208;
public const int featGrowParts = 1203;
public const int featFluffyTail = 1209;
public const int featFastLearner = 1202;
public const int featUndead = 1210;
public const int featManaBond = 1201;
public const int featSnail = 1211;
public const int featSlowFood = 1200;
public const int featFairyResist = 1212;
public const int featShiva = 1224;
public const int featElea = 1213;
public const int featCannibalism = 1205;
public const int featLife = 1610;
public const int featManaPrecision = 1214;
public const int featDwarf = 1215;
public const int featSuccubus = 1216;
public const int featScavenger = 1656;
public const int featDismantler = 1661;
public const int featHeavyCasting = 1654;
public const int featDwarf = 1215;
public const int featGoldenFinger = 1662;
public const int featSplit = 1222;
public const int featSpike = 1221;
public const int featFate = 1220;
public const int featGolem = 1217;
public const int featSuccubus = 1216;
public const int featSplit = 1222;
public const int featAcidBody = 1223;
public const int featElite = 1424;
public const int featNeckHunter = 1426;
public const int featComat = 1750;
public const int featHealer = 1422;
public const int featAquatic = 1252;
public const int featElite = 1424;
public const int featGoodKarma = 1270;
public const int featGod_harvest1 = 1325;
public const int featGod_harmony1 = 1335;
public const int featAquatic = 1252;
public const int featGod_oblivion1 = 1340;
public const int featGod_luck1 = 1330;
public const int featGod_trickery1 = 1345;
public const int featPianist = 1405;
public const int featAshborn = 1251;
public const int featTourist = 1406;
public const int featVampire = 1250;
public const int featPaladin = 1407;
public const int featGod_harmony1 = 1335;
public const int featPaladin2 = 1408;
public const int featAshborn = 1251;
public const int featBloodBond = 1249;
public const int featMiscreation = 1248;
public const int featNorland = 1236;
public const int featLightEater = 1235;
public const int featHeavyEater = 1234;
public const int featMimic = 1425;
public const int featCosmicHorror = 1233;
public const int featBaby = 1232;
public const int featPeaky = 1423;
public const int featNirvana = 1231;
public const int featAdam = 1230;
public const int featServant = 1227;
public const int featUnderground = 1226;
public const int featLoyal = 1225;
public const int featTourist = 1406;
public const int featLightEater = 1235;
public const int featVampire = 1250;
public const int featRoran = 1237;
public const int featUnderground = 1226;
public const int featElder = 1238;
public const int featLibra = 1247;
public const int featNorland = 1236;
public const int featPaladin = 1407;
public const int featMiscreation = 1248;
public const int featGod_luck1 = 1330;
public const int featRoran = 1237;
public const int featBoost = 1409;
public const int featGod_oblivion1 = 1340;
public const int featEarthStrength = 1411;
public const int featPeaky = 1423;
public const int featHealer = 1422;
public const int featManaMeat = 1421;
public const int featExecutioner = 1420;
public const int featSwordsage = 1418;
public const int featWitch = 1417;
public const int featReboot = 1410;
public const int featInquisitor = 1416;
public const int featPaladin2 = 1408;
public const int featFoxMaid = 1415;
public const int featWhiteVixen = 1414;
public const int featLuckyCat = 1412;
public const int featEarthStrength = 1411;
public const int featReboot = 1410;
public const int featFoxMaid = 1415;
public const int featWitch = 1417;
public static readonly int[] IDS = new int[139]
public static readonly int[] IDS = new int[141]
{
1224, 1651, 1650, 1649, 1648, 1647, 1646, 1645, 1644, 1643,
1225, 1651, 1650, 1649, 1648, 1647, 1646, 1645, 1644, 1643,
1642, 1641, 1640, 1636, 1635, 1634, 1633, 1632, 1611, 1612,
1620, 1621, 1622, 1623, 1652, 1624, 1626, 1627, 1628, 1629,
1630, 1631, 1625, 1610, 1653, 1655, 1223, 1200, 1201, 1202,
1203, 1204, 1205, 1206, 1207, 1208, 1209, 1210, 1211, 1212,
1213, 1214, 1215, 1656, 1657, 1658, 1659, 1660, 1661, 1654,
1662, 1221, 1220, 1219, 1218, 1217, 1216, 1222, 1424, 1750,
1422, 1252, 1270, 1271, 1272, 1273, 1290, 1300, 1305, 1310,
1315, 1320, 1325, 1335, 1340, 1345, 1350, 1355, 1400, 1401,
1402, 1403, 1404, 1405, 1251, 1250, 1249, 1248, 1234, 1233,
1232, 1423, 1231, 1230, 1229, 1228, 1227, 1226, 1225, 1406,
1235, 1237, 1238, 1239, 1240, 1241, 1242, 1243, 1244, 1245,
1246, 1247, 1236, 1407, 1330, 1409, 1421, 1420, 1419, 1418,
1417, 1416, 1408, 1414, 1413, 1412, 1411, 1410, 1415
1630, 1631, 1625, 1653, 1654, 1655, 1212, 1211, 1210, 1209,
1208, 1207, 1213, 1206, 1204, 1203, 1202, 1201, 1200, 1224,
1205, 1610, 1214, 1216, 1656, 1657, 1658, 1659, 1660, 1661,
1215, 1662, 1222, 1221, 1220, 1219, 1218, 1217, 1223, 1426,
1750, 1424, 1270, 1271, 1272, 1273, 1290, 1300, 1305, 1310,
1315, 1320, 1325, 1252, 1330, 1345, 1350, 1355, 1400, 1401,
1402, 1403, 1404, 1405, 1406, 1407, 1335, 1408, 1251, 1249,
1236, 1235, 1234, 1425, 1233, 1232, 1231, 1230, 1229, 1228,
1227, 1250, 1226, 1238, 1239, 1240, 1241, 1242, 1243, 1244,
1245, 1246, 1247, 1248, 1237, 1409, 1340, 1411, 1423, 1422,
1421, 1420, 1419, 1418, 1410, 1416, 1415, 1414, 1413, 1412,
1417
};
}
public class Feat : ElementFOOD
public class FOOD
{
public const int food_god = 758;
public const int creativeDish = 764;
public const int food_blood = 710;
public const int food_undead = 709;
public const int food_CHA = 700;
public const int food_human = 708;
public const int kirimi = 707;
public const int food_cat = 701;
public const int food_bug = 704;
public const int loseWeight = 706;
public const int justcooked = 757;
public const int gainWeight = 705;
public const int food_bug = 704;
public const int food_love = 703;
public const int food_poison = 702;
public const int food_cat = 701;
public const int loseWeight = 706;
public const int justcooked = 757;
public const int creativeDish = 764;
public const int kirimi = 707;
public const int food_god = 758;
public const int food_CHA = 700;
public static readonly int[] IDS = new int[14]
{
710, 709, 700, 708, 707, 704, 705, 703, 702, 701,
706, 757, 764, 758
758, 764, 710, 709, 708, 701, 706, 757, 705, 704,
703, 702, 707, 700
};
}GoalAutoCombat
public override bool TryAbortCombat()
Msg.Say("abort_idle");
return true;
}
ConDeathSentense condition = owner.GetCondition<ConDeathSentense>();
if (condition != null && condition.value <= 3)
{
Msg.Say("abort_sentense");
return true;
}
return false;
}
}MUTATION
public class MUTATION
{
public const int mutationStr = 1520;
public const int mutationCha = 1522;
public const int mutationStrN = 1521;
public const int mutationSpeedN = 1519;
public const int mutationSpeed = 1518;
public const int mutationCha = 1522;
public const int mutationRegen = 1516;
public const int mutationDexN = 1515;
public const int mutationSkin = 1510;
public const int mutationStrN = 1521;
public const int mutationStr = 1520;
public const int mutationRegenN = 1517;
public static readonly int[] IDS = new int[40]
{
1520, 1519, 1518, 1522, 1516, 1515, 1514, 1513, 1512, 1511,
1510, 1521, 1517, 1524, 1525, 1565, 1564, 1563, 1562, 1561,
1522, 1521, 1519, 1518, 1516, 1515, 1514, 1513, 1512, 1511,
1510, 1520, 1517, 1524, 1525, 1565, 1564, 1563, 1562, 1561,
1523, 1559, 1558, 1557, 1556, 1555, 1554, 1560, 1552, 1553,
1526, 1527, 1529, 1530, 1528, 1532, 1533, 1550, 1551, 1531
};POLICY
{
public const int legendary_heirloom = 2821;
public const int store_premium = 2817;
public const int license_food = 2818;
public const int license_furniture = 2819;
public const int breed_season = 2827;
public const int store_ripoff = 2816;
public const int store_premium = 2817;
public const int legendary_exhibition = 2823;
public const int platinum_ticket = 2815;
public const int store_ripoff = 2816;
public const int trash_no = 2702;
public const int weed_no = 2703;
public const int suite_room = 2813;
public const int mass_exhibition = 2814;
public const int taxfree = 2514;
public const int legal_drug = 2505;
public const int mass_exhibition = 2814;
public const int platinum_ticket = 2815;
public const int wealth_tax = 2500;
public const int food_for_people = 2502;
public const int resident_tax = 2512;
public const int prohibition = 2503;
public const int resident_tax = 2512;
public const int self_sufficient = 2511;
public const int ban_radio = 2510;
public const int trash_sort = 2701;
public const int demon_invocation = 2706;
public const int energy_conservation = 2700;
public const int auto_farm = 2707;
public const int taxTransfer = 2705;
public const int noDM = 2708;
public const int energy_conservation = 2700;
public const int demon_invocation = 2706;
public const int noAnimal = 2709;
public const int noMother = 2710;
public const int incomeTransfer = 2711;
public const int noDM = 2708;
public const int forcePanty = 2712;
public const int livestock_priv = 2715;
public const int home_discount = 2800;
public const int noMother = 2710;
public const int open_business = 2810;
public const int bed_quality = 2812;
public const int suite_room = 2813;
public const int taxTransfer = 2705;
public const int border_watch = 2704;
public const int weed_no = 2703;
public const int trash_no = 2702;
public const int forcePanty = 2712;
public const int home_discount = 2800;
public static readonly int[] IDS = new int[51]
{
2821, 2817, 2818, 2819, 2820, 2822, 2828, 2824, 2825, 2826,
2827, 2816, 2823, 2815, 2702, 2813, 2514, 2513, 2505, 2814,
2500, 2501, 2502, 2512, 2503, 2511, 2510, 2509, 2508, 2507,
2506, 2515, 2516, 2504, 2701, 2706, 2707, 2705, 2700, 2709,
2710, 2711, 2708, 2715, 2800, 2810, 2811, 2812, 2704, 2703,
2712
2821, 2818, 2819, 2820, 2822, 2828, 2824, 2825, 2826, 2827,
2817, 2823, 2816, 2703, 2814, 2514, 2513, 2505, 2815, 2500,
2501, 2502, 2503, 2512, 2511, 2510, 2509, 2508, 2507, 2506,
2515, 2516, 2504, 2701, 2700, 2707, 2708, 2706, 2709, 2711,
2712, 2715, 2710, 2810, 2811, 2812, 2813, 2705, 2704, 2702,
2800
};
}
public class Policy : EClassSKILL
public class SKILL
{
public const int armorLight = 120;
public const int fireproof = 50;
public const int climbing = 242;
public const int weaponBlunt = 111;
public const int armorLight = 120;
public const int armorHeavy = 122;
public const int twohand = 130;
public const int twowield = 131;
public const int twohand = 130;
public const int music = 241;
public const int travel = 240;
public const int vigor = 62;
public const int weaponDagger = 107;
public const int weaponPolearm = 106;
public const int PER = 73;
public const int fishing = 245;
public const int weaponPolearm = 106;
public const int weaponDagger = 107;
public const int carpentry = 255;
public static readonly int[] IDS = new int[134]
{
50, 242, 108, 109, 110, 111, 120, 122, 130, 131,
120, 50, 242, 108, 109, 110, 111, 122, 131, 130,
241, 240, 237, 235, 230, 227, 226, 225, 123, 220,
200, 152, 151, 150, 135, 134, 133, 132, 210, 207,
100, 105, 71, 70, 68, 67, 66, 65, 72, 64,
61, 60, 57, 56, 55, 51, 62, 107, 73, 75,
61, 60, 57, 56, 55, 51, 62, 106, 73, 75,
104, 103, 102, 101, 94, 93, 74, 92, 90, 80,
79, 78, 77, 76, 91, 245, 106, 255, 916, 917,
79, 78, 77, 76, 91, 245, 107, 255, 916, 917,
918, 920, 921, 922, 923, 924, 925, 926, 950, 951,
952, 953, 915, 954, 956, 957, 958, 959, 960, 961,
962, 963, 964, 965, 970, 972, 971, 250, 955, 914,TCOrbit
public virtual void Refresh()
{
}
public virtual void RefreshAll()
{
}
}TCOrbitChara
public override void Refresh()
}
}
public void RefreshAll()
public override void RefreshAll()
{
showHP = (showHP2 = (showIcon = false));
if (owner.isDead || owner.host != null)TCOrbitThing
public override void Refresh()
}
}
public void RefreshAll()
public override void RefreshAll()
{
_ = EMono.core.refs.orbitIcons;
Emo2 emo = Emo2.none;TileType
public static TileTypeObjFloat ObjFloat = new TileTypeObjFloat();
public static TileTypeObjFloat ObjFloatWaterfall = new TileTypeObjFloatWaterfall();
public static TileTypeObjWater ObjWater = new TileTypeObjWater();
public static TileTypeObjWaterTop ObjWaterTop = new TileTypeObjWaterTop();public virtual int MaxAltitude
public virtual bool AlwaysShowShadow => false;
public virtual bool AlwaysShow => false;
public virtual bool RepeatBlock => false;
public virtual bool ForceRpeatBlock => false;+TileTypeObjFloatWaterfall
File Created
public class TileTypeObjFloatWaterfall : TileTypeObjFloat
{
public override bool AlwaysShow => true;
}TraitSyringeHeaven
public override void TrySetHeldAct(ActPlan p)
{
EffectInject(EClass.pc, c);
c.AddCondition<ConHallucination>(50);
if ((c.trait is TraitLittleOne) & !c.HasCondition<ConDeathSentense>())
if (c.trait is TraitLittleOne && !c.HasCondition<ConDeathSentense>())
{
EClass.player.ModKarma(3);
c.AddCondition<ConDeathSentense>(100, force: true);
c.AddCondition(Condition.Create(100, delegate(ConDeathSentense con)
{
con.euthanasia = true;
}), force: true);
}
owner.ModNum(-1);
return true;TraitWhipEgg
public override void TrySetHeldAct(ActPlan p)
owner.Destroy();
}
EClass.player.ModKarma(-1);
if (c.isChara && c.Chara.mimicry != null)
{
c.Chara.mimicry.RevealMimicry(EClass.pc, surprise: false);
}
return true;
}, c);
}Zone
item.Destroy();
}
}
if (!EClass.game.isLoading)
{
foreach (Chara chara2 in EClass._map.charas)
{
if (chara2.HasCondition<ConDeathSentense>())
{
chara2.RemoveCondition<ConDeathSentense>();
}
}
}
RefreshCriminal();
EClass._map.rooms.AssignCharas();
events.OnVisit(); }
}
public void OnCharaDie()
{
foreach (Chara chara in EClass._map.charas)
{
if (chara.HasCondition<ConDeathSentense>())
{
chara.GetCondition<ConDeathSentense>().TryRemove();
}
}
}
public void Revive()
{
base.dateRevive = EClass.world.date.GetRaw() + 1440 * EClass.setting.balance.dateRevive;