Elin Decompiled Documentation EA 23.102 Nightly
Loading...
Searching...
No Matches
Religion Class Reference
Inheritance diagram for Religion:
EClass ReligionEarth ReligionElement ReligionEyth ReligionHarmony ReligionHarvest ReligionHealing ReligionLuck ReligionMachine ReligionMinor ReligionOblivion ReligionWind

Public Types

enum  ConvertType { Default , Campaign }
 

Public Member Functions

virtual SourceElement.Row GetFeat (int i)
 
void Init ()
 
void OnLoad ()
 
void OnAdvanceDay ()
 
Sprite GetSprite ()
 
void SetTextRelation (UIText text)
 
string GetTextBenefit ()
 
string GetTextTemper (int _temper=-99999)
 
void Revelation (string idTalk, int chance=100)
 
void Talk (string idTalk, Card c=null, Card agent=null)
 
string GetGodTalk (string suffix)
 
virtual int GetOfferingMtp (Thing t)
 
int GetOfferingValue (Thing t, int num=-1)
 
bool TryGetGift ()
 
bool IsValidArtifact (string id)
 
virtual void OnBecomeBranchFaith ()
 
void JoinFaith (Chara c, ConvertType type=ConvertType.Default)
 
void LeaveFaith (Chara c, Religion newFaith, ConvertType type)
 
void Punish (Chara c)
 
void PunishTakeOver (Chara c)
 
virtual void OnJoinFaith ()
 
virtual void OnLeaveFaith ()
 
void OnChangeHour ()
 

Static Public Member Functions

static Thing Reforge (string id, Point pos=null, bool first=true)
 
- 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)
 

Public Attributes

int relation
 
int giftRank
 
int mood
 
SourceReligion.Row _source
 

Static Public Attributes

static Religion recentWrath
 
- Static Public Attributes inherited from EClass
static Core core
 

Properties

virtual string id [get]
 
virtual bool IsAvailable [get]
 
string Name [get]
 
SourceReligion.Row source [get]
 
string NameShort [get]
 
string NameDomain [get]
 
string TextType [get]
 
string TextGodGender [get]
 
string TextMood [get]
 
bool IsEyth [get]
 
bool IsEhekatl [get]
 
bool IsOpatos [get]
 
virtual bool IsMinorGod [get]
 
virtual bool CanJoin [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]
 

Detailed Description

Definition at line 5 of file Religion.cs.

Member Enumeration Documentation

◆ ConvertType

Enumerator
Default 
Campaign 

Definition at line 7 of file Religion.cs.

Member Function Documentation

◆ GetFeat()

virtual SourceElement.Row Religion.GetFeat ( int  i)
inlinevirtual

Definition at line 54 of file Religion.cs.

55 {
56 return EClass.sources.elements.alias["featGod_" + id + i];
57 }
Definition: EClass.cs:5
static SourceManager sources
Definition: EClass.cs:42
SourceElement elements

References SourceManager.elements, and EClass.sources.

◆ GetGodTalk()

string Religion.GetGodTalk ( string  suffix)
inline

Definition at line 162 of file Religion.cs.

163 {
164 return EClass.sources.dataGodTalk.GetText(id, suffix).Split(Environment.NewLine.ToCharArray()).RandomItem();
165 }
string GetText(string id, string topic="text")
Definition: ExcelData.cs:209
ExcelData dataGodTalk

References SourceManager.dataGodTalk, ExcelData.GetText(), and EClass.sources.

Referenced by DramaActor.ConvertAdv(), and Talk().

◆ GetOfferingMtp()

virtual int Religion.GetOfferingMtp ( Thing  t)
inlinevirtual

Reimplemented in ReligionMoonShadow, and ReligionTrickery.

Definition at line 167 of file Religion.cs.

168 {
169 return 0;
170 }

Referenced by GetOfferingValue().

◆ GetOfferingValue()

int Religion.GetOfferingValue ( Thing  t,
int  num = -1 
)
inline

Definition at line 172 of file Religion.cs.

