Elin Decompiled Documentation EA 23.130 Nightly
Loading...
Searching...
No Matches
Point Class Reference
Inheritance diagram for Point:
EClass LogicalPoint RegionPoint LogicalFire

Public Member Functions

bool Within (int _x, int _z, int _w, int _h)
 
Chara FirstVisibleChara ()
 
bool HasRoomOrArea (BaseArea a)
 
bool IsInSpot< T > ()
 
bool IsPublicSpace ()
 
 Point ()
 
 Point (Point p)
 
 Point (int _x, int _z)
 
 Point (int _index)
 
Point Copy ()
 
Copy< T > ()
 
Point Set (int _x, int _z)
 
Point Set (int index)
 
Point Set (Point point)
 
override string ToString ()
 
void Set (Vector3 v)
 
ref Vector3 PositionAuto ()
 
ref Vector3 Position (int height)
 
ref Vector3 Position ()
 
ref Vector3 PositionTopdown ()
 
ref Vector3 PositionTopdownTreasure ()
 
ref Vector3 PositionCenter ()
 
Quaternion GetRotation (Point to)
 
float GetAngle (Point to)
 
float GetAngle2 (Point to)
 
Point GetNearestPoint (bool allowBlock=false, bool allowChara=true, bool allowInstalled=true, bool ignoreCenter=false)
 
bool ForeachNearestPoint (Func< Point, bool > endFunc, bool allowBlock=false, bool allowChara=true, bool allowInstalled=true, bool ignoreCenter=false, int maxRange=30)
 
Point GetRandomNeighbor ()
 
Point GetRandomPoint (int radius, bool requireLos=true, bool allowChara=true, bool allowBlocked=false, int tries=100)
 
Point GetRandomPointInRadius (int minRadius, int maxRadius, bool requireLos=true, bool allowChara=true, bool allowBlocked=false, int tries=2000)
 
Point GetPointTowards (Point dest)
 
void TalkWitnesses (Chara criminal, string idTalk, int radius=4, WitnessType type=WitnessType.everyone, Func< Chara, bool > talkIf=null, int chance=3)
 
List< CharaListWitnesses (Chara criminal, int radius=4, WitnessType type=WitnessType.crime, Chara target=null)
 
bool TryWitnessCrime (Chara criminal, Chara target=null, int radius=4, Func< Chara, bool > funcWitness=null)
 
void CallGuard (Chara criminal, Chara caller)
 
void SetBlock (int idMat=0, int idBlock=0)
 
void SetFloor (int idMat=0, int idFloor=0)
 
void SetObj (int id=0, int value=1, int dir=0)
 
void ModFire (int value, bool extinguish=false)
 
void Plow ()
 
bool Equals (int _x, int _z)
 
override bool Equals (object obj)
 
override int GetHashCode ()
 
int Distance (Point p)
 
int Distance (int tx, int tz)
 
bool IsBlockByHeight (Point p)
 
Point Clamp (bool useBounds=false)
 
List< CardListCards (bool includeMasked=false)
 
List< CardListVisibleCards ()
 
Card FindAttackTarget ()
 
Chara FindChara (Func< Chara, bool > func)
 
FindThing< T > ()
 
Thing FindThing (Func< Thing, bool > func)
 
List< CardListThings< T > (bool onlyInstalled=true)
 
List< CharaListCharas ()
 
List< CharaListVisibleCharas ()
 
List< CharaListCharasInNeighbor (Func< Chara, bool > func)
 
List< CharaListCharasInRadius (Chara cc, int dist, Func< Chara, bool > func, bool onlyVisible=true)
 
GetInstalled< T > ()
 
Effect PlayEffect (string id)
 
SoundSource PlaySound (string id, bool synced=true, float v=1f, bool spatial=true)
 
void RefreshNeighborTiles ()
 
void RefreshTile ()
 
bool HasNonHomeProperty (Thing exclude=null)
 
void Animate (AnimeID id, bool animeBlock=false)
 
RenderParam ApplyAnime (RenderParam p)
 
Vector3 ApplyAnime (ref Vector3 p)
 
List< IInspectListInspectorTargets ()
 
void ForeachMultiSize (int w, int h, Action< Point, bool > action)
 
void ForeachNeighbor (Action< Point > action, bool diagonal=true)
 
Point ToRegionPos ()
 
void SetHighlight (int id)
 

Static Public Member Functions

static Point GetShared (int x, int z)
 
- Static Public Member Functions inherited from EClass
static int rndSeed (int a, int seed)
 
static int rnd (int a)
 
static int curve (int a, int start, int step, int rate=75)
 
static int rndHalf (int a)
 
static float rndf (float a)
 
static int rndSqrt (int a)
 
static void Wait (float a, Card c)
 
static void Wait (float a, Point p)
 
static int Bigger (int a, int b)
 
static int Smaller (int a, int b)
 

Public Attributes

int x
 
int z
 

Static Public Attributes

static readonly XY[] Surrounds
 
static Vector3 fixedPos
 
static Point shared = new Point()
 
static Point shared2 = new Point()
 
static Point shared3 = new Point()
 
static Map map
 
static Point Invalid
 
static Point Zero = new Point()
 
static BaseGameScreen _screen
 
- Static Public Attributes inherited from EClass
static Core core
 

Properties

int index [get]
 
Cell cell [get]
 
SourceMaterial.Row matRoofBlock [get]
 
SourceMaterial.Row matBlock [get]
 
SourceMaterial.Row matFloor [get]
 
SourceMaterial.Row matBridge [get]
 
SourceBlock.Row sourceRoofBlock [get]
 
SourceBlock.Row sourceBlock [get]
 
SourceFloor.Row sourceFloor [get]
 
SourceFloor.Row sourceBridge [get]
 
SourceObj.Row sourceObj [get]
 
CellDetail detail [get]
 
Area area [get]
 
Point Front [get]
 
GrowSystem growth [get]
 
int eloX [get]
 
int eloY [get]
 
bool HasDesignation [get]
 
bool HasDirt [get]
 
bool IsValid [get, set]
 
bool IsInBounds [get]
 
bool IsInBoundsPlus [get]
 
bool IsFarmField [get]
 
bool IsWater [get]
 
bool HasRamp [get]
 
bool HasRail [get]
 
bool HasRampOrLadder [get]
 
bool HasObj [get]
 
bool HasDecal [get]
 
bool HasBlock [get]
 
bool HasMinableBlock [get]
 
bool HasWallOrFence [get]
 
bool HasWall [get]
 
bool HasFence [get]
 
bool HasNonWallBlock [get]
 
bool HasTaskBuild [get]
 
bool HasBlockRecipe [get]
 
bool HasFloor [get]
 
bool HasBridge [get]
 
bool IsSky [get]
 
bool HasArea [get]
 
bool HasChara [get]
 
bool HasThing [get]
 
bool HasMultipleChara [get]
 
bool IsDeepWater [get]
 
Chara FirstChara [get]
 
Thing FirstThing [get]
 
Thing LastThing [get]
 
Thing Installed [get]
 
List< ThingThings [get]
 
List< CharaCharas [get]
 
bool IsSeen [get]
 
bool IsSync [get]
 
bool IsHidden [get]
 
bool IsBlocked [get]
 
bool IsHotSpring [get]
 
- Properties inherited from EClass
static Game game [get]
 
static bool AdvMode [get]
 
static Player player [get]
 
static Chara pc [get]
 
static UI ui [get]
 
static Map _map [get]
 
static Zone _zone [get]
 
static FactionBranch Branch [get]
 
static FactionBranch BranchOrHomeBranch [get]
 
static Faction Home [get]
 
static Faction Wilds [get]
 
static Scene scene [get]
 
static BaseGameScreen screen [get]
 
static GameSetting setting [get]
 
static GameData gamedata [get]
 
static ColorProfile Colors [get]
 
static World world [get]
 
static SourceManager sources [get]
 
static SourceManager editorSources [get]
 
static SoundManager Sound [get]
 
static CoreDebug debug [get]
 

Private Attributes

Vector3 vCache
 

Static Private Attributes

static List< CardlistCard = new List<Card>()
 
static List< CharalistChara = new List<Chara>()
 

Detailed Description

Definition at line 8 of file Point.cs.

Constructor & Destructor Documentation

◆ Point() [1/4]

Point.Point ( )
inline

◆ Point() [2/4]

Point.Point ( Point  p)
inline

Definition at line 462 of file Point.cs.

463 {
464 x = p.x;
465 z = p.z;
466 }
int x
Definition: Point.cs:36
int z
Definition: Point.cs:39

References x, and z.

◆ Point() [3/4]

Point.Point ( int  _x,
int  _z 
)
inline

Definition at line 468 of file Point.cs.

469 {
470 x = _x;
471 z = _z;
472 }

References x, and z.

◆ Point() [4/4]

Point.Point ( int  _index)
inline

Definition at line 474 of file Point.cs.

475 {
476 Set(_index);
477 }
Point Set(int _x, int _z)
Definition: Point.cs:491

References Set().

Member Function Documentation

◆ Animate()

void Point.Animate ( AnimeID  id,
bool  animeBlock = false 
)
inline

Definition at line 1278 of file Point.cs.

1279 {
1280 if (!IsValid)
1281 {
1282 return;
1283 }
1284 CellDetail orCreateDetail = cell.GetOrCreateDetail();
1285 if (orCreateDetail.anime == null)
1286 {
1287 TransAnime transAnime = (orCreateDetail.anime = new TransAnime
1288 {
1289 data = ResourceCache.Load<TransAnimeData>("Scene/Render/Anime/" + id),
1290 point = this,
1291 animeBlock = animeBlock
1292 }.Init());
1293 EClass._map.pointAnimes.Add(transAnime);
1294 if (id == AnimeID.Quake)
1295 {
1296 transAnime.drawBlock = true;
1297 }
1298 }
1299 }
AnimeID
Definition: AnimeID.cs:2
TransAnime anime
Definition: CellDetail.cs:21
CellDetail GetOrCreateDetail()
Definition: Cell.cs:1529
Definition: EClass.cs:5
static Map _map
Definition: EClass.cs:18
List< TransAnime > pointAnimes
Definition: Map.cs:83
bool IsValid
Definition: Point.cs:88
Cell cell
Definition: Point.cs:51

References EClass._map, CellDetail.anime, Cell.GetOrCreateDetail(), and Map.pointAnimes.

Referenced by ActMelee.Attack(), ActEffect.DamageEle(), TaskDrawWater.OnCreateProgress(), TaskHarvest.OnCreateProgress(), TaskMine.OnCreateProgress(), TaskPlow.OnCreateProgress(), TaskPourWater.OnCreateProgress(), EffectMeteor.OnPlay(), TaskCut.OnProgress(), TaskDig.OnProgressComplete(), ActBash.Perform(), and Map.Quake().

◆ ApplyAnime() [1/2]

Vector3 Point.ApplyAnime ( ref Vector3  p)
inline

Definition at line 1316 of file Point.cs.

1317 {
1318 if (detail == null || detail.anime == null)
1319 {
1320 return p;
1321 }
1322 p.x += detail.anime.v.x;
1323 p.y += detail.anime.v.y;
1324 p.z += detail.anime.v.z;
1325 return p;
1326 }
CellDetail detail
Definition: Point.cs:71
Vector3 v
Definition: TransAnime.cs:5

References CellDetail.anime, and TransAnime.v.

◆ ApplyAnime() [2/2]

RenderParam Point.ApplyAnime ( RenderParam  p)
inline

Definition at line 1301 of file Point.cs.

1302 {
1303 if (detail == null || detail.anime == null)
1304 {
1305 return p;
1306 }
1307 p.x += detail.anime.v.x;
1308 p.y += detail.anime.v.y;
1309 p.z += detail.anime.v.z;
1310 p.v.x += detail.anime.v.x;
1311 p.v.y += detail.anime.v.y;
1312 p.v.z += detail.anime.v.z;
1313 return p;
1314 }

References CellDetail.anime, and TransAnime.v.

Referenced by Recipe.OnRenderMarker(), and Card.RenderMarker().

◆ CallGuard()

void Point.CallGuard ( Chara  criminal,
Chara  caller 
)
inline

Definition at line 882 of file Point.cs.

883 {
884 caller.Talk("callGuards");
885 List<Chara> list = EClass._map.charas.Where((Chara c) => c.trait is TraitGuard && !c.IsInCombat).ToList();
886 if (list.Count > 0)
887 {
888 Chara chara = list.RandomItem();
889 caller.Say("calledGuard", caller);
890 chara.DoHostileAction(criminal);
891 }
892 }
void Talk(string idTopic, string ref1=null, string ref2=null, bool forceSync=false)
Definition: Card.cs:6135
void Say(string lang, string ref1=null, string ref2=null)
Definition: Card.cs:6232
Definition: Chara.cs:10
new TraitChara trait
Definition: Chara.cs:493
bool IsInCombat
Definition: Chara.cs:822
void DoHostileAction(Card _tg, bool immediate=false)
Definition: Chara.cs:5765
List< Chara > charas
Definition: Map.cs:81

