8 public override bool IsBuildMode
18 public override BaseTileMap.CardIconMode cardIconMode
28 public override BaseTileSelector.SelectType selectType
38 public override BaseTileSelector.HitType hitType
47 public override void OnUpdateCursor()
49 base.SetCursorOnMap(CursorSystem.Select);
53 public override HitResult HitTest(
Point point,
Point start)
55 if (this.GetDestState(point) !=
null)
57 return HitResult.Valid;
59 return base.HitTest(point, start);
63 public override void OnProcessTiles(
Point point,
int dir)
65 PlaceState? destState = this.GetDestState(point);
66 foreach (
Card card
in point.ListCards(
false))
68 if (card.isThing && destState !=
null)
70 PlaceState placeState = card.placeState;
71 PlaceState? placeState2 = destState;
72 if (!(placeState == placeState2.GetValueOrDefault() & placeState2 !=
null))
74 card.SetPlaceState(destState.Value,
false);
82 public PlaceState? GetDestState(
Point point)
84 PlaceState? result =
null;
85 foreach (
Card card
in point.ListCards(
false))
87 if (card.isThing && !card.isNPCProperty)
89 if (card.placeState == PlaceState.installed)
91 result =
new PlaceState?(PlaceState.roaming);
93 else if (card.placeState == PlaceState.roaming)
95 result =
new PlaceState?(PlaceState.installed);