173 {
174 t.CheckJustCooked();
175 if (num == -1)
176 {
177 num = t.Num;
178 }
179 int v = 0;
180 if (t.source._origin == "meat")
181 {
182 v = Mathf.Clamp(t.SelfWeight / 10, 1, 1000);
183 if (t.refCard == null)
184 {
185 v /= 10;
186 }
187 }
188 else if (GetOfferingMtp(t) > 0)
189 {
190 SetValue(t.category, GetOfferingMtp(t));
191 }
192 else
193 {
194 string[] cat_offer = source.cat_offer;
195 foreach (string key in cat_offer)
196 {
197 if (t.category.IsChildOf(key))
198 {
199 SetValue(EClass.sources.categories.map[key], 1);
200 break;
201 }
202 }
203 }
204 if (v == 0)
205 {
206 return 0;
207 }
208 if (t.IsDecayed)
209 {
210 v /= 10;
211 }
212 v = v * (100 + Mathf.Min(t.LV * 2, 100) + (t.HasElement(757) ? 50 : 0)) / 100;
213 v = Mathf.Max(v, 1) * num;
214 return v;
215 void SetValue(SourceCategory.Row cat, int mtp)
216 {
217 v = Mathf.Clamp(t.SelfWeight / 10, 50, 1000);
218 v *= cat.offer * mtp / 100;
219 }
220 }
bool IsDecayed
Definition: Card.cs:2147
CardRow refCard
Definition: Card.cs:1843
bool HasElement(int ele, int req=1)
Definition: Card.cs:5214
void CheckJustCooked()
Definition: Card.cs:5857
int Num
Definition: Card.cs:154
SourceCategory.Row category
Definition: Card.cs:1925
int LV
Definition: Card.cs:370
virtual int GetOfferingMtp(Thing t)
Definition: Religion.cs:167
SourceReligion.Row source
Definition: Religion.cs:32
SourceCategory categories
SourceThing.Row source
Definition: Thing.cs:11
override int SelfWeight
Definition: Thing.cs:62

References SourceManager.categories, Card.category, Card.CheckJustCooked(), GetOfferingMtp(), Card.HasElement(), Card.IsDecayed, Card.LV, Card.Num, Card.refCard, Thing.SelfWeight, source, Thing.source, and EClass.sources.

Referenced by TraitAltar._OnOffer(), TraitAltar.CanOffer(), and TraitAltar.OnOffer().

◆ GetSprite()

Sprite Religion.GetSprite ( )
inline

Definition at line 72 of file Religion.cs.

73 {
74 return ResourceCache.Load<Sprite>("Media/Graphics/Image/Faction/" + source.id) ?? ResourceCache.Load<Sprite>("Media/Graphics/Image/Faction/eyth");
75 }

References source.

Referenced by UIHomeInfo.RefreshInfo(), Portrait.SetChara(), and UIFactionInfo.SetReligion().

◆ GetTextBenefit()

string Religion.GetTextBenefit ( )
inline

Definition at line 93 of file Religion.cs.

94 {
95 string text = "";
96 for (int i = 0; i < source.elements.Length; i += 2)
97 {
98 if (i != 0)
99 {
100 text = text + Lang.words.comma + Lang.space;
101 }
102 text += EClass.sources.elements.map[source.elements[i]].GetName();
103 }
104 return source.GetText("textBenefit") + (IsEyth ? "" : "textBenefit".lang(text));
105 }
Definition: Lang.cs:6
static string space
Definition: Lang.cs:32
bool IsEyth
Definition: Religion.cs:44

References SourceManager.elements, IsEyth, source, EClass.sources, and Lang.space.

Referenced by DramaActor.ConvertAdv().

◆ GetTextTemper()

string Religion.GetTextTemper ( int  _temper = -99999)
inline

Definition at line 107 of file Religion.cs.

