Elin Decompiled Documentation EA 23.174 Nightly
Loading...
Searching...
No Matches
TraitNewZone Class Reference
Inheritance diagram for TraitNewZone:
Trait EClass TraitElevator TraitStairs TraitTeleporter TraitTent TraitStairsDown TraitStairsUp TraitManhole TraitMineEntrance

Public Member Functions

override void OnImportMap ()
 
virtual Point GetExitPos ()
 
override void TrySetAct (ActPlan p)
 
bool CanAutoEnter ()
 
bool MoveZone (bool confirmed=false)
 
Zone CreateZone (Zone dest, int destLv)
 
override void OnStepped (Chara c)
 
virtual bool TryTeleport ()
 
virtual bool IsFor (Zone z)
 
- Public Member Functions inherited from Trait
string GetParam (int i, string def=null)
 
int GetParamInt (int i, int def)
 
virtual bool Contains (RecipeSource r)
 
virtual int GetValue ()
 
virtual bool CanStackTo (Thing to)
 
virtual string GetHoverText ()
 
virtual Action GetHealAction (Chara c)
 
virtual bool CanBlend (Thing t)
 
virtual void OnBlend (Thing t, Chara c)
 
virtual int GetActDuration (Chara c)
 
virtual SourceElement.Row GetRefElement ()
 
virtual Sprite GetRefSprite ()
 
virtual void OnRenderExtra (RenderParam p)
 
virtual Emo2 GetHeldEmo (Chara c)
 
virtual void SetOwner (Card _owner)
 
virtual bool IdleUse (Chara c, int dist)
 
virtual void OnSetOwner ()
 
virtual void OnImportMap ()
 
virtual void SetParams (params string[] s)
 
virtual void OnCrafted (Recipe recipe, List< Thing > ings)
 
virtual void OnCreate (int lv)
 
virtual void OnEquip (Chara c, bool onSetOwner)
 
virtual void OnUnequip (Chara c)
 
virtual void OnChangePlaceState (PlaceState state)
 
virtual void OnAddedToZone ()
 
virtual void OnRemovedFromZone ()
 
virtual void OnSimulateHour (VirtualDate date)
 
virtual string GetName ()
 
virtual void SetName (ref string s)
 
virtual void OnRenderTile (Point point, HitResult result, int dir)
 
virtual int CompareTo (Card b)
 
virtual bool CanBuiltAt (Point p)
 
virtual void Update ()
 
Point GetPoint ()
 
Point GetRandomPoint (Func< Point, bool > func=null, Chara accessChara=null)
 
virtual List< PointListPoints (Point center=null, bool onlyPassable=true)
 
virtual Recipe GetRecipe ()
 
virtual Recipe GetBuildModeRecipe ()
 
virtual bool CanCook (Card c)
 
void CookProgress ()
 
virtual bool CanOffer (Card tg)
 
void OfferProcess (Chara cc)
 
void Offer (Chara cc)
 
virtual bool TryProgress (AIProgress p)
 
virtual LockOpenState TryOpenLock (Chara cc, bool msgFail=true)
 
virtual void WriteNote (UINote n, bool identified)
 
int GetSortVal (UIList.SortMode m)
 
virtual HotItem GetHotItem ()
 
virtual bool CanRead (Chara c)
 
virtual void OnRead (Chara c)
 
virtual bool CanEat (Chara c)
 
virtual void OnEat (Chara c)
 
virtual bool CanDrink (Chara c)
 
virtual void OnDrink (Chara c)
 
virtual void OnThrowGround (Chara c, Point p)
 
virtual bool CanUse (Chara c)
 
virtual bool CanUse (Chara c, Card tg)
 
virtual bool CanUse (Chara c, Point p)
 
virtual bool OnUse (Chara c)
 
virtual bool OnUse (Chara c, Card tg)
 
virtual bool OnUse (Chara c, Point p)
 
virtual void TrySetAct (ActPlan p)
 
virtual void TrySetHeldAct (ActPlan p)
 
virtual void OnHeld ()
 
virtual void OnTickHeld ()
 