References EClass._map, Map.charas, Chara.DoHostileAction(), Chara.IsInCombat, Card.Say(), Card.Talk(), and Chara.trait.

Referenced by TryWitnessCrime().

◆ Clamp()

Point Point.Clamp ( bool  useBounds = false)
inline

Definition at line 984 of file Point.cs.

985 {
986 if (useBounds)
987 {
988 if (x < map.bounds.x)
989 {
990 x = map.bounds.x;
991 }
992 else if (x >= map.bounds.maxX)
993 {
994 x = map.bounds.maxX;
995 }
996 if (z < map.bounds.z)
997 {
998 z = map.bounds.z;
999 }
1000 else if (z >= map.bounds.maxZ)
1001 {
1002 z = map.bounds.maxZ;
1003 }
1004 }
1005 else
1006 {
1007 if (x < 0)
1008 {
1009 x = 0;
1010 }
1011 else if (x >= map.Size)
1012 {
1013 x = map.Size - 1;
1014 }
1015 if (z < 0)
1016 {
1017 z = 0;
1018 }
1019 else if (z >= map.Size)
1020 {
1021 z = map.Size - 1;
1022 }
1023 }
1024 return this;
1025 }
int Size
Definition: MapBounds.cs:20
int maxZ
Definition: MapBounds.cs:17
int maxX
Definition: MapBounds.cs:14
int x
Definition: MapBounds.cs:8
MapBounds bounds
Definition: Map.cs:52
static Map map
Definition: Point.cs:26

References Map.bounds, map, MapBounds.maxX, MapBounds.maxZ, MapBounds.Size, MapBounds.x, x, MapBounds.z, and z.

Referenced by Zone.AddGlobalCharasOnActivate(), Crawler.Crawl(), BaseTileMap.Draw(), POIMap.Cell.GetCenter(), FactionBranch.GetMailBoxPos(), Map.GetRandomPoint(), MapBounds.GetSurface(), MapGen.MakeNeighbor(), WidgetMinimap.OnPointerDown(), AM_Cinema.OnUpdateInput(), and GameUpdater.Update().

◆ Copy()

Point Point.Copy ( )
inline

Definition at line 479 of file Point.cs.

480 {
481 return new Point(x, z);
482 }
Point()
Definition: Point.cs:458

References Point(), x, and z.

Referenced by AM_Sim._OnUpdateInput(), ActPlan._Update(), RoomManager.AddArea(), ActMelee.Attack(), AM_Adv.AxisMove(), AI_Shopping.Buy(), GoalManualMove.CanMove(), CoreDebug.COM_Teleport(), Crawler.Crawl(), EffectMeteor.Create(), Chara.CreateReplacement(), ActEffect.DamageEle(), Player.EnterLocalZone(), AreaTypeFarm.GetAI(), Chara.GetDestination(), PathManager.GetFirstStep(), LayerInspect.GetMenuItems(), AIWork_Fish.GetWork(), TaskWater.ListPoints(), Trait.ListPoints(), TraitLightSun.ListPoints(), Los.ListVisible(), Chara.MoveNeighborDefinitely(), TraitNewZone.MoveZone(), ActBolt.OnMarkMapHighlights(), AM_ExpandArea.OnProcessTiles(), AM_MoveInstalled.OnProcessTiles(), TaskBuild.OnProgressComplete(), InspectGroupBlock.OnSetActions(), InspectGroupObj.OnSetActions(), BaseTileSelector.OnUpdate(), DramaManager.ParseLine(), ActRanged.Perform(), ActPlan.Item.Perform(), EffectIRenderer.Play(), Effect.Play(), AttackProcess.PlayRangedAnime(), ActEffect.ProcAt(), Map.Quake(), Religion.Reforge(), WidgetSearch.RefreshList(), SerializedCards.Restore(), AI_Fish.Run(), TaskDump.Run(), LayerCraftFloat.ShowContextMenu(), Player.SimulateFaction(), ActThrow.Throw(), RoomManager.TryAddArea(), TaskHarvest.TryGetAct(), Chara.TryMoveFrom(), BaseTileSelector.TryProcessTiles(), ActPlan.TrySetAct(), HotItemHeld.TrySetAct(), TraitBroom.TrySetHeldAct(), ButtonAbility.TryUse(), WidgetDebug.UpdateText(), and VirtualRoom.VirtualRoom().

◆ Copy< T >()

T Point.Copy< T > ( )
inline
Type Constraints
T :Point 

Definition at line 484 of file Point.cs.

484 : Point
485 {
486 T val = Activator.CreateInstance<T>();
487 val.Set(this);
488 return val;
489 }
Definition: Point.cs:9

References Set().

◆ Distance() [1/2]

int Point.Distance ( int  tx,
int  tz 
)
inline

Definition at line 970 of file Point.cs.

971 {
972 return Fov.Distance(tx, tz, x, z);
973 }
Definition: Fov.cs:6
static int Distance(int x1, int y1, int x2, int y2)
Definition: Fov.cs:134

References Fov.Distance(), x, and z.

◆ Distance() [2/2]

◆ Equals() [1/2]

◆ Equals() [2/2]

override bool Point.Equals ( object  obj)
inline

Definition at line 945 of file Point.cs.

946 {
947 Point point = obj as Point;
948 if (point == null)
949 {
950 Debug.Log(point?.ToString() + ":" + point.GetType()?.ToString() + "is not Point");
951 return false;
952 }
953 if (x == point.x)
954 {
955 return z == point.z;
956 }
957 return false;
958 }
override string ToString()
Definition: Point.cs:512

References Debug, Point(), ToString(), x, and z.

◆ FindAttackTarget()

Card Point.FindAttackTarget ( )
inline

Definition at line 1074 of file Point.cs.

1075 {
1076 foreach (Card item in ListCards())
1077 {
1078 if (item.isChara || item.trait.CanBeAttacked)
1079 {
1080 return item;
1081 }
1082 }
1083 return null;
1084 }
Definition: Card.cs:11
List< Card > ListCards(bool includeMasked=false)
Definition: Point.cs:1027

References item, and ListCards().

Referenced by ActRanged.Perform(), and ActThrow.Throw().

◆ FindChara()

Chara Point.FindChara ( Func< Chara, bool >  func)
inline

Definition at line 1086 of file Point.cs.

1087 {
1088 if (detail != null)
1089 {
1090 foreach (Chara chara in detail.charas)
1091 {
1092 if (func(chara))
1093 {
1094 return chara;
1095 }
1096 }
1097 }
1098 return null;
1099 }
List< Chara > charas
Definition: CellDetail.cs:13

References CellDetail.charas, and detail.

Referenced by TaskCullLife.CanPerform(), and TaskCullLife.Run().

◆ FindThing()

Thing Point.FindThing ( Func< Thing, bool >  func)
inline

Definition at line 1116 of file Point.cs.

1117 {
1118 if (detail != null)
1119 {
1120 foreach (Thing thing in detail.things)
1121 {
1122 if (func(thing))
1123 {
1124 return thing;
1125 }
1126 }
1127 }
1128 return null;
1129 }
List< Thing > things
Definition: CellDetail.cs:11
Definition: Thing.cs:8

References detail, and CellDetail.things.

Referenced by AM_Adv._OnUpdateInput(), ActPlan._Update(), Zone.AddGlobalCharasOnActivate(), Hobby.GetEfficiency(), TaskChopWood.GetLog(), ConSleep.OnBeforeStart(), ConSleep.OnRemoved(), AI_Idle.Run(), and ConSuspend.Tick().

◆ FindThing< T >()

T Point.FindThing< T > ( )
inline
Type Constraints
T :Trait 

Definition at line 1101 of file Point.cs.

1101 : Trait
1102 {
1103 if (IsValid && detail != null)
1104 {
1105 foreach (Thing thing in detail.things)
1106 {
1107 if (thing.trait is T)
1108 {
1109 return thing.trait as T;
1110 }
1111 }
1112 }
1113 return null;
1114 }
Trait trait
Definition: Card.cs:49
Definition: Trait.cs:7

References detail, IsValid, CellDetail.things, and Card.trait.

◆ FirstVisibleChara()

Chara Point.FirstVisibleChara ( )
inline

Definition at line 394 of file Point.cs.

395 {
396 if (detail != null)
397 {
398 foreach (Chara chara in detail.charas)
399 {
400 if (EClass.pc.CanSee(chara))
401 {
402 return chara;
403 }
404 }
405 }
406 return null;
407 }
bool CanSee(Card c)
Definition: Chara.cs:1032
static Chara pc
Definition: EClass.cs:14

References Chara.CanSee(), CellDetail.charas, detail, and EClass.pc.

Referenced by HotItemHeld.TrySetAct().

◆ ForeachMultiSize()

void Point.ForeachMultiSize ( int  w,
int  h,
Action< Point, bool >  action 
)
inline

Definition at line 1361 of file Point.cs.

1362 {
1363 for (int i = 0; i < h; i++)
1364 {
1365 for (int j = 0; j < w; j++)
1366 {
1367 shared3.Set(x - j, z + i);
1368 action(shared3, j == 0 && i == 0);
1369 }
1370 }
1371 }
static Point shared3
Definition: Point.cs:24

References Set().

Referenced by Chara.DestroyPath(), UIInspector.DrawHighlight(), TraitBoat.ForeachDeck(), Card.ForeachPoint(), TaskBuild.OnProgressComplete(), HotItemHeld.OnRenderTile(), AI_HaulResource.Run(), and TaskMoveInstalled.Run().

◆ ForeachNearestPoint()

bool Point.ForeachNearestPoint ( Func< Point, bool >  endFunc,
bool  allowBlock = false,
bool  allowChara = true,
bool  allowInstalled = true,
bool  ignoreCenter = false,
int  maxRange = 30 
)
inline

Definition at line 675 of file Point.cs.

676 {
677 Point p = new Point();
678 int num = 1;
679 int num2 = x;
680 int num3 = z;
681 if (IsValid(num2, num3) && endFunc(p))
682 {
683 return true;
684 }
685 if (IsValid(num2, num3 + 1) && endFunc(p))
686 {
687 return true;
688 }
689 for (int i = 0; i < maxRange; i++)
690 {
691 for (int j = 0; j < num; j++)
692 {
693 num2++;
694 if (IsValid(num2, num3) && endFunc(p))
695 {
696 return true;
697 }
698 }
699 for (int k = 0; k < num; k++)
700 {
701 num3++;
702 if (IsValid(num2, num3) && endFunc(p))
703 {
704 return true;
705 }
706 }
707 num++;
708 for (int l = 0; l < num; l++)
709 {
710 num2--;
711 if (IsValid(num2, num3) && endFunc(p))
712 {
713 return true;
714 }
715 }
716 for (int m = 0; m < num; m++)
717 {
718 num3--;
719 if (IsValid(num2, num3) && endFunc(p))
720 {
721 return true;
722 }
723 }
724 num++;
725 }
726 Debug.Log("ForeachNearestPoint Fail:" + this);
727 return false;
728 bool IsValid(int dx, int dz)
729 {
730 p.Set(dx, dz);
731 if (!p.IsInBounds || !map.Contains(dx, dz) || (ignoreCenter && dx == x && dz == z))
732 {
733 return false;
734 }
735 if ((!allowBlock && (p.cell.blocked || p.cell.hasDoor || (p.cell.growth != null && p.cell.growth.IsTree))) || (!allowChara && p.HasChara) || (!allowInstalled && p.Installed != null))
736 {
737 return false;
738 }
739 return true;
740 }
741 }
GrowSystem growth
Definition: Cell.cs:225
bool hasDoor
Definition: Cell.cs:258
virtual bool IsTree
Definition: GrowSystem.cs:87
bool Contains(int dx, int dz)
Definition: MapBounds.cs:38
Thing Installed
Definition: Point.cs:315
bool IsInBounds
Definition: Point.cs:104
bool HasChara
Definition: Point.cs:226

References Algorithms.WeightCell.blocked, cell, MapBounds.Contains(), Debug, Cell.growth, HasChara, Cell.hasDoor, Installed, IsInBounds, GrowSystem.IsTree, IsValid, map, Point(), Set(), x, and z.

◆ ForeachNeighbor()

void Point.ForeachNeighbor ( Action< Point action,
bool  diagonal = true 
)
inline

Definition at line 1373 of file Point.cs.

1374 {
1375 Point point = new Point();
1376 for (int i = x - 1; i <= x + 1; i++)
1377 {
1378 for (int j = z - 1; j <= z + 1; j++)
1379 {
1380 if (diagonal || i == x || j == z)
1381 {
1382 point.Set(i, j);
1383 if (point.IsValid)
1384 {
1385 action(point);
1386 }
1387 }
1388 }
1389 }
1390 }