108 {
109 if (IsEyth)
110 {
111 return "-";
112 }
113 if (_temper == -99999)
114 {
115 _temper = mood;
116 }
117 string[] list = Lang.GetList("temper");
118 if (_temper <= -85)
119 {
120 return list[0].ToTitleCase().TagColor(FontColor.Bad);
121 }
122 if (_temper <= -45)
123 {
124 return list[1].ToTitleCase().TagColor(FontColor.Bad);
125 }
126 if (_temper <= -15)
127 {
128 return list[2].ToTitleCase();
129 }
130 if (_temper < 15)
131 {
132 return list[3].ToTitleCase();
133 }
134 if (_temper < 45)
135 {
136 return list[4].ToTitleCase();
137 }
138 if (_temper < 85)
139 {
140 return list[5].ToTitleCase().TagColor(FontColor.Great);
141 }
142 return list[6].ToTitleCase().TagColor(FontColor.Good);
143 }
FontColor
Definition: FontColor.cs:2
static string[] GetList(string id)
Definition: Lang.cs:114
int mood
Definition: Religion.cs:20

References Lang.GetList(), IsEyth, and mood.

Referenced by UIHomeInfo.RefreshInfo().

◆ Init()

void Religion.Init ( )
inline

Definition at line 59 of file Religion.cs.

60 {
61 relation = source.relation;
62 }
int relation
Definition: Religion.cs:14

References relation, and source.

◆ IsValidArtifact()

bool Religion.IsValidArtifact ( string  id)
inline

Definition at line 255 of file Religion.cs.

256 {
257 if (giftRank < 2)
258 {
259 return false;
260 }
261 return id switch
262 {
263 "gun_mani" => this == EClass.game.religions.Machine,
264 "cloak_mani" => this == EClass.game.religions.Machine,
265 "scythe_kumi" => this == EClass.game.religions.Harvest,
266 "blunt_earth" => this == EClass.game.religions.Earth,
267 "luckydagger" => this == EClass.game.religions.Luck,
268 "staff_element" => this == EClass.game.religions.Element,
269 "windbow" => this == EClass.game.religions.Wind,
270 "shirt_wind" => this == EClass.game.religions.Wind,
271 "pole_holy" => this == EClass.game.religions.Healing,
272 "sword_muramasa2" => this == EClass.game.religions.MoonShadow,
273 "kogitsunemaru" => this == EClass.game.religions.Trickery,
274 "warmonger" => this == EClass.game.religions.Strife,
275 _ => false,
276 };
277 }
static Game game
Definition: EClass.cs:8
ReligionManager religions
Definition: Game.cs:158
ReligionWind Wind
ReligionHarvest Harvest
ReligionMachine Machine
ReligionLuck Luck
ReligionStrife Strife
ReligionMoonShadow MoonShadow
ReligionTrickery Trickery
ReligionElement Element
ReligionEarth Earth
ReligionHealing Healing
int giftRank
Definition: Religion.cs:17

References ReligionManager.Earth, ReligionManager.Element, EClass.game, giftRank, ReligionManager.Harvest, ReligionManager.Healing, ReligionManager.Luck, ReligionManager.Machine, ReligionManager.MoonShadow, Game.religions, ReligionManager.Strife, ReligionManager.Trickery, and ReligionManager.Wind.

◆ JoinFaith()

void Religion.JoinFaith ( Chara  c,
ConvertType  type = ConvertType::Default 
)
inline

Definition at line 386 of file Religion.cs.

