Skip to content

EA 23.249 Nightly

December 19, 2025

11 files modified.

Important Changes

None.

BaseCondition

public virtual bool ShouldOverride(Condition c)

cs
		return false;
	}

	public virtual bool IsOverrideConditionMet(Condition c, int turn) 
	{ 
		return turn > value; 
	} 
	public virtual bool TryMove(Point p)
	{
		return true;

Card

public void Create(string _id, int _idMat = -1, int genLv = -1)

cs
	{
		rarity = bp.rarity;
	}
	else if (category.slot != 0 && category.slot != 45 && category.slot != 44) 
	else if ((category.slot != 0 && category.slot != 45 && category.slot != 44) || IsRangedWeapon) 
	{
		if (EClass.rnd(10) == 0)
		{

Chara

public void RestockEquip(bool onCreate)

cs
			EQ_ID("staff_magius");
		}
		break;
	case "sorin":
		if (onCreate) 
		{ 
			EQ_ID("staff_insanity"); 
		} 
		break; 
	case "robot":
		if (onCreate)
		{

public Condition AddCondition(Condition c, bool force = false)

cs
		{
			if (conditions[j].ShouldOverride(c))
			{
				if (num2 > conditions[j].value || num2 * conditions[j].value < 0 || c is ConWeapon) 
				if (conditions[j].IsOverrideConditionMet(c, num2)) 
				{
					conditions[j].Kill(silent: true);
					continue;

ConBuffStats

public override ConditionType Type

cs

	public override bool UseElements => true;

	public override bool IsOverrideConditionMet(Condition c, int turn) 
	{ 
		if ((c as ConBuffStats).isDebuff == isDebuff) 
		{ 
			return base.IsOverrideConditionMet(c, turn); 
		} 
		return true; 
	} 
	public override int EvaluateTurn(int p)
	{
		if (base.refVal2 == 268)

ConWeapon

public class ConWeapon : BaseBuff

cs

	public override int P2 => cha;

	public override bool IsOverrideConditionMet(Condition c, int turn) 
	{ 
		return true; 
	} 
	public override void Tick()
	{
	}

Quest

public virtual bool Deliver(Chara c, Thing t = null)

cs
	{
		return false;
	}
	public Chara AddResident(string id) 
	{ 
		Chara chara = CharaGen.Create(id); 
		EClass.Branch.AddMemeber(EClass._zone.AddCard(chara, EClass.pc.pos.GetNearestPoint(allowBlock: false, allowChara: false)) as Chara); 
		Msg.Say("hire".langGame(chara.Name)); 
		return chara; 
	} 
}

QuestDialog

public override void OnDropReward()

cs
		EClass.game.quests.Add("exile_meet", "quru").startDate = EClass.world.date.GetRaw() + 43200;
		break;
	case "exile_meet":
		EClass.Branch.AddMemeber(EClass._zone.AddCard(CharaGen.Create("demitas"), EClass.pc.pos.GetNearestPoint(allowBlock: false, allowChara: false)) as Chara); 
		AddResident("demitas"); 
		EClass.game.quests.Add("exile_quru", "quru").startDate = EClass.world.date.GetRaw() + 1440;
		break;
	case "exile_quru":

public override void OnDropReward()

cs
		EClass.game.quests.Add("kettle_join", "loytel").startDate = EClass.world.date.GetRaw() + 1440;
		break;
	case "kettle_join":
		EClass.Branch.AddMemeber(EClass._zone.AddCard(CharaGen.Create("kettle"), EClass.pc.pos.GetNearestPoint(allowBlock: false, allowChara: false)) as Chara); 
		EClass.Branch.AddMemeber(EClass._zone.AddCard(CharaGen.Create("quru"), EClass.pc.pos.GetNearestPoint(allowBlock: false, allowChara: false)) as Chara); 
		AddResident("kettle"); 
		AddResident("quru"); 
		EClass.game.quests.Add("quru_morning", "loytel").startDate = EClass.world.date.GetRaw() + 1440;
		break;
	case "quru_morning":

QuestIntoDarkness

public override void OnStart()

cs

	public override bool CanUpdateOnTalk(Chara c)
	{
		if (phase == 6) 
		{ 
			return EClass._zone.IsPCFaction; 
		} 
		return false;
	}
	public override void OnComplete() 
	{ 
		AddResident("sorin"); 
	} 
}

QuestIntroInspector

public class QuestIntroInspector : QuestProgression

cs
{
	public override void OnComplete()
	{
		Chara chara = CharaGen.Create("loytel"); 
		Chara chara = AddResident("loytel"); 
		chara.SetInt(100, 1);
		EClass._zone.AddCard(chara, EClass.pc.pos.GetNearestPoint()); 
		EClass.Branch.AddMemeber(chara); 
		EClass.game.quests.globalList.Add(Quest.Create("shippingChest").SetClient(chara, assignQuest: false));
		EClass.game.quests.globalList.Add(Quest.Create("exploration").SetClient(EClass.game.cards.globalCharas.Find("ashland"), assignQuest: false));
	}

QuestVernis

public override bool CanUpdateOnTalk(Chara c)

cs

	public override void OnComplete()
	{
		Chara chara = CharaGen.Create("corgon"); 
		chara.SetInt(100, 1); 
		EClass._zone.AddCard(chara, EClass.pc.pos.GetNearestPoint()); 
		EClass.Branch.AddMemeber(chara); 
		AddResident("corgon").SetInt(100, 1); 
		EClass.game.quests.Add("mokyu", "corgon").startDate = EClass.world.date.GetRaw() + 14400;
		EClass.game.quests.Add("pre_debt", "farris").startDate = EClass.world.date.GetRaw() + 28800;
	}

TraitASMR

using System;

cs
using System; 
using UnityEngine; 

public class TraitASMR : Trait
{

public class TraitASMR : Trait

cs

	public override bool HaveUpdate => true;

	public override void OnCreate(int lv) 
	{ 
		owner.c_idRefCard = GetParam(1) ?? ((EClass.rnd(EClass.debug.enable ? 2 : 10) == 0) ? "opatos" : ((EClass.rnd(2) == 0) ? "jure" : "")); 
	} 
	public override void OnImportMap() 
	{ 
		if (owner.c_idRefCard.IsEmpty()) 
		{ 
			owner.c_idRefCard = GetParam(1); 
		} 
	} 
	public override void Update()
	{
		if (IsOn) 
		if (!IsOn) 
		{ 
			return; 
		} 
		tick++; 
		if (tick % 5 == 0) 
		{
			tick++; 
			string[] source = Lang.Get("_ASMR").Split(Environment.NewLine.ToCharArray()); 
			if (tick % 5 == 0) 
			Debug.Log(owner.c_idRefCard); 
			string[] dialog = Lang.GetDialog("asmr", owner.c_idRefCard.IsEmpty("eyth")); 
			if (dialog.IsEmpty()) 
			{
				owner.TalkRaw(source.RandomItem()); 
				dialog = Lang.GetDialog("asmr", "eyth"); 
			}
			owner.TalkRaw(dialog.RandomItem()); 
		}
	}
}