Elin Decompiled Documentation EA 23.102 Nightly
Loading...
Searching...
No Matches
TraitShrine Class Reference
Inheritance diagram for TraitShrine:
TraitPowerStatue TraitItem Trait EClass

Public Member Functions

override void OnCreate (int lv)
 
override void _OnUse (Chara c)
 
override void OnRenderExtra (RenderParam p)
 
SourceMaterial.Row GetMaterial ()
 
override string GetName ()
 
- Public Member Functions inherited from TraitPowerStatue
override void OnCreate (int lv)
 
override bool CanUse (Chara c)
 
override bool OnUse (Chara c)
 
virtual void _OnUse (Chara c)
 
virtual bool IsImplemented ()
 
- Public Member Functions inherited from TraitItem
override bool CanUse (Chara c)
 
override void WriteNote (UINote n, bool identified)
 
- 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)
 
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 ()
 

Public Attributes

SourceMaterial.Row mat
 
- Public Attributes inherited from Trait
Card owner
 

Properties

ShrineData Shrine [get]
 
override bool RenderExtra [get]
 
- Properties inherited from TraitPowerStatue
override bool CanUseFromInventory [get]
 
override bool UseExtra [get]
 
override bool CanStack [get]
 
- Properties inherited from TraitItem
virtual bool CanUseFromInventory [get]
 
virtual bool CanUseInUserZone [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 IsGround [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 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 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 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
}
 
enum  CopyShopType { None , Item , Spellbook }
 
- Static Public Member Functions inherited from EClass
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)
 
- 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 1 of file TraitShrine.cs.

Member Function Documentation

◆ _OnUse()

override void TraitShrine._OnUse ( Chara  c)
inlinevirtual

Reimplemented from TraitPowerStatue.

Definition at line 30 of file TraitShrine.cs.