References IsValid, and Set().

Referenced by ActMelee.Attack(), GrowSystem.EqualizePlants(), ListCharasInNeighbor(), Chara.MoveNeighborDefinitely(), ActRanged.Perform(), and AI_Idle.Run().

◆ GetAngle()

float Point.GetAngle ( Point  to)
inline

Definition at line 595 of file Point.cs.

596 {
597 Vector3 vector = to.Position() - Position();
598 return Mathf.Atan2(vector.y, vector.x) * 57.29578f;
599 }
ref Vector3 Position(int height)
Definition: Point.cs:536
ref Vector3 Position()
Definition: Point.cs:548

References Position().

Referenced by GetRotation().

◆ GetAngle2()

float Point.GetAngle2 ( Point  to)
inline

Definition at line 601 of file Point.cs.

602 {
603 int num = to.x - x;
604 return Mathf.Atan2(to.z - z, num) * 57.29578f;
605 }

References x, and z.

Referenced by Map.ListPointsInArc().

◆ GetHashCode()

override int Point.GetHashCode ( )
inline

Definition at line 960 of file Point.cs.

961 {
962 return x + z * map.Size;
963 }

References map, MapBounds.Size, x, and z.

◆ GetInstalled< T >()

T Point.GetInstalled< T > ( )
inline
Type Constraints
T :Trait 

Definition at line 1209 of file Point.cs.

1209 : Trait
1210 {
1211 if (detail != null)
1212 {
1213 foreach (Thing thing in detail.things)
1214 {
1215 if (thing.IsInstalled && thing.trait is T)
1216 {
1217 return thing.trait as T;
1218 }
1219 }
1220 }
1221 return null;
1222 }
bool IsInstalled
Definition: Card.cs:2281

References Card.IsInstalled, CellDetail.things, and Card.trait.

◆ GetNearestPoint()

Point Point.GetNearestPoint ( bool  allowBlock = false,
bool  allowChara = true,
bool  allowInstalled = true,
bool  ignoreCenter = false 
)
inline

Definition at line 607 of file Point.cs.

608 {
609 Point p = new Point();
610 int num = 1;
611 int num2 = x;
612 int num3 = z;
613 if (IsValid(num2, num3))
614 {
615 return p;
616 }
617 if (IsValid(num2, num3 + 1))
618 {
619 return p;
620 }
621 for (int i = 0; i < 30; i++)
622 {
623 for (int j = 0; j < num; j++)
624 {
625 num2++;
626 if (IsValid(num2, num3))
627 {
628 return p;
629 }
630 }
631 for (int k = 0; k < num; k++)
632 {
633 num3++;
634 if (IsValid(num2, num3))
635 {
636 return p;
637 }
638 }
639 num++;
640 for (int l = 0; l < num; l++)
641 {
642 num2--;
643 if (IsValid(num2, num3))
644 {
645 return p;
646 }
647 }
648 for (int m = 0; m < num; m++)
649 {
650 num3--;
651 if (IsValid(num2, num3))
652 {
653 return p;
654 }
655 }
656 num++;
657 }
658 p.Set(this);
659 return p;
660 bool IsValid(int dx, int dz)
661 {
662 p.Set(dx, dz);
663 if (!p.IsInBounds || !map.Contains(dx, dz) || (ignoreCenter && dx == x && dz == z))
664 {
665 return false;
666 }
667 if ((!allowBlock && (p.cell.blocked || p.cell.hasDoor || (p.cell.growth != null && p.cell.growth.IsTree))) || (!allowChara && p.HasChara) || (!allowInstalled && p.Installed != null))
668 {
669 return false;
670 }
671 return true;
672 }
673 }

References Algorithms.WeightCell.blocked, cell, MapBounds.Contains(), Cell.growth, HasChara, Cell.hasDoor, Installed, IsInBounds, GrowSystem.IsTree, IsValid, map, Point(), Set(), x, and z.

Referenced by InvOwnerChaosOffering._OnProcess(), TraitShrine._OnUse(), Zone.AddGlobalCharasOnActivate(), Recipe.Build(), Zone.ClaimZone(), ZonePreEnterBout.Execute(), CoreDebug.Fix_LostCore(), FactionBranch.GetMailBoxPos(), FortuneRollData.GetPrize(), MapBounds.GetRandomSpawnPos(), Zone.GetRandomVisitPos(), Chara.GetRevived(), Zone.GetSpawnPos(), ActEffect.GetTeleportPos(), TraitFoodEggFertilized.Incubate(), Chara.Kick(), Chara.MoveHome(), FactionBranch.OnActivateZone(), FactionBranch.OnAfterSimulate(), QuestIntroInspector.OnComplete(), QuestVernis.OnComplete(), QuestDialog.OnDropReward(), GrowSystemTree.OnHitFail(), TraitDiary.OnRead(), QuestEscort.OnStart(), ZoneEventDefenseGame.OnVisit(), ActSummonGuard.Perform(), ActEffect.Proc(), ActEffect.ProcAt(), CoreDebug.QuickStart(), TraitBaseSpellbook.ReadFailEffect(), Chara.RequestProtection(), Zone.Revive(), Chara.Revive(), AI_Idle.Run(), ZoneEventQuest.Spawn(), ZoneEventQuest.SpawnBoss(), CoreDebug.SpawnBoss(), Card.SpawnLoot(), CoreDebug.TestSpawn(), Chara.TryDropBossLoot(), Religion.TryGetGift(), Zone.TrySpawnFollower(), and Card.TryUnrestrain().

◆ GetPointTowards()

Point Point.GetPointTowards ( Point  dest)
inline

Definition at line 785 of file Point.cs.

786 {
787 Point point = new Point(this);
788 int num = dest.x - point.x;
789 int num2 = dest.z - point.z;
790 if (Mathf.Abs(num) > 1 || Mathf.Abs(num2) > 1)
791 {
792 int num3 = Mathf.Max(Mathf.Abs(num), Mathf.Abs(num2));
793 point.x += num / num3;
794 point.z += num2 / num3;
795 }
796 return point;
797 }

References Point(), x, and z.

Referenced by Chara.TryMoveTowards().

◆ GetRandomNeighbor()

Point Point.GetRandomNeighbor ( )
inline

Definition at line 743 of file Point.cs.

744 {
745 int num = ((EClass.rnd(2) == 0) ? 1 : (-1));
746 if (EClass.rnd(2) == 0)
747 {
748 return new Point(Mathf.Clamp(x + num, 0, map.Size - 1), z);
749 }
750 return new Point(x, Mathf.Clamp(z + num, 0, map.Size - 1));
751 }
static int rnd(int a)
Definition: EClass.cs:58

References map, Point(), EClass.rnd(), MapBounds.Size, x, and z.

Referenced by Chara._Move(), ActEffect.GetTeleportPos(), Chara.MoveRandom(), and GrowSystem.OnExceedLastStage().

◆ GetRandomPoint()

Point Point.GetRandomPoint ( int  radius,
bool  requireLos = true,
bool  allowChara = true,
bool  allowBlocked = false,
int  tries = 100 
)
inline

Definition at line 753 of file Point.cs.

754 {
755 Point point = new Point();
756 for (int i = 0; i < tries; i++)
757 {
758 point.Set(x - radius + EClass.rnd(radius * 2 + 1), z - radius + EClass.rnd(radius * 2 + 1));
759 if (point.IsValid && (allowBlocked || !point.IsBlocked) && (!requireLos || Los.IsVisible(this, point)) && (allowChara || !point.HasChara))
760 {
761 return point;
762 }
763 }
764 return null;
765 }
Definition: Los.cs:5
static bool IsVisible(Point p1, Point p2, Action< Point, bool > _onVisit=null)
Definition: Los.cs:167
bool IsBlocked
Definition: Point.cs:351

References HasChara, IsBlocked, IsValid, Los.IsVisible(), Point(), EClass.rnd(), Set(), x, and z.

Referenced by ZonePreEnterEncounter.Execute(), FactionBranch.GenerateGarbage(), Zone.GetRandomVisitPos(), ActEffect.Proc(), ActEffect.ProcAt(), ActThrow.Throw(), ConMiasma.Tick(), AI_Idle.TryPerformIdleUse(), Zone.TrySpawnFollower(), and ActRide.Unride().

◆ GetRandomPointInRadius()

Point Point.GetRandomPointInRadius ( int  minRadius,
int  maxRadius,
bool  requireLos = true,
bool  allowChara = true,
bool  allowBlocked = false,
int  tries = 2000 
)
inline

Definition at line 767 of file Point.cs.

768 {
769 Point point = new Point();
770 for (int i = 0; i < tries; i++)
771 {
772 point.Set(x - maxRadius + EClass.rnd(maxRadius * 2 + 1), z - maxRadius + EClass.rnd(maxRadius * 2 + 1));
773 if (point.IsValid && (allowBlocked || !point.IsBlocked) && (allowChara || !point.HasChara))
774 {
775 int num = point.Distance(this);
776 if (num >= minRadius && num <= maxRadius && (!requireLos || Los.IsVisible(this, point)))
777 {
778 return point;
779 }
780 }
781 }
782 return null;
783 }
int Distance(Point p)
Definition: Point.cs:965

References Distance(), HasChara, IsBlocked, IsValid, Los.IsVisible(), Point(), EClass.rnd(), Set(), x, and z.

Referenced by ZonePreEnterEncounter.Execute().

◆ GetRotation()

Quaternion Point.GetRotation ( Point  to)
inline

Definition at line 590 of file Point.cs.

591 {
592 return Quaternion.Euler(0f, 0f, GetAngle(to));
593 }
float GetAngle(Point to)
Definition: Point.cs:595

References GetAngle().

Referenced by Effect._Play().

◆ GetShared()

static Point Point.GetShared ( int  x,
int  z 
)
inlinestatic

Definition at line 378 of file Point.cs.

379 {
380 shared.x = x;
381 shared.z = z;
382 return shared;
383 }
static Point shared
Definition: Point.cs:20

References shared, x, and z.

Referenced by Zone_Dungeon.PlaceRail(), and AI_Goto.TryGoTo().

◆ HasNonHomeProperty()

bool Point.HasNonHomeProperty ( Thing  exclude = null)
inline

Definition at line 1262 of file Point.cs.

1263 {
1264 if (FirstThing == null)
1265 {
1266 return false;
1267 }
1268 foreach (Thing thing in detail.things)
1269 {
1270 if (thing != exclude && thing.isNPCProperty)
1271 {
1272 return true;
1273 }
1274 }
1275 return false;
1276 }
bool isNPCProperty
Definition: Card.cs:526
Thing FirstThing
Definition: Point.cs:289

References Card.isNPCProperty, and CellDetail.things.

◆ HasRoomOrArea()

bool Point.HasRoomOrArea ( BaseArea  a)
inline

Definition at line 409 of file Point.cs.

410 {
411 if (area != a)
412 {
413 return cell.room == a;
414 }
415 return true;
416 }
Area area
Definition: Point.cs:73

References area.

Referenced by Map.FindThing().

◆ IsBlockByHeight()

bool Point.IsBlockByHeight ( Point  p)
inline

Definition at line 975 of file Point.cs.

976 {
977 if (Mathf.Abs(p.cell.minHeight - cell.topHeight) > 8)
978 {
979 return Mathf.Abs(p.cell.topHeight - cell.minHeight) > 8;
980 }
981 return false;
982 }
byte topHeight
Definition: Cell.cs:78
byte minHeight
Definition: Cell.cs:80

References cell, Cell.minHeight, and Cell.topHeight.

◆ IsInSpot< T >()

bool Point.IsInSpot< T > ( )
inline
Type Constraints
T :Trait 

Definition at line 418 of file Point.cs.

418 : Trait
419 {
420 foreach (Thing thing in EClass._map.things)
421 {
422 if (!(thing.trait is T) || thing.trait.radius == 0)
423 {
424 continue;
425 }
426 foreach (Point item in thing.trait.ListPoints())
427 {
428 if (Equals(item))
429 {
430 return true;
431 }
432 }
433 }
434 return false;
435 }
List< Thing > things
Definition: Map.cs:49
bool Equals(int _x, int _z)
Definition: Point.cs:936
virtual int radius
Definition: Trait.cs:92
virtual List< Point > ListPoints(Point center=null, bool onlyPassable=true)
Definition: Trait.cs:745

References EClass._map, Equals(), item, Trait.ListPoints(), Trait.radius, Map.things, and Card.trait.

◆ IsPublicSpace()

bool Point.IsPublicSpace ( )
inline

Definition at line 437 of file Point.cs.

