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