31 {
32 Point point = (owner.ExistsOnMap ? owner.pos : EClass.pc.pos);
33 switch (Shrine.id)
34 {
35 case "material":
36 ActEffect.Proc(EffectId.ChangeMaterial, EClass.pc, null, 100, new ActRef
37 {
38 n1 = GetMaterial().alias
39 });
40 break;
41 case "armor":
42 {
43 bool flag = mat.alias == "gold";
44 ActEffect.Proc(flag ? EffectId.EnchantArmorGreat : EffectId.EnchantArmor, 100, flag ? BlessedState.Blessed : BlessedState.Normal, EClass.pc);
45 break;
46 }
47 case "replenish":
48 {
49 foreach (Chara member in EClass.pc.party.members)
50 {
51 member.hp = member.MaxHP;
52 member.mana.value = member.mana.max;
53 member.stamina.Mod(member.stamina.max / 3);
54 if (!member.IsPC)
55 {
56 member.stamina.value = member.stamina.max;
57 }
58 member.PlayEffect("revive");
59 member.Say("heal_light", member);
60 foreach (Condition item in member.conditions.Copy())
61 {
62 if (item.Type == ConditionType.Debuff && !item.IsKilled)
63 {
64 member.Say("removeHex", member, item.Name.ToLower());
65 item.Kill();
66 }
67 }
68 }
69 break;
70 }
71 case "strife":
72 {
73 for (int i = 0; i < 3 + EClass.rnd(2); i++)
74 {
75 EClass._zone.SpawnMob(point.GetNearestPoint(allowBlock: false, allowChara: false), (i == 0) ? SpawnSetting.Boss(owner.LV) : SpawnSetting.DefenseEnemy(owner.LV))?.PlayEffect("teleport");
76 }
77 break;
78 }
79 case "knowledge":
80 {
81 Thing t2 = ThingGen.Create((EClass.rnd(3) == 0) ? "book_skill" : "book_ancient", -1, owner.LV);
82 EClass._zone.AddCard(t2, point);
83 break;
84 }
85 case "invention":
87 break;
88 case "item":
89 {
90 Thing t = ThingGen.Create("water");
91 EClass._zone.AddCard(t, point);
92 break;
93 }
94 }
95 }
BlessedState
Definition: BlessedState.cs:2
ConditionType
Definition: ConditionType.cs:2
EffectId
Definition: EffectId.cs:2
static void Proc(EffectId id, Card cc, Card tc=null, int power=100, ActRef actRef=default(ActRef))
Definition: ActEffect.cs:788
Point pos
Definition: Card.cs:55
Effect PlayEffect(string id, bool useRenderPos=true, float range=0f, Vector3 fix=default(Vector3))
Definition: Card.cs:5438
int LV
Definition: Card.cs:370
void Say(string lang, string ref1=null, string ref2=null)
Definition: Card.cs:6046
Definition: Chara.cs:10
override bool IsPC
Definition: Chara.cs:597
Party party
Definition: Chara.cs:43
List< Condition > conditions
Definition: Chara.cs:196
override int MaxHP
Definition: Chara.cs:693
Stats mana
Definition: Chara.cs:963
Stats stamina
Definition: Chara.cs:955
Definition: EClass.cs:5
static int rnd(int a)
Definition: EClass.cs:50
static Zone _zone
Definition: EClass.cs:20
static Player player
Definition: EClass.cs:12
static Chara pc
Definition: EClass.cs:14
List< Chara > members
Definition: Party.cs:18
RecipeManager recipes
Definition: Player.cs:898
Definition: Point.cs:9
Point GetNearestPoint(bool allowBlock=false, bool allowChara=true, bool allowInstalled=true, bool ignoreCenter=false)
Definition: Point.cs:595
void ComeUpWithRandomRecipe(string idCat=null, int lvBonus=0)
string id
Definition: ShrineData.cs:8
static SpawnSetting Boss(int filterLv, int fixedLv=-1)
Definition: SpawnSetting.cs:45
static SpawnSetting DefenseEnemy(int lv)
virtual void Mod(int a)
Definition: Stats.cs:135
virtual int max
Definition: Stats.cs:68
static Thing Create(string id, int idMat=-1, int lv=-1)
Definition: ThingGen.cs:53
Definition: Thing.cs:8
ShrineData Shrine
Definition: TraitShrine.cs:5
SourceMaterial.Row GetMaterial()
Definition: TraitShrine.cs:109
Card owner
Definition: Trait.cs:26
Chara SpawnMob(Point pos=null, SpawnSetting setting=null)
Definition: Zone.cs:2543
Card AddCard(Card t, Point point)
Definition: Zone.cs:1893
Definition: ActRef.cs:2

References EClass._zone, Zone.AddCard(), SpawnSetting.Boss(), RecipeManager.ComeUpWithRandomRecipe(), Chara.conditions, ThingGen.Create(), SpawnSetting.DefenseEnemy(), GetMaterial(), Point.GetNearestPoint(), ShrineData.id, Chara.IsPC, item, Card.LV, Chara.mana, Stats.max, Chara.MaxHP, Party.members, Stats.Mod(), Trait.owner, Chara.party, EClass.pc, Card.PlayEffect(), EClass.player, Card.pos, ActEffect.Proc(), Player.recipes, EClass.rnd(), Card.Say(), Shrine, Zone.SpawnMob(), and Chara.stamina.

◆ GetMaterial()

SourceMaterial.Row TraitShrine.GetMaterial ( )
inline

Definition at line 109 of file TraitShrine.cs.

110 {
111 if (mat != null)
112 {
113 return mat;
114 }
116 if (Shrine.id == "armor")
117 {
118 mat = EClass.sources.materials.alias[(EClass.rnd(5) == 0) ? "gold" : "granite"];
119 }
120 else
121 {
122 mat = MATERIAL.GetRandomMaterial(owner.LV / 3, (EClass.rnd(2) == 0) ? "metal" : "leather");
123 }
124 Rand.SetSeed();
125 return mat;
126 }
int c_seed
Definition: Card.cs:1241
static SourceManager sources
Definition: EClass.cs:42
static SourceMaterial.Row GetRandomMaterial(int lv, string group=null, bool tryLevelMatTier=false)
Definition: MATERIAL.cs:43
Definition: Rand.cs:4
static void SetSeed(int a=-1)
Definition: Rand.cs:37
SourceMaterial materials
SourceMaterial.Row mat
Definition: TraitShrine.cs:3