virtual void OnSetCurrentItem ()
 
virtual void OnUnsetCurrentItem ()
 
virtual bool OnChildDecay (Card c, bool firstDecay)
 
virtual bool CanChildDecay (Card c)
 
virtual void OnSetCardGrid (ButtonGrid b)
 
virtual void OnStepped (Chara c)
 
virtual void OnSteppedOut (Chara c)
 
virtual void OnOpenDoor (Chara c)
 
void Install (bool byPlayer)
 
void Uninstall ()
 
virtual void OnInstall (bool byPlayer)
 
virtual void OnUninstall ()
 
virtual void TryToggle ()
 
virtual void Toggle (bool on, bool silent=false)
 
virtual void PlayToggleEffect (bool silent)
 
virtual void OnToggle ()
 
virtual void TrySetToggleAct (ActPlan p)
 
bool IsFuelEnough (int num=1, List< Thing > excludes=null, bool tryRefuel=true)
 
bool IsFuel (string s)
 
bool IsFuel (Thing t)
 
int GetFuelValue (Thing t)
 
int GetFuelValue (string id)
 
void Refuel (Thing t)
 
void TryRefuel (int dest, List< Thing > excludes)
 
virtual void OnEnterScreen ()
 
virtual void RefreshRenderer ()
 
virtual void SetMainText (UIText t, bool hotitem)
 
virtual bool CanCopy (Thing t)
 
string GetTextRestock (string lang, bool pet)
 
Emo2 GetRestockedIcon ()
 
void OnBarter ()
 
Thing CreateStock ()
 

Properties

Zone zone [get, set]
 
virtual bool CanUseInTempDungeon [get]
 
virtual string langOnUse [get]
 
virtual bool IsUpstairs [get]
 
virtual bool IsDownstairs [get]
 
virtual bool IsTeleport [get]
 
virtual bool OnlyInTheSameTopZone [get]
 
virtual bool AutoEnter [get]
 
virtual bool ForceEnter [get]
 
virtual bool CanToggleAutoEnter [get]
 
virtual bool CreateExternalZone [get]
 
virtual ZoneTransition.EnterState enterState [get]
 
virtual bool IsEntrace [get]
 
override bool CanBeHeld [get]
 
override bool CanBeDestroyed [get]
 
override bool CanBeStolen [get]
 
override bool CanBeTeleported [get]
 
virtual int UseDist [get]
 
- Properties inherited from Trait
string[] Params [get]
 
virtual byte WeightMod [get]
 
virtual int IdSkin [get]
 
virtual string Name [get]
 
virtual TileType tileType [get]
 
virtual RefCardName RefCardName [get]
 
virtual bool IsBlockPath [get]
 
virtual bool IsBlockSight [get]
 
virtual bool IsDoor [get]
 
virtual bool IsOpenSight [get]
 
virtual bool IsOpenPath [get]
 
virtual bool IsFloating [get]
 
virtual bool IsNoShop [get]
 
virtual bool IsGround [get]
 
virtual bool IsOnlyUsableByPc [get]
 
virtual bool InvertHeldSprite [get]
 
virtual bool IsChangeFloorHeight [get]
 
virtual bool ShouldRefreshTile [get]
 
virtual bool ShouldTryRefreshRoom [get]
 
virtual int InstallBottomPriority [get]
 
virtual bool CanHarvest [get]
 
virtual int radius [get]
 
virtual TraitRadiusType radiusType [get]
 
virtual bool CanUseRoomRadius [get]
 
virtual int GuidePriotiy [get]
 
virtual int Electricity [get]
 
virtual bool IgnoreLastStackHeight [get]
 
virtual int Decay [get]
 
virtual int DecaySpeed [get]
 
virtual int DecaySpeedChild [get]
 
virtual bool IsFridge [get]
 
virtual int DefaultStock [get]
 
virtual bool HoldAsDefaultInteraction [get]
 
virtual int CraftNum [get]
 
virtual bool ShowOrbit [get]
 
virtual bool HaveUpdate [get]
 
virtual bool IsSpot [get]
 
