1using System.Collections.Generic;
23 public override string GetText(
string str =
"")
26 return base.GetText(str) + text;
39 item.SetHighlight(list.LastItem().Equals(
item) ? 8 : 2);
63 return base.CanPerform();
68 List<Point> list =
new List<Point>();
70 bool flag = start.
Distance(end) != 1;
77 if (!
item.Equals(start) && (!flag || start.Distance(
item) <= start.Distance(end)) &&
item.IsInBounds)
79 if (!
item.Equals(end) && (
item.IsBlocked || (
item.HasChara &&
item.FirstChara.IsMultisize)))
92 if (num * num <=
int.MaxValue)
94 return (
int)(num * num);
103 if (condition !=
null)
105 num += condition.
value;
107 return Mathf.Clamp(num / 33, 0, 3);
113 num = num * (50 + dist * 25) / 100;
118 num = num * mtp / 100;
140 Point point = list.Last();
141 for (
int i = 0; i < list.Count; i++)
143 Point point2 = list[i];
149 foreach (
Chara item in point2.ListCharas())
153 if (!flag && (
item.isChara ||
item.trait.CanBeAttacked))
override int GetPower(Card c)
override void OnMarkMapHighlights()
override bool CanPerform()
void DoDamage(Card c, int dist=1, int mtp=100)
override string GetText(string str="")
List< Point > ListPath(Point start, Point end)
override bool IsHostileAct
override bool ShowMapHighlight
override int PerformDistance
SoundSource PlaySound(string id, float v=1f, bool spatial=true)
void Kick(Point p, bool ignoreSelf=false, bool checkWall=true)
Effect PlayEffect(string id, bool useRenderPos=true, float range=0f, Vector3 fix=default(Vector3))
virtual bool IsAliveInCurrentZone
void DamageHP(long dmg, AttackSource attackSource=AttackSource.None, Card origin=null)
void MoveImmediate(Point p, bool focus=true, bool cancelAI=true)
void Say(string lang, string ref1=null, string ref2=null)
Condition AddCondition(string id, int p=100, bool force=false)
void DoHostileAction(Card _tg, bool immediate=false)
static int Roll(int num, int sides, int bonus=0, Card card=null)
static Dice Create(Element ele, Card c)
static Effect Get(Effect original)
void Play(float delay, Point from, float fixY=0f, Point to=null, Sprite sprite=null)
static string[] GetList(string id)
List< Point > ListPointsInLine(Point center, Point to, int radius, bool returnOnBlocked=true)
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)
bool TryWitnessCrime(Chara criminal, Chara target=null, int radius=4, Func< Chara, bool > funcWitness=null)
Effect PlayEffect(string id)
virtual bool CanBeAttacked
virtual bool CanBeTeleported
bool IsCrime(Chara c, Act act)