438 {
439 if (area != null)
440 {
442 {
443 return true;
444 }
445 return false;
446 }
447 if (cell.room != null)
448 {
450 {
451 return true;
452 }
453 return false;
454 }
455 return true;
456 }
virtual bool IsPublicArea
Definition: AreaType.cs:20
AreaType type
Definition: BaseArea.cs:32
Room room
Definition: Cell.cs:102

References area, cell, AreaType.IsPublicArea, Cell.room, and BaseArea.type.

Referenced by Map.FindThing().

◆ ListCards()

List< Card > Point.ListCards ( bool  includeMasked = false)
inline

Definition at line 1027 of file Point.cs.

1028 {
1029 listCard.Clear();
1030 bool flag = EClass.scene.actionMode != null && EClass.scene.actionMode.IsRoofEditMode();
1031 if (detail != null)
1032 {
1033 foreach (Thing thing in detail.things)
1034 {
1035 if (!thing.isHidden && (includeMasked || !thing.isMasked) && thing.isRoofItem == flag)
1036 {
1037 listCard.Add(thing);
1038 }
1039 }
1040 if (!flag)
1041 {
1042 foreach (Chara chara in detail.charas)
1043 {
1044 listCard.Add(chara);
1045 }
1046 }
1047 }
1048 return listCard;
1049 }
virtual bool IsRoofEditMode(Card c=null)
Definition: ActionMode.cs:311
bool isMasked
Definition: Card.cs:562
bool isRoofItem
Definition: Card.cs:550
bool isHidden
Definition: Card.cs:502
static Scene scene
Definition: EClass.cs:30
static List< Card > listCard
Definition: Point.cs:45
ActionMode actionMode
Definition: Scene.cs:77

References Scene.actionMode, CellDetail.charas, detail, Card.isHidden, Card.isMasked, ActionMode.IsRoofEditMode(), Card.isRoofItem, listCard, EClass.scene, and CellDetail.things.

Referenced by Chara._Move(), ActPlan._Update(), Map._ValidateInstalled(), ActMelee.Attack(), Recipe.Build(), Trait.CookProgress(), ActEffect.DamageEle(), FindAttackTarget(), AI_Clean.GetCleanPoint(), Card.GetRestrainer(), Trait.Offer(), Trait.OfferProcess(), TraitFertilizer.OnSimulateHour(), ActPick.Perform(), AM_Deconstruct.Perform(), Map.RefreshFOV(), AI_Clean.Run(), RecipeUpdater.RunDisassemble(), AM_Picker.Test(), TraitCatalyst.TrySetHeldAct(), TraitLeash.TrySetHeldAct(), TraitSalesTag.TrySetHeldAct(), TraitStethoscope.TrySetHeldAct(), TraitToolTorch.TrySetHeldAct(), TraitWhipLove.TrySetHeldAct(), Map.TryShatter(), and CoreDebug.UpdateInput().

◆ ListCharas()

List< Chara > Point.ListCharas ( )
inline

Definition at line 1147 of file Point.cs.

1148 {
1149 listChara.Clear();
1150 if (detail != null)
1151 {
1152 foreach (Chara chara in detail.charas)
1153 {
1154 listChara.Add(chara);
1155 }
1156 }
1157 return listChara;
1158 }
static List< Chara > listChara
Definition: Point.cs:47

References CellDetail.charas, detail, and listChara.

Referenced by AM_Adv._OnUpdateInput(), Recipe.Build(), RecipeCard.Build(), TaskBuild.OnProgressComplete(), ActRide.Perform(), ActEffect.Proc(), and Chara.TryPush().

◆ ListCharasInNeighbor()

List< Chara > Point.ListCharasInNeighbor ( Func< Chara, bool >  func)
inline

Definition at line 1176 of file Point.cs.

1177 {
1178 listChara.Clear();
1179 ForeachNeighbor(delegate(Point p)
1180 {
1181 if (p.detail == null)
1182 {
1183 return;
1184 }
1185 foreach (Chara chara in p.detail.charas)
1186 {
1187 if (func(chara))
1188 {
1189 listChara.Add(chara);
1190 }
1191 }
1192 });
1193 return listChara;
1194 }
void ForeachNeighbor(Action< Point > action, bool diagonal=true)
Definition: Point.cs:1373

References CellDetail.charas, detail, ForeachNeighbor(), and listChara.

Referenced by AI_Idle.DoSomethingToNearChara().

◆ ListCharasInRadius()

List< Chara > Point.ListCharasInRadius ( Chara  cc,
int  dist,
Func< Chara, bool >  func,
bool  onlyVisible = true 
)
inline

Definition at line 1196 of file Point.cs.

1197 {
1198 listChara.Clear();
1199 foreach (Chara chara in EClass._map.charas)
1200 {
1201 if (func(chara) && chara.Dist(cc) < dist && (!onlyVisible || Los.IsVisible(chara, cc)))
1202 {
1203 listChara.Add(chara);
1204 }
1205 }
1206 return listChara;
1207 }
int Dist(Card c)
Definition: Card.cs:7025

References EClass._map, Map.charas, Card.Dist(), and Los.IsVisible().

Referenced by AI_Idle.DoSomethingToCharaInRadius(), and AI_Idle.Run().

◆ ListInspectorTargets()

List< IInspect > Point.ListInspectorTargets ( )
inline

Definition at line 1328 of file Point.cs.

1329 {
1330 List<IInspect> list = new List<IInspect>();
1331 CellDetail cellDetail = detail;
1332 if (cellDetail != null)
1333 {
1334 foreach (Chara chara in cellDetail.charas)
1335 {
1336 if (chara.isSynced)
1337 {
1338 list.Add(chara);
1339 }
1340 }
1341 foreach (Thing thing in cellDetail.things)
1342 {
1343 list.Add(thing);
1344 }
1345 if (cellDetail.designation != null && !(cellDetail.designation is TaskCut) && !(cellDetail.designation is TaskMine))
1346 {
1347 list.Add(cellDetail.designation);
1348 }
1349 }
1350 if (ObjInfo._CanInspect(this))
1351 {
1352 list.Add(ObjInfo.GetTempList(this));
1353 }
1354 if (BlockInfo._CanInspect(this))
1355 {
1356 list.Add(BlockInfo.GetTempList(this));
1357 }
1358 return list;
1359 }
static bool _CanInspect(Point pos)
Definition: BlockInfo.cs:31
static BlockInfo GetTempList(Point _pos)
Definition: BlockInfo.cs:21
TaskDesignation designation
Definition: CellDetail.cs:19
override bool isSynced
Definition: Chara.cs:681
static bool _CanInspect(Point pos)
Definition: ObjInfo.cs:67
static ObjInfo GetTempList(Point _pos)
Definition: ObjInfo.cs:57

References BlockInfo._CanInspect(), ObjInfo._CanInspect(), CellDetail.charas, CellDetail.designation, BlockInfo.GetTempList(), ObjInfo.GetTempList(), Chara.isSynced, and CellDetail.things.

Referenced by UIInspector.InspectUnderMouse(), and LayerInteraction.TryShow().

◆ ListThings< T >()

List< Card > Point.ListThings< T > ( bool  onlyInstalled = true)
inline
Type Constraints
T :Trait 

Definition at line 1131 of file Point.cs.

1131 : Trait
1132 {
1133 listCard.Clear();
1134 if (detail != null)
1135 {
1136 foreach (Thing thing in detail.things)
1137 {
1138 if (!thing.isHidden && !thing.isRoofItem && !thing.isMasked && (!onlyInstalled || thing.IsInstalled) && thing.trait is T)
1139 {
1140 listCard.Add(thing);
1141 }
1142 }
1143 }
1144 return listCard;
1145 }

References detail, Card.isHidden, Card.IsInstalled, Card.isMasked, Card.isRoofItem, listCard, CellDetail.things, and Card.trait.

◆ ListVisibleCards()

List< Card > Point.ListVisibleCards ( )
inline

Definition at line 1051 of file Point.cs.

1052 {
1053 listCard.Clear();
1054 if (detail != null)
1055 {
1056 foreach (Thing thing in detail.things)
1057 {
1058 if (!thing.isHidden && !thing.isMasked && !thing.isRoofItem)
1059 {
1060 listCard.Add(thing);
1061 }
1062 }
1063 foreach (Chara chara in detail.charas)
1064 {
1065 if (EClass.pc.CanSee(chara))
1066 {
1067 listCard.Add(chara);
1068 }
1069 }
1070 }
1071 return listCard;
1072 }

References Chara.CanSee(), CellDetail.charas, detail, Card.isHidden, Card.isMasked, Card.isRoofItem, listCard, EClass.pc, and CellDetail.things.

Referenced by HotItemNoItem._TrySetAct(), and HotItemAct.TrySetAct().

◆ ListVisibleCharas()

List< Chara > Point.ListVisibleCharas ( )
inline

Definition at line 1160 of file Point.cs.

1161 {
1162 listChara.Clear();
1163 if (detail != null)
1164 {
1165 foreach (Chara chara in detail.charas)
1166 {
1167 if (EClass.pc.CanSee(chara))
1168 {
1169 listChara.Add(chara);
1170 }
1171 }
1172 }
1173 return listChara;
1174 }

References Chara.CanSee(), CellDetail.charas, detail, listChara, and EClass.pc.

Referenced by HotItemHeld.TrySetToolAct().

◆ ListWitnesses()

List< Chara > Point.ListWitnesses ( Chara  criminal,
int  radius = 4,
WitnessType  type = WitnessType::crime,
Chara  target = null 
)
inline

Definition at line 814 of file Point.cs.

815 {
816 List<Chara> list = new List<Chara>();
817 foreach (Point item in map.ListPointsInCircle(this, radius, mustBeWalkable: false))
818 {
819 List<Chara> list2 = item.detail?.charas;
820 if (list2 == null || list2.Count == 0)
821 {
822 continue;
823 }
824 foreach (Chara item2 in list2)
825 {
826 if (item2 == criminal || item2.IsPC || (item2 != target && !item2.CanWitness) || (item2.HasCondition<ConDim>() && EClass.rnd(2) == 0) || item2.conSuspend != null || item2.isParalyzed || item2.IsDisabled)
827 {
828 continue;
829 }
830 switch (type)
831 {
832 case WitnessType.ally:
833 if (!criminal.IsPCFaction || item2.hostility <= Hostility.Neutral)
834 {
835 continue;
836 }
837 break;
838 case WitnessType.crime:
839 if (criminal == null || item2.isBlind || item2.isConfused || (criminal.IsPCParty && (item2.IsPCFaction || item2.IsPCFactionMinion)) || (target == null && item2.OriginalHostility < Hostility.Neutral))
840 {
841 continue;
842 }
843 break;
844 case WitnessType.music:
845 if (item2.hostility <= Hostility.Enemy)
846 {
847 continue;
848 }
849 break;
850 }
851 list.Add(item2);
852 }
853 }
854 return list;
855 }
Hostility
Definition: Hostility.cs:2
WitnessType
Definition: WitnessType.cs:2
Hostility OriginalHostility
Definition: Chara.cs:461
ConSuspend conSuspend
Definition: Chara.cs:104
override bool IsPC
Definition: Chara.cs:602
override bool IsPCParty
Definition: Chara.cs:605
bool isParalyzed
Definition: Chara.cs:130
bool HasCondition(string alias)
Definition: Chara.cs:8666
override bool IsDisabled
Definition: Chara.cs:575
override bool IsPCFaction
Definition: Chara.cs:661
override bool IsPCFactionMinion
Definition: Chara.cs:645
bool isBlind
Definition: Chara.cs:128
Hostility hostility
Definition: Chara.cs:281
bool CanWitness
Definition: Chara.cs:829
bool isConfused
Definition: Chara.cs:124
Definition: ConDim.cs:2
List< Point > ListPointsInCircle(Point center, float radius, bool mustBeWalkable=true, bool los=true)
Definition: Map.cs:2256

References Chara.CanWitness, Chara.conSuspend, Chara.HasCondition(), Chara.hostility, Chara.isBlind, Chara.isConfused, Chara.IsDisabled, Chara.isParalyzed, Chara.IsPC, Chara.IsPCFaction, Chara.IsPCFactionMinion, item, Map.ListPointsInCircle(), map, Chara.OriginalHostility, and EClass.rnd().

Referenced by AI_PlayMusic.Run(), AI_Steal.Run(), TalkWitnesses(), and TryWitnessCrime().

◆ ModFire()

void Point.ModFire ( int  value,
bool  extinguish = false 
)
inline

Definition at line 909 of file Point.cs.

910 {
911 if (extinguish && cell.HasFire)
912 {
913 PlaySound("extinguish");
914 PlayEffect("smoke");
915 PlayEffect("vanish");
916 }
917 map.ModFire(x, z, value);
918 }
bool HasFire
Definition: Cell.cs:676
void ModFire(int x, int z, int amount)
Definition: Map.cs:1166
SoundSource PlaySound(string id, bool synced=true, float v=1f, bool spatial=true)
Definition: Point.cs:1229
Effect PlayEffect(string id)
Definition: Point.cs:1224

