Skip to content

EA 23.307 Stable โ€‹

May 18, 2026

9 files modified.

Important Changes โ€‹

None.

ActTelekinesis โ€‹

public override bool CanPerform()

cs
	{
		return false;
	}
	if (!Act.CC.IsPC && Act.CC.Dist(Act.TC) != 1) 
	if (!Act.CC.IsPC && (Act.CC.Dist(Act.TC) != 1 || Act.TC.isThing)) 
	{
		return false;
	}

Cell โ€‹

public void Refresh()

cs
	}
	bool IsAutoTileEdge(Cell cell)
	{
		if ((!sourceFloor.isBeach || !cell.sourceFloor.isBeach) && (cell._floor != _floor || cell._floorMat != _floorMat)) 
		if (!sourceFloor.isBeach && !cell.sourceFloor.isBeach && (cell._floor != _floor || cell._floorMat != _floorMat)) 
		{
			return true;
		}

bool IsBridgeAutoTileEdge(Cell cell)

cs
	}
	bool IsDecoAutoTileEdge(Cell cell)
	{
		if (cell._deco != _deco) 
		if (cell._deco != _deco || cell._decoMat != _decoMat) 
		{
			return true;
		}

Chara โ€‹

public override void Tick()

cs
			hygiene.Mod(2);
		}
	}
	if (cell.sourceFloor.id == 20) 
	if (cell.sourceSurface.id == 20) 
	{
		AddCondition<ConBurning>();
	}

GameUpdater โ€‹

public override void FixedUpdate()

cs
					EClass._map.SetEffect(pos.x, pos.z);
				}
			}
			if (cell.sourceSurface.id == 20 && EClass.rnd(10) == 0) 
			{ 
				EClass._map.TryShatter(pos, 910, 100); 
			} 
			x++;
			if (x >= base.Size)
			{

GoalCombat โ€‹

public override IEnumerable<Status> Run()

cs
			}
			owner.calmCheckTurn--;
		}
		string text = owner.id; 
		if ((text == "big_daddy" || text == "big_daddy2") && !owner.IsPCFactionOrMinion) 
		if (owner.trait is TraitBigDaddy && !owner.IsPCFactionOrMinion) 
		{
			foreach (Chara chara in EClass._map.charas)
			{
				if (!chara.IsPCFaction && !chara.IsInCombat && chara != owner) 
				if (!chara.IsPCFactionOrMinion && !chara.IsInCombat && chara != owner && chara.trait is TraitBigDaddy) 
				{
					chara.GoHostile(tc);
				}

public override IEnumerable<Status> Run()

cs
				yield return Success();
			}
			idleCount = 0;
			text = owner.source.aiIdle; 
			if (text == "stand" || text == "root") 
			string aiIdle = owner.source.aiIdle; 
			if (aiIdle == "stand" || aiIdle == "root") 
			{
				yield return Success();
			}

InvOwnerGene โ€‹

public override bool ShouldShowGuide(Thing t)

cs
public override void _OnProcess(Thing t)
{
	DNA.Type type = t.c_DNA.type;
	if (type != 0 && tg.c_genes != null) 
	if (type != 0) 
	{
		int num = t.c_DNA.slot;
		if (num > 1 && tg.HasElement(1237))

Map โ€‹

public void TryShatter(Point pos, int ele, int power)

cs
	}
	list.Shuffle();
	int num = 0;
	bool flag = false; 
	foreach (Card item3 in list)
	{
		if (!item3.trait.CanBeDestroyed || item3.category.IsChildOf("currency") || item3.trait is TraitDoor || item3.trait is TraitFigure || item3.trait is TraitTrainingDummy || item3.rarity >= Rarity.Legendary)

public void TryShatter(Point pos, int ele, int power)

cs
		{
			continue;
		}
		bool flag = CanCook(item3); 
		bool flag2 = CanCook(item3); 
		string text = "";
		if (flag) 
		if (flag2) 
		{
			if (fire)
			{

public void TryShatter(Point pos, int ele, int power)

cs
				text = "711";
			}
		}
		if (flag && !text.IsEmpty()) 
		if (flag2 && !text.IsEmpty()) 
		{
			item3.GetRoot(); 
			Thing thing2 = item3.Split(1);
			List<Thing> list4 = new List<Thing>();
			list4.Add(thing2);

public void TryShatter(Point pos, int ele, int power)

cs
		{
			ActionMode.Adv.itemLost++;
		}
		if (!flag) 
		{ 
			pos.PlayEffect(fire ? "Element/eleFire" : "Element/eleCold"); 
			flag = true; 
		} 
		num++;
	}
	_ValidateInstalled(pos.x, pos.z);

TaskBuild โ€‹

public HitResult _GetHitResult(Point p)

cs
		}
		if (p.Installed != null)
		{
			if (p.Installed.trait is TraitSeed && !(EClass.pc.held.trait is TraitFertilizer)) 
			if (p.Installed.trait is TraitSeed && !(EClass.pc.held.trait is TraitFertilizer) && !(EClass.pc.held.trait is TraitFloor) && !(EClass.pc.held.trait is TraitFloorDeco)) 
			{
				return HitResult.Invalid;
			}

TraitGeneMachine โ€‹

public override bool OnUse(Chara c)

cs
		{
			LayerDragGrid.Create(new InvOwnerGene(owner, target));
		}
		return true; 
		return false; 
	}
}