virtual bool IsFactory [get]
 
virtual bool CanAutofire [get]
 
virtual bool CanName [get]
 
virtual bool CanPutAway [get]
 
virtual bool CanChangeHeight [get]
 
virtual bool CanStack [get]
 
virtual bool CanCopyInBlueprint [get]
 
virtual bool CanBeAttacked [get]
 
virtual bool CanBeTeleported [get]
 
virtual bool CanExtendBuild [get]
 
virtual string langNote [get]
 
virtual string IDInvStyle [get]
 
virtual string IDActorEx [get]
 
virtual bool MaskOnBuild [get]
 
virtual bool ShowContextOnPick [get]
 
virtual bool IsThrowMainAction [get]
 
virtual bool LevelAsQuality [get]
 
virtual bool UseDummyTile [get]
 
virtual bool RequireFullStackCheck [get]
 
virtual bool DisableAutoCombat [get]
 
virtual InvGridSize InvGridSize [get]
 
virtual bool IsContainer [get]
 
virtual bool CanUseContent [get]
 
virtual bool CanSearchContent [get]
 
virtual bool CanOpenContainer [get]
 
virtual bool IsSpecialContainer [get]
 
virtual ContainerType ContainerType [get]
 
virtual ThrowType ThrowType [get]
 
virtual EffectDead EffectDead [get]
 
virtual bool IsHomeItem [get]
 
virtual bool IsAltar [get]
 
virtual bool IsRestSpot [get]
 
virtual bool CanBeMasked [get]
 
virtual bool IsBlendBase [get]
 
virtual bool CanBeOnlyBuiltInHome [get]
 
virtual bool CanBuildInTown [get]
 
virtual bool CanBeHeld [get]
 
virtual bool CanBeStolen [get]
 
virtual bool CanOnlyCarry [get]
 
virtual bool CanBeDestroyed [get]
 
virtual bool CanBeSmashedToDeath [get]
 
virtual bool CanBeHallucinated [get]
 
virtual bool CanBeDropped [get]
 
virtual string ReqHarvest [get]
 
virtual bool CanBeDisassembled [get]
 
virtual bool CanBeShipped [get]
 
virtual bool HasCharges [get]
 
virtual bool ShowCharges [get]
 
virtual bool ShowChildrenNumber [get]
 
virtual bool ShowAsTool [get]
 
virtual bool CanBeHeldAsFurniture [get]
 
virtual bool HideInAdv [get]
 
virtual bool NoHeldDir [get]
 
virtual bool AlwaysHideOnLowWall [get]
 
bool ExistsOnMap [get]
 
virtual bool RenderExtra [get]
 
virtual float DropChance [get]
 
virtual string IdNoRestock [get]
 
virtual int IdleUseChance [get]
 
virtual string RecipeCat [get]
 
virtual bool IsTool [get]
 
virtual string LangUse [get]
 
virtual bool IsOn [get]
 
virtual bool IsAnimeOn [get]
 
bool IsToggle [get]
 
virtual bool AutoToggle [get]
 
bool IsLighting [get]
 
virtual bool IsLightOn [get]
 
virtual bool IsNightOnlyLight [get]
 
virtual TileMode tileMode [get]
 
virtual bool UseAltTiles [get]
 
virtual bool UseLowblock [get]
 
virtual bool UseExtra [get]
 
virtual bool UseLightColor [get]
 
virtual ? Color ColorExtra [get]
 
virtual int MaxFuel [get]
 
virtual int FuelCost [get]
 
virtual bool ShowFuelWindow [get]
 
bool IsRequireFuel [get]
 
string IdToggleExtra [get]
 
virtual ToggleType ToggleType [get]
 
virtual string IdSoundToggleOn [get]
 
virtual string IdSoundToggleOff [get]
 
virtual int ShopLv [get]
 
virtual CopyShopType CopyShop [get]
 
virtual int NumCopyItem [get]
 
virtual ShopType ShopType [get]
 
virtual CurrencyType CurrencyType [get]
 
virtual PriceType PriceType [get]
 
virtual bool AllowSell [get]
 