References cell, Cell.HasFire, map, Map.ModFire(), PlayEffect(), PlaySound(), x, and z.

Referenced by ActEffect.DamageEle(), GameUpdater.SurfaceUpdater.FixedUpdate(), TaskWater.Run(), ActThrow.Throw(), LogicalFire.Transfer(), and LogicalFire.Update().

◆ PlayEffect()

Effect Point.PlayEffect ( string  id)
inline

Definition at line 1224 of file Point.cs.

1225 {
1226 return Effect.Get(id).Play(this);
1227 }
Definition: Effect.cs:7
static Effect Get(Effect original)
Definition: Effect.cs:85
void Play(float delay, Point from, float fixY=0f, Point to=null, Sprite sprite=null)
Definition: Effect.cs:100

References Effect.Get(), and Effect.Play().

Referenced by ActPlan._Update(), ActMelee.Attack(), Card.Die(), ModFire(), ActMultihit.Perform(), ActRush.Perform(), ActSwarm.Perform(), TraitBaseSpellbook.ReadFailEffect(), AI_Clean.Run(), AI_Slaughter.Run(), and TaskClean.Run().

◆ PlaySound()

SoundSource Point.PlaySound ( string  id,
bool  synced = true,
float  v = 1f,
bool  spatial = true 
)
inline

Definition at line 1229 of file Point.cs.

1230 {
1231 Vector3 vector = default(Vector3);
1232 if (spatial)
1233 {
1234 if (!IsValid)
1235 {
1236 return null;
1237 }
1238 vector = (EClass._zone.IsRegion ? PositionTopdown() : Position());
1239 vector.z = 0f;
1240 if (Vector3.Distance(vector, EClass.scene.transAudio.position) > EClass.core.gameSetting.audio.maxRange)
1241 {
1242 return null;
1243 }
1244 if (!synced)
1245 {
1246 v -= 0.4f;
1247 }
1248 }
1249 return EClass.Sound.Play(id, vector, (!spatial) ? 1f : (v * ((EClass.screen.Zoom >= 1f) ? 1f : EClass.screen.Zoom)));
1250 }
GameSetting gameSetting
Definition: Core.cs:47
static Core core
Definition: EClass.cs:6
static BaseGameScreen screen
Definition: EClass.cs:32
static SoundManager Sound
Definition: EClass.cs:46
AudioSetting audio
Definition: GameSetting.cs:297
ref Vector3 PositionTopdown()
Definition: Point.cs:557
Transform transAudio
Definition: Scene.cs:31

References GameSetting.audio, EClass.core, Core.gameSetting, GameSetting.AudioSetting.maxRange, EClass.scene, EClass.screen, EClass.Sound, Scene.transAudio, and BaseGameScreen.Zoom.

Referenced by ActPlan._Update(), Map.DestroyObj(), Card.Die(), Map.MineBlock(), Map.MineFloor(), Map.MineObjSound(), ModFire(), TaskHarvest.OnCreateProgress(), TaskPlow.OnCreateProgress(), TaskCut.OnProgress(), TaskMoveInstalled.OnProgressComplete(), ActMultihit.Perform(), ActSwarm.Perform(), Card.PlaySound(), ActEffect.ProcAt(), AI_Fish.ProgressFish.Ripple(), and AI_Craft_Snowman.Run().

◆ Plow()

void Point.Plow ( )
inline

Definition at line 920 of file Point.cs.

921 {
922 if (IsFarmField)
923 {
925 {
927 }
928 else if (cell.Front.HasWallOrFence)
929 {
931 }
932 }
933 SetFloor(4, 4);
934 }
bool HasWallOrFence
Definition: Cell.cs:831
Cell Front
Definition: Cell.cs:129
Point GetPoint()
Definition: Cell.cs:1101
Cell Right
Definition: Cell.cs:141
bool IsFarmField
Definition: Point.cs:127
void SetFloor(int idMat=0, int idFloor=0)
Definition: Point.cs:899

References cell, Cell.Front, Cell.GetPoint(), Cell.HasWallOrFence, IsFarmField, Cell.Right, Set(), and SetFloor().

◆ Position() [1/2]

ref Vector3 Point.Position ( )
inline

Definition at line 548 of file Point.cs.

549 {
550 byte b = ((cell.bridgeHeight == 0) ? cell.height : cell.bridgeHeight);
551 vCache.x = (float)(x + z) * _screen.tileAlign.x;
552 vCache.y = (float)(z - x) * _screen.tileAlign.y + (float)(int)b * _screen.tileMap._heightMod.y;
553 vCache.z = 1000f + vCache.x * _screen.tileWeight.x + vCache.y * _screen.tileWeight.z + (float)(int)b * _screen.tileMap._heightMod.z;
554 return ref vCache;
555 }
BaseTileMap tileMap
Vector3 _heightMod
Definition: BaseTileMap.cs:329
byte height
Definition: Cell.cs:72
byte bridgeHeight
Definition: Cell.cs:74
Vector3 vCache
Definition: Point.cs:41
static BaseGameScreen _screen
Definition: Point.cs:43

References BaseTileMap._heightMod, _screen, Cell.bridgeHeight, cell, Cell.height, BaseGameScreen.tileAlign, BaseGameScreen.tileMap, vCache, x, and z.

Referenced by GetAngle(), Position(), PositionAuto(), and PositionCenter().

◆ Position() [2/2]

◆ PositionAuto()

ref Vector3 Point.PositionAuto ( )
inline

Definition at line 527 of file Point.cs.

528 {
530 {
531 return ref PositionTopdown();
532 }
533 return ref Position();
534 }
static Zone _zone
Definition: EClass.cs:20
virtual bool IsRegion
Definition: Spatial.cs:501

References EClass._zone, Spatial.IsRegion, Position(), and PositionTopdown().

Referenced by AM_Adv.OnAfterUpdate(), and CardRenderer.PlayAnime().

◆ PositionCenter()

ref Vector3 Point.PositionCenter ( )
inline

Definition at line 575 of file Point.cs.

576 {
578 {
579 _ = ref PositionTopdown();
580 }
581 else
582 {
583 _ = ref Position();
584 }
585 vCache.x += EClass.screen.tileWorldSize.x * 0.5f;
586 vCache.y += EClass.screen.tileWorldSize.y * 0.75f;
587 return ref vCache;
588 }

References EClass._zone, Spatial.IsRegion, Position(), PositionTopdown(), and vCache.

Referenced by BaseGameScreen.Focus(), Card.MoveImmediate(), AM_Adv.OnActivate(), AM_MoveInstalled.OnRenderTile(), Scene.OnUpdate(), AM_Cinema.OnUpdateInput(), AttackProcess.PlayRangedAnime(), ActorEx.Refresh(), AM_Adv.RefreshArrow(), BaseGameScreen.RefreshPosition(), Card.Teleport(), and GameUpdater.Update100ms().

◆ PositionTopdown()

ref Vector3 Point.PositionTopdown ( )
inline

Definition at line 557 of file Point.cs.

558 {
559 byte b = ((cell.bridgeHeight == 0) ? cell.height : cell.bridgeHeight);
560 vCache.x = (float)x * _screen.tileAlign.x;
561 vCache.y = (float)z * _screen.tileAlign.y + (float)(int)b * _screen.tileMap._heightMod.y;
562 vCache.z = 1000f + vCache.x * _screen.tileWeight.x + vCache.y * _screen.tileWeight.z + (float)(int)b * _screen.tileMap._heightMod.z;
563 return ref vCache;
564 }

References BaseTileMap._heightMod, _screen, Cell.bridgeHeight, cell, Cell.height, BaseGameScreen.tileAlign, BaseGameScreen.tileMap, vCache, x, and z.

Referenced by TileSelectorElona.OnRenderTile(), PositionAuto(), PositionCenter(), GameScreenElona.RefreshPosition(), ActionMode.RefreshTexts(), and GameUpdater.Update().

◆ PositionTopdownTreasure()

ref Vector3 Point.PositionTopdownTreasure ( )
inline

Definition at line 566 of file Point.cs.

567 {
569 vCache.x = (float)(x - EClass.scene.elomap.minX) * screenElona.tileAlign.x;
570 vCache.y = (float)(z - EClass.scene.elomap.minY) * screenElona.tileAlign.y;
571 vCache.z = 1400f;
572 return ref vCache;
573 }
int minX
Definition: EloMap.cs:112
int minY
Definition: EloMap.cs:114
EloMap elomap
Definition: Scene.cs:145
GameScreenElona screenElona
Definition: Scene.cs:91

References Scene.elomap, EloMap.minX, EloMap.minY, EClass.scene, Scene.screenElona, BaseGameScreen.tileAlign, vCache, x, and z.

Referenced by LayerTreasureMap.SetMap().

◆ RefreshNeighborTiles()

void Point.RefreshNeighborTiles ( )
inline

◆ RefreshTile()

void Point.RefreshTile ( )
inline

Definition at line 1257 of file Point.cs.

1258 {
1260 }
void RefreshSingleTile(int x, int z)
Definition: Map.cs:2081

References Map.RefreshSingleTile().

Referenced by TaskBuild.OnProgressComplete().

◆ Set() [1/4]

Point Point.Set ( int  _x,
int  _z 
)
inline

Definition at line 491 of file Point.cs.

492 {
493 x = _x;
494 z = _z;
495 return this;
496 }

References x, and z.

Referenced by Map._AddCard(), Chara._Move(), Card._OnDeserialized(), AM_Sim._OnUpdateInput(), ActPlan._Update(), Map._ValidateInstalled(), Zone.Activate(), Map.AddCardOnActivate(), Zone.AddGlobalCharasOnActivate(), AI_Goto.AI_Goto(), PartialMap.Apply(), RecipeUpdater.Build(), GoalManualMove.CanMove(), ActRush.CanPerform(), ActThrow.CanPerform(), TaskPoint.CanPerform(), Act.CanPerform(), PointTarget.CheckLastTarget(), Copy< T >(), Crawler.Crawl(), EffectMeteor.Create(), BaseTileMap.Draw(), TaskBuild.DrawMarker(), BaseTileMap.DrawTile(), TileMapElona.DrawTile(), Player.EnterLocalZone(), GameUpdater.SurfaceUpdater.FixedUpdate(), GameUpdater.FastSurfaceUpdater.FixedUpdate(), Card.ForeachFOV(), ForeachMultiSize(), ForeachNearestPoint(), ForeachNeighbor(), Map.ForeachNeighbor(), Map.ForeachPoint(), MapBounds.ForeachPoint(), Map.ForeachSphere(), Zone_SnowGrave.GenerateGrave(), AI_Clean.GetCleanPoint(), AI_Fish.GetFishingPoint(), TaskBuild.GetHitResult(), TileTypeWallHang.GetMountHeight(), GetNearestPoint(), AI_Trolley.GetPoint(), BaseGameScreen.GetRandomPoint(), GetRandomPoint(), GetRandomPointInRadius(), MapBounds.GetRandomSpace(), Cell.GetSharedPoint(), MapBounds.GetSpawnPos(), ActEffect.GetTeleportPos(), BlockInfo.GetTemp(), ObjInfo.GetTemp(), BlockInfo.GetTempList(), ObjInfo.GetTempList(), Los.IsBlocked(), Los.IsVisible(), Los.ListVisible(), MapGen.MakeNeighbor(), MapGen.MakeNeighbor_old(), MapGen.MakeRoad(), MapGenDungen.OnGenerateTerrain(), WidgetMinimap.OnPointerDown(), AM_Designation< T >.OnProcessTiles(), AM_MoveInstalled.OnProcessTiles(), HotItemHeld.OnRenderTile(), BaseTileSelector.OnUpdate(), WidgetMinimap.OnUpdate(), AM_Cinema.OnUpdateInput(), Act.Perform(), ActRanged.Perform(), ActRush.Perform(), ActThrow.Perform(), ActPlan.Item.Perform(), Zone_Dungeon.PlaceRail(), Plow(), Point(), GenRoom.Populate(), MapGen.Populate(), AM_Adv.PressedActionMove(), BaseTileSelector.ProcessTiles(), Religion.Reforge(), BaseTileSelector.RefreshMouseInfo(), PathProgress.RequestPath(), PathProgress.RequestPathImmediate(), AI_Fish.Run(), AI_Goto.Run(), GoalManualMove.Run(), TaskPoint.Run(), TaskWater.Run(), CharaRenderer.SetFirst(), Map.SetFoormark(), Act.SetReference(), RegionPoint.SetRegionPoint(), LayerInteraction.Show(), ActThrow.Throw(), AI_Goto.TryGoTo(), GoalManualMove.TryMove(), Chara.TryMoveFrom(), Chara.TryMoveTowards(), GameUpdater.Update(), LogicalFire.Update(), PointTarget.Update(), CharaRenderer.UpdatePosition(), and Chara.UpdateSight().