387 {
388 if (!c.IsPC)
389 {
390 c.faith = this;
392 EClass.Sound.Play("worship");
393 Msg.Say("changeFaith", c, Name);
394 return;
395 }
396 if (c.faith != this)
397 {
398 c.faith.LeaveFaith(c, this, type);
399 }
400 if (type != ConvertType.Campaign)
401 {
402 EClass.pc.c_daysWithGod = 0;
403 }
404 Msg.Say("worship", Name);
405 Talk("worship", c);
406 EClass.Sound.Play("worship");
407 c.PlayEffect("aura_heaven");
408 c.faith = this;
409 OnJoinFaith();
410 if (IsEyth)
411 {
412 mood = 0;
413 }
414 else
415 {
416 mood = 50;
417 }
419 if (!c.HasElement(306))
420 {
421 c.elements.Learn(306);
422 }
423 if (c.IsPC)
424 {
426 }
427 }
ElementContainerCard elements
Definition: Card.cs:37
Effect PlayEffect(string id, bool useRenderPos=true, float range=0f, Vector3 fix=default(Vector3))
Definition: Card.cs:5438
Faction faction
Definition: Chara.cs:412
override bool IsPC
Definition: Chara.cs:597
void RefreshFaithElement()
Definition: Chara.cs:9166
Religion faith
Definition: Chara.cs:424
static Chara pc
Definition: EClass.cs:14
static SoundManager Sound
Definition: EClass.cs:46
void Learn(int ele, int v=1)
ElementContainerFaction charaElements
Definition: FACTION.cs:144
Definition: Msg.cs:5
static string Say(string idLang, string ref1, string ref2=null, string ref3=null, string ref4=null)
Definition: Msg.cs:58
string Name
Definition: Religion.cs:30
virtual void OnJoinFaith()
Definition: Religion.cs:529
ConvertType
Definition: Religion.cs:8
void LeaveFaith(Chara c, Religion newFaith, ConvertType type)
Definition: Religion.cs:429
void Talk(string idTalk, Card c=null, Card agent=null)
Definition: Religion.cs:153

References Faction.charaElements, Card.elements, Chara.faction, Chara.faith, Card.HasElement(), IsEyth, Chara.IsPC, ElementContainer.Learn(), LeaveFaith(), mood, Name, ElementContainerFaction.OnJoinFaith(), OnJoinFaith(), EClass.pc, Card.PlayEffect(), Chara.RefreshFaithElement(), Msg.Say(), EClass.Sound, and Talk().

Referenced by DramaOutcome.convert_Jure(), and DramaManager.ParseLine().

◆ LeaveFaith()

void Religion.LeaveFaith ( Chara  c,
Religion  newFaith,
ConvertType  type 
)
inline

Definition at line 429 of file Religion.cs.

430 {
431 if (IsEyth)
432 {
433 return;
434 }
435 bool flag = (newFaith == EClass.game.religions.Trickery && this == EClass.game.religions.MoonShadow) || (newFaith == EClass.game.religions.MoonShadow && this == EClass.game.religions.Trickery);
436 if (c.IsPC)
437 {
438 Msg.Say("worship2");
439 if (!flag && type != ConvertType.Campaign)
440 {
441 Punish(c);
442 }
443 }
444 if (flag)
445 {
446 Talk("regards");
447 c.elements.SetBase(85, c.Evalue(85) / 2);
448 }
449 else
450 {
451 c.elements.SetBase(85, 0);
452 }
453 if (c.IsPC)
454 {
456 }
457 OnLeaveFaith();
459 }
int Evalue(int ele)
Definition: Card.cs:2431
Element SetBase(string alias, int v, int potential=0)
virtual void OnLeaveFaith()
Definition: Religion.cs:533

References Faction.charaElements, Card.elements, Card.Evalue(), Chara.faction, EClass.game, IsEyth, Chara.IsPC, ReligionManager.MoonShadow, ElementContainerFaction.OnLeaveFaith(), OnLeaveFaith(), EClass.pc, Punish, Chara.RefreshFaithElement(), Game.religions, Msg.Say(), ElementContainer.SetBase(), Talk(), and ReligionManager.Trickery.

Referenced by JoinFaith().

◆ OnAdvanceDay()

void Religion.OnAdvanceDay ( )
inline

Definition at line 68 of file Religion.cs.

69 {
70 }

◆ OnBecomeBranchFaith()

virtual void Religion.OnBecomeBranchFaith ( )
inlinevirtual

Reimplemented in ReligionEarth, ReligionHealing, and ReligionLuck.

Definition at line 382 of file Religion.cs.

383 {
384 }

◆ OnChangeHour()

void Religion.OnChangeHour ( )
inline

Definition at line 537 of file Religion.cs.

538 {
539 if (IsEyth)
540 {
541 mood = 0;
542 }
543 else
544 {
545 mood = EClass.rnd(200) - 100;
546 }
547 }
static int rnd(int a)
Definition: EClass.cs:50