virtual int CostRerollShop [get]
 
virtual bool AllowCriminal [get]
 
virtual int RestockDay [get]
 
virtual SlaverType SlaverType [get]
 
virtual string LangBarter [get]
 
string TextNextRestock [get]
 
string TextNextRestockPet [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]
 

Additional Inherited Members

- Public Types inherited from Trait
enum  TileMode {
  Default , Door , Illumination , DefaultNoAnime ,
  SignalAnime , FakeBlock
}
 
enum  CopyShopType { None , Item , Spellbook }
 
- 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 inherited from Trait
Card owner
 
- Static Public Attributes inherited from Trait
static TraitSelfFactory SelfFactory = new TraitSelfFactory()
 
- Static Public Attributes inherited from EClass
static Core core
 
- Static Protected Attributes inherited from Trait
static List< PointlistRadiusPoints = new List<Point>()
 

Detailed Description

Definition at line 3 of file TraitNewZone.cs.

Member Function Documentation

◆ CanAutoEnter()

bool TraitNewZone.CanAutoEnter ( )
inline

Definition at line 127 of file TraitNewZone.cs.

128 {
130 {
131 return false;
132 }
134 {
135 return false;
136 }
137 if (EClass.pc.held != null && EClass.pc.held.trait.CanOnlyCarry)
138 {
139 return false;
140 }
141 return true;
142 }
virtual CardRow sourceRenderCard
Definition: Card.cs:2069
Trait trait
Definition: Card.cs:49
Card held
Definition: Chara.cs:70
Definition: EClass.cs:5
static Zone _zone
Definition: EClass.cs:20
static Chara pc
Definition: EClass.cs:14
bool multisize
Definition: RenderRow.cs:64
Card owner
Definition: Trait.cs:27
virtual bool CanOnlyCarry
Definition: Trait.cs:290
virtual bool AllowNewZone
Definition: Zone.cs:256

References EClass._zone, Zone.AllowNewZone, Trait.CanOnlyCarry, Chara.held, RenderRow.multisize, Trait.owner, EClass.pc, Card.sourceRenderCard, and Card.trait.

Referenced by AM_Adv._OnUpdateInput().

◆ CreateZone()

Zone TraitNewZone.CreateZone ( Zone  dest,
int  destLv 
)
inline

Definition at line 240 of file TraitNewZone.cs.

241 {
242 string text = dest.GetNewZoneID(destLv);
244 {
245 text = owner.GetStr(30) ?? GetParam(1);
246 }
247 Debug.Log("Creating:" + text + "/" + destLv + "/" + EClass.sources.zones.map.ContainsKey(text) + "/" + dest);
248 Zone zone = SpatialGen.Create(text, dest, register: true, owner.pos.x, owner.pos.z) as Zone;
249 zone.lv = destLv;
250 zone.x = dest.x;
251 zone.y = dest.y;
252 owner.c_uidZone = zone.uid;
254 {
255 zone.isExternalZone = true;
256 }
257 Debug.Log("Created:" + zone.Name + "/" + zone.id);
258 return zone;
259 }
string GetStr(int id, string defaultStr=null)
Definition: BaseCard.cs:54
Point pos
Definition: Card.cs:55
static SourceManager sources
Definition: EClass.cs:42
int x
Definition: Point.cs:36
int z
Definition: Point.cs:39
SourceZone zones
static Spatial Create(string id, Spatial parent, bool register, int x=-99999, int y=-99999, int icon=0)
Definition: SpatialGen.cs:16
int uid
Definition: Spatial.cs:70
virtual string Name
Definition: Spatial.cs:495
string id
Definition: Spatial.cs:13
int y
Definition: Spatial.cs:106
int x
Definition: Spatial.cs:94
virtual bool CreateExternalZone
Definition: TraitNewZone.cs:36
string GetParam(int i, string def=null)
Definition: Trait.cs:556
Definition: Zone.cs:12
virtual string GetNewZoneID(int level)
Definition: Zone.cs:535