◆ Set() [2/4]

Point Point.Set ( int  index)
inline

Definition at line 498 of file Point.cs.

499 {
500 x = index % map.Size;
501 z = index % map.SizeXZ / map.Size;
502 return this;
503 }
int index
Definition: Point.cs:49

References index, map, MapBounds.Size, x, and z.

◆ Set() [3/4]

Point Point.Set ( Point  point)
inline

Definition at line 505 of file Point.cs.

506 {
507 x = point.x;
508 z = point.z;
509 return this;
510 }

References x, and z.

◆ Set() [4/4]

void Point.Set ( Vector3  v)
inline

Definition at line 517 of file Point.cs.

518 {
519 v.x -= 0.64f;
520 v.y -= 0.64f;
521 int num = Mathf.RoundToInt(v.x / _screen.tileAlign.x);
522 int num2 = Mathf.RoundToInt(v.y / _screen.tileAlign.y);
523 x = (num2 - num) / 2 * -1;
524 z = num - x;
525 }

References _screen, BaseGameScreen.tileAlign, x, and z.

◆ SetBlock()

void Point.SetBlock ( int  idMat = 0,
int  idBlock = 0 
)
inline

Definition at line 894 of file Point.cs.

895 {
896 map.SetBlock(x, z, idMat, idBlock);
897 }
void SetBlock(int x, int z, int idMat=0, int idBlock=0)
Definition: Map.cs:990

References map, Map.SetBlock(), x, and z.

Referenced by ZonePreEnterDigStairs.Execute(), Map.MineBlock(), Zone_Dungeon.PlaceRail(), and Chara.TryDropBossLoot().

◆ SetFloor()

void Point.SetFloor ( int  idMat = 0,
int  idFloor = 0 
)
inline

Definition at line 899 of file Point.cs.

900 {
901 map.SetFloor(x, z, idMat, idFloor);
902 }
void SetFloor(int x, int z, int idMat=0, int idFloor=0)
Definition: Map.cs:951

References map, Map.SetFloor(), x, and z.

Referenced by Map.MineFloor(), TraitBoat.OnChangePlaceState(), TaskPlow.OnCreateProgress(), TraitBoat.OnRemovedFromZone(), and Plow().

◆ SetHighlight()

void Point.SetHighlight ( int  id)
inline

Definition at line 1400 of file Point.cs.

1401 {
1402 cell.highlight = (byte)id;
1404 }
static Player player
Definition: EClass.cs:12
List< Cell > lastMarkedHighlights
Definition: Player.cs:961

References Player.lastMarkedHighlights, and EClass.player.

Referenced by Act.OnMarkMapHighlights().

◆ SetObj()

void Point.SetObj ( int  id = 0,
int  value = 1,
int  dir = 0 
)
inline

Definition at line 904 of file Point.cs.

905 {
906 map.SetObj(x, z, id, value, dir);
907 }
void SetObj(int x, int z, int id=0, int value=1, int dir=0)
Definition: Map.cs:1522

References map, Map.SetObj(), x, and z.

Referenced by ZonePreEnterDigStairs.Execute(), GrowSystem.Grow(), TaskHarvest.OnCreateProgress(), GrowSystem.OnExceedLastStage(), Zone_Dungeon.PlaceRail(), BiomeProfile.ClusterObj.TryCreate(), Chara.TryDropBossLoot(), Zone.TryGenerateShrine(), and TraitSeed.TrySprout().

◆ TalkWitnesses()

void Point.TalkWitnesses ( Chara  criminal,
string  idTalk,
int  radius = 4,
WitnessType  type = WitnessType::everyone,
Func< Chara, bool >  talkIf = null,
int  chance = 3 
)
inline

Definition at line 799 of file Point.cs.

800 {
801 if (talkIf == null)
802 {
803 talkIf = (Chara c) => EClass.rnd(chance) == 0;
804 }
805 foreach (Chara item in ListWitnesses(criminal, radius, type))
806 {
807 if (talkIf(item) && !item.renderer.IsTalking())
808 {
809 item.Talk(idTalk);
810 }
811 }
812 }
List< Chara > ListWitnesses(Chara criminal, int radius=4, WitnessType type=WitnessType.crime, Chara target=null)
Definition: Point.cs:814

References item, ListWitnesses(), and EClass.rnd().

Referenced by ElementContainerCard.OnLevelUp(), ElementContainerZone.OnLevelUp(), AI_Bladder.Run(), and AI_Craft_Snowman.Run().

◆ ToRegionPos()

Point Point.ToRegionPos ( )
inline

Definition at line 1392 of file Point.cs.

1393 {
1394 Point point = new Point(x, z);
1395 point.x += EClass.scene.elomap.minX;
1396 point.z += EClass.scene.elomap.minY;
1397 return point;
1398 }

References Scene.elomap, EloMap.minX, EloMap.minY, and EClass.scene.

Referenced by TraitDeedRelocate.OnRead().

◆ ToString()

override string Point.ToString ( )
inline

Definition at line 512 of file Point.cs.

513 {
514 return "(" + x + " / " + z + ")";
515 }

References x, and z.

Referenced by Algorithms.PathFinder._FindPath(), Equals(), TaskPoint.Run(), Card.ToString(), Chara.ToString(), Zone.ToString(), and WidgetDebug.UpdateText().

◆ TryWitnessCrime()

bool Point.TryWitnessCrime ( Chara  criminal,
Chara  target = null,
int  radius = 4,
Func< Chara, bool >  funcWitness = null 
)
inline

Definition at line 857 of file Point.cs.

858 {
859 List<Chara> list = ListWitnesses(criminal, radius, WitnessType.crime, target);
860 bool result = false;
861 if (funcWitness == null)
862 {
863 funcWitness = (Chara c) => EClass.rnd(10) == 0;
864 }
865 foreach (Chara item in list)
866 {
867 if (funcWitness(item))
868 {
869 CallGuard(criminal, item);
870 result = true;
871 target?.DoHostileAction(criminal);
872 if (item != target)
873 {
874 item.DoHostileAction(criminal);
875 }
876 break;
877 }
878 }
879 return result;
880 }
void CallGuard(Chara criminal, Chara caller)
Definition: Point.cs:882

References CallGuard(), item, ListWitnesses(), and EClass.rnd().

Referenced by Player.ModKarma(), TaskDig.OnCreateProgress(), TaskHarvest.OnCreateProgress(), TaskMine.OnCreateProgress(), InvOwner.Transaction.Process(), and AI_Steal.Run().

◆ Within()

bool Point.Within ( int  _x,
int  _z,
int  _w,
int  _h 
)
inline

Definition at line 385 of file Point.cs.

386 {
387 if (x >= _x && z >= _z && x < _x + _w)
388 {
389 return z < _z + _h;
390 }
391 return false;
392 }

References x, and z.

Referenced by PartialMap.Save().

Member Data Documentation

◆ _screen

BaseGameScreen Point._screen
static

Definition at line 43 of file Point.cs.

Referenced by Position(), PositionTopdown(), and Set().

◆ fixedPos

Vector3 Point.fixedPos
static

Definition at line 18 of file Point.cs.

◆ Invalid

◆ listCard

List<Card> Point.listCard = new List<Card>()
staticprivate

Definition at line 45 of file Point.cs.

Referenced by ListCards(), ListThings< T >(), and ListVisibleCards().

◆ listChara

List<Chara> Point.listChara = new List<Chara>()
staticprivate

Definition at line 47 of file Point.cs.

Referenced by ListCharas(), ListCharasInNeighbor(), and ListVisibleCharas().

◆ map

◆ shared

◆ shared2

Point Point.shared2 = new Point()
static

Definition at line 22 of file Point.cs.

Referenced by TileTypeWallHang.GetMountHeight().

◆ shared3

Point Point.shared3 = new Point()
static

Definition at line 24 of file Point.cs.

◆ Surrounds

readonly XY [] Point.Surrounds
static
Initial value:
= new XY[4]
{
new XY(0, -1),
new XY(1, 0),
new XY(0, 1),
new XY(-1, 0)
}
Definition: XY.cs:2

Definition at line 10 of file Point.cs.

Referenced by LogicalFire.Update().

◆ vCache

Vector3 Point.vCache
private

Definition at line 41 of file Point.cs.

Referenced by Position(), PositionCenter(), PositionTopdown(), and PositionTopdownTreasure().

◆ x

int Point.x

Definition at line 36 of file Point.cs.

Referenced by Algorithms.PathFinder._FindPath(), PathManager._GetFirstStep(), Chara._Move(), Card._OnSerializing(), SerializedCards.Add(), Card.AddBlood(), SourceMaterial.Row.AddBlood(), Zone.AddCard(), Map.AddCardOnActivate(), Lot.AddConnectedRooms(), Zone.AddThing(), PartialMap.Apply(), AM_Adv.AxisMove(), Recipe.Build(), Card.CalculateFOV(), TraitSpotExit.CanBuiltAt(), Region.CanCreateZone(), Chara.CanInteractTo(), Chara.CanMoveTo(), Clamp(), Card.ClearFOV(), MapBounds.Contains(), Copy(), RecipeCard.Craft(), EffectMeteor.Create(), SpatialGen.CreateInstance(), Region.CreateRandomSite(), Region.CreateZone(), TraitNewZone.CreateZone(), FactionBranch.DailyOutcome(), ActEffect.DamageEle(), Spatial.Dist(), Distance(), BaseTileMap.Draw(), TileMapElona.Draw(), TaskBuild.DrawMarker(), BaseTileMap.DrawTile(), TileMapElona.DrawTile(), WidgetMinimap.EmitParticle(), Player.EnterLocalZone(), Equals(), ZonePreEnterDigStairs.Execute(), Algorithms.PathFinder.FindPath(), GameUpdater.SurfaceUpdater.FixedUpdate(), GameUpdater.FastSurfaceUpdater.FixedUpdate(), GameUpdater.LogicUpdater.FixedUpdate(), TraitBoat.ForeachDeck(), ForeachNearestPoint(), Map.ForeachNeighbor(), Zone_SnowGrave.GenerateGrave(), GetAngle2(), EloMap.GetCell(), TraitScrollMapTreasure.GetDest(), TraitNewZone.GetExitPos(), AI_Fish.GetFishingPoint(), GetHashCode(), TaskBuild.GetHitResult(), TaskMine.GetHitResult(), TileTypeWallHang.GetMountHeight(), GetNearestPoint(), AI_Trolley.GetPoint(), GetPointTowards(), GetRandomNeighbor(), Region.GetRandomPoint(), GetRandomPoint(), GetRandomPointInRadius(), MapBounds.GetRandomSpace(), GetShared(), MapBounds.GetSpawnPos(), EloMap.GetZone(), AM_MoveInstalled.HitTest(), AI_Goto.IsDestinationReached(), PathProgress.IsDestinationReached(), BaseTileSelector.IsInRange(), Los.IsVisible(), Map.ListPointsInArc(), Map.ListPointsInCircle(), Los.ListVisible(), Chara.LookAt(), MapGen.MakeNeighbor(), MapGen.MakeNeighbor_old(), MapGen.MakeRiver(), MapGen.MakeRoad(), Map.MineBlock(), Map.MineFloor(), Map.MineObj(), Map.MineRamp(), ModFire(), Map.MoveCard(), Chara.MoveHome(), TraitNewZone.MoveZone(), TraitMoongate.MoveZone(), POIMap.OccyupyPOI(), WidgetArtTool.OnActivate(), Region.OnAdvanceHour(), AM_Copy.OnAfterProcessTiles(), Zone_Nymelle.OnBeforeSimulate(), TaskDrawWater.OnCreateProgress(), TaskPourWater.OnCreateProgress(), Player.OnExitBorder(), ZoneEventSiege.OnFirstTick(), Act.OnMarkMapHighlights(), AIWork_Clean.OnPerformWork(), GenRoom.OnPopulate(), AM_Populate.OnProcessTiles(), AM_Terrain.OnProcessTiles(), AI_Water.OnProgressComplete(), TaskBuild.OnProgressComplete(), TaskCut.OnProgressComplete(), TaskDig.OnProgressComplete(), TaskMine.OnProgressComplete(), TaskMoveInstalled.OnProgressComplete(), Recipe.OnRenderMarker(), AM_BaseTerrain.OnRenderTile(), HotItemHeld.OnRenderTile(), PointList.OnSerializing(), TraitFertilizer.OnSimulateHour(), TraitDrink.OnThrowGround(), WidgetMinimap.OnUpdate(), TraitStairsLocked.OnUse(), Zone_Dungeon.PlaceRail(), Point(), Position(), PositionTopdown(), PositionTopdownTreasure(), AM_Adv.PressedActionMove(), ActEffect.ProcAt(), BaseTileSelector.ProcessTiles(), Room.Refresh(), AM_Adv.RefreshArrow(), AM_Region.RefreshArrow(), BaseTileSelector.RefreshMouseInfo(), Weather.RefreshWeather(), RegionPoint.RegionPoint(), Card.RenderMarker(), Map.Resize(), SerializedCards.Restore(), Map.Reveal(), AI_Bladder.Run(), AI_Clean.Run(), AI_Fish.Run(), GoalCombat.Run(), TaskClean.Run(), TaskWater.Run(), RecipeUpdater.RunRecipe(), Map.Save(), ActWait.Search(), Set(), LogicalPoint.Set(), SetBlock(), SetFloor(), SetObj(), Card.SetPlaceState(), RegionPoint.SetRegionPoint(), WidgetHotbar.SetShortcutMenu(), LayerCraftFloat.ShowContextMenu(), TraitDoor.ToggleDoor(), TraitDoorSwing.ToggleDoor(), ToString(), Zone.TryGenerateShrine(), AI_Goto.TryGoTo(), MapGen.TryMakeRiver(), Chara.TryMoveFrom(), TraitNewZone.TrySetAct(), GameUpdater.Update(), LogicalFire.Update(), CoreDebug.UpdateInput(), WidgetDebug.UpdateText(), Map.ValidateInstalled(), VirtualRoom.VirtualRoom(), and Within().

