2using System.Collections.Generic;
11 public void Add(
Act a,
string s =
"")
56 public bool Perform(
bool repeated =
false)
131 if (aIAct is
Task task)
133 task.isDestroyed =
false;
137 taskPoint.isRepeated =
true;
196 return list[0].act.CanPressRepeat;
212 return list[0].act.GetCursorIcon(
list[0].tc);
226 return list[0].act.WillEndTurn;
238 return list[0].act.HideRightInfo;
254 return list[0].act.ShowMouseHint(
list[0].tc);
268 return list[0].tc !=
list.LastItem().tc;
282 return list[0].GetText(showName);
284 return "+" + list.Count + ((
HasMultipleTargets ||
list[0].tc ==
null) ? (
"\n<size=28>(" +
"multipleTargets".lang() +
")</size>") : (
"\n<size=28>" +
list[0].tc.Name +
list[0].tc.GetExtraName() +
"</size>"));
326 textContext = textContext.Replace(
"\n",
" ").Replace(Environment.NewLine,
" ");
327 uIContextMenu.AddButton(textContext, delegate
332 EClass.player.EndTurn();
341 uIContextMenu.Show();
351 isHostileAct = isHostileAct,
380 if (_tc !=
null && _tc.isChara)
383 for (
int i = 0; i <
list.Count; i++)
385 if (
list[i].tc == _tc)
428 for (
int i = 0; i < components.Length; i++)
430 components[i].effectColor = effectColor;
436 EClass.ui.hud.imageRight.rectTransform.localScale =
new Vector3(2f, 2f, 1f);
439 for (
int i = 0; i < components.Length; i++)
441 components[i].effectColor = effectColor;
502 items.ForeachReverse(delegate(
Card _c)
584 items.ForeachReverse(delegate(
Card _c)
604 uIContextMenu.
AddSlider(
"rideSkin", (
float a) =>
list[(
int)a].Split(
'-')[0] ??
"", index, delegate(
float a)
606 ride.c_idRidePCC =
list[(int)a];
608 }, 0f, list.Count - 1, isInt:
true, hideOther:
false);
609 uIContextMenu.
Show();
630 string lang =
"actGive";
644 Dialog.YesNo(
"dialogGive".lang(EClass.pc.held.GetName(NameStyle.Full, 1)), func);
659 ActThrow.Throw(EClass.pc, c.pos, c, EClass.pc.held.Split(1));
725 t.c_lightColor = (byte)Mathf.Clamp(_c.r * 32f, 1f, 31f) * 1024 + (byte)Mathf.Clamp(_c.g * 32f, 1f, 31f) * 32 + (byte)Mathf.Clamp(_c.b * 32f, 1f, 31f);
735 TrySetAct(
"(debug) Toggle Float", delegate
827 IList<Card> _cards = items.Copy();
830 foreach (
Card item2
in _cards)
834 EClass.pc.Pick(item2.Thing);
857 ActionMode.AdvOrRegion.updatePlans =
true;
898 items.ForeachReverse(delegate(
Card _c)
902 TrySetAct(ACT.Melee, _c);
921 hotItem.OnClick(hotItem.button, hotItem.hotbar);
929 bool flag = EClass.game.config.autoCombat.enable && EClass.scene.mouseTarget.TargetChara !=
null;
956 if (!
list[0].act.ShowAuto)
980 static void Banish(
Chara m)
if(item3.idFile==idFirstFile &&item3.id==idFirstTopic)
void SetTurbo(int mtp=-1)
string GetText(bool showName)
bool Perform(bool repeated=false)
string GetTextContext(bool showName)
void Add(Act a, string s="")
bool _canInteractNeighbor
string GetText(bool showName)
void Update(PointTarget target)
bool TrySetAct(Act _act, Card _tc=null)
void _Update(PointTarget target)
bool TrySetAct(string lang, Func< bool > onPerform, Card tc, CursorInfo cursor=null, int dist=1, bool isHostileAct=false, bool localAct=true, bool canRepeat=false)
bool TrySetAct(string lang, Func< bool > onPerform, CursorInfo cursor=null, int dist=1)
static bool SearchMedal(Chara c, Point p)
virtual int PerformDistance
virtual string GetTextSmall(Card c)
virtual string GetText(string str="")
virtual bool CanPerform()
bool IsRestrainedResident
bool HasElement(int ele, int req=1)
void TryUnrestrain(bool force=false, Chara c=null)
void Say(string lang, string ref1=null, string ref2=null)
override bool IsAliveInCurrentZone
bool CanAcceptGift(Chara c, Card t)
void Cuddle(Chara c, bool headpat=false)
bool IsValidGiftWeight(Card t, int num=-1)
void PickHeld(bool msg=false)
bool HasCondition(string alias)
override CardRenderer _CreateRenderer()
override bool IsPCFaction
override bool IsPCPartyMinion
void SetAIImmediate(AIAct g)
bool CanInteractTo(Card c)
static NoGoal _NoGoalRepeat
void DropThing(Thing t, int num=-1)
void GiveGift(Chara c, Thing t)
Thing Pick(Thing t, bool msg=true, bool tryStack=true)
bool bDontAutoAttackNeutral
static CursorInfo Inventory
static CursorInfo MoveZone
static Dialog InputName(string langDetail, string text, Action< bool, string > onClose, InputType inputType=InputType.Default)
static void TryWarnDisassemble(Action action)
static void TryWarnCrime(Action action)
static ColorProfile Colors
ConfigAutoCombat autoCombat
static bool _TrySetAct(ActPlan p)
virtual void SetImage(Image icon)
virtual bool TrySetAct(ActPlan p)
virtual bool IsGameAction
static LayerDragGrid Create(InvOwnerDraglet owner, bool refuelFromLayerDragGrid=false)
static LayerInventory CreateContainer(Card owner)
bool CanExitBorder(Point p)
bool HasKeyItem(string alias)
void EndTurn(bool consume=true)
void EnterLocalZone(bool encounter=false, Chara mob=null)
void ExitBorder(ActPlan p=null)
List< Card > ListCards(bool includeMasked=false)
Point Set(int _x, int _z)
SoundSource PlaySound(string id, bool synced=true, float v=1f, bool spatial=true)
bool Equals(int _x, int _z)
Effect PlayEffect(string id)
Thing FindThing(Func< Thing, bool > func)
bool IsDeliverTarget(Chara c)
virtual bool AllowTraining
virtual bool CanBeAttacked
virtual void TrySetAct(ActPlan p)
virtual bool CanRead(Chara c)
virtual void TrySetToggleAct(ActPlan p)
virtual bool CanEat(Chara c)
virtual bool DisableAutoCombat
virtual bool CanDrink(Chara c)
virtual bool CanOnlyCarry
bool IsCrime(Chara c, Act act)