References IsEyth, mood, and EClass.rnd().

Referenced by Player.OnAdvanceHour().

◆ OnJoinFaith()

virtual void Religion.OnJoinFaith ( )
inlinevirtual

Definition at line 529 of file Religion.cs.

530 {
531 }

Referenced by JoinFaith().

◆ OnLeaveFaith()

virtual void Religion.OnLeaveFaith ( )
inlinevirtual

Definition at line 533 of file Religion.cs.

534 {
535 }

Referenced by LeaveFaith().

◆ OnLoad()

void Religion.OnLoad ( )
inline

Definition at line 64 of file Religion.cs.

65 {
66 }

Referenced by ReligionManager.OnLoad().

◆ Punish()

void Religion.Punish ( Chara  c)
inline

Definition at line 461 of file Religion.cs.

462 {
463 Talk("wrath");
464 if (c.Evalue(1228) > 0)
465 {
467 return;
468 }
469 c.hp = 1;
470 c.mana.value = 1;
471 c.stamina.value = 1;
472 if (c.HasCondition<ConWrath>())
473 {
474 recentWrath = this;
475 c.DamageHP(999999, AttackSource.Wrath);
476 recentWrath = null;
477 return;
478 }
479 Thing thing = ThingGen.Create("punish_ball");
480 int num = 0;
482 {
483 if (item.giftRank > 0)
484 {
485 num++;
486 }
487 }
488 if (num >= 4)
489 {
490 thing.idSkin = 1;
491 }
492 thing.ChangeWeight(EClass.pc.WeightLimit / 4 + 1000);
493 c.AddThing(thing);
494 c.AddCondition<ConWrath>(2000 + (c.IsPC ? (EClass.pc.c_daysWithGod * 20) : 0));
495 }
AttackSource
Definition: AttackSource.cs:2
void DamageHP(int dmg, AttackSource attackSource=AttackSource.None, Card origin=null)
Definition: Card.cs:3735
Thing AddThing(string id, int lv=-1)
Definition: Card.cs:2901
void ChangeWeight(int a)
Definition: Card.cs:2424
void SayNothingHappans()
Definition: Card.cs:6041
Condition AddCondition(string id, int p=100, bool force=false)
Definition: Chara.cs:8415
bool HasCondition(string alias)
Definition: Chara.cs:8568
override int WeightLimit
Definition: Chara.cs:695
List< Religion > list
static Religion recentWrath
Definition: Religion.cs:22
static Thing Create(string id, int idMat=-1, int lv=-1)
Definition: ThingGen.cs:53
Definition: Thing.cs:8

References Card.ChangeWeight(), ThingGen.Create(), Card.DamageHP(), Card.Evalue(), EClass.game, Chara.HasCondition(), item, ReligionManager.list, EClass.pc, recentWrath, Game.religions, Card.SayNothingHappans(), Talk(), and Chara.WeightLimit.

◆ PunishTakeOver()

void Religion.PunishTakeOver ( Chara  c)
inline

Definition at line 497 of file Religion.cs.

498 {
499 Talk("takeoverFail");
500 if (c.Evalue(1228) > 0)
501 {
503 return;
504 }
505 c.hp /= 2;
506 if (c.mana.value > 0)
507 {
508 c.mana.value = c.mana.value / 2;
509 }
510 if (c.stamina.value > 0)
511 {
512 c.stamina.value = c.stamina.value / 2;
513 }
514 if (c.HasCondition<ConWrath>())
515 {
516 recentWrath = this;
517 c.DamageHP(999999, AttackSource.Wrath);
518 recentWrath = null;
519 return;
520 }
521 Thing thing = ThingGen.Create("punish_ball");
522 thing.c_weight = EClass.pc.WeightLimit / 4 + 1000;
523 thing.isWeightChanged = true;
524 thing.SetDirtyWeight();
525 c.AddThing(thing);
526 c.AddCondition<ConWrath>(200);
527 }
void SetDirtyWeight()
Definition: Card.cs:2414
Stats mana
Definition: Chara.cs:963
Stats stamina
Definition: Chara.cs:955
virtual int value
Definition: Stats.cs:56

References Chara.AddCondition(), Card.AddThing(), ThingGen.Create(), Card.DamageHP(), Card.Evalue(), Chara.HasCondition(), Chara.mana, recentWrath, Card.SayNothingHappans(), Card.SetDirtyWeight(), Chara.stamina, Talk(), and Stats.value.

Referenced by TraitAltar.OnOffer().

◆ Reforge()

static Thing Religion.Reforge ( string  id,
Point  pos = null,
bool  first = true 
)
inlinestatic

Definition at line 279 of file Religion.cs.

280 {
281 if (pos == null)
282 {
283 pos = EClass.pc.pos.Copy();
284 }
285 pos.Set(pos.GetNearestPoint(allowBlock: false, allowChara: false, allowInstalled: false, ignoreCenter: true) ?? pos);
286 Thing thing = ThingGen.Create(id);
287 foreach (Element value in thing.elements.dict.Values)
288 {
289 if (value.id == 66 || value.id == 67 || value.id == 64 || value.id == 65 || value.id == 92)
290 {
291 continue;
292 }
293 switch (id)
294 {
295 case "gun_mani":
296 thing.c_idDeity = EClass.game.religions.Machine.id;
297 break;
298 case "cloak_mani":
299 if (value.id == 427 || value.id == 957 || value.id == 105 || value.id == 466 || value.id == 664)
300 {
301 value.vExp = -1;
302 }
303 thing.c_idDeity = EClass.game.religions.Machine.id;
304 break;
305 case "scythe_kumi":
306 if (value.id == 6650 || value.id == 480 || value.id == 959 || value.id == 428 || value.id == 640 || value.id == 665)
307 {
308 value.vExp = -1;
309 }
310 thing.c_idDeity = EClass.game.religions.Harvest.id;
311 break;
312 case "blunt_earth":
313 if (value.id == 70 || value.id == 55 || value.id == 56 || value.id == 954 || value.id == 423 || value.id == 421)
314 {
315 value.vExp = -1;
316 }
317 thing.c_idDeity = EClass.game.religions.Earth.id;
318 break;
319 case "luckydagger":
320 if (value.id != 426)
321 {
322 value.vExp = -1;
323 }
324 thing.c_idDeity = EClass.game.religions.Luck.id;
325 break;
326 case "staff_element":
327 if (value.id == 411 || (value is Resistance && value.id != 959))
328 {
329 value.vExp = -1;
330 }
331 thing.c_idDeity = EClass.game.religions.Element.id;
332 break;
333 case "windbow":
334 thing.c_idDeity = EClass.game.religions.Wind.id;
335 break;
336 case "shirt_wind":
337 if (!(value is Resistance) && value.id != 226 && value.id != 152 && value.id != 77)
338 {
339 value.vExp = -1;
340 }
341 thing.c_idDeity = EClass.game.religions.Wind.id;
342 break;
343 case "pole_holy":
344 if (value.id == 60 || value.id == 461 || value.id == 423)
345 {
346 value.vExp = -1;
347 }
348 thing.c_idDeity = EClass.game.religions.Healing.id;
349 break;
350 case "sword_muramasa2":
351 if (value.id == 401 || value.id == 916 || value.id == 661)
352 {
353 value.vExp = -1;
354 }
355 thing.c_idDeity = EClass.game.religions.MoonShadow.id;
356 break;
357 case "kogitsunemaru":
358 if (value.id != 656)
359 {
360 value.vExp = -1;
361 }
362 thing.c_idDeity = EClass.game.religions.Trickery.id;
363 break;
364 case "warmonger":
365 if (value.id == 468 || value.id == 423 || value.id == 463 || value.id == 460 || value.id == 464 || value.id == 465)
366 {
367 value.vExp = -1;
368 }
369 thing.c_idDeity = EClass.game.religions.Strife.id;
370 break;
371 }
372 }
373 EClass._zone.AddCard(thing, pos);
374 pos.PlayEffect("aura_heaven");
375 if (first)
376 {
377 pos.PlaySound("godbless");
378 }
379 return thing;
380 }
Point pos
Definition: Card.cs:55
static Zone _zone
Definition: EClass.cs:20
Dictionary< int, Element > dict
int id
Definition: ELEMENT.cs:240
Point Copy()
Definition: Point.cs:467
Point Set(int _x, int _z)
Definition: Point.cs:479
Point GetNearestPoint(bool allowBlock=false, bool allowChara=true, bool allowInstalled=true, bool ignoreCenter=false)
Definition: Point.cs:595
override string id
Definition: ReligionEarth.cs:3
override string id
override string id
override string id
override string id
Definition: ReligionLuck.cs:3
override string id
override string id
override string id
override string id
override string id
Definition: ReligionWind.cs:3
Card AddCard(Card t, Point point)
Definition: Zone.cs:1893