References MATERIAL.GetRandomMaterial(), SourceManager.materials, EClass.rnd(), Rand.SetSeed(), and EClass.sources.

Referenced by _OnUse().

◆ GetName()

override string TraitShrine.GetName ( )
inlinevirtual

Reimplemented from Trait.

Definition at line 128 of file TraitShrine.cs.

129 {
130 string @ref = "";
131 if (Shrine.id == "material")
132 {
133 @ref = GetMaterial().GetName().ToTitleCase();
134 }
135 return ("shrine_" + Shrine.id).lang(@ref);
136 }

◆ OnCreate()

override void TraitShrine.OnCreate ( int  lv)
inlinevirtual

Reimplemented from TraitPowerStatue.

Definition at line 23 of file TraitShrine.cs.

24 {
25 base.OnCreate(lv);
26 owner.refVal = EClass.gamedata.shrines.IndexOf(EClass.gamedata.shrines.RandomItemWeighted((ShrineData a) => a.chance));
27 owner.idSkin = Shrine.skin;
28 }
static GameData gamedata
Definition: EClass.cs:36
List< ShrineData > shrines
Definition: GameData.cs:7
float chance
Definition: ShrineData.cs:11

References ShrineData.chance, EClass.gamedata, Shrine, GameData.shrines, and ShrineData.skin.

◆ OnRenderExtra()

override void TraitShrine.OnRenderExtra ( RenderParam  p)
inlinevirtual

Reimplemented from Trait.

Definition at line 97 of file TraitShrine.cs.

98 {
99 PaintPosition paintPosition = EClass.setting.render.paintPos.TryGetValue("shrine");
100 int num = 1;
101 p.x += paintPosition.pos.x * (float)num;
102 p.y += paintPosition.pos.y;
103 p.z += paintPosition.pos.z;
105 p.matColor = BaseTileMap.GetColorInt(ref GetMaterial().matColor, 100);
107 }
static int GetColorInt(ref Color matColor, int p)
RenderData objs_shrine
Definition: CoreRef.cs:304
Renderers renderers
Definition: CoreRef.cs:341
CoreRef refs
Definition: Core.cs:51
static Core core
Definition: EClass.cs:6
static GameSetting setting
Definition: EClass.cs:34
UD_String_PaintPosition paintPos
Definition: GameSetting.cs:218
RenderSetting render
Definition: GameSetting.cs:301
void Draw(RenderParam p, int tile)
Definition: RenderData.cs:128
int ConvertTile(int tile)
Definition: RenderData.cs:110
bool TryGetValue(TKey key, out TValue value)
Definition: UDictionary.cs:178

References RenderData.ConvertTile(), EClass.core, RenderData.Draw(), BaseTileMap.GetColorInt(), CoreRef.Renderers.objs_shrine, GameSetting.RenderSetting.paintPos, PaintPosition.pos, Core.refs, GameSetting.render, CoreRef.renderers, EClass.setting, and UDictionary< TKey, TValue >.TryGetValue().

Member Data Documentation

◆ mat

SourceMaterial.Row TraitShrine.mat

Definition at line 3 of file TraitShrine.cs.

Property Documentation

◆ RenderExtra

override bool TraitShrine.RenderExtra
get

Definition at line 7 of file TraitShrine.cs.

8 {
9 get
10 {
11 if (owner.isOn)
12 {
13 if (!owner.IsInstalled)
14 {
15 return owner.isRoofItem;
16 }
17 return true;
18 }
19 return false;
20 }
21 }
bool isRoofItem
Definition: Card.cs:550
bool IsInstalled
Definition: Card.cs:2241
bool isOn
Definition: Card.cs:514

◆ Shrine

ShrineData TraitShrine.Shrine
get

Definition at line 5 of file TraitShrine.cs.

Referenced by _OnUse(), and OnCreate().


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