◆ z

int Point.z

Definition at line 39 of file Point.cs.

Referenced by Algorithms.PathFinder._FindPath(), PathManager._GetFirstStep(), Chara._Move(), Card._OnSerializing(), SerializedCards.Add(), Card.AddBlood(), SourceMaterial.Row.AddBlood(), Zone.AddCard(), Map.AddCardOnActivate(), Lot.AddConnectedRooms(), Zone.AddThing(), PartialMap.Apply(), AM_Adv.AxisMove(), Recipe.Build(), Card.CalculateFOV(), TraitSpotExit.CanBuiltAt(), Region.CanCreateZone(), Chara.CanInteractTo(), GoalManualMove.CanMove(), Chara.CanMoveTo(), Clamp(), Card.ClearFOV(), MapBounds.Contains(), Copy(), RecipeCard.Craft(), EffectMeteor.Create(), SpatialGen.CreateInstance(), Region.CreateRandomSite(), Region.CreateZone(), TraitNewZone.CreateZone(), FactionBranch.DailyOutcome(), Spatial.Dist(), Distance(), BaseTileMap.Draw(), TileMapElona.Draw(), TaskBuild.DrawMarker(), BaseTileMap.DrawTile(), TileMapElona.DrawTile(), WidgetMinimap.EmitParticle(), Player.EnterLocalZone(), Equals(), ZonePreEnterDigStairs.Execute(), Algorithms.PathFinder.FindPath(), GameUpdater.SurfaceUpdater.FixedUpdate(), GameUpdater.FastSurfaceUpdater.FixedUpdate(), GameUpdater.LogicUpdater.FixedUpdate(), TraitBoat.ForeachDeck(), ForeachNearestPoint(), Map.ForeachNeighbor(), Zone_SnowGrave.GenerateGrave(), GetAngle2(), EloMap.GetCell(), AI_Clean.GetCleanPoint(), TraitScrollMapTreasure.GetDest(), TraitNewZone.GetExitPos(), AI_Fish.GetFishingPoint(), GetHashCode(), TaskBuild.GetHitResult(), TaskMine.GetHitResult(), TileTypeWallHang.GetMountHeight(), GetNearestPoint(), AI_Trolley.GetPoint(), GetPointTowards(), GetRandomNeighbor(), Region.GetRandomPoint(), GetRandomPoint(), GetRandomPointInRadius(), MapBounds.GetRandomSpace(), GetShared(), MapBounds.GetSpawnPos(), EloMap.GetZone(), AM_MoveInstalled.HitTest(), AI_Goto.IsDestinationReached(), PathProgress.IsDestinationReached(), BaseTileSelector.IsInRange(), Los.IsVisible(), Map.ListPointsInArc(), Map.ListPointsInCircle(), Los.ListVisible(), Chara.LookAt(), MapGen.MakeNeighbor(), MapGen.MakeNeighbor_old(), MapGen.MakeRiver(), MapGen.MakeRoad(), Map.MineBlock(), Map.MineFloor(), Map.MineObj(), Map.MineRamp(), ModFire(), Map.MoveCard(), POIMap.OccyupyPOI(), WidgetArtTool.OnActivate(), Region.OnAdvanceHour(), AM_Copy.OnAfterProcessTiles(), Zone_Nymelle.OnBeforeSimulate(), TaskDrawWater.OnCreateProgress(), TaskPourWater.OnCreateProgress(), ZoneEventSiege.OnFirstTick(), Act.OnMarkMapHighlights(), AIWork_Clean.OnPerformWork(), GenRoom.OnPopulate(), AM_Populate.OnProcessTiles(), AM_Terrain.OnProcessTiles(), AI_Water.OnProgressComplete(), TaskBuild.OnProgressComplete(), TaskCut.OnProgressComplete(), TaskDig.OnProgressComplete(), TaskMine.OnProgressComplete(), TaskMoveInstalled.OnProgressComplete(), Recipe.OnRenderMarker(), AM_BaseTerrain.OnRenderTile(), HotItemHeld.OnRenderTile(), PointList.OnSerializing(), TraitFertilizer.OnSimulateHour(), TraitDrink.OnThrowGround(), WidgetMinimap.OnUpdate(), TraitStairsLocked.OnUse(), Zone_Dungeon.PlaceRail(), Point(), Position(), PositionTopdown(), PositionTopdownTreasure(), AM_Adv.PressedActionMove(), ActEffect.ProcAt(), BaseTileSelector.ProcessTiles(), Room.Refresh(), AM_Adv.RefreshArrow(), AM_Region.RefreshArrow(), BaseTileSelector.RefreshMouseInfo(), Weather.RefreshWeather(), RegionPoint.RegionPoint(), Card.RenderMarker(), Map.Resize(), SerializedCards.Restore(), Map.Reveal(), AI_Bladder.Run(), AI_Clean.Run(), AI_Fish.Run(), GoalCombat.Run(), GoalManualMove.Run(), TaskClean.Run(), TaskWater.Run(), RecipeUpdater.RunRecipe(), Map.Save(), ActWait.Search(), Set(), LogicalPoint.Set(), SetBlock(), SetFloor(), SetObj(), Card.SetPlaceState(), RegionPoint.SetRegionPoint(), LayerCraftFloat.ShowContextMenu(), TraitDoor.ToggleDoor(), TraitDoorSwing.ToggleDoor(), ToString(), Zone.TryGenerateShrine(), AI_Goto.TryGoTo(), MapGen.TryMakeRiver(), Chara.TryMoveFrom(), TraitNewZone.TrySetAct(), GameUpdater.Update(), LogicalFire.Update(), CoreDebug.UpdateInput(), WidgetDebug.UpdateText(), Map.ValidateInstalled(), VirtualRoom.VirtualRoom(), and Within().

◆ Zero

Point Point.Zero = new Point()
static

Definition at line 33 of file Point.cs.

Property Documentation

◆ area

◆ cell

Cell Point.cell
get

Definition at line 51 of file Point.cs.

Referenced by Map._AddCard(), ObjInfo._CanInspect(), TaskPoint._CanPerformTask(), AIWork._FuncWorkPoint(), PathManager._GetFirstStep(), ActionMode._HitTest(), TileType._HitTest(), Chara._Move(), Effect._Play(), Map._RemoveCard(), ActPlan._Update(), Map._ValidateInstalled(), SourceMaterial.Row.AddBlood(), Area.AddPoint(), GameDate.AdvanceMin(), PartialMap.Apply(), TraitHouseBoard.ApplyData(), ActMelee.Attack(), RecipeBridgePillar.Build(), RecipeCard.Build(), TaskClean.CanClean(), AI_Fish.CanPerform(), TaskDrawWater.CanProgress(), TaskHarvest.CanProgress(), TaskPourWater.CanProgress(), Player.CanSee(), TraitPotionEmpty.CanUse(), CoreDebug.COM_Teleport(), RecipeCard.Craft(), Crawler.Crawl(), ActEffect.DamageEle(), Map.DestroyObj(), BaseGameScreen.Draw(), BaseTileMap.Draw(), TileMapElona.Draw(), CardRenderer.Draw(), ScreenGuide.DrawWall(), AM_Build.FixBridge(), GameUpdater.SurfaceUpdater.FixedUpdate(), GameUpdater.FastSurfaceUpdater.FixedUpdate(), ForeachNearestPoint(), Zone.Generate(), AI_Clean.GetCleanPoint(), TileTypeVine.GetDesiredDir(), TileTypeWallHang.GetDesiredDir(), AI_Fish.GetFishingPoint(), AM_Mine.GetGuidePass(), TaskBuild.GetHitResult(), TaskDrawWater.GetHitResult(), TaskMine.GetHitResult(), TaskPlow.GetHitResult(), TaskPourWater.GetHitResult(), Map.GetNearbyResourcePoint(), GetNearestPoint(), LogicalPointManager.GetOrCreate(), Map.GetRandomPoint(), MapBounds.GetRandomSpace(), MapBounds.GetRandomSpawnPos(), Chara.GetRoomWork(), Zone.GetSpawnPos(), Card.GetSprite(), MapBounds.GetSurface(), ActEffect.GetTeleportPos(), TaskWater.GetText(), BaseTaskHarvest.GetTextSmall(), TaskDig.GetTextSmall(), TaskMine.GetTextSmall(), BaseTileMap.GetThingPosition(), TraitBoat.GetWaterMat(), Chara.HasAccess(), Recipe.HasSameTile(), AM_Build.HitTest(), AM_Copy.HitTest(), AM_FlagCell.HitTest(), TileTypeBridgePillar.HitTest(), TileTypeRoof.HitTest(), IsBlockByHeight(), TraitDoor.IsOpen(), IsPublicSpace(), TraitDoor.IsValid(), Trait.ListPoints(), Map.ListPointsInCircle(), Props.ListThingStack(), MapGen.MakeRiver(), Map.MineBlock(), Map.MineFloor(), Map.MineObj(), Map.MineObjSound(), Map.MineRamp(), ModFire(), Chara.MoveRandom(), DesignationList< T >.OnAdd(), FactionBranch.OnAfterSimulate(), TaskDig.OnCreateProgress(), TaskDrawWater.OnCreateProgress(), TaskHarvest.OnCreateProgress(), TaskMine.OnCreateProgress(), TaskPlow.OnCreateProgress(), TaskPourWater.OnCreateProgress(), GrowSystem.OnExceedLastStage(), WidgetMinimap.OnPointerDown(), AM_FlagCell.OnProcessTiles(), AM_Populate.OnProcessTiles(), AM_Terrain.OnProcessTiles(), TaskCut.OnProgress(), TaskBuild.OnProgressComplete(), Area.OnRemove(), Recipe.OnRenderMarker(), RecipeCard.OnRenderMarker(), ActionMode.OnRenderTile(), AM_Build.OnRenderTile(), AM_Mine.OnRenderTile(), AM_Picker.OnRenderTile(), TraitRoadSign.OnRenderTile(), ActionMode.OnRenderTileFloor(), TaskCut.OnStart(), TraitDye.OnThrowGround(), EffectIRenderer.OnUpdate(), ActRanged.Perform(), ActWater.Perform(), Zone_Dungeon.PlaceRail(), Plow(), GenRoom.Populate(), MapGen.Populate(), BiomeProfile.Populate(), Position(), PositionTopdown(), ActEffect.ProcAt(), Room.Refresh(), Zone.RefreshBGM(), ActionMode.RefreshTexts(), BaseGameScreen.RefreshWeather(), DesignationList< T >.Remove(), Area.RemovePoint(), Card.RenderMarker(), ActionMode.RotateUnderMouse(), AI_Clean.Run(), AI_Fish.Run(), AI_Idle.Run(), TaskClean.Run(), TaskWater.Run(), RecipeUpdater.RunRecipe(), Map.SetFoormark(), Card.SetHidden(), Card.SetPlaceState(), AM_Adv.SetPressedAction(), PointTarget.ShouldIgnore(), TaskWater.ShouldWater(), AM_Picker.TestFloor(), AM_Terrain.TopHeight(), LogicalFire.Transfer(), Zone.TryAddThing(), BiomeProfile.ClusterObj.TryCreate(), BiomeProfile.ClusterThing.TryCreate(), TaskHarvest.TryGetAct(), AI_Goto.TryGoTo(), TraitHouseBoard.TrySetAct(), TraitRoomPlate.TrySetAct(), HotItemHeld.TrySetToolAct(), Map.TryShatter(), TraitSeed.TrySprout(), LogicalFire.Update(), TransAnime.Update(), GameUpdater.Update100ms(), ActionMode.UpdateInput(), Chara.UpdateSight(), WidgetDebug.UpdateText(), BlockInfo.WriteNote(), and ObjInfo.WriteNote().