References EClass._zone, Zone.AddCard(), Point.Copy(), ThingGen.Create(), ReligionManager.Earth, ReligionManager.Element, EClass.game, ReligionManager.Harvest, ReligionManager.Healing, Element.id, ReligionEarth.id, ReligionElement.id, ReligionHarvest.id, ReligionHealing.id, ReligionLuck.id, ReligionMachine.id, ReligionMoonShadow.id, ReligionStrife.id, ReligionTrickery.id, ReligionWind.id, ReligionManager.Luck, ReligionManager.Machine, ReligionManager.MoonShadow, EClass.pc, Card.PlayEffect(), Card.pos, Game.religions, Point.Set(), ReligionManager.Strife, ReligionManager.Trickery, and ReligionManager.Wind.

Referenced by TraitAltar.OnOffer(), and TryGetGift().

◆ Revelation()

void Religion.Revelation ( string  idTalk,
int  chance = 100 
)
inline

Definition at line 145 of file Religion.cs.

146 {
147 if (!IsEyth && EClass.rnd(100) <= chance)
148 {
149 Talk(idTalk, EClass.pc);
150 }
151 }

References IsEyth, EClass.pc, EClass.rnd(), and Talk().

Referenced by Chara.Die(), Scene.Init(), ActPray.Pray(), and LayerSleep.Sleep().

◆ SetTextRelation()

void Religion.SetTextRelation ( UIText  text)
inline

Definition at line 77 of file Religion.cs.

78 {
79 if (relation > 100)
80 {
81 text.SetText("reFriend".lang(), FontColor.Good);
82 }
83 else if (relation < -100)
84 {
85 text.SetText("reEnemy".lang(), FontColor.Bad);
86 }
87 else
88 {
89 text.SetText("reNone".lang(), FontColor.Passive);
90 }
91 }
void SetText(string s)
Definition: UIText.cs:159

References relation, and UIText.SetText().

Referenced by ContentFaction.RefreshFactions().

◆ Talk()

void Religion.Talk ( string  idTalk,
Card  c = null,
Card  agent = null 
)
inline

Definition at line 153 of file Religion.cs.

154 {
155 if (!IsEyth)
156 {
158 Msg.Say("<i>" + GetGodTalk(idTalk) + " </i>", c ?? EClass.pc);
159 }
160 }
Color TalkGod
Definition: MsgColors.cs:9
static MsgColors colors
Definition: Msg.cs:20
static void SetColor()
Definition: Msg.cs:22
string GetGodTalk(string suffix)
Definition: Religion.cs:162

References Msg.colors, GetGodTalk(), IsEyth, EClass.pc, Msg.Say(), Msg.SetColor(), and MsgColors.TalkGod.

Referenced by TraitAltar._OnOffer(), TraitGodStatue._OnUse(), JoinFaith(), LeaveFaith(), ActEffect.Proc(), Punish(), PunishTakeOver(), Revelation(), TraitAltar.TakeOver(), CoreDebug.Test_GodTalk(), and TryGetGift().

◆ TryGetGift()

bool Religion.TryGetGift ( )
inline

Definition at line 222 of file Religion.cs.