References SpatialGen.Create(), CreateExternalZone, Debug, Zone.GetNewZoneID(), Trait.GetParam(), BaseCard.GetStr(), Spatial.id, Spatial.Name, Trait.owner, Card.pos, EClass.sources, Spatial.uid, Point.x, Spatial.x, Spatial.y, Point.z, zone, and SourceManager.zones.

Referenced by MoveZone().

◆ GetExitPos()

virtual Point TraitNewZone.GetExitPos ( )
inlinevirtual

Reimplemented in TraitStairs.

Definition at line 80 of file TraitNewZone.cs.

81 {
82 Point point = new Point(owner.pos);
83 if (owner.dir % 2 == 0)
84 {
85 point.x -= owner.sourceCard.W / 2;
86 point.z--;
87 }
88 else
89 {
90 point.x++;
91 point.z += owner.sourceCard.H / 2;
92 }
93 return point;
94 }
int dir
Definition: Card.cs:142
Definition: Point.cs:9

References Card.dir, Trait.owner, Card.pos, Point.x, and Point.z.

◆ IsFor()

virtual bool TraitNewZone.IsFor ( Zone  z)
inlinevirtual

Definition at line 279 of file TraitNewZone.cs.

280 {
281 if (z == zone)
282 {
283 return true;
284 }
285 string param = GetParam(1);
286 if (!param.IsEmpty())
287 {
288 int num = ((GetParam(2) != null) ? GetParam(2).ToInt() : 0);
289 if (z.id == param && z.lv == num)
290 {
291 return true;
292 }
293 }
294 return false;
295 }
int lv
Definition: Spatial.cs:142

References Trait.GetParam(), Spatial.id, Spatial.lv, and zone.

Referenced by Zone.GetSpawnPos().

◆ MoveZone()

bool TraitNewZone.MoveZone ( bool  confirmed = false)
inline

Definition at line 144 of file TraitNewZone.cs.