◆ Charas

◆ detail

◆ eloX

int Point.eloX
get

Definition at line 79 of file Point.cs.

Referenced by Chara.Tick().

◆ eloY

int Point.eloY
get

Definition at line 81 of file Point.cs.

Referenced by Chara.Tick().

◆ FirstChara

◆ FirstThing

Thing Point.FirstThing
get

Definition at line 288 of file Point.cs.

289 {
290 get
291 {
292 CellDetail cellDetail = detail;
293 if (cellDetail == null || cellDetail.things.Count <= 0)
294 {
295 return null;
296 }
297 return detail.things[0];
298 }
299 }

Referenced by CoreDebug.UpdateInput().

◆ Front

Point Point.Front
get

Definition at line 75 of file Point.cs.

◆ growth

◆ HasArea

bool Point.HasArea
get

Definition at line 223 of file Point.cs.

Referenced by TileType._HitTest().

◆ HasBlock

◆ HasBlockRecipe

bool Point.HasBlockRecipe
get

Definition at line 205 of file Point.cs.

Referenced by UIInspector.DrawHighlight(), and ActionMode.GetGuidePass().

◆ HasBridge

◆ HasChara

◆ HasDecal

bool Point.HasDecal
get

◆ HasDesignation

bool Point.HasDesignation
get

Definition at line 83 of file Point.cs.

Referenced by AM_Designation< T >.HitTest(), and AM_Build.OnProcessTiles().

◆ HasDirt

bool Point.HasDirt
get

Definition at line 85 of file Point.cs.

Referenced by TaskClean.CanClean(), AI_Clean.GetCleanPoint(), and AI_Clean.Run().

◆ HasFence

bool Point.HasFence
get

Definition at line 169 of file Point.cs.

170 {
171 get
172 {
173 if (cell._block != 0)
174 {
175 return cell.sourceBlock.tileType.IsFence;
176 }
177 return false;
178 }
179 }
byte _block
Definition: Cell.cs:30
SourceBlock.Row sourceBlock
Definition: Cell.cs:1052

◆ HasFloor

bool Point.HasFloor
get

Definition at line 207 of file Point.cs.

Referenced by CoreDebug.COM_Teleport(), Map.MineFloor(), and AM_Picker.Test().

◆ HasMinableBlock

bool Point.HasMinableBlock
get

Definition at line 143 of file Point.cs.

144 {
145 get
146 {
147 if (HasObj)
148 {
149 return sourceBlock.tileType.IsFullBlock;
150 }
151 return false;
152 }
153 }
SourceBlock.Row sourceBlock
Definition: Point.cs:63
bool HasObj
Definition: Point.cs:137

Referenced by TaskCut.GetHitResult(), and AI_HaulResource.Run().

◆ HasMultipleChara

bool Point.HasMultipleChara
get

Definition at line 251 of file Point.cs.

252 {
253 get
254 {
255 if (detail != null)
256 {
257 return detail.charas.Count > 1;
258 }
259 return false;
260 }
261 }

Referenced by GoalSleep.Run().

◆ HasNonWallBlock

bool Point.HasNonWallBlock
get

Definition at line 181 of file Point.cs.

182 {
183 get
184 {
185 if (HasBlock)
186 {
187 return !cell.sourceBlock.tileType.IsWallOrFence;
188 }
189 return false;
190 }
191 }
bool HasBlock
Definition: Point.cs:141

Referenced by BlockInfo._CanInspect(), ActionMode.GetGuidePass(), and Recipe.OnRenderMarker().

◆ HasObj

◆ HasRail

bool Point.HasRail
get

Definition at line 133 of file Point.cs.

Referenced by TraitTrolley.CanActivate(), and AI_Trolley.GetPoint().

◆ HasRamp

bool Point.HasRamp
get

Definition at line 131 of file Point.cs.

◆ HasRampOrLadder

bool Point.HasRampOrLadder
get

Definition at line 135 of file Point.cs.

◆ HasTaskBuild

bool Point.HasTaskBuild
get

Definition at line 193 of file Point.cs.

194 {
195 get
196 {
197 if (cell.detail != null)
198 {
199 return cell.detail.designation is TaskBuild;
200 }
201 return false;
202 }
203 }
CellDetail detail
Definition: Cell.cs:92

◆ HasThing

bool Point.HasThing
get

Definition at line 238 of file Point.cs.

239 {
240 get
241 {
242 CellDetail cellDetail = detail;
243 if (cellDetail == null)
244 {
245 return false;
246 }
247 return cellDetail.things.Count > 0;
248 }
249 }

Referenced by Chara._Move(), ActPlan._Update(), Zone_Dungeon.PlaceRail(), Zone.SpawnLostItems(), Zone.TryGenerateShrine(), and TaskHarvest.TryGetAct().

◆ HasWall

bool Point.HasWall
get

Definition at line 157 of file Point.cs.

158 {
159 get
160 {
161 if (cell._block != 0)
162 {
163 return cell.sourceBlock.tileType.IsWall;
164 }
165 return false;
166 }
167 }

◆ HasWallOrFence

◆ index

◆ Installed

◆ IsBlocked

◆ IsDeepWater

bool Point.IsDeepWater
get

Definition at line 263 of file Point.cs.

264 {
265 get
266 {
268 {
269 return sourceFloor.tileType.IsDeepWater;
270 }
271 return false;
272 }
273 }
bool IsTopWaterAndNoSnow
Definition: Cell.cs:712
SourceFloor.Row sourceFloor
Definition: Point.cs:65

Referenced by Chara.MoveRandom().

◆ IsFarmField

◆ IsHidden

bool Point.IsHidden
get

Definition at line 334 of file Point.cs.

335 {
336 get
337 {
338 if (cell.isSeen)
339 {
340 if (cell.room != null && !EClass.screen.tileMap.hideRoomFog && !cell.hasDoor)
341 {
342 return cell.HasRoof;
343 }
344 return false;
345 }
346 return true;
347 }
348 }
bool hideRoomFog
Definition: BaseTileMap.cs:281
bool HasRoof
Definition: Cell.cs:648
bool isSeen
Definition: Cell.cs:282

Referenced by ActPlan._Update(), ActThrow.CanPerform(), Chara.CanSeeSimple(), HotItemHeld.TrySetToolAct(), and PointTarget.Update().

◆ IsHotSpring

bool Point.IsHotSpring
get

Definition at line 362 of file Point.cs.

363 {
364 get
365 {
367 {
368 if (!EClass._zone.elements.Has(3701))
369 {
370 return IsInSpot<TraitGeyser>();
371 }
372 return true;
373 }
374 return false;
375 }
376 }
bool Has(int ele)
ElementContainerZone elements
Definition: Zone.cs:43

Referenced by AI_Idle.Run(), AI_PassTime.Run(), and TraitFoodEgg.Update().

◆ IsInBounds

◆ IsInBoundsPlus

bool Point.IsInBoundsPlus
get

Definition at line 115 of file Point.cs.

116 {
117 get
118 {
119 if (x >= 0 && z >= 0 && x <= map.Size - 1)
120 {
121 return z <= map.Size - 1;
122 }
123 return false;
124 }
125 }

Referenced by ActionMode._HitTest(), and TaskBuild.GetHitResult().

◆ IsSeen

◆ IsSky

bool Point.IsSky
get

Definition at line 211 of file Point.cs.

212 {
213 get
214 {
215 if (sourceFloor.tileType == TileType.Sky)
216 {
217 return !HasBridge;
218 }
219 return false;
220 }
221 }
bool HasBridge
Definition: Point.cs:209
static TileTypeSky Sky
Definition: TileType.cs:67

Referenced by ActPlan._Update(), Map.MineFloor(), TaskDig.OnProgressComplete(), and GameUpdater.Update100ms().

◆ IsSync

◆ IsValid

bool Point.IsValid
getset

Definition at line 87 of file Point.cs.

88 {
89 get
90 {
91 if (x >= 0 && z >= 0 && x < map.Size)
92 {
93 return z < map.Size;
94 }
95 return false;
96 }
97 set
98 {
99 x = ((!value) ? (-999) : 0);
100 }
101 }

Referenced by PathManager._GetFirstStep(), ActionMode._HitTest(), AM_Sim._OnUpdateInput(), BaseTileSelector._ProcessTile(), ActPlan._Update(), Map._ValidateInstalled(), Zone.Activate(), Map.AddCardOnActivate(), Zone.AddCardSplinkle(), Zone.AddGlobalCharasOnActivate(), Card.AddThing(), AM_Adv.AxisMove(), DesignationList< T >.CanAdd(), Chara.CanInteractTo(), Chara.CanMoveTo(), Chara.CanSee(), Chara.CanSeeSimple(), CoreDebug.COM_Teleport(), Chara.DestroyPath(), Card.Die(), AIAct.DoGoto(), AIAct.DoGotoInteraction(), BaseTileMap.Draw(), ZonePreEnterDigStairs.Execute(), FindThing< T >(), GameUpdater.SurfaceUpdater.FixedUpdate(), GameUpdater.FastSurfaceUpdater.FixedUpdate(), ForeachNearestPoint(), ForeachNeighbor(), AI_Clean.GetCleanPoint(), PathManager.GetFirstStep(), AI_Fish.GetFishingPoint(), TaskBuild.GetHitResult(), LayerInspect.GetMenuItems(), Map.GetNearbyResourcePoint(), GetNearestPoint(), LogicalPointManager.GetOrCreate(), AI_Trolley.GetPoint(), Map.GetRandomEdge(), MapBounds.GetRandomEdge(), Trait.GetRandomPoint(), GetRandomPoint(), GetRandomPointInRadius(), MapBounds.GetRandomSpawnPos(), MapBounds.GetRandomSurface(), Zone.GetRandomVisitPos(), Zone.GetSpawnPos(), Card.GetSprite(), ActEffect.GetTeleportPos(), AM_BaseTerrain.HitTest(), UIInspector.InspectUnderMouse(), Chara.IsEnemyOnPath(), MapGen.MakeNeighbor(), MapGen.MakeNeighbor_old(), MapGen.MakeRoad(), Map.MineBlock(), Map.MineFloor(), Map.MineObj(), Map.MineRamp(), ActBolt.OnMarkMapHighlights(), ActRush.OnMarkMapHighlights(), TileSelectorElona.OnRenderTile(), ActionMode.OnRenderTile(), AM_BaseTerrain.OnRenderTile(), ActionMode.OnRenderTileFloor(), BaseTileSelector.OnUpdate(), AM_BaseGameMode.OnUpdateInput(), LayerInspect.OnUpdateInput(), CardRenderer.PlayAnime(), AM_Adv.PressedActionMove(), ActEffect.Proc(), ActEffect.ProcAt(), WidgetSearch.RefreshList(), BaseTileSelector.RefreshMouseInfo(), Chara.RequestProtection(), SerializedCards.Restore(), ActionMode.RotateUnderMouse(), AI_Fish.Run(), AI_Idle.Run(), GoalCombat.Run(), GoalManualMove.Run(), TaskDump.Run(), Player.TargetRanged(), Chara.TryMoveFrom(), LayerInteraction.TryShow(), Zone.TrySpawnFollower(), GameUpdater.Update(), LogicalFire.Update(), PointTarget.Update(), GameUpdater.Update100ms(), ActionMode.UpdateInput(), CoreDebug.UpdateInput(), Chara.UpdateSight(), and WidgetDebug.UpdateText().

◆ IsWater

bool Point.IsWater
get

◆ LastThing

Thing Point.LastThing
get

Definition at line 301 of file Point.cs.

302 {
303 get
304 {
305 CellDetail cellDetail = detail;
306 if (cellDetail == null || cellDetail.things.Count <= 0)
307 {
308 return null;
309 }
310 return detail.things.LastItem();
311 }
312 }

Referenced by CardRenderer.Draw(), AM_EditMarker.GetTarget(), AM_Visibility.GetTarget(), and AM_Adv.ShowAllAction().

◆ matBlock

◆ matBridge

◆ matFloor

◆ matRoofBlock

SourceMaterial.Row Point.matRoofBlock
get

Definition at line 53 of file Point.cs.

◆ sourceBlock

◆ sourceBridge

◆ sourceFloor

◆ sourceObj

◆ sourceRoofBlock

SourceBlock.Row Point.sourceRoofBlock
get

Definition at line 61 of file Point.cs.

Referenced by TaskBuild.OnProgressComplete().

◆ Things


The documentation for this class was generated from the following file: