Elin Decompiled Documentation EA 23.253 Nightly
Loading...
Searching...
No Matches
CardRenderer.cs
Go to the documentation of this file.
1using System;
2using System.Collections.Generic;
3using UnityEngine;
4
6{
7 public TCOrbit orbit;
8
9 public Card owner;
10
12
13 public bool hasActor;
14
15 public bool hasText;
16
17 public bool isChara;
18
19 public bool skip;
20
21 public Vector3 position;
22
24
25 public List<TC> listTC = new List<TC>();
26
28
30
31 public virtual bool IsMoving => false;
32
33 public Vector3 PositionCenter()
34 {
35 return new Vector3(position.x + data.size.x + data.offset.x * 0.5f, position.y + data.size.y + data.offset.y, position.z);
36 }
37
38 public virtual void SetOwner(Card c)
39 {
40 owner = c;
42 {
43 data = EClass.sources.blocks.map[owner.refVal].renderData;
44 }
45 else if (data == null)
46 {
48 }
49 isChara = c.isChara;
50 usePass = data.pass != null;
51 }
52
53 public override void Draw(RenderParam p)
54 {
55 Vector3 v = p.NewVector3;
56 Draw(p, ref v, drawShadow: true);
57 }
58
59 public override void RenderToRenderCam(RenderParam p)
60 {
61 Vector3 v = EClass.scene.camSupport.renderPos;
62 if (data.multiSize)
63 {
64 v.y -= 0.8f;
65 }
66 p.x = v.x;
67 p.y = v.y;
68 p.z = v.z;
69 Draw(p, ref v, drawShadow: false);
70 }
71
72 public void ShowBossText()
73 {
75 {
76 return;
77 }
78 SplashText splashText = Util.Instantiate<SplashText>("Media/Text/SplashText_boss2", EClass.ui.rectDynamic);
79 string text = owner.Chara.Aka.ToTitleCase(wholeText: true);
80 string text2 = owner.Chara.NameSimple.ToTitleCase();
81 if (!Lang.isBuiltin && Lang.langCode != "CN")
82 {
83 text = owner.Chara.source.aka.ToTitleCase(wholeText: true);
84 text2 = owner.Chara.source.name.ToTitleCase();
85 }
86 splashText.textSmall.text = text;
87 splashText.textBig.text = text2;
88 owner.Chara.bossText = false;
89 string id = owner.id;
90 if (!(id == "ungaga_pap"))
91 {
92 if (!(id == "lurie_boss"))
93 {
94 return;
95 }
97 {
98 if (EClass._map.plDay.list.Count > 0 && EClass._map.plDay.list[0].data.id != 107)
99 {
100 EClass._zone.SetBGM(107);
101 }
102 if (EClass.game.quests.GetPhase<QuestNegotiationDarkness>() == 2)
103 {
105 }
106 }
107 owner.PlaySound("warcry");
108 }
109 else if (EClass._zone is Zone_DungeonMino)
110 {
111 EClass._zone.SetBGM(107);
112 }
113 }
114
115 public override void Draw(RenderParam p, ref Vector3 v, bool drawShadow)
116 {
117 if (skip)
118 {
119 skip = false;
120 return;
121 }
123 RenderObject.currentParam = p;
124 p.dir = owner.dir;
125 if (!isSynced)
126 {
128 RenderObject.syncList.Add(this);
129 }
130 if ((bool)orbit)
131 {
132 orbit.Refresh();
133 }
134 else
135 {
137 }
139 {
141 {
142 ShowBossText();
143 }
144 if (owner.Chara.host == null)
145 {
146 UpdatePosition(ref v, p);
147 }
148 if (owner.Chara.ai is AI_Trolley { IsRunning: not false } aI_Trolley)
149 {
150 drawShadow = false;
151 if (aI_Trolley.trolley.HideChara)
152 {
153 if (hasActor)
154 {
155 actor.SetActive(enable: false);
156 }
157 return;
158 }
159 }
160 if (hasActor)
161 {
162 actor.SetActive(enable: true);
163 }
164 }
165 else
166 {
167 p.x = (position.x = v.x);
168 p.y = (position.y = v.y);
169 p.z = (position.z = v.z);
170 }
171 if (anime != null)
172 {
173 anime.Update();
174 }
176 {
177 SubPassData.Current = SubPassData.Default;
179 p.tile = rendererObjDummy.tile;
180 p.dir = 0;
181 if (hasActor)
182 {
183 actor.SetActive(enable: false);
184 }
185 rendererObjDummy.Draw(p);
186 if (drawShadow && !owner.pos.cell.ignoreObjShadow)
187 {
188 EClass.scene.screenElin.tileMap.passShadow.AddShadow(position.x + rendererObjDummy.offsetShadow.x, position.y + rendererObjDummy.offsetShadow.y + p.shadowFix, position.z + rendererObjDummy.offsetShadow.z, ShadowData.Instance.items[rendererObjDummy.shadowPref.shadow], rendererObjDummy.shadowPref, 0, p.snow);
189 }
190 }
191 else
192 {
193 SubPassData.Current = owner.GetSubPassData();
194 SourcePref pref = GetPref();
195 RenderData renderData = data;
196 int prefIndex = owner.PrefIndex;
197 if (Player.seedHallucination != 0 && CanBeHallucinated())
198 {
200 CardRow cardRow = null;
201 bool flag = false;
202 for (int i = 0; i < 20; i++)
203 {
204 if (owner.isChara)
205 {
206 cardRow = EClass.sources.charas.rows.RandomItem();
207 if (cardRow.multisize)
208 {
209 continue;
210 }
211 }
212 else
213 {
214 cardRow = EClass.sources.things.rows.RandomItem();
215 if (cardRow.tileType != owner.TileType)
216 {
217 continue;
218 }
219 }
220 if (cardRow.chance != 0 && cardRow._tiles.Length != 0 && cardRow.idActor.IsEmpty() && cardRow.idExtra.IsEmpty() && SubPassData.Current == SubPassData.Default && !(cardRow._idRenderData != owner.sourceCard._idRenderData))
221 {
222 flag = true;
223 break;
224 }
225 }
226 if (flag)
227 {
228 renderData = cardRow.renderData;
229 pref = cardRow.pref;
230 cardRow.model.dir = owner.dir;
231 cardRow.model.SetRenderParam(p);
232 prefIndex = cardRow.model.PrefIndex;
233 }
234 Rand.SetSeed();
235 }
236 if (owner.trait is TraitFigure)
237 {
239 {
240 TraitFigure traitFigure = owner.trait as TraitFigure;
241 SourceChara.Row row = EClass.sources.charas.map.TryGetValue(owner.c_idRefCard) ?? EClass.sources.charas.map["putty"];
242 renderData = row.renderData;
243 pref = row.pref;
244 if (row._tiles.Length == 0 || data.pass == null)
245 {
246 renderData = owner.sourceCard.renderData;
247 pref = owner.sourceCard.pref;
248 }
249 else
250 {
252 {
253 owner.refVal = row.skinAntiSpider;
254 }
255 p.tile = row._tiles[owner.refVal % row._tiles.Length] * ((owner.dir % 2 == 0) ? 1 : (-1));
256 p.matColor = traitFigure.GetMatColor();
257 drawShadow = traitFigure.ShowShadow;
258 pref = row.pref;
259 }
260 p.x += pref.x * (float)((owner.dir % 2 == 0) ? 1 : (-1));
261 p.y += pref.y;
262 p.z += pref.z;
264 {
265 drawShadow = false;
266 }
267 }
268 else
269 {
270 renderData = owner.sourceCard.renderData;
271 }
272 }
273 if (replacer != null)
274 {
275 renderData = replacer.data;
276 pref = replacer.pref;
277 SubPassData.Current = SubPassData.Default;
278 }
279 if (isChara)
280 {
281 p.x += pref.x * (float)((!owner.flipX) ? 1 : (-1));
282 p.z += pref.z;
283 }
284 p.y += pref.y;
285 int shadow = pref.shadow;
286 bool flag2 = isChara && owner.isHidden && !EClass.pc.canSeeInvisible && (!EClass.pc.hasTelepathy || !owner.Chara.visibleWithTelepathy);
287 if (drawShadow && shadow != 1 && SubPassData.Current.shadow && (!flag2 || owner.IsPC))
288 {
289 bool flag3 = ((!isChara) ? (owner.dir % 2 == 1) : (owner.dir == 1 || owner.dir == 2));
290 EClass.scene.screenElin.tileMap.passShadow.AddShadow(position.x + (flag3 ? (-1f) : 1f) * renderData.offsetShadow.x, position.y + renderData.offsetShadow.y + (owner.TileType.UseMountHeight ? 0f : p.shadowFix) - (owner.isChara ? 0f : (RenderObject.altitudeFix * (float)owner.altitude)), position.z + renderData.offsetShadow.z, ShadowData.Instance.items[shadow], pref, prefIndex, p.snow);
291 }
292 if (usePass)
293 {
294 if (owner.noSnow)
295 {
296 p.snow = false;
297 }
298 if (!flag2)
299 {
300 renderData.Draw(p);
301 }
302 }
303 else if (hasActor)
304 {
306 {
307 Chara ride = owner.Chara.ride;
308 CharaActorPCC charaActorPCC = ride.renderer.actor as CharaActorPCC;
309 CharaActorPCC charaActorPCC2 = actor as CharaActorPCC;
310 ride.angle = owner.angle;
311 if (charaActorPCC != null && charaActorPCC2 != null)
312 {
313 charaActorPCC.provider.currentDir = charaActorPCC2.provider.currentDir;
314 charaActorPCC.provider.currentFrame = charaActorPCC2.provider.currentFrame;
315 charaActorPCC.provider.SetSpriteMain();
316 charaActorPCC.RefreshSprite();
317 }
318 PCCData.RideData ride2 = (ride.renderer as CharaRenderer).pccData.ride;
319 float x = p.x;
320 float y = p.y;
321 float z = p.z;
322 Vector3 v2 = new Vector3(v.x, v.y, v.z);
323 ride.renderer.Draw(p, ref v2, drawShadow: false);
324 int currentDir = actor.currentDir;
325 p.x = x + RenderObject.renderSetting.ridePos[currentDir].x + ride2.x * (float)(currentDir switch
326 {
327 2 => -1,
328 1 => 1,
329 _ => 0,
330 });
331 p.y = y + RenderObject.renderSetting.ridePos[currentDir].y + ride2.y + ride2.jump * (float)((actor.GetFrame() % 2 == 1) ? 1 : 0);
332 p.z = z + RenderObject.renderSetting.ridePos[currentDir].z - ride2.z;
333 }
334 if (flag2)
335 {
336 actor.SetActive(enable: false);
337 }
338 else
339 {
340 actor.SetActive(enable: true);
341 actor.OnRender(p);
342 }
343 }
344 if (isChara)
345 {
346 if (owner.Chara.parasite != null)
347 {
348 owner.Chara.parasite.renderer.position = position;
349 }
350 if (owner.Chara.ride != null)
351 {
352 owner.Chara.ride.renderer.position = position;
353 }
354 }
355 SubPassData.Current = SubPassData.Default;
356 }
357 if (listTC.Count > 0)
358 {
359 RenderObject.tempV = position;
360 RenderObject.tempV.y += data.offset.y + data.size.y;
361 for (int num = listTC.Count - 1; num >= 0; num--)
362 {
363 listTC[num].OnDraw(ref RenderObject.tempV);
364 }
365 }
367 {
369 }
370 bool CanBeHallucinated()
371 {
373 {
374 return false;
375 }
376 if (owner.isThing)
377 {
379 {
380 return false;
381 }
382 if (listTC.Count > 0)
383 {
384 return false;
385 }
386 }
387 return true;
388 }
389 }
390
391 public virtual void UpdatePosition(ref Vector3 destPos, RenderParam p)
392 {
393 }
394
395 public virtual void DrawHeld()
396 {
397 }
398
399 public void RefreshSprite()
400 {
401 if (hasActor)
402 {
404 }
405 }
406
407 public override void OnEnterScreen()
408 {
409 if (isSynced)
410 {
411 Debug.LogError("renderer alraedy synced:" + owner);
412 }
413 isSynced = true;
414 if (!usePass)
415 {
416 if (!hasActor)
417 {
419 if (actor == null)
420 {
421 if (owner.sourceCard.idActor.IsEmpty())
422 {
423 actor = PoolManager.Spawn(Resources.Load<CardActor>("Scene/Render/Actor/" + (owner.isChara ? "CharaActor" : "ThingActor")));
424 }
425 else
426 {
427 actor = PoolManager.Spawn(Resources.Load<CardActor>("Scene/Render/Actor/" + owner.sourceCard.idActor[0]));
428 }
429 }
430 hasActor = true;
431 }
433 }
435 RefreshExtra();
436 if (owner.isCensored)
437 {
438 SetCensored(enable: true);
439 }
441 }
442
443 public void AddExtra(string id)
444 {
445 if (GetTC(id) == null)
446 {
447 TC tC = AddTC<TC>(PoolManager.Spawn<TC>("tcExtra_" + id, "Scene/Render/Actor/Component/Extra/" + id));
448 if (tC.isUI)
449 {
450 tC.transform.SetParent(EClass.ui.rectDynamic, worldPositionStays: false);
451 }
452 tC.name = id;
453 }
454 }
455
456 public void RefreshExtra()
457 {
458 string idExtra = owner.sourceCard.idExtra;
459 if (!idExtra.IsEmpty() && (owner.placeState != 0 || EClass.pc.held == owner || owner.isRoofItem))
460 {
461 AddExtra(idExtra);
462 }
463 if (isChara && owner.rarity >= Rarity.Legendary && owner.rarity != Rarity.Artifact && !owner.Chara.IsHomeMember())
464 {
465 if (owner.c_bossType == BossType.Evolved)
466 {
467 AddExtra("c_unique_evolved");
468 }
469 else
470 {
471 AddExtra("c_unique");
472 }
473 }
474 }
475
476 public void RemoveExtra(string id)
477 {
478 TC tC = GetTC(id);
479 if (tC != null)
480 {
481 RemoveTC(tC);
482 }
483 }
484
485 public override void OnLeaveScreen()
486 {
487 isSynced = false;
489 {
490 KillActor();
491 }
492 for (int num = listTC.Count - 1; num >= 0; num--)
493 {
494 RemoveTC(num);
495 }
496 if (hasText)
497 {
499 }
500 if ((bool)orbit)
501 {
503 orbit = null;
504 }
505 }
506
507 public void KillActor()
508 {
509 actor.Kill();
510 hasActor = false;
511 actor = null;
512 }
513
514 public void PlayAnime(AnimeID id, bool force)
515 {
516 PlayAnime(id, default(Vector3), force);
517 }
518
519 public void PlayAnime(AnimeID id, Card dest)
520 {
521 PlayAnime(id, (dest.renderer.position - position).normalized);
522 }
523
524 public void PlayAnime(AnimeID id, Point dest)
525 {
526 PlayAnime(id, (dest.PositionAuto() - position).normalized);
527 }
528
529 public void PlayAnime(AnimeID id, Vector3 dest = default(Vector3), bool force = false)
530 {
531 if (!force && owner.parent is Zone && (!owner.pos.IsValid || !owner.pos.IsSync))
532 {
533 return;
534 }
535 TransAnimeData transAnimeData = ResourceCache.Load<TransAnimeData>("Scene/Render/Anime/" + id);
536 if (transAnimeData == null)
537 {
538 anime = null;
539 return;
540 }
541 anime = new TransAnime
542 {
543 data = transAnimeData,
544 renderer = this
545 }.Init();
546 if (id == AnimeID.Attack || (uint)(id - 18) <= 1u)
547 {
548 anime.dest = dest;
549 }
550 }
551
552 public virtual void KillAnime()
553 {
554 anime = null;
555 }
556
557 public virtual void IdleFrame()
558 {
559 if (hasActor)
560 {
562 }
563 }
564
565 public virtual void NextFrame()
566 {
567 if (hasActor)
568 {
570 }
571 }
572
573 public virtual void NextDir()
574 {
575 if (hasActor)
576 {
577 actor.NextDir();
578 }
579 }
580
581 public T AddTC<T>(TC tc) where T : TC
582 {
583 listTC.Add(tc);
584 tc.SetOwner(this);
585 return tc as T;
586 }
587
588 public T GetTC<T>() where T : TC
589 {
590 if (listTC.Count == 0)
591 {
592 return null;
593 }
594 for (int num = listTC.Count - 1; num >= 0; num--)
595 {
596 if (listTC[num] is T)
597 {
598 return listTC[num] as T;
599 }
600 }
601 return null;
602 }
603
604 public TC GetTC(string id)
605 {
606 if (listTC.Count == 0)
607 {
608 return null;
609 }
610 for (int num = listTC.Count - 1; num >= 0; num--)
611 {
612 if (listTC[num].name == id)
613 {
614 return listTC[num];
615 }
616 }
617 return null;
618 }
619
620 public T GetOrCreateTC<T>(Func<T> func) where T : TC
621 {
622 return GetTC<T>() ?? AddTC<T>(func());
623 }
624
625 public void RemoveTC<T>() where T : TC
626 {
627 if (listTC.Count == 0)
628 {
629 return;
630 }
631 for (int num = listTC.Count - 1; num >= 0; num--)
632 {
633 if (listTC[num] is T)
634 {
635 listTC[num].Kill();
636 listTC.RemoveAt(num);
637 break;
638 }
639 }
640 }
641
642 public void RemoveTC(TC tc)
643 {
644 RemoveTC(listTC.IndexOf(tc));
645 }
646
647 public void RemoveTC(int index)
648 {
649 if (index != -1)
650 {
651 listTC[index].Kill();
652 listTC.RemoveAt(index);
653 }
654 }
655
656 public void TrySpawnOrbit()
657 {
658 if (owner.isChara)
659 {
660 string text = (owner.IsPC ? "tcOrbitPC" : "tcOrbitChara");
661 orbit = PoolManager.Spawn<TCOrbitChara>(text, "Scene/Render/Actor/Component/" + text);
662 orbit.SetOwner(this);
663 }
664 else if (owner.trait.ShowOrbit)
665 {
666 string text2 = "tcOrbitThing";
667 orbit = PoolManager.Spawn<TCOrbitThing>(text2, "Scene/Render/Actor/Component/" + text2);
668 orbit.SetOwner(this);
669 }
670 }
671
672 public bool IsTalking()
673 {
674 TCText tC = GetTC<TCText>();
675 if ((bool)tC)
676 {
677 return tC.pop.items.Count > 0;
678 }
679 return false;
680 }
681
683 {
684 if (!hasText)
685 {
686 hasText = true;
688 }
689 RenderObject.tempV.x = position.x + TC._setting.simpleTextPos.x;
690 RenderObject.tempV.y = position.y + TC._setting.simpleTextPos.y;
691 RenderObject.tempV.z = position.z + TC._setting.simpleTextPos.z;
692 simpleText.transform.position = RenderObject.tempV;
693 return simpleText;
694 }
695
696 public void DespawnSimpleText()
697 {
698 if (hasText)
699 {
701 hasText = false;
702 }
703 }
704
705 public void SetCensored(bool enable)
706 {
707 if (!isSynced)
708 {
709 return;
710 }
711 if (enable)
712 {
713 GetOrCreateTC(() => PoolManager.Spawn(EClass.core.refs.tcs.censored));
714 }
715 else
716 {
717 RemoveTC<TCCensored>();
718 }
719 }
720
721 public virtual void RefreshStateIcon()
722 {
723 }
724
725 public void Say(string text, Color c = default(Color), float duration = 0f)
726 {
727 (GetTC<TCText>() ?? AddTC<TCText>(PoolManager.Spawn(EClass.core.refs.tcs.text, EClass.ui.rectDynamic))).Say(text, duration);
728 }
729
730 public void ShowEmo(Emo emo, float duration = 0f)
731 {
732 if (isSynced)
733 {
734 (GetTC<TCText>() ?? AddTC<TCText>(PoolManager.Spawn(EClass.core.refs.tcs.text, EClass.ui.rectDynamic))).ShowEmo(emo, duration);
735 }
736 }
737
738 public virtual void SetFirst(bool first, Vector3 pos)
739 {
740 }
741
742 public virtual void SetFirst(bool first)
743 {
744 }
745
746 public virtual void Refresh()
747 {
748 }
749
751 {
752 if (replacer != null)
753 {
754 return replacer.pref;
755 }
756 if ((owner.IsPCC && replacer == null) || (owner.HasHost && owner.Chara.host.ride == owner))
757 {
758 return EClass.core.refs.prefs.pcc;
759 }
760 return owner.Pref;
761 }
762}
AnimeID
Definition: AnimeID.cs:2
BossType
Definition: BossType.cs:2
Emo
Definition: Emo.cs:2
Rarity
Definition: Rarity.cs:2
BaseTileMap tileMap
MeshPass passShadow
Definition: BaseTileMap.cs:133
RenderDataObjDummy rendererObjDummy
Definition: BaseTileMap.cs:227
Vector3 renderPos
virtual void OnRender(RenderParam p)
Definition: CardActor.cs:103
virtual int currentDir
Definition: CardActor.cs:41
virtual void NextDir()
Definition: CardActor.cs:94
void SetOwner(Card t)
Definition: CardActor.cs:48
virtual void NextFrame()
Definition: CardActor.cs:90
virtual void RefreshSprite()
Definition: CardActor.cs:224
virtual void IdleFrame()
Definition: CardActor.cs:86
virtual void Kill()
Definition: CardActor.cs:286
virtual int GetFrame()
Definition: CardActor.cs:98
void ShowEmo(Emo emo, float duration=0f)
override void RenderToRenderCam(RenderParam p)
Definition: CardRenderer.cs:59
void PlayAnime(AnimeID id, bool force)
void Say(string text, Color c=default(Color), float duration=0f)
virtual void SetFirst(bool first)
virtual void DrawHeld()
T AddTC< T >(TC tc)
virtual void KillAnime()
void PlayAnime(AnimeID id, Vector3 dest=default(Vector3), bool force=false)
override void OnLeaveScreen()
override void Draw(RenderParam p)
Definition: CardRenderer.cs:53
void RemoveTC(int index)
SourcePref GetPref()
virtual void NextDir()
RendererReplacer replacer
Definition: CardRenderer.cs:29
Vector3 position
Definition: CardRenderer.cs:21
void RefreshSprite()
TransAnime anime
Definition: CardRenderer.cs:23
void AddExtra(string id)
TC GetTC(string id)
virtual void NextFrame()
T GetOrCreateTC< T >(Func< T > func)
TCSimpleText SpawnSimpleText()
virtual bool IsMoving
Definition: CardRenderer.cs:31
virtual void RefreshStateIcon()
bool IsTalking()
void RemoveTC< T >()
override void OnEnterScreen()
virtual void SetOwner(Card c)
Definition: CardRenderer.cs:38
List< TC > listTC
Definition: CardRenderer.cs:25
virtual void SetFirst(bool first, Vector3 pos)
void RemoveExtra(string id)
void PlayAnime(AnimeID id, Card dest)
void TrySpawnOrbit()
virtual void UpdatePosition(ref Vector3 destPos, RenderParam p)
virtual void IdleFrame()
TCOrbit orbit
Definition: CardRenderer.cs:7
void RefreshExtra()
void ShowBossText()
Definition: CardRenderer.cs:72
CardActor actor
Definition: CardRenderer.cs:11
void KillActor()
void SetCensored(bool enable)
void PlayAnime(AnimeID id, Point dest)
virtual void Refresh()
Vector3 PositionCenter()
Definition: CardRenderer.cs:33
TCSimpleText simpleText
Definition: CardRenderer.cs:27
override void Draw(RenderParam p, ref Vector3 v, bool drawShadow)
void DespawnSimpleText()
void RemoveTC(TC tc)
string[] idActor
Definition: CardRow.cs:35
Card model
Definition: CardRow.cs:60
string idExtra
Definition: CardRow.cs:9
Definition: Card.cs:11
float angle
Definition: Card.cs:71
virtual bool IsPCC
Definition: Card.cs:2147
virtual bool isThing
Definition: Card.cs:2081
virtual Chara Chara
Definition: Card.cs:2070
bool isMasked
Definition: Card.cs:590
string id
Definition: Card.cs:35
bool isRoofItem
Definition: Card.cs:578
bool isCensored
Definition: Card.cs:434
SoundSource PlaySound(string id, float v=1f, bool spatial=true)
Definition: Card.cs:6178
Rarity rarity
Definition: Card.cs:314
ICardParent parent
Definition: Card.cs:55
bool ExistsOnMap
Definition: Card.cs:2085
virtual bool IsDeadOrSleeping
Definition: Card.cs:2109
PlaceState placeState
Definition: Card.cs:83
TileType TileType
Definition: Card.cs:2135
virtual SourcePref Pref
Definition: Card.cs:2107
Point pos
Definition: Card.cs:59
int uid
Definition: Card.cs:122
virtual void SetRenderParam(RenderParam p)
Definition: Card.cs:6015
virtual SubPassData GetSubPassData()
Definition: Card.cs:6297
int refVal
Definition: Card.cs:206
Trait trait
Definition: Card.cs:53
int altitude
Definition: Card.cs:230
BossType c_bossType
Definition: Card.cs:1221
bool IsInstalled
Definition: Card.cs:2381
virtual bool IsPC
Definition: Card.cs:2143
string NameSimple
Definition: Card.cs:2139
virtual bool isChara
Definition: Card.cs:2083
Cell Cell
Definition: Card.cs:2055
virtual bool HasHost
Definition: Card.cs:2423
virtual int PrefIndex
Definition: Card.cs:2312
int dir
Definition: Card.cs:146
bool noSnow
Definition: Card.cs:758
virtual CardRow sourceCard
Definition: Card.cs:2131
bool noShadow
Definition: Card.cs:818
SourceCategory.Row category
Definition: Card.cs:2049
CardRenderer renderer
Definition: Card.cs:61
virtual bool flipX
Definition: Card.cs:2116
string c_idRefCard
Definition: Card.cs:1737
bool HasRoof
Definition: Cell.cs:648
bool ignoreObjShadow
Definition: Cell.cs:378
override void RefreshSprite()
SpriteProvider provider
Definition: CharaActorPCC.cs:9
Definition: Chara.cs:10
Card held
Definition: Chara.cs:70
AIAct ai
Definition: Chara.cs:202
Chara host
Definition: Chara.cs:33
bool IsNeutralOrAbove()
Definition: Chara.cs:6580
string Aka
Definition: Chara.cs:216
SourceChara.Row source
Definition: Chara.cs:158
bool visibleWithTelepathy
Definition: Chara.cs:150
bool IsHomeMember()
Definition: Chara.cs:6594
Chara parasite
Definition: Chara.cs:30
Chara ride
Definition: Chara.cs:27
bool bossText
Definition: Chara.cs:144
new GameConfig game
Definition: CoreConfig.cs:609
SourcePref pcc
Definition: CoreRef.cs:328
TCSimpleText simpleText
Definition: CoreRef.cs:242
TCText text
Definition: CoreRef.cs:236
TCCensored censored
Definition: CoreRef.cs:238
PrefData prefs
Definition: CoreRef.cs:415
TCs tcs
Definition: CoreRef.cs:353
CoreRef refs
Definition: Core.cs:51
CoreConfig config
Definition: Core.cs:70
Definition: EClass.cs:6
static Game game
Definition: EClass.cs:9
static Scene scene
Definition: EClass.cs:31
static Core core
Definition: EClass.cs:7
static Zone _zone
Definition: EClass.cs:21
static Map _map
Definition: EClass.cs:19
static SourceManager sources
Definition: EClass.cs:43
static BaseGameScreen screen
Definition: EClass.cs:33
static Chara pc
Definition: EClass.cs:15
static UI ui
Definition: EClass.cs:17
Zone activeZone
Definition: Game.cs:251
QuestManager quests
Definition: Game.cs:182
Definition: Lang.cs:6
static string langCode
Definition: Lang.cs:28
static bool isBuiltin
Definition: Lang.cs:42
static LayerDrama Instance
Definition: LayerDrama.cs:20
bool IsIndoor
Definition: Map.cs:131
Playlist plDay
Definition: Map.cs:77
void AddShadow(MeshPassParam p, ref Vector3 fix)
Definition: MeshPass.cs:195
Definition: Player.cs:11
static int seedHallucination
Definition: Player.cs:1135
Definition: Point.cs:9
ref Vector3 PositionAuto()
Definition: Point.cs:539
Thing LastThing
Definition: Point.cs:314
bool IsSync
Definition: Point.cs:344
bool IsValid
Definition: Point.cs:88
Cell cell
Definition: Point.cs:51
static void Despawn(Component c)
Definition: PoolManager.cs:128
static Transform Spawn(string id, string path, Transform parent)
Definition: PoolManager.cs:86
Quest Get(string id)
Definition: Rand.cs:4
static void SetSeed(int a=-1)
Definition: Rand.cs:37
override void Draw(RenderParam p)
Definition: RenderDataObj.cs:3
void Draw(RenderParam p, int tile)
Definition: RenderData.cs:128
Vector3 offsetShadow
Definition: RenderData.cs:22
Vector3 offset
Definition: RenderData.cs:18
bool multiSize
Definition: RenderData.cs:32
virtual CardActor CreateActor()
Definition: RenderData.cs:84
SourcePref shadowPref
Definition: RenderData.cs:48
bool persistActor
Definition: RenderData.cs:38
MeshPass pass
Definition: RenderData.cs:16
Vector2 size
Definition: RenderData.cs:30
static List< ISyncScreen > syncList
Definition: RenderObject.cs:24
static Vector3 tempV
Definition: RenderObject.cs:20
RenderData data
Definition: RenderObject.cs:34
static long syncFrame
Definition: RenderObject.cs:26
static GameSetting.RenderSetting renderSetting
Definition: RenderObject.cs:14
float shadowFix
Definition: RenderParam.cs:21
Vector3 NewVector3
Definition: RenderParam.cs:23
bool multisize
Definition: RenderRow.cs:64
RenderData renderData
Definition: RenderRow.cs:71
SourcePref pref
Definition: RenderRow.cs:68
string _idRenderData
Definition: RenderRow.cs:38
TileType tileType
Definition: RenderRow.cs:77
int[] _tiles
Definition: RenderRow.cs:12
int chance
Definition: RenderRow.cs:24
GameScreen screenElin
Definition: Scene.cs:93
CameraSupport camSupport
Definition: Scene.cs:41
List< Item > items
Definition: ShadowData.cs:101
static ShadowData Instance
Definition: ShadowData.cs:99
SourceThing things
SourceBlock blocks
SourceChara charas
int shadow
Definition: SourcePref.cs:39
static SplashText Instance
Definition: SplashText.cs:10
static SubPassData Default
Definition: SubPassData.cs:7
static SubPassData Current
Definition: SubPassData.cs:9
virtual void Refresh()
Definition: TCOrbit.cs:3
Definition: TCText.cs:6
Definition: TC.cs:4
static GameSetting.RenderSetting.TCSetting _setting
Definition: TC.cs:5
virtual bool isUI
Definition: TC.cs:11
void SetOwner(CardRenderer r)
Definition: TC.cs:15
virtual bool UseMountHeight
Definition: TileType.cs:221
virtual bool ShowShadow
Definition: TraitFigure.cs:10
virtual int GetMatColor()
Definition: TraitFigure.cs:12
virtual bool CanBeHallucinated
Definition: Trait.cs:300
virtual bool ShowOrbit
Definition: Trait.cs:136
virtual bool RenderExtra
Definition: Trait.cs:358
virtual bool UseDummyTile
Definition: Trait.cs:196
virtual void OnRenderExtra(RenderParam p)
Definition: Trait.cs:633
virtual void OnEnterScreen()
Definition: Trait.cs:1417
bool Update()
Definition: TransAnime.cs:40
Definition: Zone.cs:12
void SetBGM(List< int > ids, bool refresh=true, float fadeDuration=0f)
Definition: Zone.cs:2959