145 {
146 if (Electricity != 0 && !owner.isOn)
147 {
148 owner.PlaySound("electricity_insufficient");
149 return false;
150 }
151 if (TryTeleport())
152 {
153 return true;
154 }
155 if (!confirmed && EClass._zone.IsNefia && EClass._zone.Boss != null)
156 {
157 EClass.pc.ai.Cancel();
158 EInput.Consume(consumeAxis: true);
159 Dialog.YesNo("ExitZoneBoss".lang(EClass._zone.Name), delegate
160 {
161 MoveZone(confirmed: true);
162 });
163 return false;
164 }
165 ZoneTransition transition = new ZoneTransition
166 {
167 state = enterState,
168 idTele = GetParam(3)
169 };
170 Zone zone = null;
171 int num = GetParam(2)?.ToInt() ?? 0;
172 if (OnlyInTheSameTopZone && this.zone != null && this.zone.GetTopZone() != EClass._zone.GetTopZone())
173 {
174 this.zone = null;
175 }
176 if (this.zone == null)
177 {
179 {
180 zone = EClass._zone;
181 }
182 else if (IsTeleport)
183 {
185 if (zone != null)
186 {
187 zone = zone.GetTopZone();
188 this.zone = zone.FindZone(num);
189 }
190 }
191 else if (IsDownstairs || IsUpstairs)
192 {
194 num = EClass._zone.lv + (IsUpstairs ? 1 : (IsDownstairs ? (-1) : 0));
195 this.zone = EClass._zone.GetTopZone().FindZone(num);
196 if (this.zone == null && EClass._zone.parent.IsRegion && ((IsUpstairs && EClass._zone.lv == -1) || (IsDownstairs && EClass._zone.lv == 1)))
197 {
199 return false;
200 }
201 }
202 if (OnlyInTheSameTopZone && this.zone != null && this.zone.GetTopZone() != EClass._zone.GetTopZone())
203 {
204 this.zone = null;
205 }
206 if (this.zone == null)
207 {
209 {
210 zone = null;
211 }
212 if (zone == null || EClass._zone.isExternalZone)
213 {
215 return false;
216 }
217 CreateZone(zone, num);
218 }
219 }
220 if ((IsDownstairs || IsUpstairs) && this.zone.IDGenerator == null && EClass._zone.IDGenerator == null)
221 {
223 {
224 pos = owner.pos.Copy(),
225 fromAbove = IsDownstairs,
226 uidZone = EClass._zone.uid
227 });
228 transition = new ZoneTransition
229 {
230 state = ZoneTransition.EnterState.UndergroundOrSky,
231 x = owner.pos.x,
232 z = owner.pos.z
233 };
234 }
235 Debug.Log(this.zone);
236 EClass.pc.MoveZone(this.zone, transition);
237 return true;
238 }
virtual Status Cancel()
Definition: AIAct.cs:291
SoundSource PlaySound(string id, float v=1f, bool spatial=true)
Definition: Card.cs:5799
bool isOn
Definition: Card.cs:526
AIAct ai
Definition: Chara.cs:198
void MoveZone(string alias)
Definition: Chara.cs:3094
Definition: Dialog.cs:7
static Dialog YesNo(string langDetail, Action actionYes, Action actionNo=null, string langYes="yes", string langNo="no")
Definition: Dialog.cs:244
static World world
Definition: EClass.cs:40
Definition: EInput.cs:8
static void Consume(int _skipFrame)
Definition: EInput.cs:656
Definition: Msg.cs:5
static string SayNothingHappen()
Definition: Msg.cs:96
Point Copy()
Definition: Point.cs:479
Spatial parent
Definition: Spatial.cs:10
bool isExternalZone
Definition: Spatial.cs:370
virtual bool IsRegion
Definition: Spatial.cs:501
Zone FindZone(int lv)
Definition: Spatial.cs:714
virtual bool IsUpstairs
Definition: TraitNewZone.cs:21
virtual bool IsTeleport
Definition: TraitNewZone.cs:25
virtual ZoneTransition.EnterState enterState
Definition: TraitNewZone.cs:51
Zone CreateZone(Zone dest, int destLv)
virtual bool IsDownstairs
Definition: TraitNewZone.cs:23
virtual bool OnlyInTheSameTopZone
Definition: TraitNewZone.cs:27
virtual bool TryTeleport()
virtual int Electricity
Definition: Trait.cs:102
Region region
Definition: World.cs:23
void AddPreEnter(ZonePreEnterEvent e, bool executeIfActiveZone=true)
ZoneEventManager events
Definition: Zone.cs:40
virtual bool IsNefia
Definition: Zone.cs:280
virtual string IDGenerator
Definition: Zone.cs:130
Zone GetTopZone()
Definition: Zone.cs:1881
Chara Boss
Definition: Zone.cs:83

References EClass._zone, ZoneEventManager.AddPreEnter(), Chara.ai, Zone.Boss, AIAct.Cancel(), EInput.Consume(), Point.Copy(), CreateExternalZone, CreateZone(), Debug, Trait.Electricity, enterState, Zone.events, Spatial.FindZone(), Trait.GetParam(), Zone.GetTopZone(), Zone.IDGenerator, IsDownstairs, Spatial.isExternalZone, Zone.IsNefia, Card.isOn, Spatial.IsRegion, IsTeleport, IsUpstairs, Spatial.lv, Chara.MoveZone(), Spatial.Name, OnlyInTheSameTopZone, Trait.owner, Spatial.parent, EClass.pc, Card.PlaySound(), Card.pos, World.region, Msg.SayNothingHappen(), TryTeleport(), Spatial.uid, EClass.world, Point.x, Dialog.YesNo(), and zone.

Referenced by AM_Adv._OnUpdateInput(), OnStepped(), TrySetAct(), and CoreDebug.UpdateInput().

◆ OnImportMap()

override void TraitNewZone.OnImportMap ( )
inlinevirtual

Reimplemented from Trait.

Definition at line 75 of file TraitNewZone.cs.

76 {
77 owner.c_uidZone = 0;
78 }

◆ OnStepped()

override void TraitNewZone.OnStepped ( Chara  c)
inlinevirtual

Reimplemented from Trait.

Definition at line 261 of file TraitNewZone.cs.