223 {
224 if (IsEyth || source.rewards.Length == 0)
225 {
226 return false;
227 }
228 Point point = EClass.pc.pos.GetNearestPoint(allowBlock: false, allowChara: false, allowInstalled: false) ?? EClass.pc.pos;
229 int num = EClass.pc.Evalue(85);
230 if (giftRank == 0 && (num >= 15 || EClass.debug.enable))
231 {
232 Talk("pet");
233 Chara chara = CharaGen.Create(source.rewards[0]);
234 EClass._zone.AddCard(chara, point);
235 chara.MakeAlly();
236 chara.PlayEffect("aura_heaven");
237 giftRank = 1;
238 return true;
239 }
240 if (source.rewards.Length >= 2 && giftRank == 1 && (num >= 30 || EClass.debug.enable))
241 {
242 Talk("gift");
243 string[] array = source.rewards[1].Split('|');
244 string[] array2 = array;
245 foreach (string text in array2)
246 {
247 Reforge(text, point, text == array[0]);
248 }
249 giftRank = 2;
250 return true;
251 }
252 return false;
253 }
static Chara Create(string id, int lv=-1)
Definition: CharaGen.cs:17
Definition: Chara.cs:10
void MakeAlly(bool msg=true)
Definition: Chara.cs:2004
bool enable
Definition: CoreDebug.cs:285
static CoreDebug debug
Definition: EClass.cs:48
Definition: Point.cs:9
static Thing Reforge(string id, Point pos=null, bool first=true)
Definition: Religion.cs:279

References EClass._zone, Zone.AddCard(), CharaGen.Create(), EClass.debug, CoreDebug.enable, Card.Evalue(), Point.GetNearestPoint(), giftRank, IsEyth, Chara.MakeAlly(), EClass.pc, Card.PlayEffect(), Card.pos, Reforge(), source, and Talk().

Member Data Documentation

◆ _source

SourceReligion.Row Religion._source

Definition at line 24 of file Religion.cs.

◆ giftRank

int Religion.giftRank

Definition at line 17 of file Religion.cs.

Referenced by IsValidArtifact(), and TryGetGift().

◆ mood

int Religion.mood

Definition at line 20 of file Religion.cs.

Referenced by GetTextTemper(), JoinFaith(), and OnChangeHour().

◆ recentWrath

Religion Religion.recentWrath
static

Definition at line 22 of file Religion.cs.

Referenced by Card.DamageHP(), Chara.Die(), Punish(), and PunishTakeOver().

◆ relation

int Religion.relation

Definition at line 14 of file Religion.cs.

Referenced by Init(), UIFactionInfo.SetReligion(), and SetTextRelation().

Property Documentation

◆ CanJoin

virtual bool Religion.CanJoin
get

Definition at line 52 of file Religion.cs.

Referenced by ReligionManager.GetRandomReligion(), and TraitAltar.TrySetAct().

◆ id

◆ IsAvailable

virtual bool Religion.IsAvailable
get

Definition at line 28 of file Religion.cs.

Referenced by LayerFaith.AddReligion().

◆ IsEhekatl

bool Religion.IsEhekatl
get

Definition at line 46 of file Religion.cs.

◆ IsEyth

◆ IsMinorGod

virtual bool Religion.IsMinorGod
get

◆ IsOpatos

bool Religion.IsOpatos
get

Definition at line 48 of file Religion.cs.

◆ Name

◆ NameDomain

string Religion.NameDomain
get

Definition at line 36 of file Religion.cs.

◆ NameShort

string Religion.NameShort
get

Definition at line 34 of file Religion.cs.

Referenced by Chara.Die().

◆ source

◆ TextGodGender

string Religion.TextGodGender
get

Definition at line 40 of file Religion.cs.

Referenced by TraitAltar._OnOffer(), and TraitAltar.OnOffer().

◆ TextMood

string Religion.TextMood
get

Definition at line 42 of file Religion.cs.

Referenced by WidgetStatsBar.Build().

◆ TextType

string Religion.TextType
get

Definition at line 38 of file Religion.cs.

Referenced by ContentFaction.RefreshFactions().


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