Elin Decompiled Documentation EA 23.130 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;
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 override void Draw(RenderParam p, ref Vector3 v, bool drawShadow)
69 {
70 if (skip)
71 {
72 skip = false;
73 return;
74 }
76 RenderObject.currentParam = p;
77 p.dir = owner.dir;
78 if (!isSynced)
79 {
81 RenderObject.syncList.Add(this);
82 }
83 if ((bool)orbit)
84 {
85 orbit.Refresh();
86 }
87 else
88 {
90 }
92 {
93 if (owner.Chara.bossText && !EClass.ui.IsActive && !SplashText.Instance)
94 {
95 SplashText splashText = Util.Instantiate<SplashText>("Media/Text/SplashText_boss2", EClass.ui.rectDynamic);
96 string text = owner.Chara.Aka.ToTitleCase(wholeText: true);
97 string text2 = owner.Chara.NameSimple.ToTitleCase();
98 if (!Lang.isBuiltin && Lang.langCode != "CN")
99 {
100 text = owner.Chara.source.aka.ToTitleCase(wholeText: true);
101 text2 = owner.Chara.source.name.ToTitleCase();
102 }
103 splashText.textSmall.text = text;
104 splashText.textBig.text = text2;
105 owner.Chara.bossText = false;
106 }
107 if (owner.Chara.host == null)
108 {
109 UpdatePosition(ref v, p);
110 }
111 if (owner.Chara.ai is AI_Trolley { IsRunning: not false } aI_Trolley)
112 {
113 drawShadow = false;
114 if (aI_Trolley.trolley.HideChara)
115 {
116 if (hasActor)
117 {
118 actor.SetActive(enable: false);
119 }
120 return;
121 }
122 }
123 if (hasActor)
124 {
125 actor.SetActive(enable: true);
126 }
127 }
128 else
129 {
130 p.x = (position.x = v.x);
131 p.y = (position.y = v.y);
132 p.z = (position.z = v.z);
133 }
134 if (anime != null)
135 {
136 anime.Update();
137 }
139 {
140 SubPassData.Current = SubPassData.Default;
142 p.tile = rendererObjDummy.tile;
143 p.dir = 0;
144 if (hasActor)
145 {
146 actor.SetActive(enable: false);
147 }
148 rendererObjDummy.Draw(p);
149 if (drawShadow && !owner.pos.cell.ignoreObjShadow)
150 {
151 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);
152 }
153 }
154 else
155 {
156 SubPassData.Current = owner.GetSubPassData();
157 SourcePref pref = GetPref();
158 RenderData renderData = data;
159 int prefIndex = owner.PrefIndex;
160 if (Player.seedHallucination != 0 && CanBeHallucinated())
161 {
163 CardRow cardRow = null;
164 bool flag = false;
165 for (int i = 0; i < 20; i++)
166 {
167 if (owner.isChara)
168 {
169 cardRow = EClass.sources.charas.rows.RandomItem();
170 if (cardRow.multisize)
171 {
172 continue;
173 }
174 }
175 else
176 {
177 cardRow = EClass.sources.things.rows.RandomItem();
178 if (cardRow.tileType != owner.TileType)
179 {
180 continue;
181 }
182 }
183 if (cardRow.chance != 0 && cardRow._tiles.Length != 0 && cardRow.idActor.IsEmpty() && cardRow.idExtra.IsEmpty() && SubPassData.Current == SubPassData.Default && !(cardRow._idRenderData != owner.sourceCard._idRenderData))
184 {
185 flag = true;
186 break;
187 }
188 }
189 if (flag)
190 {
191 renderData = cardRow.renderData;
192 pref = cardRow.pref;
193 cardRow.model.dir = owner.dir;
194 cardRow.model.SetRenderParam(p);
195 prefIndex = cardRow.model.PrefIndex;
196 }
197 Rand.SetSeed();
198 }
199 if (owner.trait is TraitFigure)
200 {
202 {
203 TraitFigure traitFigure = owner.trait as TraitFigure;
204 SourceChara.Row row = EClass.sources.charas.map.TryGetValue(owner.c_idRefCard) ?? EClass.sources.charas.map["putty"];
205 renderData = row.renderData;
206 pref = row.pref;
207 if (row._tiles.Length == 0 || data.pass == null)
208 {
209 renderData = owner.sourceCard.renderData;
210 pref = owner.sourceCard.pref;
211 }
212 else
213 {
214 if (EClass.core.config.game.antiSpider && row.race == "spider" && row._tiles.Length > 1)
215 {
216 owner.refVal = 1;
217 }
218 p.tile = row._tiles[owner.refVal % row._tiles.Length] * ((owner.dir % 2 == 0) ? 1 : (-1));
219 p.matColor = traitFigure.GetMatColor();
220 drawShadow = traitFigure.ShowShadow;
221 pref = row.pref;
222 }
223 if (renderData.pass != null && EClass.pc.held == owner)
224 {
225 int num = (int)renderData.pass.pmesh.tiling.x;
226 string name = renderData.pass.name;
227 if (!(name == "pass charaL"))
228 {
229 if (name == "pass charaLW")
230 {
231 if (p.tile < 0f)
232 {
233 p.tile *= -1f;
234 }
235 p.tile = (int)p.tile / num * num * 4 + (int)p.tile % num * 2;
236 }
237 }
238 else
239 {
240 p.tile = (int)p.tile / num * num * 2 + (int)p.tile % num;
241 }
242 }
243 }
244 else
245 {
246 renderData = owner.sourceCard.renderData;
247 }
248 }
249 if (replacer != null)
250 {
251 renderData = replacer.data;
252 pref = replacer.pref;
253 SubPassData.Current = SubPassData.Default;
254 }
255 if (isChara)
256 {
257 p.x += pref.x * (float)((!owner.flipX) ? 1 : (-1));
258 }
259 p.y += pref.y;
260 int shadow = pref.shadow;
261 bool flag2 = isChara && owner.isHidden && !EClass.pc.canSeeInvisible && (!EClass.pc.hasTelepathy || !owner.Chara.race.visibleWithTelepathy);
262 if (drawShadow && shadow != 1 && SubPassData.Current.shadow && (!flag2 || owner.IsPC))
263 {
264 bool flag3 = ((!isChara) ? (owner.dir % 2 == 1) : (owner.dir == 1 || owner.dir == 2));
265 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) - RenderObject.altitudeFix * (float)owner.altitude, position.z + renderData.offsetShadow.z, ShadowData.Instance.items[shadow], pref, prefIndex, p.snow);
266 }
267 if (usePass)
268 {
269 if (owner.noSnow)
270 {
271 p.snow = false;
272 }
273 if (!flag2)
274 {
275 renderData.Draw(p);
276 }
277 }
278 else if (hasActor)
279 {
281 {
282 Chara ride = owner.Chara.ride;
283 CharaActorPCC charaActorPCC = ride.renderer.actor as CharaActorPCC;
284 CharaActorPCC charaActorPCC2 = actor as CharaActorPCC;
285 ride.angle = owner.angle;
286 if (charaActorPCC != null && charaActorPCC2 != null)
287 {
288 charaActorPCC.provider.currentDir = charaActorPCC2.provider.currentDir;
289 charaActorPCC.provider.currentFrame = charaActorPCC2.provider.currentFrame;
290 charaActorPCC.provider.SetSpriteMain();
291 charaActorPCC.RefreshSprite();
292 }
293 PCCData.RideData ride2 = (ride.renderer as CharaRenderer).pccData.ride;
294 float x = p.x;
295 float y = p.y;
296 float z = p.z;
297 Vector3 v2 = new Vector3(v.x, v.y, v.z);
298 ride.renderer.Draw(p, ref v2, drawShadow: false);
299 int currentDir = actor.currentDir;
300 p.x = x + RenderObject.renderSetting.ridePos[currentDir].x + ride2.x * (float)(currentDir switch
301 {
302 2 => -1,
303 1 => 1,
304 _ => 0,
305 });
306 p.y = y + RenderObject.renderSetting.ridePos[currentDir].y + ride2.y + ride2.jump * (float)((actor.GetFrame() % 2 == 1) ? 1 : 0);
307 p.z = z + RenderObject.renderSetting.ridePos[currentDir].z - ride2.z;
308 }
309 if (flag2)
310 {
311 actor.SetActive(enable: false);
312 }
313 else
314 {
315 actor.SetActive(enable: true);
316 actor.OnRender(p);
317 }
318 }
319 if (isChara)
320 {
321 if (owner.Chara.parasite != null)
322 {
323 owner.Chara.parasite.renderer.position = position;
324 }
325 if (owner.Chara.ride != null)
326 {
327 owner.Chara.ride.renderer.position = position;
328 }
329 }
330 SubPassData.Current = SubPassData.Default;
331 }
332 if (listTC.Count > 0)
333 {
334 RenderObject.tempV = position;
335 RenderObject.tempV.y += data.offset.y + data.size.y;
336 for (int num2 = listTC.Count - 1; num2 >= 0; num2--)
337 {
338 listTC[num2].OnDraw(ref RenderObject.tempV);
339 }
340 }
342 {
344 }
345 bool CanBeHallucinated()
346 {
348 {
349 return false;
350 }
351 if (owner.isThing)
352 {
354 {
355 return false;
356 }
357 if (listTC.Count > 0)
358 {
359 return false;
360 }
361 }
362 return true;
363 }
364 }
365
366 public virtual void UpdatePosition(ref Vector3 destPos, RenderParam p)
367 {
368 }
369
370 public virtual void DrawHeld()
371 {
372 }
373
375 {
376 if (isChara)
377 {
379 {
380 return EClass.core.refs.prefs.pcc;
381 }
382 if (owner.idSkin > 0)
383 {
384 switch (owner.sourceCard.tiles.TryGet(owner.idSkin))
385 {
386 case 2319:
387 case 2619:
388 case 2621:
389 case 2623:
390 case 2625:
392 case 2320:
393 case 2611:
394 case 2620:
395 case 2622:
396 case 2624:
397 case 2626:
399 }
400 }
401 }
402 return owner.Pref;
403 }
404
405 public void RefreshSprite()
406 {
407 if (hasActor)
408 {
410 }
411 }
412
413 public override void OnEnterScreen()
414 {
415 if (isSynced)
416 {
417 Debug.LogError("renderer alraedy synced:" + owner);
418 }
419 isSynced = true;
420 if (!usePass)
421 {
422 if (!hasActor)
423 {
425 if (actor == null)
426 {
427 if (owner.sourceCard.idActor.IsEmpty())
428 {
429 actor = PoolManager.Spawn(Resources.Load<CardActor>("Scene/Render/Actor/" + (owner.isChara ? "CharaActor" : "ThingActor")));
430 }
431 else
432 {
433 actor = PoolManager.Spawn(Resources.Load<CardActor>("Scene/Render/Actor/" + owner.sourceCard.idActor[0]));
434 }
435 }
436 hasActor = true;
437 }
439 }
441 RefreshExtra();
442 if (owner.isCensored)
443 {
444 SetCensored(enable: true);
445 }
447 }
448
449 public void AddExtra(string id)
450 {
451 if (GetTC(id) == null)
452 {
453 TC tC = AddTC<TC>(PoolManager.Spawn<TC>("tcExtra_" + id, "Scene/Render/Actor/Component/Extra/" + id));
454 if (tC.isUI)
455 {
456 tC.transform.SetParent(EClass.ui.rectDynamic, worldPositionStays: false);
457 }
458 tC.name = id;
459 }
460 }
461
462 public void RefreshExtra()
463 {
464 string idExtra = owner.sourceCard.idExtra;
465 if (!idExtra.IsEmpty())
466 {
467 AddExtra(idExtra);
468 }
469 if (isChara && owner.rarity >= Rarity.Legendary && owner.rarity != Rarity.Artifact && !owner.Chara.IsHomeMember())
470 {
471 if (owner.c_bossType == BossType.Evolved)
472 {
473 AddExtra("c_unique_evolved");
474 }
475 else
476 {
477 AddExtra("c_unique");
478 }
479 }
480 }
481
482 public void RemoveExtra(string id)
483 {
484 TC tC = GetTC(id);
485 if (tC != null)
486 {
487 RemoveTC(tC);
488 }
489 }
490
491 public override void OnLeaveScreen()
492 {
493 isSynced = false;
495 {
496 KillActor();
497 }
498 for (int num = listTC.Count - 1; num >= 0; num--)
499 {
500 RemoveTC(num);
501 }
502 if (hasText)
503 {
505 }
506 if ((bool)orbit)
507 {
509 orbit = null;
510 }
511 }
512
513 public void KillActor()
514 {
515 actor.Kill();
516 hasActor = false;
517 actor = null;
518 }
519
520 public void PlayAnime(AnimeID id, bool force)
521 {
522 PlayAnime(id, default(Vector3), force);
523 }
524
525 public void PlayAnime(AnimeID id, Card dest)
526 {
527 PlayAnime(id, (dest.renderer.position - position).normalized);
528 }
529
530 public void PlayAnime(AnimeID id, Point dest)
531 {
532 PlayAnime(id, (dest.PositionAuto() - position).normalized);
533 }
534
535 public void PlayAnime(AnimeID id, Vector3 dest = default(Vector3), bool force = false)
536 {
537 if (!force && owner.parent is Zone && (!owner.pos.IsValid || !owner.pos.IsSync))
538 {
539 return;
540 }
541 TransAnimeData transAnimeData = ResourceCache.Load<TransAnimeData>("Scene/Render/Anime/" + id);
542 if (transAnimeData == null)
543 {
544 anime = null;
545 return;
546 }
547 anime = new TransAnime
548 {
549 data = transAnimeData,
550 renderer = this
551 }.Init();
552 if (id == AnimeID.Attack || (uint)(id - 18) <= 1u)
553 {
554 anime.dest = dest;
555 }
556 }
557
558 public virtual void KillAnime()
559 {
560 anime = null;
561 }
562
563 public virtual void IdleFrame()
564 {
565 if (hasActor)
566 {
568 }
569 }
570
571 public virtual void NextFrame()
572 {
573 if (hasActor)
574 {
576 }
577 }
578
579 public virtual void NextDir()
580 {
581 if (hasActor)
582 {
583 actor.NextDir();
584 }
585 }
586
587 public T AddTC<T>(TC tc) where T : TC
588 {
589 listTC.Add(tc);
590 tc.SetOwner(this);
591 return tc as T;
592 }
593
594 public T GetTC<T>() where T : TC
595 {
596 if (listTC.Count == 0)
597 {
598 return null;
599 }
600 for (int num = listTC.Count - 1; num >= 0; num--)
601 {
602 if (listTC[num] is T)
603 {
604 return listTC[num] as T;
605 }
606 }
607 return null;
608 }
609
610 public TC GetTC(string id)
611 {
612 if (listTC.Count == 0)
613 {
614 return null;
615 }
616 for (int num = listTC.Count - 1; num >= 0; num--)
617 {
618 if (listTC[num].name == id)
619 {
620 return listTC[num];
621 }
622 }
623 return null;
624 }
625
626 public T GetOrCreateTC<T>(Func<T> func) where T : TC
627 {
628 return GetTC<T>() ?? AddTC<T>(func());
629 }
630
631 public void RemoveTC<T>() where T : TC
632 {
633 if (listTC.Count == 0)
634 {
635 return;
636 }
637 for (int num = listTC.Count - 1; num >= 0; num--)
638 {
639 if (listTC[num] is T)
640 {
641 listTC[num].Kill();
642 listTC.RemoveAt(num);
643 break;
644 }
645 }
646 }
647
648 public void RemoveTC(TC tc)
649 {
650 RemoveTC(listTC.IndexOf(tc));
651 }
652
653 public void RemoveTC(int index)
654 {
655 if (index != -1)
656 {
657 listTC[index].Kill();
658 listTC.RemoveAt(index);
659 }
660 }
661
662 public void TrySpawnOrbit()
663 {
664 if (owner.isChara)
665 {
666 string text = (owner.IsPC ? "tcOrbitPC" : "tcOrbitChara");
667 orbit = PoolManager.Spawn<TCOrbitChara>(text, "Scene/Render/Actor/Component/" + text);
668 orbit.SetOwner(this);
669 }
670 else if (owner.trait.ShowOrbit)
671 {
672 string text2 = "tcOrbitThing";
673 orbit = PoolManager.Spawn<TCOrbitThing>(text2, "Scene/Render/Actor/Component/" + text2);
674 orbit.SetOwner(this);
675 }
676 }
677
678 public bool IsTalking()
679 {
680 TCText tC = GetTC<TCText>();
681 if ((bool)tC)
682 {
683 return tC.pop.items.Count > 0;
684 }
685 return false;
686 }
687
689 {
690 if (!hasText)
691 {
692 hasText = true;
694 }
695 RenderObject.tempV.x = position.x + TC._setting.simpleTextPos.x;
696 RenderObject.tempV.y = position.y + TC._setting.simpleTextPos.y;
697 RenderObject.tempV.z = position.z + TC._setting.simpleTextPos.z;
698 simpleText.transform.position = RenderObject.tempV;
699 return simpleText;
700 }
701
702 public void DespawnSimpleText()
703 {
704 if (hasText)
705 {
707 hasText = false;
708 }
709 }
710
711 public void SetCensored(bool enable)
712 {
713 if (!isSynced)
714 {
715 return;
716 }
717 if (enable)
718 {
719 GetOrCreateTC(() => PoolManager.Spawn(EClass.core.refs.tcs.censored));
720 }
721 else
722 {
723 RemoveTC<TCCensored>();
724 }
725 }
726
727 public virtual void RefreshStateIcon()
728 {
729 }
730
731 public void Say(string text, Color c = default(Color), float duration = 0f)
732 {
733 (GetTC<TCText>() ?? AddTC<TCText>(PoolManager.Spawn(EClass.core.refs.tcs.text, EClass.ui.rectDynamic))).Say(text, duration);
734 }
735
736 public void ShowEmo(Emo emo, float duration = 0f)
737 {
738 if (isSynced)
739 {
740 (GetTC<TCText>() ?? AddTC<TCText>(PoolManager.Spawn(EClass.core.refs.tcs.text, EClass.ui.rectDynamic))).ShowEmo(emo, duration);
741 }
742 }
743
744 public virtual void SetFirst(bool first, Vector3 pos)
745 {
746 }
747
748 public virtual void SetFirst(bool first)
749 {
750 }
751
752 public virtual void Refresh()
753 {
754 }
755}
AnimeID
Definition: AnimeID.cs:2
BossType
Definition: BossType.cs:2
Emo
Definition: Emo.cs:2
Rarity
Definition: Rarity.cs:2
if(item3.idFile==idFirstFile &&item3.id==idFirstTopic)
Definition: UIBook.cs:627
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()
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)
Definition: CardRenderer.cs:68
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:67
virtual bool IsPCC
Definition: Card.cs:2047
virtual bool isThing
Definition: Card.cs:1981
virtual Chara Chara
Definition: Card.cs:1970
bool isRoofItem
Definition: Card.cs:550
bool isCensored
Definition: Card.cs:406
Rarity rarity
Definition: Card.cs:298
ICardParent parent
Definition: Card.cs:51
bool ExistsOnMap
Definition: Card.cs:1985
virtual bool IsDeadOrSleeping
Definition: Card.cs:2009
TileType TileType
Definition: Card.cs:2035
virtual SourcePref Pref
Definition: Card.cs:2007
Point pos
Definition: Card.cs:55
int uid
Definition: Card.cs:118
virtual void SetRenderParam(RenderParam p)
Definition: Card.cs:5439
virtual SubPassData GetSubPassData()
Definition: Card.cs:5704
Trait trait
Definition: Card.cs:49
int altitude
Definition: Card.cs:214
BossType c_bossType
Definition: Card.cs:1181
bool IsInstalled
Definition: Card.cs:2281
virtual bool IsPC
Definition: Card.cs:2043
string NameSimple
Definition: Card.cs:2039
virtual bool isChara
Definition: Card.cs:1983
int idSkin
Definition: Card.cs:346
Cell Cell
Definition: Card.cs:1955
virtual bool HasHost
Definition: Card.cs:2323
virtual int PrefIndex
Definition: Card.cs:2212
int dir
Definition: Card.cs:142
bool noSnow
Definition: Card.cs:730
virtual CardRow sourceCard
Definition: Card.cs:2031
SourceCategory.Row category
Definition: Card.cs:1949
CardRenderer renderer
Definition: Card.cs:57
virtual bool flipX
Definition: Card.cs:2016
string c_idRefCard
Definition: Card.cs:1661
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:192
Chara host
Definition: Chara.cs:33
string Aka
Definition: Chara.cs:206
SourceChara.Row source
Definition: Chara.cs:148
bool IsHomeMember()
Definition: Chara.cs:6000
Chara parasite
Definition: Chara.cs:30
Chara ride
Definition: Chara.cs:27
bool bossText
Definition: Chara.cs:142
SourceRace.Row race
Definition: Chara.cs:454
new GameConfig game
Definition: CoreConfig.cs:598
SourcePref snowputit2
Definition: CoreRef.cs:322
SourcePref pcc
Definition: CoreRef.cs:324
SourcePref sonwputit1
Definition: CoreRef.cs:320
TCSimpleText simpleText
Definition: CoreRef.cs:240
TCText text
Definition: CoreRef.cs:234
TCCensored censored
Definition: CoreRef.cs:236
PrefData prefs
Definition: CoreRef.cs:401
TCs tcs
Definition: CoreRef.cs:339
CoreRef refs
Definition: Core.cs:51
CoreConfig config
Definition: Core.cs:70
Definition: EClass.cs:5
static Game game
Definition: EClass.cs:8
static Scene scene
Definition: EClass.cs:30
static Core core
Definition: EClass.cs:6
static Map _map
Definition: EClass.cs:18
static SourceManager sources
Definition: EClass.cs:42
static BaseGameScreen screen
Definition: EClass.cs:32
static Chara pc
Definition: EClass.cs:14
static UI ui
Definition: EClass.cs:16
Zone activeZone
Definition: Game.cs:245
Definition: Lang.cs:6
static string langCode
Definition: Lang.cs:28
static bool isBuiltin
Definition: Lang.cs:42
bool IsIndoor
Definition: Map.cs:131
ProceduralMesh pmesh
Definition: MeshPass.cs:25
void AddShadow(MeshPassParam p, ref Vector3 fix)
Definition: MeshPass.cs:195
Definition: Player.cs:11
static int seedHallucination
Definition: Player.cs:951
Definition: Point.cs:9
ref Vector3 PositionAuto()
Definition: Point.cs:527
Thing LastThing
Definition: Point.cs:302
bool IsSync
Definition: Point.cs:332
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
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[] tiles
Definition: RenderRow.cs:10
int chance
Definition: RenderRow.cs:24
GameScreen screenElin
Definition: Scene.cs:89
CameraSupport camSupport
Definition: Scene.cs:41
List< Item > items
Definition: ShadowData.cs:101
static ShadowData Instance
Definition: ShadowData.cs:99
SourceThing things
SourceChara charas
int shadow
Definition: SourcePref.cs:35
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:209
virtual bool ShowShadow
Definition: TraitFigure.cs:10
virtual int GetMatColor()
Definition: TraitFigure.cs:12
virtual bool CanBeHallucinated
Definition: Trait.cs:293
virtual bool ShowOrbit
Definition: Trait.cs:133
virtual bool RenderExtra
Definition: Trait.cs:351
virtual bool UseDummyTile
Definition: Trait.cs:191
virtual void OnRenderExtra(RenderParam p)
Definition: Trait.cs:620
virtual void OnEnterScreen()
Definition: Trait.cs:1404
bool Update()
Definition: TransAnime.cs:40
Definition: Zone.cs:12