262 {
264 {
265 Debug.Log("OnStepped:" + EClass.pc.ai);
266 AI_Goto aI_Goto = EClass.pc.ai.Current as AI_Goto;
267 if ((aI_Goto != null || EClass.pc.ai is GoalManualMove) && (aI_Goto == null || aI_Goto.dest.Equals(owner.pos)))
268 {
269 MoveZone();
270 }
271 }
272 }
Point dest
Definition: AI_Goto.cs:8
bool IsInstalled
Definition: Card.cs:2317
override bool IsAliveInCurrentZone
Definition: Chara.cs:557
override bool IsPC
Definition: Chara.cs:608
new GameConfig game
Definition: CoreConfig.cs:602
CoreConfig config
Definition: Core.cs:70
static Core core
Definition: EClass.cs:6
bool Equals(int _x, int _z)
Definition: Point.cs:940
virtual bool AutoEnter
Definition: TraitNewZone.cs:29
bool MoveZone(bool confirmed=false)
virtual bool ForceEnter
Definition: TraitNewZone.cs:31

References Chara.ai, AutoEnter, Core.config, EClass.core, Debug, AI_Goto.dest, CoreConfig.GameConfig.disableAutoStairs, Point.Equals(), ForceEnter, CoreConfig.game, Chara.IsAliveInCurrentZone, Card.IsInstalled, Chara.IsPC, MoveZone(), Trait.owner, EClass.pc, and Card.pos.

◆ TrySetAct()

override void TraitNewZone.TrySetAct ( ActPlan  p)
inlinevirtual

Reimplemented from Trait.

Reimplemented in TraitTeleporter.

Definition at line 96 of file TraitNewZone.cs.

