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