97 {
99 {
100 return;
101 }
102 bool flag = IsEntrace || p.IsSelf;
104 {
105 int x = p.pos.x;
106 int z = p.pos.z;
107 int w = owner.W;
108 int h = owner.H;
109 flag = ((owner.dir % 2 != 0) ? (p.pos.x == owner.pos.x && p.pos.z >= owner.pos.z + 1 && p.pos.z < owner.pos.z + h - 1) : (z == owner.pos.z && x > owner.pos.x - w + 1 && x <= owner.pos.x - 1));
110 }
111 if (!flag || (EClass.pc.held != null && EClass.pc.held.trait.CanOnlyCarry) || p.dist > UseDist)
112 {
113 return;
114 }
115 p.TrySetAct("actNewZone", delegate
116 {
118 {
119 Msg.Say("badidea");
120 return false;
121 }
122 MoveZone();
123 return false;
125 }
Point pos
Definition: ActPlan.cs:150
bool IsSelf
Definition: ActPlan.cs:174
bool TrySetAct(string lang, Func< bool > onPerform, Card tc, CursorInfo cursor=null, int dist=1, bool isHostileAct=false, bool localAct=true, bool canRepeat=false)
Definition: ActPlan.cs:366
int H
Definition: Card.cs:2302
int W
Definition: Card.cs:2290
static CursorInfo MoveZone
Definition: CursorSystem.cs:86
static string Say(string idLang, string ref1, string ref2=null, string ref3=null, string ref4=null)
Definition: Msg.cs:58
virtual int UseDist
Definition: TraitNewZone.cs:73
virtual bool CanUseInTempDungeon
Definition: TraitNewZone.cs:17
virtual bool IsEntrace
Definition: TraitNewZone.cs:54
virtual bool RegenerateOnEnter
Definition: Zone.cs:260
bool IsInstance
Definition: Zone.cs:482

References EClass._zone, Zone.AllowNewZone, Trait.CanOnlyCarry, CanUseInTempDungeon, Card.H, Chara.held, IsEntrace, Zone.IsInstance, ActPlan.IsSelf, CursorSystem.MoveZone, MoveZone(), RenderRow.multisize, Trait.owner, EClass.pc, ActPlan.pos, Card.pos, Zone.RegenerateOnEnter, Msg.Say(), Card.sourceRenderCard, Card.trait, ActPlan.TrySetAct(), UseDist, Card.W, Point.x, and Point.z.

◆ TryTeleport()

virtual bool TraitNewZone.TryTeleport ( )
inlinevirtual

Reimplemented in TraitTeleporter.

Definition at line 274 of file TraitNewZone.cs.

275 {
276 return false;
277 }

Referenced by MoveZone().

Property Documentation

◆ AutoEnter

virtual bool TraitNewZone.AutoEnter
get

Definition at line 29 of file TraitNewZone.cs.

Referenced by OnStepped().

◆ CanBeDestroyed

override bool TraitNewZone.CanBeDestroyed
get

Definition at line 67 of file TraitNewZone.cs.

◆ CanBeHeld

override bool TraitNewZone.CanBeHeld
get

Definition at line 65 of file TraitNewZone.cs.

◆ CanBeStolen

override bool TraitNewZone.CanBeStolen
get

Definition at line 69 of file TraitNewZone.cs.

◆ CanBeTeleported

override bool TraitNewZone.CanBeTeleported
get

Definition at line 71 of file TraitNewZone.cs.

◆ CanToggleAutoEnter

virtual bool TraitNewZone.CanToggleAutoEnter
get

Definition at line 33 of file TraitNewZone.cs.

◆ CanUseInTempDungeon

virtual bool TraitNewZone.CanUseInTempDungeon
get

Definition at line 17 of file TraitNewZone.cs.

Referenced by TrySetAct().

◆ CreateExternalZone

virtual bool TraitNewZone.CreateExternalZone
get

Definition at line 35 of file TraitNewZone.cs.

36 {
37 get
38 {
39 if (!IsTeleport)
40 {
41 if (owner.GetStr(30) == null)
42 {
43 return GetParam(1) != null;
44 }
45 return true;
46 }
47 return false;
48 }
49 }

Referenced by CreateZone(), and MoveZone().

◆ enterState

virtual ZoneTransition.EnterState TraitNewZone.enterState
get

Definition at line 51 of file TraitNewZone.cs.

Referenced by MoveZone().

◆ ForceEnter

virtual bool TraitNewZone.ForceEnter
get

Definition at line 31 of file TraitNewZone.cs.

Referenced by OnStepped().

◆ IsDownstairs

virtual bool TraitNewZone.IsDownstairs
get

Definition at line 23 of file TraitNewZone.cs.

Referenced by MoveZone().

◆ IsEntrace

virtual bool TraitNewZone.IsEntrace
get

Definition at line 53 of file TraitNewZone.cs.

54 {
55 get
56 {
57 if (!IsUpstairs)
58 {
59 return !IsDownstairs;
60 }
61 return false;
62 }
63 }

Referenced by TrySetAct().

◆ IsTeleport

virtual bool TraitNewZone.IsTeleport
get

Definition at line 25 of file TraitNewZone.cs.

Referenced by MoveZone().

◆ IsUpstairs

virtual bool TraitNewZone.IsUpstairs
get

Definition at line 21 of file TraitNewZone.cs.

Referenced by MoveZone().

◆ langOnUse

virtual string TraitNewZone.langOnUse
get

Definition at line 19 of file TraitNewZone.cs.

◆ OnlyInTheSameTopZone

virtual bool TraitNewZone.OnlyInTheSameTopZone
get

Definition at line 27 of file TraitNewZone.cs.

Referenced by MoveZone().

◆ UseDist

virtual int TraitNewZone.UseDist
get

Definition at line 73 of file TraitNewZone.cs.

Referenced by TrySetAct().

◆ zone

Zone TraitNewZone.zone
getset

Definition at line 5 of file TraitNewZone.cs.

6 {
7 get
8 {
10 }
11 set
12 {
13 owner.c_uidZone = value?.uid ?? 0;
14 }
15 }
int c_uidZone
Definition: Card.cs:1083
static Zone Get(int uid)
Definition: RefZone.cs:3

Referenced by CreateZone(), Zone.GetSpawnPos(), IsFor(), MoveZone(), and TraitTeleporter.TryTeleport().


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