Repository: RhenaudTheLukark/CreateYourFrisk Branch: master Commit: f91267a17b0a Files: 2878 Total size: 10.1 MB Directory structure: gitextract_gnfzns45/ ├── .gitattributes ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ └── bug_report.md │ └── workflows/ │ ├── activation.yml │ ├── build.yml │ ├── docs.yml │ └── nightly_notification.yml ├── .gitignore ├── .vsconfig ├── Assets/ │ ├── Default/ │ │ ├── Audio/ │ │ │ ├── Credits.txt │ │ │ ├── Credits.txt.meta │ │ │ ├── mus_barrier.ogg │ │ │ ├── mus_barrier.ogg.meta │ │ │ ├── mus_battle1 fj7x.ogg │ │ │ ├── mus_battle1 fj7x.ogg.meta │ │ │ ├── mus_battle1.ogg │ │ │ ├── mus_battle1.ogg.meta │ │ │ ├── mus_gameover.ogg │ │ │ └── mus_gameover.ogg.meta │ │ ├── Audio.meta │ │ ├── Shaders/ │ │ │ ├── cyfshaders/ │ │ │ │ ├── linux │ │ │ │ ├── linux.meta │ │ │ │ ├── mac │ │ │ │ ├── mac.meta │ │ │ │ ├── windows │ │ │ │ └── windows.meta │ │ │ └── cyfshaders.meta │ │ ├── Shaders.meta │ │ ├── Sounds/ │ │ │ ├── BeginBattle1.wav.meta │ │ │ ├── BeginBattle2.wav.meta │ │ │ ├── BeginBattle3.wav.meta │ │ │ ├── HotCat.wav.meta │ │ │ ├── HotDog.wav.meta │ │ │ ├── LegHero.wav.meta │ │ │ ├── SeaTea.wav.meta │ │ │ ├── ShopFail.wav.meta │ │ │ ├── ShopSuccess.wav.meta │ │ │ ├── Voices/ │ │ │ │ ├── monsterfont.wav.meta │ │ │ │ ├── tem1.wav.meta │ │ │ │ ├── tem2.wav.meta │ │ │ │ ├── tem3.wav.meta │ │ │ │ ├── tem4.wav.meta │ │ │ │ ├── tem5.wav.meta │ │ │ │ ├── tem6.wav.meta │ │ │ │ ├── uifont.wav.meta │ │ │ │ ├── uifontold.wav.meta │ │ │ │ ├── v_asriel.wav.meta │ │ │ │ ├── v_flowey.wav.meta │ │ │ │ ├── v_floweymad.wav.meta │ │ │ │ ├── v_fluffybuns.wav.meta │ │ │ │ ├── v_papyrus.wav.meta │ │ │ │ └── v_sans.wav.meta │ │ │ ├── Voices.meta │ │ │ ├── dogsecret.wav.meta │ │ │ ├── enemydust.wav.meta │ │ │ ├── healsound.wav.meta │ │ │ ├── heartbeatbreaker.wav.meta │ │ │ ├── heartsplosion.wav.meta │ │ │ ├── hitsound.wav.meta │ │ │ ├── hurtsound.wav.meta │ │ │ ├── levelup.wav.meta │ │ │ ├── menuconfirm.wav.meta │ │ │ ├── menumove.wav.meta │ │ │ ├── meow1.wav.meta │ │ │ ├── meow2.wav.meta │ │ │ ├── meow3.wav.meta │ │ │ ├── meow4.wav.meta │ │ │ ├── meow5.wav.meta │ │ │ ├── meow6.wav.meta │ │ │ ├── meow7.wav.meta │ │ │ ├── meow8.wav.meta │ │ │ ├── runaway.wav.meta │ │ │ ├── saved.wav.meta │ │ │ ├── slice.wav.meta │ │ │ └── success.wav.meta │ │ ├── Sounds.meta │ │ ├── Sprites/ │ │ │ ├── AsrielOW/ │ │ │ │ ├── 0.png.meta │ │ │ │ ├── 1.png.meta │ │ │ │ ├── 10.png.meta │ │ │ │ ├── 11.png.meta │ │ │ │ ├── 12.png.meta │ │ │ │ ├── 13.png.meta │ │ │ │ ├── 14.png.meta │ │ │ │ ├── 15.png.meta │ │ │ │ ├── 2.png.meta │ │ │ │ ├── 3.png.meta │ │ │ │ ├── 4.png.meta │ │ │ │ ├── 5.png.meta │ │ │ │ ├── 6.png.meta │ │ │ │ ├── 7.png.meta │ │ │ │ ├── 8.png.meta │ │ │ │ ├── 9.png.meta │ │ │ │ ├── Huggu/ │ │ │ │ │ ├── h0.png.meta │ │ │ │ │ ├── h1.png.meta │ │ │ │ │ ├── h2.png.meta │ │ │ │ │ ├── h3.png.meta │ │ │ │ │ ├── h4.png.meta │ │ │ │ │ ├── h5.png.meta │ │ │ │ │ ├── h6.png.meta │ │ │ │ │ ├── h7.png.meta │ │ │ │ │ ├── h8.png.meta │ │ │ │ │ └── h9.png.meta │ │ │ │ ├── Huggu.meta │ │ │ │ ├── s0.png.meta │ │ │ │ ├── s1.png.meta │ │ │ │ ├── s10-1.png.meta │ │ │ │ ├── s10-2.png.meta │ │ │ │ ├── s11.png.meta │ │ │ │ ├── s12.png.meta │ │ │ │ ├── s13.png.meta │ │ │ │ ├── s14.png.meta │ │ │ │ ├── s15.png.meta │ │ │ │ ├── s16.png.meta │ │ │ │ ├── s17.png.meta │ │ │ │ ├── s18.png.meta │ │ │ │ ├── s2.png.meta │ │ │ │ ├── s3.png.meta │ │ │ │ ├── s4.png.meta │ │ │ │ ├── s5.png.meta │ │ │ │ ├── s6.png.meta │ │ │ │ ├── s7.png.meta │ │ │ │ ├── s8.png.meta │ │ │ │ └── s9.png.meta │ │ │ ├── AsrielOW.meta │ │ │ ├── BoosterOW/ │ │ │ │ ├── 0.png.meta │ │ │ │ ├── 1.png.meta │ │ │ │ ├── 10.png.meta │ │ │ │ ├── 11.png.meta │ │ │ │ ├── 12.png.meta │ │ │ │ ├── 13.png.meta │ │ │ │ ├── 14.png.meta │ │ │ │ ├── 15.png.meta │ │ │ │ ├── 2.png.meta │ │ │ │ ├── 3.png.meta │ │ │ │ ├── 4.png.meta │ │ │ │ ├── 5.png.meta │ │ │ │ ├── 6.png.meta │ │ │ │ ├── 7.png.meta │ │ │ │ ├── 8.png.meta │ │ │ │ ├── 9.png.meta │ │ │ │ ├── j0.png.meta │ │ │ │ └── j1.png.meta │ │ │ ├── BoosterOW.meta │ │ │ ├── CharaOW/ │ │ │ │ ├── 0.png.meta │ │ │ │ ├── 1.png.meta │ │ │ │ ├── 10.png.meta │ │ │ │ ├── 11.png.meta │ │ │ │ ├── 12.png.meta │ │ │ │ ├── 13.png.meta │ │ │ │ ├── 14.png.meta │ │ │ │ ├── 15.png.meta │ │ │ │ ├── 2.png.meta │ │ │ │ ├── 3.png.meta │ │ │ │ ├── 4.png.meta │ │ │ │ ├── 5.png.meta │ │ │ │ ├── 6.png.meta │ │ │ │ ├── 7.png.meta │ │ │ │ ├── 8.png.meta │ │ │ │ ├── 9.png.meta │ │ │ │ ├── l1.png.meta │ │ │ │ ├── l2.png.meta │ │ │ │ └── l3.png.meta │ │ │ ├── CharaOW.meta │ │ │ ├── FriskUT/ │ │ │ │ ├── 0.png.meta │ │ │ │ ├── 1.png.meta │ │ │ │ ├── 10.png.meta │ │ │ │ ├── 11.png.meta │ │ │ │ ├── 12.png.meta │ │ │ │ ├── 13.png.meta │ │ │ │ ├── 14.png.meta │ │ │ │ ├── 15.png.meta │ │ │ │ ├── 2.png.meta │ │ │ │ ├── 3.png.meta │ │ │ │ ├── 4.png.meta │ │ │ │ ├── 5.png.meta │ │ │ │ ├── 6.png.meta │ │ │ │ ├── 7.png.meta │ │ │ │ ├── 8.png.meta │ │ │ │ ├── 9.png.meta │ │ │ │ ├── Fall/ │ │ │ │ │ ├── ef0.png.meta │ │ │ │ │ ├── ef1.png.meta │ │ │ │ │ ├── ef2.png.meta │ │ │ │ │ ├── ef3.png.meta │ │ │ │ │ ├── ef4.png.meta │ │ │ │ │ ├── f0.png.meta │ │ │ │ │ ├── f1.png.meta │ │ │ │ │ ├── f2.png.meta │ │ │ │ │ ├── f3.png.meta │ │ │ │ │ └── f4.png.meta │ │ │ │ ├── Fall.meta │ │ │ │ ├── Glitch/ │ │ │ │ │ ├── g0.png.meta │ │ │ │ │ ├── g1.png.meta │ │ │ │ │ ├── g2.png.meta │ │ │ │ │ └── gg.png.meta │ │ │ │ └── Glitch.meta │ │ │ ├── FriskUT.meta │ │ │ ├── MonsterKidOW/ │ │ │ │ ├── 0.png.meta │ │ │ │ ├── 1.png.meta │ │ │ │ ├── 10.png.meta │ │ │ │ ├── 11.png.meta │ │ │ │ ├── 12.png.meta │ │ │ │ ├── 13.png.meta │ │ │ │ ├── 14.png.meta │ │ │ │ ├── 15.png.meta │ │ │ │ ├── 2.png.meta │ │ │ │ ├── 3.png.meta │ │ │ │ ├── 4.png.meta │ │ │ │ ├── 5.png.meta │ │ │ │ ├── 6.png.meta │ │ │ │ ├── 7.png.meta │ │ │ │ ├── 8.png.meta │ │ │ │ ├── 9.png.meta │ │ │ │ ├── f0.png.meta │ │ │ │ ├── f1.png.meta │ │ │ │ ├── f10.png.meta │ │ │ │ ├── f11.png.meta │ │ │ │ ├── f2.png.meta │ │ │ │ ├── f3.png.meta │ │ │ │ ├── f4.png.meta │ │ │ │ ├── f5.png.meta │ │ │ │ ├── f6.png.meta │ │ │ │ ├── f7.png.meta │ │ │ │ ├── f8.png.meta │ │ │ │ └── f9.png.meta │ │ │ ├── MonsterKidOW.meta │ │ │ ├── Mugshots/ │ │ │ │ ├── Asriel/ │ │ │ │ │ ├── happy.png.meta │ │ │ │ │ ├── happyT.png.meta │ │ │ │ │ ├── normal.png.meta │ │ │ │ │ ├── normalT.png.meta │ │ │ │ │ ├── sad.png.meta │ │ │ │ │ ├── sadT.png.meta │ │ │ │ │ ├── verySad.png.meta │ │ │ │ │ └── what.png.meta │ │ │ │ ├── Asriel.meta │ │ │ │ ├── Booster/ │ │ │ │ │ ├── angry.png.meta │ │ │ │ │ ├── angryT.png.meta │ │ │ │ │ ├── awMan.png.meta │ │ │ │ │ ├── happy.png.meta │ │ │ │ │ ├── happyT.png.meta │ │ │ │ │ ├── normal.png.meta │ │ │ │ │ ├── normalT.png.meta │ │ │ │ │ ├── sad.png.meta │ │ │ │ │ ├── sadT.png.meta │ │ │ │ │ ├── shock.png.meta │ │ │ │ │ └── shockT.png.meta │ │ │ │ ├── Booster.meta │ │ │ │ ├── Chara/ │ │ │ │ │ ├── ahem.png.meta │ │ │ │ │ ├── angry.png.meta │ │ │ │ │ ├── badsmile.png.meta │ │ │ │ │ ├── creepy.png.meta │ │ │ │ │ ├── normal.png.meta │ │ │ │ │ ├── sad.png.meta │ │ │ │ │ ├── smile.png.meta │ │ │ │ │ └── thinking.png.meta │ │ │ │ ├── Chara.meta │ │ │ │ ├── Frisk/ │ │ │ │ │ ├── angry.png.meta │ │ │ │ │ ├── angryLeft.png.meta │ │ │ │ │ ├── angryRight.png.meta │ │ │ │ │ ├── displeased.png.meta │ │ │ │ │ ├── frustrated.png.meta │ │ │ │ │ ├── fury.png.meta │ │ │ │ │ ├── glad.png.meta │ │ │ │ │ ├── happy.png.meta │ │ │ │ │ ├── mad.png.meta │ │ │ │ │ ├── normal.png.meta │ │ │ │ │ ├── normalOld.png.meta │ │ │ │ │ ├── sad.png.meta │ │ │ │ │ ├── serious.png.meta │ │ │ │ │ ├── woke.png.meta │ │ │ │ │ └── wokeOld.png.meta │ │ │ │ ├── Frisk.meta │ │ │ │ ├── Lukark/ │ │ │ │ │ ├── =3.png.meta │ │ │ │ │ ├── angry.png.meta │ │ │ │ │ ├── determimed.png.meta │ │ │ │ │ ├── determined.png.meta │ │ │ │ │ ├── normal.png.meta │ │ │ │ │ ├── perv.png.meta │ │ │ │ │ ├── pity.png.meta │ │ │ │ │ ├── seriously.png.meta │ │ │ │ │ ├── sorry.png.meta │ │ │ │ │ ├── surprised.png.meta │ │ │ │ │ └── waitwhat.png.meta │ │ │ │ ├── Lukark.meta │ │ │ │ ├── MK/ │ │ │ │ │ ├── determined.png.meta │ │ │ │ │ ├── happy.png.meta │ │ │ │ │ ├── horrified.png.meta │ │ │ │ │ ├── horrified2.png.meta │ │ │ │ │ ├── normal.png.meta │ │ │ │ │ ├── sad.png.meta │ │ │ │ │ ├── sad2.png.meta │ │ │ │ │ ├── stars.png.meta │ │ │ │ │ └── surprised.png.meta │ │ │ │ ├── MK.meta │ │ │ │ ├── Punder/ │ │ │ │ │ ├── angryIntimidated.png.meta │ │ │ │ │ ├── intimidated.png.meta │ │ │ │ │ ├── normal.png.meta │ │ │ │ │ ├── shocked.png.meta │ │ │ │ │ ├── superIntimidated.png.meta │ │ │ │ │ └── veryHappy.png.meta │ │ │ │ ├── Punder.meta │ │ │ │ └── Test_literal.png.meta │ │ │ ├── Mugshots.meta │ │ │ ├── Photo.png.meta │ │ │ ├── PhotoBack.png.meta │ │ │ ├── SavePoint/ │ │ │ │ ├── 0.png.meta │ │ │ │ └── 1.png.meta │ │ │ ├── SavePoint.meta │ │ │ ├── UI/ │ │ │ │ ├── Battle/ │ │ │ │ │ ├── heartshard_0.png.meta │ │ │ │ │ ├── heartshard_1.png.meta │ │ │ │ │ ├── heartshard_2.png.meta │ │ │ │ │ ├── heartshard_3.png.meta │ │ │ │ │ ├── spr_dustcloud_1.png.meta │ │ │ │ │ ├── spr_hpname_0.png.meta │ │ │ │ │ ├── spr_slice_o_0.png.meta │ │ │ │ │ ├── spr_slice_o_1.png.meta │ │ │ │ │ ├── spr_slice_o_2.png.meta │ │ │ │ │ ├── spr_slice_o_3.png.meta │ │ │ │ │ ├── spr_slice_o_4.png.meta │ │ │ │ │ ├── spr_slice_o_5.png.meta │ │ │ │ │ ├── spr_target_0.png.meta │ │ │ │ │ ├── spr_targetchoice_0.png.meta │ │ │ │ │ └── spr_targetchoice_1.png.meta │ │ │ │ ├── Battle.meta │ │ │ │ ├── Buttons/ │ │ │ │ │ ├── actbt_0.png.meta │ │ │ │ │ ├── actbt_1.png.meta │ │ │ │ │ ├── catbt_0.png.meta │ │ │ │ │ ├── catbt_1.png.meta │ │ │ │ │ ├── fightbt_0.png.meta │ │ │ │ │ ├── fightbt_1.png.meta │ │ │ │ │ ├── gifhtbt_0.png.meta │ │ │ │ │ ├── gifhtbt_1.png.meta │ │ │ │ │ ├── itembt_0.png.meta │ │ │ │ │ ├── itembt_1.png.meta │ │ │ │ │ ├── mecrybt_0.png.meta │ │ │ │ │ ├── mecrybt_1.png.meta │ │ │ │ │ ├── mercybt_0.png.meta │ │ │ │ │ ├── mercybt_1.png.meta │ │ │ │ │ ├── tembt_0.png.meta │ │ │ │ │ ├── tembt_1.png.meta │ │ │ │ │ └── tiembt_0.png.meta │ │ │ │ ├── Buttons.meta │ │ │ │ ├── Fonts/ │ │ │ │ │ ├── automap_from_meta.py │ │ │ │ │ ├── automap_from_meta.py.meta │ │ │ │ │ ├── menu.png.meta │ │ │ │ │ ├── menu.xml │ │ │ │ │ ├── menu.xml.meta │ │ │ │ │ ├── monster.png.meta │ │ │ │ │ ├── monster.xml │ │ │ │ │ ├── monster.xml.meta │ │ │ │ │ ├── monsternew.xml │ │ │ │ │ ├── monsternew.xml.meta │ │ │ │ │ ├── papyrus.png.meta │ │ │ │ │ ├── papyrus.xml │ │ │ │ │ ├── papyrus.xml.meta │ │ │ │ │ ├── sans.png.meta │ │ │ │ │ ├── sans.xml │ │ │ │ │ ├── sans.xml.meta │ │ │ │ │ ├── uibattlesmall.png.meta │ │ │ │ │ ├── uibattlesmall.xml │ │ │ │ │ ├── uibattlesmall.xml.meta │ │ │ │ │ ├── uidamagetext.png.meta │ │ │ │ │ ├── uidamagetext.xml │ │ │ │ │ ├── uidamagetext.xml.meta │ │ │ │ │ ├── uidamagetransp.png.meta │ │ │ │ │ ├── uidamagetransp.xml │ │ │ │ │ ├── uidamagetransp.xml.meta │ │ │ │ │ ├── uidialog.png.meta │ │ │ │ │ ├── uidialog.xml │ │ │ │ │ ├── uidialog.xml.meta │ │ │ │ │ ├── uidialoglilspace.png.meta │ │ │ │ │ ├── uidialoglilspace.xml │ │ │ │ │ ├── uidialoglilspace.xml.meta │ │ │ │ │ ├── uidialognew.png.meta │ │ │ │ │ ├── uidialognew.xml │ │ │ │ │ ├── uidialognew.xml.meta │ │ │ │ │ ├── unnamed_2013.png.meta │ │ │ │ │ ├── unnamed_2014.png.meta │ │ │ │ │ ├── unnamed_2016.png.meta │ │ │ │ │ ├── wingdings.png.meta │ │ │ │ │ ├── wingdings.xml │ │ │ │ │ └── wingdings.xml.meta │ │ │ │ ├── Fonts.meta │ │ │ │ ├── SpeechBubbles/ │ │ │ │ │ ├── bottom.png.meta │ │ │ │ │ ├── bottom.xml │ │ │ │ │ ├── bottom.xml.meta │ │ │ │ │ ├── empty.png.meta │ │ │ │ │ ├── left.png.meta │ │ │ │ │ ├── left.xml │ │ │ │ │ ├── left.xml.meta │ │ │ │ │ ├── leftlarge.png.meta │ │ │ │ │ ├── leftlarge.xml │ │ │ │ │ ├── leftlarge.xml.meta │ │ │ │ │ ├── leftlargeminus.png.meta │ │ │ │ │ ├── leftlargeminus.xml │ │ │ │ │ ├── leftlargeminus.xml.meta │ │ │ │ │ ├── leftshort.png.meta │ │ │ │ │ ├── leftshort.xml │ │ │ │ │ ├── leftshort.xml.meta │ │ │ │ │ ├── leftwide.png.meta │ │ │ │ │ ├── leftwide.xml │ │ │ │ │ ├── leftwide.xml.meta │ │ │ │ │ ├── leftwideminus.png.meta │ │ │ │ │ ├── leftwideminus.xml │ │ │ │ │ ├── leftwideminus.xml.meta │ │ │ │ │ ├── right.png.meta │ │ │ │ │ ├── right.xml │ │ │ │ │ ├── right.xml.meta │ │ │ │ │ ├── rightlarge.png.meta │ │ │ │ │ ├── rightlarge.xml │ │ │ │ │ ├── rightlarge.xml.meta │ │ │ │ │ ├── rightlargeminus.png.meta │ │ │ │ │ ├── rightlargeminus.xml │ │ │ │ │ ├── rightlargeminus.xml.meta │ │ │ │ │ ├── rightlong.png.meta │ │ │ │ │ ├── rightlong.xml │ │ │ │ │ ├── rightlong.xml.meta │ │ │ │ │ ├── rightshort.png.meta │ │ │ │ │ ├── rightshort.xml │ │ │ │ │ ├── rightshort.xml.meta │ │ │ │ │ ├── rightwide.png.meta │ │ │ │ │ ├── rightwide.xml │ │ │ │ │ ├── rightwide.xml.meta │ │ │ │ │ ├── rightwideminus.png.meta │ │ │ │ │ ├── rightwideminus.xml │ │ │ │ │ ├── rightwideminus.xml.meta │ │ │ │ │ ├── spr_blcontiny_0.png.meta │ │ │ │ │ ├── top.png.meta │ │ │ │ │ ├── top.xml │ │ │ │ │ ├── top.xml.meta │ │ │ │ │ ├── toptiny.png.meta │ │ │ │ │ ├── toptiny.xml │ │ │ │ │ └── toptiny.xml.meta │ │ │ │ ├── SpeechBubbles.meta │ │ │ │ ├── spr_gameoverbg_0.png.meta │ │ │ │ ├── spr_hpname_0.png.meta │ │ │ │ ├── spr_phname_0.png.meta │ │ │ │ ├── spr_target_0.png.meta │ │ │ │ └── sq_white.png.meta │ │ │ ├── UI.meta │ │ │ ├── bar-px.png.meta │ │ │ ├── black.png.meta │ │ │ ├── empty.png.meta │ │ │ ├── px.png.meta │ │ │ ├── spr_chestbox_0.png.meta │ │ │ ├── spr_heartgtfo_0.png.meta │ │ │ ├── spr_heartgtfo_1.png.meta │ │ │ ├── ut-heart-broken.png.meta │ │ │ └── ut-heart.png.meta │ │ └── Sprites.meta │ ├── Default.meta │ ├── Editor/ │ │ ├── BundleShaders.cs │ │ ├── BundleShaders.cs.meta │ │ ├── Shaders/ │ │ │ ├── CYFShaderTemplate.shader │ │ │ ├── CYFShaderTemplate.shader.meta │ │ │ ├── Displacement.shader │ │ │ ├── Displacement.shader.meta │ │ │ ├── FitScreen.shader │ │ │ ├── FitScreen.shader.meta │ │ │ ├── Gradient.shader │ │ │ ├── Gradient.shader.meta │ │ │ ├── Invert.shader │ │ │ ├── Invert.shader.meta │ │ │ ├── Rotation.shader │ │ │ ├── Rotation.shader.meta │ │ │ ├── ScreenScale.shader │ │ │ ├── ScreenScale.shader.meta │ │ │ ├── Wave.shader │ │ │ └── Wave.shader.meta │ │ ├── Shaders.meta │ │ ├── UnityBuilderAction/ │ │ │ ├── BuildScript.cs │ │ │ └── BuildScript.cs.meta │ │ └── UnityBuilderAction.meta │ ├── Editor.meta │ ├── Fonts/ │ │ ├── Arial/ │ │ │ ├── ARIAL.TTF.meta │ │ │ ├── ARIALBD.TTF.meta │ │ │ └── ARIALI.TTF.meta │ │ ├── Arial.meta │ │ ├── PixelOperator/ │ │ │ ├── LICENSE.txt │ │ │ ├── LICENSE.txt.meta │ │ │ └── PixelOperator-Bold.ttf.meta │ │ └── PixelOperator.meta │ ├── Fonts.meta │ ├── Mods/ │ │ ├── @0.5.0_SEE_CRATE/ │ │ │ ├── Audio/ │ │ │ │ ├── mus_undertale.ogg │ │ │ │ ├── mus_undertale.ogg.meta │ │ │ │ ├── put your music here, oggs only │ │ │ │ ├── put your music here, oggs only.meta │ │ │ │ ├── thechoice.ogg │ │ │ │ └── thechoice.ogg.meta │ │ │ ├── Audio.meta │ │ │ ├── DON'T SPOIL YOURSELF │ │ │ ├── DON'T SPOIL YOURSELF.meta │ │ │ ├── Lua/ │ │ │ │ ├── Animations/ │ │ │ │ │ ├── ScruffleAnim.lua │ │ │ │ │ ├── ScruffleAnim.lua.meta │ │ │ │ │ ├── StaticAnim.lua │ │ │ │ │ ├── StaticAnim.lua.meta │ │ │ │ │ ├── exrumia_anim.lua │ │ │ │ │ ├── exrumia_anim.lua.meta │ │ │ │ │ ├── lukark_anim.lua │ │ │ │ │ └── lukark_anim.lua.meta │ │ │ │ ├── Animations.meta │ │ │ │ ├── Encounters/ │ │ │ │ │ ├── Story1.lua │ │ │ │ │ ├── Story1.lua.meta │ │ │ │ │ ├── Story2.lua │ │ │ │ │ ├── Story2.lua.meta │ │ │ │ │ ├── Story3.lua │ │ │ │ │ ├── Story3.lua.meta │ │ │ │ │ ├── Story4.lua │ │ │ │ │ ├── Story4.lua.meta │ │ │ │ │ ├── Story5.lua │ │ │ │ │ ├── Story5.lua.meta │ │ │ │ │ ├── TheFinalChoice.lua │ │ │ │ │ └── TheFinalChoice.lua.meta │ │ │ │ ├── Encounters.meta │ │ │ │ ├── Events/ │ │ │ │ │ ├── MusicWarper.lua │ │ │ │ │ ├── MusicWarper.lua.meta │ │ │ │ │ ├── Story1.lua │ │ │ │ │ ├── Story1.lua.meta │ │ │ │ │ ├── Story2.lua │ │ │ │ │ ├── Story2.lua.meta │ │ │ │ │ ├── Story3.lua │ │ │ │ │ ├── Story3.lua.meta │ │ │ │ │ ├── Story4.lua │ │ │ │ │ ├── Story4.lua.meta │ │ │ │ │ ├── Story5.lua │ │ │ │ │ ├── Story5.lua.meta │ │ │ │ │ ├── TheFinalChoice.lua │ │ │ │ │ └── TheFinalChoice.lua.meta │ │ │ │ ├── Events.meta │ │ │ │ ├── Monsters/ │ │ │ │ │ ├── claribel.lua │ │ │ │ │ ├── claribel.lua.meta │ │ │ │ │ ├── ellie.lua │ │ │ │ │ ├── ellie.lua.meta │ │ │ │ │ ├── exrumia.lua │ │ │ │ │ ├── exrumia.lua.meta │ │ │ │ │ ├── lukark.lua │ │ │ │ │ ├── lukark.lua.meta │ │ │ │ │ ├── mionn.lua │ │ │ │ │ ├── mionn.lua.meta │ │ │ │ │ ├── punderbolt.lua │ │ │ │ │ ├── punderbolt.lua.meta │ │ │ │ │ ├── scruffle.lua │ │ │ │ │ ├── scruffle.lua.meta │ │ │ │ │ ├── static.lua │ │ │ │ │ └── static.lua.meta │ │ │ │ ├── Monsters.meta │ │ │ │ ├── Waves/ │ │ │ │ │ ├── bullettest_bouncy.lua │ │ │ │ │ ├── bullettest_bouncy.lua.meta │ │ │ │ │ ├── bullettest_chaserorb.lua │ │ │ │ │ ├── bullettest_chaserorb.lua.meta │ │ │ │ │ ├── bullettest_touhou.lua │ │ │ │ │ ├── bullettest_touhou.lua.meta │ │ │ │ │ ├── thechoice.lua │ │ │ │ │ └── thechoice.lua.meta │ │ │ │ └── Waves.meta │ │ │ ├── Lua.meta │ │ │ ├── Sounds/ │ │ │ │ ├── Voices/ │ │ │ │ │ ├── claribel-orig.wav.meta │ │ │ │ │ ├── claribel.ogg │ │ │ │ │ ├── claribel.ogg.meta │ │ │ │ │ ├── ellie.wav.meta │ │ │ │ │ ├── lukark.ogg │ │ │ │ │ ├── lukark.ogg.meta │ │ │ │ │ ├── mionn.wav.meta │ │ │ │ │ ├── punderbolt.ogg │ │ │ │ │ ├── punderbolt.ogg.meta │ │ │ │ │ └── rum.wav.meta │ │ │ │ ├── Voices.meta │ │ │ │ ├── glitch.ogg │ │ │ │ ├── glitch.ogg.meta │ │ │ │ ├── happening.ogg │ │ │ │ └── happening.ogg.meta │ │ │ ├── Sounds.meta │ │ │ ├── Sprites/ │ │ │ │ ├── ExRumia/ │ │ │ │ │ ├── 1.png.meta │ │ │ │ │ ├── 2.png.meta │ │ │ │ │ ├── 3.png.meta │ │ │ │ │ ├── 4.png.meta │ │ │ │ │ ├── 5.png.meta │ │ │ │ │ ├── 6.png.meta │ │ │ │ │ ├── 7.png.meta │ │ │ │ │ ├── 8.png.meta │ │ │ │ │ └── 9.png.meta │ │ │ │ ├── ExRumia.meta │ │ │ │ ├── Lukark/ │ │ │ │ │ ├── arms/ │ │ │ │ │ │ ├── 1.png.meta │ │ │ │ │ │ ├── 2.png.meta │ │ │ │ │ │ ├── 3.png.meta │ │ │ │ │ │ └── 4.png.meta │ │ │ │ │ ├── arms.meta │ │ │ │ │ ├── hair/ │ │ │ │ │ │ ├── 1.png.meta │ │ │ │ │ │ ├── 2.png.meta │ │ │ │ │ │ ├── 3.png.meta │ │ │ │ │ │ └── 4.png.meta │ │ │ │ │ ├── hair.meta │ │ │ │ │ ├── headhappy.png.meta │ │ │ │ │ ├── headnormal.png.meta │ │ │ │ │ ├── headsad.png.meta │ │ │ │ │ ├── headsmile.png.meta │ │ │ │ │ ├── legs.png.meta │ │ │ │ │ └── torso.png.meta │ │ │ │ ├── Lukark.meta │ │ │ │ ├── Mionn/ │ │ │ │ │ ├── happy.png.meta │ │ │ │ │ ├── sad.png.meta │ │ │ │ │ ├── transit_to_fight1.png.meta │ │ │ │ │ ├── transit_to_fight2.png.meta │ │ │ │ │ ├── transit_to_fight3.png.meta │ │ │ │ │ └── transit_to_fight4.png.meta │ │ │ │ ├── Mionn.meta │ │ │ │ ├── Punderbolt/ │ │ │ │ │ ├── Death/ │ │ │ │ │ │ ├── 1.png.meta │ │ │ │ │ │ ├── 2.png.meta │ │ │ │ │ │ ├── Safe/ │ │ │ │ │ │ │ ├── 1.png.meta │ │ │ │ │ │ │ ├── 2.png.meta │ │ │ │ │ │ │ ├── angry.png.meta │ │ │ │ │ │ │ ├── contorted.png.meta │ │ │ │ │ │ │ ├── death.png.meta │ │ │ │ │ │ │ ├── eyesclosed.png.meta │ │ │ │ │ │ │ ├── hurt.png.meta │ │ │ │ │ │ │ ├── normal.png.meta │ │ │ │ │ │ │ └── smile.png.meta │ │ │ │ │ │ ├── Safe.meta │ │ │ │ │ │ ├── angry.png.meta │ │ │ │ │ │ ├── contorted.png.meta │ │ │ │ │ │ ├── death.png.meta │ │ │ │ │ │ ├── eyesclosed.png.meta │ │ │ │ │ │ ├── hurt.png.meta │ │ │ │ │ │ ├── normal.png.meta │ │ │ │ │ │ └── smile.png.meta │ │ │ │ │ ├── Death.meta │ │ │ │ │ ├── Punder over.png.meta │ │ │ │ │ ├── PunderDown1.png.meta │ │ │ │ │ ├── PunderDown2.png.meta │ │ │ │ │ ├── PunderDown3.png.meta │ │ │ │ │ ├── PunderDown4.png.meta │ │ │ │ │ ├── PunderLeft1.png.meta │ │ │ │ │ ├── PunderLeft2.png.meta │ │ │ │ │ ├── PunderLeft3.png.meta │ │ │ │ │ ├── PunderLeft4.png.meta │ │ │ │ │ ├── PunderRight1.png.meta │ │ │ │ │ ├── PunderRight2.png.meta │ │ │ │ │ ├── PunderRight3.png.meta │ │ │ │ │ ├── PunderRight4.png.meta │ │ │ │ │ ├── PunderUp1.png.meta │ │ │ │ │ ├── PunderUp2.png.meta │ │ │ │ │ ├── PunderUp3.png.meta │ │ │ │ │ ├── PunderUp4.png.meta │ │ │ │ │ ├── angry.png.meta │ │ │ │ │ ├── bracing.png.meta │ │ │ │ │ ├── dunno.png.meta │ │ │ │ │ ├── happy.png.meta │ │ │ │ │ ├── lookbottomrightsmile.png.meta │ │ │ │ │ ├── lookright.png.meta │ │ │ │ │ ├── lookrightsmile.png.meta │ │ │ │ │ ├── normal.png.meta │ │ │ │ │ ├── pensive.png.meta │ │ │ │ │ ├── smile.png.meta │ │ │ │ │ └── surprised.png.meta │ │ │ │ ├── Punderbolt.meta │ │ │ │ ├── Scruffle/ │ │ │ │ │ ├── Death/ │ │ │ │ │ │ ├── dustingmess.png.meta │ │ │ │ │ │ ├── head2.png.meta │ │ │ │ │ │ ├── head3.png.meta │ │ │ │ │ │ ├── head4.png.meta │ │ │ │ │ │ ├── leftleg.png.meta │ │ │ │ │ │ ├── righthand.png.meta │ │ │ │ │ │ ├── rightleg.png.meta │ │ │ │ │ │ └── surprise.png.meta │ │ │ │ │ ├── Death.meta │ │ │ │ │ ├── blush.png.meta │ │ │ │ │ ├── head.png.meta │ │ │ │ │ ├── hollow.png.meta │ │ │ │ │ ├── hoodtail.png.meta │ │ │ │ │ ├── hurt.png.meta │ │ │ │ │ ├── hurtOld.png.meta │ │ │ │ │ ├── leftarm.png.meta │ │ │ │ │ ├── leftarmbot.png.meta │ │ │ │ │ ├── leftarmtop.png.meta │ │ │ │ │ ├── lefthand.png.meta │ │ │ │ │ ├── leftleg.png.meta │ │ │ │ │ ├── preview.png.meta │ │ │ │ │ ├── rightarm.png.meta │ │ │ │ │ ├── rightarmbot.png.meta │ │ │ │ │ ├── rightarmtop.png.meta │ │ │ │ │ ├── righthand.png.meta │ │ │ │ │ ├── rightleg.png.meta │ │ │ │ │ ├── spared.png.meta │ │ │ │ │ └── torso.png.meta │ │ │ │ ├── Scruffle.meta │ │ │ │ ├── Static/ │ │ │ │ │ ├── Death/ │ │ │ │ │ │ ├── dustingmess.png.meta │ │ │ │ │ │ ├── face - Copy.png.meta │ │ │ │ │ │ ├── face.png.meta │ │ │ │ │ │ ├── facemask.png.meta │ │ │ │ │ │ ├── rhand.png.meta │ │ │ │ │ │ ├── smoke.png.meta │ │ │ │ │ │ ├── staticeffect1.png.meta │ │ │ │ │ │ ├── staticeffect2.png.meta │ │ │ │ │ │ ├── staticeffect3.png.meta │ │ │ │ │ │ └── x.png.meta │ │ │ │ │ ├── Death.meta │ │ │ │ │ ├── Hurt/ │ │ │ │ │ │ ├── Hurt.png.meta │ │ │ │ │ │ ├── facemask.png.meta │ │ │ │ │ │ ├── fluffmask.png.meta │ │ │ │ │ │ ├── learmask.png.meta │ │ │ │ │ │ ├── rearmask.png.meta │ │ │ │ │ │ └── tailmask.png.meta │ │ │ │ │ ├── Hurt.meta │ │ │ │ │ ├── face.png.meta │ │ │ │ │ ├── faceMTT1.png.meta │ │ │ │ │ ├── faceMTT2.png.meta │ │ │ │ │ ├── facemask.png.meta │ │ │ │ │ ├── fluff.png.meta │ │ │ │ │ ├── fluffmask.png.meta │ │ │ │ │ ├── headbase.png.meta │ │ │ │ │ ├── hollow.png.meta │ │ │ │ │ ├── larm.png.meta │ │ │ │ │ ├── lear.png.meta │ │ │ │ │ ├── learmask.png.meta │ │ │ │ │ ├── legs.png.meta │ │ │ │ │ ├── lhand.png.meta │ │ │ │ │ ├── preview.png.meta │ │ │ │ │ ├── previewNoMask.png.meta │ │ │ │ │ ├── rarm.png.meta │ │ │ │ │ ├── rear.png.meta │ │ │ │ │ ├── rearmask.png.meta │ │ │ │ │ ├── rhand.png.meta │ │ │ │ │ ├── spared.png.meta │ │ │ │ │ ├── staticeffect.png.meta │ │ │ │ │ ├── tail.png.meta │ │ │ │ │ ├── tailmask.png.meta │ │ │ │ │ └── torso.png.meta │ │ │ │ ├── Static.meta │ │ │ │ ├── UI/ │ │ │ │ │ ├── SpeechBubbles/ │ │ │ │ │ │ ├── claribel.png.meta │ │ │ │ │ │ ├── claribel.xml │ │ │ │ │ │ ├── claribel.xml.meta │ │ │ │ │ │ ├── ellie.png.meta │ │ │ │ │ │ ├── ellie.xml │ │ │ │ │ │ ├── ellie.xml.meta │ │ │ │ │ │ ├── exrumia.png.meta │ │ │ │ │ │ ├── exrumia.xml │ │ │ │ │ │ ├── exrumia.xml.meta │ │ │ │ │ │ ├── lukark.png.meta │ │ │ │ │ │ ├── lukark.xml │ │ │ │ │ │ ├── lukark.xml.meta │ │ │ │ │ │ ├── mionn.png.meta │ │ │ │ │ │ ├── mionn.xml │ │ │ │ │ │ ├── mionn.xml.meta │ │ │ │ │ │ ├── rightlargeminus.png.meta │ │ │ │ │ │ ├── rightlargeminus.xml │ │ │ │ │ │ ├── rightlargeminus.xml.meta │ │ │ │ │ │ ├── scruffle.png.meta │ │ │ │ │ │ ├── scruffle.xml │ │ │ │ │ │ ├── scruffle.xml.meta │ │ │ │ │ │ ├── static.png.meta │ │ │ │ │ │ ├── static.xml │ │ │ │ │ │ └── static.xml.meta │ │ │ │ │ └── SpeechBubbles.meta │ │ │ │ ├── UI.meta │ │ │ │ ├── bg.png.meta │ │ │ │ ├── black.png.meta │ │ │ │ ├── bullet.png.meta │ │ │ │ ├── claribel.png.meta │ │ │ │ ├── ellie.png.meta │ │ │ │ ├── emptylukark.png.meta │ │ │ │ ├── emptypunder.png.meta │ │ │ │ ├── newhome3.png.meta │ │ │ │ ├── poseur.png.meta │ │ │ │ └── white.png.meta │ │ │ └── Sprites.meta │ │ ├── @0.5.0_SEE_CRATE.meta │ │ ├── @OverWorld Test/ │ │ │ ├── Audio/ │ │ │ │ ├── mus_core.ogg │ │ │ │ ├── mus_core.ogg.meta │ │ │ │ ├── put your music here, oggs only │ │ │ │ └── put your music here, oggs only.meta │ │ │ ├── Audio.meta │ │ │ ├── Lua/ │ │ │ │ ├── Encounters/ │ │ │ │ │ ├── encounter.lua │ │ │ │ │ └── encounter.lua.meta │ │ │ │ ├── Encounters.meta │ │ │ │ ├── Events/ │ │ │ │ │ ├── SaveTest.lua │ │ │ │ │ ├── SaveTest.lua.meta │ │ │ │ │ ├── Secret/ │ │ │ │ │ │ ├── 8ba3f2c2.lua │ │ │ │ │ │ └── 8ba3f2c2.lua.meta │ │ │ │ │ ├── Secret.meta │ │ │ │ │ ├── punderTest1.lua │ │ │ │ │ └── punderTest1.lua.meta │ │ │ │ ├── Events.meta │ │ │ │ ├── Monsters/ │ │ │ │ │ ├── poseur.lua │ │ │ │ │ └── poseur.lua.meta │ │ │ │ ├── Monsters.meta │ │ │ │ ├── Waves/ │ │ │ │ │ ├── bullettest_bouncy.lua │ │ │ │ │ ├── bullettest_bouncy.lua.meta │ │ │ │ │ ├── bullettest_chaserorb.lua │ │ │ │ │ ├── bullettest_chaserorb.lua.meta │ │ │ │ │ ├── bullettest_touhou.lua │ │ │ │ │ └── bullettest_touhou.lua.meta │ │ │ │ └── Waves.meta │ │ │ ├── Lua.meta │ │ │ ├── Sounds/ │ │ │ │ ├── Secret/ │ │ │ │ │ ├── Fall.wav.meta │ │ │ │ │ └── noise.wav.meta │ │ │ │ ├── Secret.meta │ │ │ │ ├── Voices/ │ │ │ │ │ ├── punderbolt.ogg │ │ │ │ │ └── punderbolt.ogg.meta │ │ │ │ └── Voices.meta │ │ │ ├── Sounds.meta │ │ │ ├── Sprites/ │ │ │ │ ├── Mugshots/ │ │ │ │ │ └── addYourCustomFaceSpritesHere.png.meta │ │ │ │ ├── Mugshots.meta │ │ │ │ ├── Overworld/ │ │ │ │ │ ├── Punder/ │ │ │ │ │ │ ├── 0.png.meta │ │ │ │ │ │ ├── 1.png.meta │ │ │ │ │ │ ├── 10.png.meta │ │ │ │ │ │ ├── 11.png.meta │ │ │ │ │ │ ├── 12.png.meta │ │ │ │ │ │ ├── 13.png.meta │ │ │ │ │ │ ├── 14.png.meta │ │ │ │ │ │ ├── 15.png.meta │ │ │ │ │ │ ├── 2.png.meta │ │ │ │ │ │ ├── 3.png.meta │ │ │ │ │ │ ├── 4.png.meta │ │ │ │ │ │ ├── 5.png.meta │ │ │ │ │ │ ├── 6.png.meta │ │ │ │ │ │ ├── 7.png.meta │ │ │ │ │ │ ├── 8.png.meta │ │ │ │ │ │ └── 9.png.meta │ │ │ │ │ └── Punder.meta │ │ │ │ ├── Overworld.meta │ │ │ │ ├── bg.png.meta │ │ │ │ ├── bullet.png.meta │ │ │ │ └── poseur.png.meta │ │ │ └── Sprites.meta │ │ ├── @OverWorld Test.meta │ │ ├── @Title/ │ │ │ ├── Audio/ │ │ │ │ ├── mus_intro.ogg │ │ │ │ ├── mus_intro.ogg.meta │ │ │ │ ├── mus_menu.ogg │ │ │ │ └── mus_menu.ogg.meta │ │ │ ├── Audio.meta │ │ │ ├── Sounds/ │ │ │ │ ├── intro_holdup.ogg │ │ │ │ ├── intro_holdup.ogg.meta │ │ │ │ ├── intro_noise.ogg │ │ │ │ └── intro_noise.ogg.meta │ │ │ ├── Sounds.meta │ │ │ ├── Sprites/ │ │ │ │ ├── Intro/ │ │ │ │ │ ├── mask.png.meta │ │ │ │ │ ├── spr_introimage_0.png.meta │ │ │ │ │ ├── spr_introimage_1.png.meta │ │ │ │ │ ├── spr_introimage_10.png.meta │ │ │ │ │ ├── spr_introimage_2.png.meta │ │ │ │ │ ├── spr_introimage_3.png.meta │ │ │ │ │ ├── spr_introimage_4.png.meta │ │ │ │ │ ├── spr_introimage_5.png.meta │ │ │ │ │ ├── spr_introimage_6.png.meta │ │ │ │ │ ├── spr_introimage_7.png.meta │ │ │ │ │ ├── spr_introimage_8.png.meta │ │ │ │ │ ├── spr_introimage_9.png.meta │ │ │ │ │ └── spr_introlast_0.png.meta │ │ │ │ ├── Intro.meta │ │ │ │ ├── Press Enter or Z.png.meta │ │ │ │ └── Unitale_title.png.meta │ │ │ └── Sprites.meta │ │ ├── @Title.meta │ │ ├── Encounter Skeleton/ │ │ │ ├── Audio/ │ │ │ │ ├── put your music here, oggs only │ │ │ │ └── put your music here, oggs only.meta │ │ │ ├── Audio.meta │ │ │ ├── Lua/ │ │ │ │ ├── Encounters/ │ │ │ │ │ ├── encounter.lua │ │ │ │ │ └── encounter.lua.meta │ │ │ │ ├── Encounters.meta │ │ │ │ ├── Monsters/ │ │ │ │ │ ├── poseur.lua │ │ │ │ │ └── poseur.lua.meta │ │ │ │ ├── Monsters.meta │ │ │ │ ├── Waves/ │ │ │ │ │ ├── bullettest_bouncy.lua │ │ │ │ │ ├── bullettest_bouncy.lua.meta │ │ │ │ │ ├── bullettest_chaserorb.lua │ │ │ │ │ ├── bullettest_chaserorb.lua.meta │ │ │ │ │ ├── bullettest_touhou.lua │ │ │ │ │ └── bullettest_touhou.lua.meta │ │ │ │ └── Waves.meta │ │ │ ├── Lua.meta │ │ │ ├── Sprites/ │ │ │ │ ├── bg.png.meta │ │ │ │ ├── bullet.png.meta │ │ │ │ └── poseur.png.meta │ │ │ └── Sprites.meta │ │ ├── Encounter Skeleton.meta │ │ ├── Examples/ │ │ │ ├── Audio/ │ │ │ │ ├── mus_anothermedium.ogg │ │ │ │ ├── mus_anothermedium.ogg.meta │ │ │ │ ├── mus_zzz_c.ogg │ │ │ │ ├── mus_zzz_c.ogg.meta │ │ │ │ ├── put your music here, ogg or wav only │ │ │ │ └── put your music here, ogg or wav only.meta │ │ │ ├── Audio.meta │ │ │ ├── Lua/ │ │ │ │ ├── Animations/ │ │ │ │ │ ├── sans_anim.lua │ │ │ │ │ └── sans_anim.lua.meta │ │ │ │ ├── Animations.meta │ │ │ │ ├── Encounters/ │ │ │ │ │ ├── #00 - Basic Encounter Skeleton.lua │ │ │ │ │ ├── #00 - Basic Encounter Skeleton.lua.meta │ │ │ │ │ ├── #05 - New characters.lua │ │ │ │ │ ├── #05 - New characters.lua.meta │ │ │ │ │ ├── #06 - Arena movements.lua │ │ │ │ │ ├── #06 - Arena movements.lua.meta │ │ │ │ │ ├── #07 - Many quins.lua │ │ │ │ │ ├── #07 - Many quins.lua.meta │ │ │ │ │ ├── #08 - Intro + LaunchMusic.lua │ │ │ │ │ ├── #08 - Intro + LaunchMusic.lua.meta │ │ │ │ │ ├── #09 - Revive test.lua │ │ │ │ │ ├── #09 - Revive test.lua.meta │ │ │ │ │ ├── #10 - timeScale test.lua │ │ │ │ │ ├── #10 - timeScale test.lua.meta │ │ │ │ │ ├── 01 - Two monsters.lua │ │ │ │ │ ├── 01 - Two monsters.lua.meta │ │ │ │ │ ├── 02 - Colored bullets.lua │ │ │ │ │ ├── 02 - Colored bullets.lua.meta │ │ │ │ │ ├── 03 - Library Example.lua │ │ │ │ │ ├── 03 - Library Example.lua.meta │ │ │ │ │ ├── 04 - Animation.lua │ │ │ │ │ └── 04 - Animation.lua.meta │ │ │ │ ├── Encounters.meta │ │ │ │ ├── Events/ │ │ │ │ │ ├── BoxTest.lua │ │ │ │ │ ├── BoxTest.lua.meta │ │ │ │ │ ├── Bpie.lua │ │ │ │ │ ├── Bpie.lua.meta │ │ │ │ │ ├── CharacterSelector.lua │ │ │ │ │ ├── CharacterSelector.lua.meta │ │ │ │ │ ├── EventTest.lua │ │ │ │ │ ├── EventTest.lua.meta │ │ │ │ │ ├── PunderTest.lua │ │ │ │ │ ├── PunderTest.lua.meta │ │ │ │ │ ├── SaveTest.lua │ │ │ │ │ ├── SaveTest.lua.meta │ │ │ │ │ ├── StareTest.lua │ │ │ │ │ └── StareTest.lua.meta │ │ │ │ ├── Events.meta │ │ │ │ ├── Libraries/ │ │ │ │ │ ├── randomvoice.lua │ │ │ │ │ └── randomvoice.lua.meta │ │ │ │ ├── Libraries.meta │ │ │ │ ├── Monsters/ │ │ │ │ │ ├── bulletTestingPoseur.lua │ │ │ │ │ ├── bulletTestingPoseur.lua.meta │ │ │ │ │ ├── newCharactersPoseur.lua │ │ │ │ │ ├── newCharactersPoseur.lua.meta │ │ │ │ │ ├── poseur.lua │ │ │ │ │ ├── poseur.lua.meta │ │ │ │ │ ├── poseurIntroAndLaunchMusic.lua │ │ │ │ │ ├── poseurIntroAndLaunchMusic.lua.meta │ │ │ │ │ ├── sans.lua │ │ │ │ │ ├── sans.lua.meta │ │ │ │ │ ├── timeScalePoseur.lua │ │ │ │ │ ├── timeScalePoseur.lua.meta │ │ │ │ │ ├── twoMonstersPosette.lua │ │ │ │ │ ├── twoMonstersPosette.lua.meta │ │ │ │ │ ├── twoMonstersPoseur.lua │ │ │ │ │ └── twoMonstersPoseur.lua.meta │ │ │ │ ├── Monsters.meta │ │ │ │ ├── Waves/ │ │ │ │ │ ├── COMBINED.lua │ │ │ │ │ ├── COMBINED.lua.meta │ │ │ │ │ ├── CYAN.lua │ │ │ │ │ ├── CYAN.lua.meta │ │ │ │ │ ├── GREEN.lua │ │ │ │ │ ├── GREEN.lua.meta │ │ │ │ │ ├── ORANGE.lua │ │ │ │ │ ├── ORANGE.lua.meta │ │ │ │ │ ├── REGULAR.lua │ │ │ │ │ ├── REGULAR.lua.meta │ │ │ │ │ ├── arenatest_move.lua │ │ │ │ │ ├── arenatest_move.lua.meta │ │ │ │ │ ├── bullettest_bouncy.lua │ │ │ │ │ ├── bullettest_bouncy.lua.meta │ │ │ │ │ ├── bullettest_bouncy_time.lua │ │ │ │ │ ├── bullettest_bouncy_time.lua.meta │ │ │ │ │ ├── bullettest_chaserorb.lua │ │ │ │ │ ├── bullettest_chaserorb.lua.meta │ │ │ │ │ ├── bullettest_chaserorb_time.lua │ │ │ │ │ ├── bullettest_chaserorb_time.lua.meta │ │ │ │ │ ├── bullettest_touhou.lua │ │ │ │ │ ├── bullettest_touhou.lua.meta │ │ │ │ │ ├── bullettest_touhou_time.lua │ │ │ │ │ └── bullettest_touhou_time.lua.meta │ │ │ │ └── Waves.meta │ │ │ ├── Lua.meta │ │ │ ├── Sounds/ │ │ │ │ ├── Bark.wav.meta │ │ │ │ ├── Bump.ogg │ │ │ │ ├── Bump.ogg.meta │ │ │ │ ├── Credits.txt │ │ │ │ ├── Credits.txt.meta │ │ │ │ ├── Jump.wav.meta │ │ │ │ ├── Laugh.wav.meta │ │ │ │ ├── SE1_EVT_LINE_DRAW1.wav.meta │ │ │ │ ├── SE1_EVT_LINE_TURN2.wav.meta │ │ │ │ ├── Secret/ │ │ │ │ │ └── sound.wav.meta │ │ │ │ ├── Secret.meta │ │ │ │ ├── Squeak.wav.meta │ │ │ │ ├── Surprised Bark.ogg │ │ │ │ ├── Surprised Bark.ogg.meta │ │ │ │ ├── Voices/ │ │ │ │ │ ├── punderbolt.ogg │ │ │ │ │ └── punderbolt.ogg.meta │ │ │ │ ├── Voices.meta │ │ │ │ ├── mario-pain.ogg │ │ │ │ ├── mario-pain.ogg.meta │ │ │ │ ├── sm64_impact.wav.meta │ │ │ │ ├── step-floor.ogg │ │ │ │ └── step-floor.ogg.meta │ │ │ ├── Sounds.meta │ │ │ ├── Sprites/ │ │ │ │ ├── Mugshots/ │ │ │ │ │ ├── Papyrus/ │ │ │ │ │ │ ├── mad.png.meta │ │ │ │ │ │ ├── madT.png.meta │ │ │ │ │ │ ├── normal.png.meta │ │ │ │ │ │ ├── normalT.png.meta │ │ │ │ │ │ ├── papy he do a jump.png.meta │ │ │ │ │ │ ├── suspicious.png.meta │ │ │ │ │ │ └── suspiciousT.png.meta │ │ │ │ │ ├── Papyrus.meta │ │ │ │ │ ├── Punder/ │ │ │ │ │ │ └── sun.png.meta │ │ │ │ │ └── Punder.meta │ │ │ │ ├── Mugshots.meta │ │ │ │ ├── Overworld/ │ │ │ │ │ ├── Asriel/ │ │ │ │ │ │ ├── 0.png.meta │ │ │ │ │ │ ├── 1.png.meta │ │ │ │ │ │ ├── 10.png.meta │ │ │ │ │ │ ├── 11.png.meta │ │ │ │ │ │ ├── 12.png.meta │ │ │ │ │ │ ├── 13.png.meta │ │ │ │ │ │ ├── 14.png.meta │ │ │ │ │ │ ├── 15.png.meta │ │ │ │ │ │ ├── 16.png.meta │ │ │ │ │ │ ├── 17.png.meta │ │ │ │ │ │ ├── 2.png.meta │ │ │ │ │ │ ├── 3.png.meta │ │ │ │ │ │ ├── 4.png.meta │ │ │ │ │ │ ├── 5.png.meta │ │ │ │ │ │ ├── 6.png.meta │ │ │ │ │ │ ├── 7.png.meta │ │ │ │ │ │ ├── 8.png.meta │ │ │ │ │ │ └── 9.png.meta │ │ │ │ │ ├── Asriel.meta │ │ │ │ │ ├── Booster/ │ │ │ │ │ │ ├── j.png.meta │ │ │ │ │ │ └── p.png.meta │ │ │ │ │ ├── Booster.meta │ │ │ │ │ ├── Bpie.png.meta │ │ │ │ │ ├── Chara/ │ │ │ │ │ │ ├── bigslice/ │ │ │ │ │ │ │ ├── 0.png.meta │ │ │ │ │ │ │ ├── 1.png.meta │ │ │ │ │ │ │ ├── 2.png.meta │ │ │ │ │ │ │ ├── 3.png.meta │ │ │ │ │ │ │ ├── 4.png.meta │ │ │ │ │ │ │ └── 5.png.meta │ │ │ │ │ │ ├── bigslice.meta │ │ │ │ │ │ ├── c0.png.meta │ │ │ │ │ │ ├── c1.png.meta │ │ │ │ │ │ ├── c2.png.meta │ │ │ │ │ │ ├── c3.png.meta │ │ │ │ │ │ ├── c4.png.meta │ │ │ │ │ │ ├── c5.png.meta │ │ │ │ │ │ └── vignette.png.meta │ │ │ │ │ ├── Chara.meta │ │ │ │ │ ├── CharacterSelector/ │ │ │ │ │ │ ├── Mystery/ │ │ │ │ │ │ │ ├── cross1.png.meta │ │ │ │ │ │ │ ├── cross2.png.meta │ │ │ │ │ │ │ ├── cross3.png.meta │ │ │ │ │ │ │ ├── cross4.png.meta │ │ │ │ │ │ │ ├── cross5.png.meta │ │ │ │ │ │ │ ├── cross6.png.meta │ │ │ │ │ │ │ ├── mysteryman/ │ │ │ │ │ │ │ │ ├── 1.png.meta │ │ │ │ │ │ │ │ └── 2.png.meta │ │ │ │ │ │ │ └── mysteryman.meta │ │ │ │ │ │ ├── Mystery.meta │ │ │ │ │ │ ├── window_back.png.meta │ │ │ │ │ │ └── window_border.png.meta │ │ │ │ │ ├── CharacterSelector.meta │ │ │ │ │ ├── Dog.png.meta │ │ │ │ │ ├── DogBark.png.meta │ │ │ │ │ ├── DogButt.png.meta │ │ │ │ │ ├── DogHead.png.meta │ │ │ │ │ ├── DogLegs.png.meta │ │ │ │ │ ├── DogPaws.png.meta │ │ │ │ │ ├── DogStretch.png.meta │ │ │ │ │ ├── EncounterBubble.png.meta │ │ │ │ │ ├── EncounterBubbleGeno.png.meta │ │ │ │ │ ├── Papyrus/ │ │ │ │ │ │ ├── 0.png.meta │ │ │ │ │ │ ├── 1.png.meta │ │ │ │ │ │ ├── 10.png.meta │ │ │ │ │ │ ├── 11.png.meta │ │ │ │ │ │ ├── 12.png.meta │ │ │ │ │ │ ├── 13.png.meta │ │ │ │ │ │ ├── 14.png.meta │ │ │ │ │ │ ├── 15.png.meta │ │ │ │ │ │ ├── 16.png.meta │ │ │ │ │ │ ├── 17.png.meta │ │ │ │ │ │ ├── 18.png.meta │ │ │ │ │ │ ├── 19.png.meta │ │ │ │ │ │ ├── 2.png.meta │ │ │ │ │ │ ├── 20.png.meta │ │ │ │ │ │ ├── 21.png.meta │ │ │ │ │ │ ├── 3.png.meta │ │ │ │ │ │ ├── 4.png.meta │ │ │ │ │ │ ├── 5.png.meta │ │ │ │ │ │ ├── 6.png.meta │ │ │ │ │ │ ├── 7.png.meta │ │ │ │ │ │ ├── 8.png.meta │ │ │ │ │ │ └── 9.png.meta │ │ │ │ │ ├── Papyrus.meta │ │ │ │ │ ├── Punder/ │ │ │ │ │ │ ├── 0.png.meta │ │ │ │ │ │ ├── 1.png.meta │ │ │ │ │ │ ├── 10.png.meta │ │ │ │ │ │ ├── 11.png.meta │ │ │ │ │ │ ├── 12.png.meta │ │ │ │ │ │ ├── 13.png.meta │ │ │ │ │ │ ├── 14.png.meta │ │ │ │ │ │ ├── 15.png.meta │ │ │ │ │ │ ├── 2.png.meta │ │ │ │ │ │ ├── 3.png.meta │ │ │ │ │ │ ├── 4.png.meta │ │ │ │ │ │ ├── 5.png.meta │ │ │ │ │ │ ├── 6.png.meta │ │ │ │ │ │ ├── 7.png.meta │ │ │ │ │ │ ├── 8.png.meta │ │ │ │ │ │ ├── 9.png.meta │ │ │ │ │ │ ├── sun/ │ │ │ │ │ │ │ ├── 0.png.meta │ │ │ │ │ │ │ ├── 1.png.meta │ │ │ │ │ │ │ ├── 10.png.meta │ │ │ │ │ │ │ ├── 11.png.meta │ │ │ │ │ │ │ ├── 2.png.meta │ │ │ │ │ │ │ ├── 3.png.meta │ │ │ │ │ │ │ ├── 4.png.meta │ │ │ │ │ │ │ ├── 5.png.meta │ │ │ │ │ │ │ ├── 6.png.meta │ │ │ │ │ │ │ ├── 7.png.meta │ │ │ │ │ │ │ ├── 8.png.meta │ │ │ │ │ │ │ └── 9.png.meta │ │ │ │ │ │ └── sun.meta │ │ │ │ │ ├── Punder.meta │ │ │ │ │ └── cursor.png.meta │ │ │ │ ├── Overworld.meta │ │ │ │ ├── UI/ │ │ │ │ │ ├── Fonts/ │ │ │ │ │ │ ├── HPFont.png.meta │ │ │ │ │ │ ├── HPFont.xml │ │ │ │ │ │ ├── HPFont.xml.meta │ │ │ │ │ │ ├── monster.png.meta │ │ │ │ │ │ ├── monster.xml │ │ │ │ │ │ ├── monster.xml.meta │ │ │ │ │ │ ├── papyOW.png.meta │ │ │ │ │ │ ├── papyOW.xml │ │ │ │ │ │ ├── papyOW.xml.meta │ │ │ │ │ │ ├── tumblr_static_im-confus.jpg.meta │ │ │ │ │ │ ├── uidialog.png.meta │ │ │ │ │ │ ├── uidialog.xml │ │ │ │ │ │ └── uidialog.xml.meta │ │ │ │ │ ├── Fonts.meta │ │ │ │ │ ├── SpeechBubbles/ │ │ │ │ │ │ ├── leftwideminus.png.meta │ │ │ │ │ │ ├── leftwideminus.xml │ │ │ │ │ │ ├── leftwideminus.xml.meta │ │ │ │ │ │ ├── rightwideminus.png.meta │ │ │ │ │ │ ├── rightwideminus.xml │ │ │ │ │ │ └── rightwideminus.xml.meta │ │ │ │ │ └── SpeechBubbles.meta │ │ │ │ ├── UI.meta │ │ │ │ ├── bg.png.meta │ │ │ │ ├── bullet.png.meta │ │ │ │ ├── empty.png.meta │ │ │ │ ├── overworld example.png.meta │ │ │ │ ├── posette.png.meta │ │ │ │ ├── poseur.png.meta │ │ │ │ ├── preview.png.meta │ │ │ │ ├── sans/ │ │ │ │ │ ├── sanshead1.png.meta │ │ │ │ │ ├── sanshead2.png.meta │ │ │ │ │ ├── sanshead3.png.meta │ │ │ │ │ ├── sanslegs.png.meta │ │ │ │ │ └── sanstorso.png.meta │ │ │ │ └── sans.meta │ │ │ └── Sprites.meta │ │ ├── Examples 2/ │ │ │ ├── Audio/ │ │ │ │ ├── mus_shop.ogg │ │ │ │ ├── mus_shop.ogg.meta │ │ │ │ ├── mus_snowy.ogg │ │ │ │ ├── mus_snowy.ogg.meta │ │ │ │ ├── put your music here, ogg or wav only │ │ │ │ └── put your music here, ogg or wav only.meta │ │ │ ├── Audio.meta │ │ │ ├── Lua/ │ │ │ │ ├── Animations/ │ │ │ │ │ ├── sans_anim.lua │ │ │ │ │ └── sans_anim.lua.meta │ │ │ │ ├── Animations.meta │ │ │ │ ├── Encounters/ │ │ │ │ │ ├── 01 - Two monsters.lua │ │ │ │ │ ├── 01 - Two monsters.lua.meta │ │ │ │ │ ├── 02 - Colored bullets.lua │ │ │ │ │ ├── 02 - Colored bullets.lua.meta │ │ │ │ │ ├── 03 - Library Example.lua │ │ │ │ │ ├── 03 - Library Example.lua.meta │ │ │ │ │ ├── 04 - Animation.lua │ │ │ │ │ └── 04 - Animation.lua.meta │ │ │ │ ├── Encounters.meta │ │ │ │ ├── Events/ │ │ │ │ │ ├── Ladder.lua │ │ │ │ │ ├── Ladder.lua.meta │ │ │ │ │ ├── SaveTest.lua │ │ │ │ │ ├── SaveTest.lua.meta │ │ │ │ │ ├── Secret/ │ │ │ │ │ │ ├── 68302eae.lua │ │ │ │ │ │ ├── 68302eae.lua.meta │ │ │ │ │ │ ├── bee6bcfc.lua │ │ │ │ │ │ ├── bee6bcfc.lua.meta │ │ │ │ │ │ ├── caf144b2.lua │ │ │ │ │ │ ├── caf144b2.lua.meta │ │ │ │ │ │ ├── dac97760.lua │ │ │ │ │ │ ├── dac97760.lua.meta │ │ │ │ │ │ ├── nothing.lua │ │ │ │ │ │ └── nothing.lua.meta │ │ │ │ │ ├── Secret.meta │ │ │ │ │ ├── punderTest1.lua │ │ │ │ │ └── punderTest1.lua.meta │ │ │ │ ├── Events.meta │ │ │ │ ├── Libraries/ │ │ │ │ │ ├── randomvoice.lua │ │ │ │ │ └── randomvoice.lua.meta │ │ │ │ ├── Libraries.meta │ │ │ │ ├── Monsters/ │ │ │ │ │ ├── bullet_testing_poseur.lua │ │ │ │ │ ├── bullet_testing_poseur.lua.meta │ │ │ │ │ ├── posette.lua │ │ │ │ │ ├── posette.lua.meta │ │ │ │ │ ├── poseur.lua │ │ │ │ │ ├── poseur.lua.meta │ │ │ │ │ ├── poseur2.lua │ │ │ │ │ ├── poseur2.lua.meta │ │ │ │ │ ├── sans.lua │ │ │ │ │ └── sans.lua.meta │ │ │ │ ├── Monsters.meta │ │ │ │ ├── Shops/ │ │ │ │ │ ├── Dummy.lua │ │ │ │ │ └── Dummy.lua.meta │ │ │ │ ├── Shops.meta │ │ │ │ ├── Waves/ │ │ │ │ │ ├── COMBINED.lua │ │ │ │ │ ├── COMBINED.lua.meta │ │ │ │ │ ├── CYAN.lua │ │ │ │ │ ├── CYAN.lua.meta │ │ │ │ │ ├── GREEN.lua │ │ │ │ │ ├── GREEN.lua.meta │ │ │ │ │ ├── ORANGE.lua │ │ │ │ │ ├── ORANGE.lua.meta │ │ │ │ │ ├── REGULAR.lua │ │ │ │ │ ├── REGULAR.lua.meta │ │ │ │ │ ├── bullettest_bouncy.lua │ │ │ │ │ ├── bullettest_bouncy.lua.meta │ │ │ │ │ ├── bullettest_chaserorb.lua │ │ │ │ │ ├── bullettest_chaserorb.lua.meta │ │ │ │ │ ├── bullettest_touhou.lua │ │ │ │ │ └── bullettest_touhou.lua.meta │ │ │ │ └── Waves.meta │ │ │ ├── Lua.meta │ │ │ ├── Sounds/ │ │ │ │ ├── Secret/ │ │ │ │ │ ├── boing.wav.meta │ │ │ │ │ ├── laugh.wav.meta │ │ │ │ │ ├── noise.wav.meta │ │ │ │ │ └── punch.wav.meta │ │ │ │ ├── Secret.meta │ │ │ │ ├── Voices/ │ │ │ │ │ ├── punderbolt.ogg │ │ │ │ │ └── punderbolt.ogg.meta │ │ │ │ └── Voices.meta │ │ │ ├── Sounds.meta │ │ │ ├── Sprites/ │ │ │ │ ├── Overworld/ │ │ │ │ │ ├── DummyBackground.png.meta │ │ │ │ │ ├── Punder/ │ │ │ │ │ │ ├── 0.png.meta │ │ │ │ │ │ ├── 1.png.meta │ │ │ │ │ │ ├── 10.png.meta │ │ │ │ │ │ ├── 11.png.meta │ │ │ │ │ │ ├── 12.png.meta │ │ │ │ │ │ ├── 13.png.meta │ │ │ │ │ │ ├── 14.png.meta │ │ │ │ │ │ ├── 15.png.meta │ │ │ │ │ │ ├── 2.png.meta │ │ │ │ │ │ ├── 3.png.meta │ │ │ │ │ │ ├── 4.png.meta │ │ │ │ │ │ ├── 5.png.meta │ │ │ │ │ │ ├── 6.png.meta │ │ │ │ │ │ ├── 7.png.meta │ │ │ │ │ │ ├── 8.png.meta │ │ │ │ │ │ ├── 9.png.meta │ │ │ │ │ │ ├── Secret/ │ │ │ │ │ │ │ ├── fall.png.meta │ │ │ │ │ │ │ └── knockout.png.meta │ │ │ │ │ │ └── Secret.meta │ │ │ │ │ ├── Punder.meta │ │ │ │ │ ├── Rope.png.meta │ │ │ │ │ ├── Snow 2-2.png.meta │ │ │ │ │ ├── Snow 2.png.meta │ │ │ │ │ ├── Snow tree.png.meta │ │ │ │ │ └── Snow.png.meta │ │ │ │ ├── Overworld.meta │ │ │ │ ├── UI/ │ │ │ │ │ ├── Fonts/ │ │ │ │ │ │ ├── monster.png.meta │ │ │ │ │ │ ├── monster.xml │ │ │ │ │ │ ├── monster.xml.meta │ │ │ │ │ │ ├── uidialog.png.meta │ │ │ │ │ │ ├── uidialog.xml │ │ │ │ │ │ └── uidialog.xml.meta │ │ │ │ │ └── Fonts.meta │ │ │ │ ├── UI.meta │ │ │ │ ├── bg.png.meta │ │ │ │ ├── bullet.png.meta │ │ │ │ ├── empty.png.meta │ │ │ │ ├── posette.png.meta │ │ │ │ ├── poseur.png.meta │ │ │ │ ├── preview.png.meta │ │ │ │ ├── sans/ │ │ │ │ │ ├── sanshead1.png.meta │ │ │ │ │ ├── sanshead2.png.meta │ │ │ │ │ ├── sanshead3.png.meta │ │ │ │ │ ├── sanslegs.png.meta │ │ │ │ │ └── sanstorso.png.meta │ │ │ │ └── sans.meta │ │ │ └── Sprites.meta │ │ ├── Examples 2.meta │ │ ├── Examples.meta │ │ ├── RTLGeno/ │ │ │ ├── Audio/ │ │ │ │ ├── Anticipation_Amplified.ogg │ │ │ │ ├── Anticipation_Amplified.ogg.meta │ │ │ │ ├── charafuntroncated.ogg │ │ │ │ ├── charafuntroncated.ogg.meta │ │ │ │ ├── mus_st_him.ogg │ │ │ │ ├── mus_st_him.ogg.meta │ │ │ │ ├── put your music here, ogg or wav only │ │ │ │ └── put your music here, ogg or wav only.meta │ │ │ ├── Audio.meta │ │ │ ├── Lua/ │ │ │ │ ├── Animations/ │ │ │ │ │ ├── Lukark_anim.lua │ │ │ │ │ ├── Lukark_anim.lua.meta │ │ │ │ │ ├── RTL_anim.lua │ │ │ │ │ └── RTL_anim.lua.meta │ │ │ │ ├── Animations.meta │ │ │ │ ├── Encounters/ │ │ │ │ │ ├── RTLGeno.lua │ │ │ │ │ └── RTLGeno.lua.meta │ │ │ │ ├── Encounters.meta │ │ │ │ ├── Events/ │ │ │ │ │ ├── EventHidden.lua │ │ │ │ │ └── EventHidden.lua.meta │ │ │ │ ├── Events.meta │ │ │ │ ├── Libraries/ │ │ │ │ │ ├── HeartPulse.lua │ │ │ │ │ └── HeartPulse.lua.meta │ │ │ │ ├── Libraries.meta │ │ │ │ ├── Monsters/ │ │ │ │ │ ├── Lukark.lua │ │ │ │ │ ├── Lukark.lua.meta │ │ │ │ │ ├── RTL.lua │ │ │ │ │ └── RTL.lua.meta │ │ │ │ ├── Monsters.meta │ │ │ │ ├── Waves/ │ │ │ │ │ ├── 3LargeChaserOrbs.lua │ │ │ │ │ ├── 3LargeChaserOrbs.lua.meta │ │ │ │ │ ├── BallArms.lua │ │ │ │ │ ├── BallArms.lua.meta │ │ │ │ │ ├── bullettest_bouncy.lua │ │ │ │ │ ├── bullettest_bouncy.lua.meta │ │ │ │ │ ├── bullettest_chaserorb.lua │ │ │ │ │ ├── bullettest_chaserorb.lua.meta │ │ │ │ │ ├── bullettest_touhou.lua │ │ │ │ │ └── bullettest_touhou.lua.meta │ │ │ │ └── Waves.meta │ │ │ ├── Lua.meta │ │ │ ├── Oh you nosy little thing │ │ │ ├── Oh you nosy little thing.meta │ │ │ ├── Sounds/ │ │ │ │ ├── Asriel TF.wav.meta │ │ │ │ └── mus_dogsong_tf.wav.meta │ │ │ ├── Sounds.meta │ │ │ ├── Sprites/ │ │ │ │ ├── Lukark/ │ │ │ │ │ ├── arms/ │ │ │ │ │ │ ├── 1.png.meta │ │ │ │ │ │ ├── 2.png.meta │ │ │ │ │ │ ├── 3.png.meta │ │ │ │ │ │ ├── 4.png.meta │ │ │ │ │ │ ├── ball1-1.png.meta │ │ │ │ │ │ ├── ball1-2.png.meta │ │ │ │ │ │ ├── ball2-1.png.meta │ │ │ │ │ │ ├── ball2-2.png.meta │ │ │ │ │ │ ├── ballmove1-4.png.meta │ │ │ │ │ │ ├── ballmove1-5.png.meta │ │ │ │ │ │ ├── ballmove1.png.meta │ │ │ │ │ │ ├── ballmove2-4.png.meta │ │ │ │ │ │ ├── ballmove2-5.png.meta │ │ │ │ │ │ ├── ballmove2.png.meta │ │ │ │ │ │ ├── ballmove3.png.meta │ │ │ │ │ │ ├── ballmove4-1.png.meta │ │ │ │ │ │ ├── ballmove4-2.png.meta │ │ │ │ │ │ ├── ballmove4-4.png.meta │ │ │ │ │ │ ├── ballmove4-5.png.meta │ │ │ │ │ │ ├── ballmove5-1.png.meta │ │ │ │ │ │ ├── ballmove5-2.png.meta │ │ │ │ │ │ ├── ballmove5-4.png.meta │ │ │ │ │ │ └── ballmove5-5.png.meta │ │ │ │ │ ├── arms.meta │ │ │ │ │ ├── armstry/ │ │ │ │ │ │ ├── 1.png.meta │ │ │ │ │ │ ├── 2.png.meta │ │ │ │ │ │ ├── 3.png.meta │ │ │ │ │ │ └── 4.png.meta │ │ │ │ │ ├── armstry.meta │ │ │ │ │ ├── full.png.meta │ │ │ │ │ ├── hair/ │ │ │ │ │ │ ├── 1.png.meta │ │ │ │ │ │ ├── 2.png.meta │ │ │ │ │ │ ├── 3.png.meta │ │ │ │ │ │ └── 4.png.meta │ │ │ │ │ ├── hair.meta │ │ │ │ │ ├── headangry.png.meta │ │ │ │ │ ├── headhappy.png.meta │ │ │ │ │ ├── headhurt.png.meta │ │ │ │ │ ├── headmad.png.meta │ │ │ │ │ ├── headnormal.png.meta │ │ │ │ │ ├── headsmiling.png.meta │ │ │ │ │ ├── legs.png.meta │ │ │ │ │ ├── torso.png.meta │ │ │ │ │ ├── torsotry.png.meta │ │ │ │ │ ├── x1/ │ │ │ │ │ │ ├── arms/ │ │ │ │ │ │ │ ├── 1.png.meta │ │ │ │ │ │ │ ├── 2.png.meta │ │ │ │ │ │ │ ├── 3.png.meta │ │ │ │ │ │ │ └── 4.png.meta │ │ │ │ │ │ ├── arms.meta │ │ │ │ │ │ ├── hair/ │ │ │ │ │ │ │ ├── 1.png.meta │ │ │ │ │ │ │ ├── 2.png.meta │ │ │ │ │ │ │ ├── 3.png.meta │ │ │ │ │ │ │ └── 4.png.meta │ │ │ │ │ │ ├── hair.meta │ │ │ │ │ │ ├── legs.png.meta │ │ │ │ │ │ └── torso.png.meta │ │ │ │ │ ├── x1.meta │ │ │ │ │ ├── x2/ │ │ │ │ │ │ ├── anim1 x2.png.meta │ │ │ │ │ │ ├── anim2 x2.png.meta │ │ │ │ │ │ ├── anim3 x2.png.meta │ │ │ │ │ │ ├── anim4 x2.png.meta │ │ │ │ │ │ ├── anim5 x2.png.meta │ │ │ │ │ │ └── anim6 x2.png.meta │ │ │ │ │ └── x2.meta │ │ │ │ ├── Lukark.meta │ │ │ │ ├── Mugshots/ │ │ │ │ │ ├── RTL/ │ │ │ │ │ │ └── happy.png.meta │ │ │ │ │ └── RTL.meta │ │ │ │ ├── Mugshots.meta │ │ │ │ ├── RTL/ │ │ │ │ │ ├── full.png.meta │ │ │ │ │ ├── headangry.png.meta │ │ │ │ │ ├── headangryhurt.png.meta │ │ │ │ │ ├── headattacked.png.meta │ │ │ │ │ ├── headclose.png.meta │ │ │ │ │ ├── headhappy.png.meta │ │ │ │ │ ├── headhurt.png.meta │ │ │ │ │ ├── headnormal.png.meta │ │ │ │ │ ├── headspared.png.meta │ │ │ │ │ ├── legshurt.png.meta │ │ │ │ │ ├── legsnormal.png.meta │ │ │ │ │ ├── legsspared.png.meta │ │ │ │ │ ├── torso.png.meta │ │ │ │ │ └── torsospared.png.meta │ │ │ │ ├── RTL.meta │ │ │ │ ├── UI/ │ │ │ │ │ ├── Fonts/ │ │ │ │ │ │ ├── monster.png.meta │ │ │ │ │ │ ├── monster.xml │ │ │ │ │ │ ├── monster.xml.meta │ │ │ │ │ │ ├── uidialog.png.meta │ │ │ │ │ │ ├── uidialog.xml │ │ │ │ │ │ └── uidialog.xml.meta │ │ │ │ │ ├── Fonts.meta │ │ │ │ │ ├── SpeechBubbles/ │ │ │ │ │ │ ├── leftlargeminus.png.meta │ │ │ │ │ │ ├── leftlargeminus.xml │ │ │ │ │ │ ├── leftlargeminus.xml.meta │ │ │ │ │ │ ├── leftwideminus.png.meta │ │ │ │ │ │ ├── leftwideminus.xml │ │ │ │ │ │ ├── leftwideminus.xml.meta │ │ │ │ │ │ ├── rightlargeminus.png.meta │ │ │ │ │ │ ├── rightlargeminus.xml │ │ │ │ │ │ ├── rightlargeminus.xml.meta │ │ │ │ │ │ ├── rightwideminus.png.meta │ │ │ │ │ │ ├── rightwideminus.xml │ │ │ │ │ │ └── rightwideminus.xml.meta │ │ │ │ │ └── SpeechBubbles.meta │ │ │ │ ├── UI.meta │ │ │ │ ├── bg.png.meta │ │ │ │ ├── blank.png.meta │ │ │ │ ├── bullet.png.meta │ │ │ │ ├── empty.png.meta │ │ │ │ ├── largeball.png.meta │ │ │ │ └── preview.png.meta │ │ │ └── Sprites.meta │ │ └── RTLGeno.meta │ ├── Mods.meta │ ├── Plugins/ │ │ ├── DiscordSDK/ │ │ │ ├── ActivityManager.cs │ │ │ ├── ActivityManager.cs.meta │ │ │ ├── Constants.cs │ │ │ ├── Constants.cs.meta │ │ │ ├── Core.cs │ │ │ ├── Core.cs.meta │ │ │ ├── ImageManager.cs │ │ │ ├── ImageManager.cs.meta │ │ │ ├── LobbyManager.cs │ │ │ ├── LobbyManager.cs.meta │ │ │ ├── StorageManager.cs │ │ │ ├── StorageManager.cs.meta │ │ │ ├── StoreManager.cs │ │ │ └── StoreManager.cs.meta │ │ ├── DiscordSDK.meta │ │ ├── MoonSharp/ │ │ │ ├── Debugger/ │ │ │ │ ├── DebuggerLogic/ │ │ │ │ │ ├── AsyncDebugger.cs │ │ │ │ │ ├── AsyncDebugger.cs.meta │ │ │ │ │ ├── EmptyDebugSession.cs │ │ │ │ │ ├── EmptyDebugSession.cs.meta │ │ │ │ │ ├── IAsyncDebuggerClient.cs │ │ │ │ │ ├── IAsyncDebuggerClient.cs.meta │ │ │ │ │ ├── MoonSharpDebugSession.cs │ │ │ │ │ ├── MoonSharpDebugSession.cs.meta │ │ │ │ │ ├── VariableInspector.cs │ │ │ │ │ └── VariableInspector.cs.meta │ │ │ │ ├── DebuggerLogic.meta │ │ │ │ ├── MoonSharpVsCodeDebugServer.cs │ │ │ │ ├── MoonSharpVsCodeDebugServer.cs.meta │ │ │ │ ├── SDK/ │ │ │ │ │ ├── DebugSession.cs │ │ │ │ │ ├── DebugSession.cs.meta │ │ │ │ │ ├── Protocol.cs │ │ │ │ │ ├── Protocol.cs.meta │ │ │ │ │ ├── Utilities.cs │ │ │ │ │ └── Utilities.cs.meta │ │ │ │ └── SDK.meta │ │ │ ├── Debugger.meta │ │ │ ├── Interpreter/ │ │ │ │ ├── AsyncExtensions.cs │ │ │ │ ├── AsyncExtensions.cs.meta │ │ │ │ ├── CodeAnalysis/ │ │ │ │ │ ├── AstNode.cs │ │ │ │ │ └── AstNode.cs.meta │ │ │ │ ├── CodeAnalysis.meta │ │ │ │ ├── Compatibility/ │ │ │ │ │ ├── Attributes.cs │ │ │ │ │ ├── Attributes.cs.meta │ │ │ │ │ ├── Framework.cs │ │ │ │ │ ├── Framework.cs.meta │ │ │ │ │ ├── Frameworks/ │ │ │ │ │ │ ├── Base/ │ │ │ │ │ │ │ ├── FrameworkBase.cs │ │ │ │ │ │ │ ├── FrameworkBase.cs.meta │ │ │ │ │ │ │ ├── FrameworkClrBase.cs │ │ │ │ │ │ │ ├── FrameworkClrBase.cs.meta │ │ │ │ │ │ │ ├── FrameworkReflectionBase.cs │ │ │ │ │ │ │ └── FrameworkReflectionBase.cs.meta │ │ │ │ │ │ ├── Base.meta │ │ │ │ │ │ ├── FrameworkCLR.cs │ │ │ │ │ │ ├── FrameworkCLR.cs.meta │ │ │ │ │ │ ├── FrameworkCore.cs │ │ │ │ │ │ ├── FrameworkCore.cs.meta │ │ │ │ │ │ ├── FrameworkPCL.cs │ │ │ │ │ │ ├── FrameworkPCL.cs.meta │ │ │ │ │ │ ├── FrameworkWin8.cs │ │ │ │ │ │ └── FrameworkWin8.cs.meta │ │ │ │ │ ├── Frameworks.meta │ │ │ │ │ ├── Stopwatch.cs │ │ │ │ │ └── Stopwatch.cs.meta │ │ │ │ ├── Compatibility.meta │ │ │ │ ├── CoreLib/ │ │ │ │ │ ├── BasicModule.cs │ │ │ │ │ ├── BasicModule.cs.meta │ │ │ │ │ ├── Bit32Module.cs │ │ │ │ │ ├── Bit32Module.cs.meta │ │ │ │ │ ├── CoroutineModule.cs │ │ │ │ │ ├── CoroutineModule.cs.meta │ │ │ │ │ ├── DebugModule.cs │ │ │ │ │ ├── DebugModule.cs.meta │ │ │ │ │ ├── DynamicModule.cs │ │ │ │ │ ├── DynamicModule.cs.meta │ │ │ │ │ ├── ErrorHandlingModule.cs │ │ │ │ │ ├── ErrorHandlingModule.cs.meta │ │ │ │ │ ├── IO/ │ │ │ │ │ │ ├── BinaryEncoding.cs │ │ │ │ │ │ ├── BinaryEncoding.cs.meta │ │ │ │ │ │ ├── FileUserData.cs │ │ │ │ │ │ ├── FileUserData.cs.meta │ │ │ │ │ │ ├── FileUserDataBase.cs │ │ │ │ │ │ ├── FileUserDataBase.cs.meta │ │ │ │ │ │ ├── StandardIOFileUserDataBase.cs │ │ │ │ │ │ ├── StandardIOFileUserDataBase.cs.meta │ │ │ │ │ │ ├── StreamFileUserDataBase.cs │ │ │ │ │ │ └── StreamFileUserDataBase.cs.meta │ │ │ │ │ ├── IO.meta │ │ │ │ │ ├── IoModule.cs │ │ │ │ │ ├── IoModule.cs.meta │ │ │ │ │ ├── JsonModule.cs │ │ │ │ │ ├── JsonModule.cs.meta │ │ │ │ │ ├── LoadModule.cs │ │ │ │ │ ├── LoadModule.cs.meta │ │ │ │ │ ├── MathModule.cs │ │ │ │ │ ├── MathModule.cs.meta │ │ │ │ │ ├── MetaTableModule.cs │ │ │ │ │ ├── MetaTableModule.cs.meta │ │ │ │ │ ├── OsSystemModule.cs │ │ │ │ │ ├── OsSystemModule.cs.meta │ │ │ │ │ ├── OsTimeModule.cs │ │ │ │ │ ├── OsTimeModule.cs.meta │ │ │ │ │ ├── StringLib/ │ │ │ │ │ │ ├── KopiLua_StrLib.cs │ │ │ │ │ │ ├── KopiLua_StrLib.cs.meta │ │ │ │ │ │ ├── StringRange.cs │ │ │ │ │ │ └── StringRange.cs.meta │ │ │ │ │ ├── StringLib.meta │ │ │ │ │ ├── StringModule.cs │ │ │ │ │ ├── StringModule.cs.meta │ │ │ │ │ ├── TableIteratorsModule.cs │ │ │ │ │ ├── TableIteratorsModule.cs.meta │ │ │ │ │ ├── TableModule.cs │ │ │ │ │ └── TableModule.cs.meta │ │ │ │ ├── CoreLib.meta │ │ │ │ ├── DataStructs/ │ │ │ │ │ ├── Extension_Methods.cs │ │ │ │ │ ├── Extension_Methods.cs.meta │ │ │ │ │ ├── FastStack.cs │ │ │ │ │ ├── FastStack.cs.meta │ │ │ │ │ ├── FastStackDynamic.cs │ │ │ │ │ ├── FastStackDynamic.cs.meta │ │ │ │ │ ├── LinkedListIndex.cs │ │ │ │ │ ├── LinkedListIndex.cs.meta │ │ │ │ │ ├── MultiDictionary.cs │ │ │ │ │ ├── MultiDictionary.cs.meta │ │ │ │ │ ├── ReferenceEqualityComparer.cs │ │ │ │ │ ├── ReferenceEqualityComparer.cs.meta │ │ │ │ │ ├── Slice.cs │ │ │ │ │ └── Slice.cs.meta │ │ │ │ ├── DataStructs.meta │ │ │ │ ├── DataTypes/ │ │ │ │ │ ├── CallbackArguments.cs │ │ │ │ │ ├── CallbackArguments.cs.meta │ │ │ │ │ ├── CallbackFunction.cs │ │ │ │ │ ├── CallbackFunction.cs.meta │ │ │ │ │ ├── Closure.cs │ │ │ │ │ ├── Closure.cs.meta │ │ │ │ │ ├── Coroutine.cs │ │ │ │ │ ├── Coroutine.cs.meta │ │ │ │ │ ├── CoroutineState.cs │ │ │ │ │ ├── CoroutineState.cs.meta │ │ │ │ │ ├── DataType.cs │ │ │ │ │ ├── DataType.cs.meta │ │ │ │ │ ├── DynValue.cs │ │ │ │ │ ├── DynValue.cs.meta │ │ │ │ │ ├── IScriptPrivateResource.cs │ │ │ │ │ ├── IScriptPrivateResource.cs.meta │ │ │ │ │ ├── RefIdObject.cs │ │ │ │ │ ├── RefIdObject.cs.meta │ │ │ │ │ ├── ScriptFunctionDelegate.cs │ │ │ │ │ ├── ScriptFunctionDelegate.cs.meta │ │ │ │ │ ├── SymbolRef.cs │ │ │ │ │ ├── SymbolRef.cs.meta │ │ │ │ │ ├── SymbolRefType.cs │ │ │ │ │ ├── SymbolRefType.cs.meta │ │ │ │ │ ├── Table.cs │ │ │ │ │ ├── Table.cs.meta │ │ │ │ │ ├── TablePair.cs │ │ │ │ │ ├── TablePair.cs.meta │ │ │ │ │ ├── TailCallData.cs │ │ │ │ │ ├── TailCallData.cs.meta │ │ │ │ │ ├── TypeValidationFlags.cs │ │ │ │ │ ├── TypeValidationFlags.cs.meta │ │ │ │ │ ├── UserData.cs │ │ │ │ │ ├── UserData.cs.meta │ │ │ │ │ ├── WellKnownSymbols.cs │ │ │ │ │ ├── WellKnownSymbols.cs.meta │ │ │ │ │ ├── YieldRequest.cs │ │ │ │ │ └── YieldRequest.cs.meta │ │ │ │ ├── DataTypes.meta │ │ │ │ ├── Debugging/ │ │ │ │ │ ├── DebugService.cs │ │ │ │ │ ├── DebugService.cs.meta │ │ │ │ │ ├── DebuggerAction.cs │ │ │ │ │ ├── DebuggerAction.cs.meta │ │ │ │ │ ├── DebuggerCaps.cs │ │ │ │ │ ├── DebuggerCaps.cs.meta │ │ │ │ │ ├── IDebugger.cs │ │ │ │ │ ├── IDebugger.cs.meta │ │ │ │ │ ├── SourceCode.cs │ │ │ │ │ ├── SourceCode.cs.meta │ │ │ │ │ ├── SourceRef.cs │ │ │ │ │ ├── SourceRef.cs.meta │ │ │ │ │ ├── WatchItem.cs │ │ │ │ │ ├── WatchItem.cs.meta │ │ │ │ │ ├── WatchType.cs │ │ │ │ │ └── WatchType.cs.meta │ │ │ │ ├── Debugging.meta │ │ │ │ ├── Diagnostics/ │ │ │ │ │ ├── PerformanceCounter.cs │ │ │ │ │ ├── PerformanceCounter.cs.meta │ │ │ │ │ ├── PerformanceCounterType.cs │ │ │ │ │ ├── PerformanceCounterType.cs.meta │ │ │ │ │ ├── PerformanceCounters/ │ │ │ │ │ │ ├── DummyPerformanceStopwatch.cs │ │ │ │ │ │ ├── DummyPerformanceStopwatch.cs.meta │ │ │ │ │ │ ├── GlobalPerformanceStopwatch.cs │ │ │ │ │ │ ├── GlobalPerformanceStopwatch.cs.meta │ │ │ │ │ │ ├── IPerformanceStopwatch.cs │ │ │ │ │ │ ├── IPerformanceStopwatch.cs.meta │ │ │ │ │ │ ├── PerformanceStopwatch.cs │ │ │ │ │ │ └── PerformanceStopwatch.cs.meta │ │ │ │ │ ├── PerformanceCounters.meta │ │ │ │ │ ├── PerformanceResult.cs │ │ │ │ │ ├── PerformanceResult.cs.meta │ │ │ │ │ ├── PerformanceStatistics.cs │ │ │ │ │ └── PerformanceStatistics.cs.meta │ │ │ │ ├── Diagnostics.meta │ │ │ │ ├── Errors/ │ │ │ │ │ ├── DynamicExpressionException.cs │ │ │ │ │ ├── DynamicExpressionException.cs.meta │ │ │ │ │ ├── InternalErrorException.cs │ │ │ │ │ ├── InternalErrorException.cs.meta │ │ │ │ │ ├── InterpreterException.cs │ │ │ │ │ ├── InterpreterException.cs.meta │ │ │ │ │ ├── ScriptRuntimeException.cs │ │ │ │ │ ├── ScriptRuntimeException.cs.meta │ │ │ │ │ ├── SyntaxErrorException.cs │ │ │ │ │ └── SyntaxErrorException.cs.meta │ │ │ │ ├── Errors.meta │ │ │ │ ├── Execution/ │ │ │ │ │ ├── DynamicExpression.cs │ │ │ │ │ ├── DynamicExpression.cs.meta │ │ │ │ │ ├── InstructionFieldUsage.cs │ │ │ │ │ ├── InstructionFieldUsage.cs.meta │ │ │ │ │ ├── Scopes/ │ │ │ │ │ │ ├── BuildTimeScope.cs │ │ │ │ │ │ ├── BuildTimeScope.cs.meta │ │ │ │ │ │ ├── BuildTimeScopeBlock.cs │ │ │ │ │ │ ├── BuildTimeScopeBlock.cs.meta │ │ │ │ │ │ ├── BuildTimeScopeFrame.cs │ │ │ │ │ │ ├── BuildTimeScopeFrame.cs.meta │ │ │ │ │ │ ├── ClosureContext.cs │ │ │ │ │ │ ├── ClosureContext.cs.meta │ │ │ │ │ │ ├── IClosureBuilder.cs │ │ │ │ │ │ ├── IClosureBuilder.cs.meta │ │ │ │ │ │ ├── LoopTracker.cs │ │ │ │ │ │ ├── LoopTracker.cs.meta │ │ │ │ │ │ ├── RuntimeScopeBlock.cs │ │ │ │ │ │ ├── RuntimeScopeBlock.cs.meta │ │ │ │ │ │ ├── RuntimeScopeFrame.cs │ │ │ │ │ │ └── RuntimeScopeFrame.cs.meta │ │ │ │ │ ├── Scopes.meta │ │ │ │ │ ├── ScriptExecutionContext.cs │ │ │ │ │ ├── ScriptExecutionContext.cs.meta │ │ │ │ │ ├── ScriptLoadingContext.cs │ │ │ │ │ ├── ScriptLoadingContext.cs.meta │ │ │ │ │ ├── VM/ │ │ │ │ │ │ ├── ByteCode.cs │ │ │ │ │ │ ├── ByteCode.cs.meta │ │ │ │ │ │ ├── CallStackItem.cs │ │ │ │ │ │ ├── CallStackItem.cs.meta │ │ │ │ │ │ ├── CallStackItemFlags.cs │ │ │ │ │ │ ├── CallStackItemFlags.cs.meta │ │ │ │ │ │ ├── ExecutionState.cs │ │ │ │ │ │ ├── ExecutionState.cs.meta │ │ │ │ │ │ ├── Instruction.cs │ │ │ │ │ │ ├── Instruction.cs.meta │ │ │ │ │ │ ├── OpCode.cs │ │ │ │ │ │ ├── OpCode.cs.meta │ │ │ │ │ │ ├── OpCodeMetadataType.cs │ │ │ │ │ │ ├── OpCodeMetadataType.cs.meta │ │ │ │ │ │ ├── Processor/ │ │ │ │ │ │ │ ├── DebugContext.cs │ │ │ │ │ │ │ ├── DebugContext.cs.meta │ │ │ │ │ │ │ ├── Processor.cs │ │ │ │ │ │ │ ├── Processor.cs.meta │ │ │ │ │ │ │ ├── Processor_BinaryDump.cs │ │ │ │ │ │ │ ├── Processor_BinaryDump.cs.meta │ │ │ │ │ │ │ ├── Processor_Coroutines.cs │ │ │ │ │ │ │ ├── Processor_Coroutines.cs.meta │ │ │ │ │ │ │ ├── Processor_Debugger.cs │ │ │ │ │ │ │ ├── Processor_Debugger.cs.meta │ │ │ │ │ │ │ ├── Processor_Errors.cs │ │ │ │ │ │ │ ├── Processor_Errors.cs.meta │ │ │ │ │ │ │ ├── Processor_IExecutionContext.cs │ │ │ │ │ │ │ ├── Processor_IExecutionContext.cs.meta │ │ │ │ │ │ │ ├── Processor_InstructionLoop.cs │ │ │ │ │ │ │ ├── Processor_InstructionLoop.cs.meta │ │ │ │ │ │ │ ├── Processor_Scope.cs │ │ │ │ │ │ │ ├── Processor_Scope.cs.meta │ │ │ │ │ │ │ ├── Processor_UtilityFunctions.cs │ │ │ │ │ │ │ └── Processor_UtilityFunctions.cs.meta │ │ │ │ │ │ └── Processor.meta │ │ │ │ │ └── VM.meta │ │ │ │ ├── Execution.meta │ │ │ │ ├── IO/ │ │ │ │ │ ├── BinDumpBinaryReader.cs │ │ │ │ │ ├── BinDumpBinaryReader.cs.meta │ │ │ │ │ ├── BinDumpBinaryWriter.cs │ │ │ │ │ ├── BinDumpBinaryWriter.cs.meta │ │ │ │ │ ├── UndisposableStream.cs │ │ │ │ │ └── UndisposableStream.cs.meta │ │ │ │ ├── IO.meta │ │ │ │ ├── Interop/ │ │ │ │ │ ├── Attributes/ │ │ │ │ │ │ ├── MoonSharpHiddenAttribute.cs │ │ │ │ │ │ ├── MoonSharpHiddenAttribute.cs.meta │ │ │ │ │ │ ├── MoonSharpHideMemberAttribute.cs │ │ │ │ │ │ ├── MoonSharpHideMemberAttribute.cs.meta │ │ │ │ │ │ ├── MoonSharpPropertyAttribute.cs │ │ │ │ │ │ ├── MoonSharpPropertyAttribute.cs.meta │ │ │ │ │ │ ├── MoonSharpUserDataAttribute.cs │ │ │ │ │ │ ├── MoonSharpUserDataAttribute.cs.meta │ │ │ │ │ │ ├── MoonSharpUserDataMetamethodAttribute.cs │ │ │ │ │ │ ├── MoonSharpUserDataMetamethodAttribute.cs.meta │ │ │ │ │ │ ├── MoonSharpVisibleAttribute.cs │ │ │ │ │ │ └── MoonSharpVisibleAttribute.cs.meta │ │ │ │ │ ├── Attributes.meta │ │ │ │ │ ├── BasicDescriptors/ │ │ │ │ │ │ ├── DispatchingUserDataDescriptor.cs │ │ │ │ │ │ ├── DispatchingUserDataDescriptor.cs.meta │ │ │ │ │ │ ├── IMemberDescriptor.cs │ │ │ │ │ │ ├── IMemberDescriptor.cs.meta │ │ │ │ │ │ ├── IOptimizableDescriptor.cs │ │ │ │ │ │ ├── IOptimizableDescriptor.cs.meta │ │ │ │ │ │ ├── IOverloadableMemberDescriptor.cs │ │ │ │ │ │ ├── IOverloadableMemberDescriptor.cs.meta │ │ │ │ │ │ ├── MemberDescriptorAccess.cs │ │ │ │ │ │ ├── MemberDescriptorAccess.cs.meta │ │ │ │ │ │ ├── ParameterDescriptor.cs │ │ │ │ │ │ └── ParameterDescriptor.cs.meta │ │ │ │ │ ├── BasicDescriptors.meta │ │ │ │ │ ├── Converters/ │ │ │ │ │ │ ├── ClrToScriptConversions.cs │ │ │ │ │ │ ├── ClrToScriptConversions.cs.meta │ │ │ │ │ │ ├── NumericConversions.cs │ │ │ │ │ │ ├── NumericConversions.cs.meta │ │ │ │ │ │ ├── ScriptToClrConversions.cs │ │ │ │ │ │ ├── ScriptToClrConversions.cs.meta │ │ │ │ │ │ ├── StringConversions.cs │ │ │ │ │ │ ├── StringConversions.cs.meta │ │ │ │ │ │ ├── TableConversions.cs │ │ │ │ │ │ └── TableConversions.cs.meta │ │ │ │ │ ├── Converters.meta │ │ │ │ │ ├── CustomConvertersCollection.cs │ │ │ │ │ ├── CustomConvertersCollection.cs.meta │ │ │ │ │ ├── DescriptorHelpers.cs │ │ │ │ │ ├── DescriptorHelpers.cs.meta │ │ │ │ │ ├── IGeneratorUserDataDescriptor.cs │ │ │ │ │ ├── IGeneratorUserDataDescriptor.cs.meta │ │ │ │ │ ├── IUserDataDescriptor.cs │ │ │ │ │ ├── IUserDataDescriptor.cs.meta │ │ │ │ │ ├── IUserDataMemberDescriptor.cs │ │ │ │ │ ├── IUserDataMemberDescriptor.cs.meta │ │ │ │ │ ├── IUserDataType.cs │ │ │ │ │ ├── IUserDataType.cs.meta │ │ │ │ │ ├── IWireableDescriptor.cs │ │ │ │ │ ├── IWireableDescriptor.cs.meta │ │ │ │ │ ├── InteropAccessMode.cs │ │ │ │ │ ├── InteropAccessMode.cs.meta │ │ │ │ │ ├── InteropRegistrationPolicy.cs │ │ │ │ │ ├── InteropRegistrationPolicy.cs.meta │ │ │ │ │ ├── LuaStateInterop/ │ │ │ │ │ │ ├── CharPtr.cs │ │ │ │ │ │ ├── CharPtr.cs.meta │ │ │ │ │ │ ├── LuaBase.cs │ │ │ │ │ │ ├── LuaBase.cs.meta │ │ │ │ │ │ ├── LuaBase_CLib.cs │ │ │ │ │ │ ├── LuaBase_CLib.cs.meta │ │ │ │ │ │ ├── LuaLBuffer.cs │ │ │ │ │ │ ├── LuaLBuffer.cs.meta │ │ │ │ │ │ ├── LuaState.cs │ │ │ │ │ │ ├── LuaState.cs.meta │ │ │ │ │ │ ├── Tools.cs │ │ │ │ │ │ └── Tools.cs.meta │ │ │ │ │ ├── LuaStateInterop.meta │ │ │ │ │ ├── PredefinedUserData/ │ │ │ │ │ │ ├── AnonWrapper.cs │ │ │ │ │ │ ├── AnonWrapper.cs.meta │ │ │ │ │ │ ├── EnumerableWrapper.cs │ │ │ │ │ │ └── EnumerableWrapper.cs.meta │ │ │ │ │ ├── PredefinedUserData.meta │ │ │ │ │ ├── PropertyTableAssigner.cs │ │ │ │ │ ├── PropertyTableAssigner.cs.meta │ │ │ │ │ ├── ProxyObjects/ │ │ │ │ │ │ ├── DelegateProxyFactory.cs │ │ │ │ │ │ ├── DelegateProxyFactory.cs.meta │ │ │ │ │ │ ├── IProxyFactory.cs │ │ │ │ │ │ └── IProxyFactory.cs.meta │ │ │ │ │ ├── ProxyObjects.meta │ │ │ │ │ ├── ReflectionSpecialNames.cs │ │ │ │ │ ├── ReflectionSpecialNames.cs.meta │ │ │ │ │ ├── RegistrationPolicies/ │ │ │ │ │ │ ├── AutomaticRegistrationPolicy.cs │ │ │ │ │ │ ├── AutomaticRegistrationPolicy.cs.meta │ │ │ │ │ │ ├── DefaultRegistrationPolicy.cs │ │ │ │ │ │ ├── DefaultRegistrationPolicy.cs.meta │ │ │ │ │ │ ├── IRegistrationPolicy.cs │ │ │ │ │ │ ├── IRegistrationPolicy.cs.meta │ │ │ │ │ │ ├── PermanentRegistrationPolicy.cs │ │ │ │ │ │ └── PermanentRegistrationPolicy.cs.meta │ │ │ │ │ ├── RegistrationPolicies.meta │ │ │ │ │ ├── StandardDescriptors/ │ │ │ │ │ │ ├── AutoDescribingUserDataDescriptor.cs │ │ │ │ │ │ ├── AutoDescribingUserDataDescriptor.cs.meta │ │ │ │ │ │ ├── CompositeUserDataDescriptor.cs │ │ │ │ │ │ ├── CompositeUserDataDescriptor.cs.meta │ │ │ │ │ │ ├── EventFacade.cs │ │ │ │ │ │ ├── EventFacade.cs.meta │ │ │ │ │ │ ├── HardwiredDescriptors/ │ │ │ │ │ │ │ ├── DefaultValue.cs │ │ │ │ │ │ │ ├── DefaultValue.cs.meta │ │ │ │ │ │ │ ├── HardwiredMemberDescriptor.cs │ │ │ │ │ │ │ ├── HardwiredMemberDescriptor.cs.meta │ │ │ │ │ │ │ ├── HardwiredMethodMemberDescriptor.cs │ │ │ │ │ │ │ ├── HardwiredMethodMemberDescriptor.cs.meta │ │ │ │ │ │ │ ├── HardwiredUserDataDescriptor.cs │ │ │ │ │ │ │ └── HardwiredUserDataDescriptor.cs.meta │ │ │ │ │ │ ├── HardwiredDescriptors.meta │ │ │ │ │ │ ├── MemberDescriptors/ │ │ │ │ │ │ │ ├── ArrayMemberDescriptor.cs │ │ │ │ │ │ │ ├── ArrayMemberDescriptor.cs.meta │ │ │ │ │ │ │ ├── DynValueMemberDescriptor.cs │ │ │ │ │ │ │ ├── DynValueMemberDescriptor.cs.meta │ │ │ │ │ │ │ ├── FunctionMemberDescriptorBase.cs │ │ │ │ │ │ │ ├── FunctionMemberDescriptorBase.cs.meta │ │ │ │ │ │ │ ├── ObjectCallbackMemberDescriptor.cs │ │ │ │ │ │ │ └── ObjectCallbackMemberDescriptor.cs.meta │ │ │ │ │ │ ├── MemberDescriptors.meta │ │ │ │ │ │ ├── ProxyUserDataDescriptor.cs │ │ │ │ │ │ ├── ProxyUserDataDescriptor.cs.meta │ │ │ │ │ │ ├── ReflectionMemberDescriptors/ │ │ │ │ │ │ │ ├── EventMemberDescriptor.cs │ │ │ │ │ │ │ ├── EventMemberDescriptor.cs.meta │ │ │ │ │ │ │ ├── FieldMemberDescriptor.cs │ │ │ │ │ │ │ ├── FieldMemberDescriptor.cs.meta │ │ │ │ │ │ │ ├── MethodMemberDescriptor.cs │ │ │ │ │ │ │ ├── MethodMemberDescriptor.cs.meta │ │ │ │ │ │ │ ├── OverloadedMethodMemberDescriptor.cs │ │ │ │ │ │ │ ├── OverloadedMethodMemberDescriptor.cs.meta │ │ │ │ │ │ │ ├── PropertyMemberDescriptor.cs │ │ │ │ │ │ │ ├── PropertyMemberDescriptor.cs.meta │ │ │ │ │ │ │ ├── ValueTypeDefaultCtorMemberDescriptor.cs │ │ │ │ │ │ │ └── ValueTypeDefaultCtorMemberDescriptor.cs.meta │ │ │ │ │ │ ├── ReflectionMemberDescriptors.meta │ │ │ │ │ │ ├── StandardEnumUserDataDescriptor.cs │ │ │ │ │ │ ├── StandardEnumUserDataDescriptor.cs.meta │ │ │ │ │ │ ├── StandardGenericsUserDataDescriptor.cs │ │ │ │ │ │ ├── StandardGenericsUserDataDescriptor.cs.meta │ │ │ │ │ │ ├── StandardUserDataDescriptor.cs │ │ │ │ │ │ └── StandardUserDataDescriptor.cs.meta │ │ │ │ │ ├── StandardDescriptors.meta │ │ │ │ │ ├── UserDataMemberType.cs │ │ │ │ │ ├── UserDataMemberType.cs.meta │ │ │ │ │ ├── UserDataRegistries/ │ │ │ │ │ │ ├── ExtensionMethodsRegistry.cs │ │ │ │ │ │ ├── ExtensionMethodsRegistry.cs.meta │ │ │ │ │ │ ├── TypeDescriptorRegistry.cs │ │ │ │ │ │ └── TypeDescriptorRegistry.cs.meta │ │ │ │ │ └── UserDataRegistries.meta │ │ │ │ ├── Interop.meta │ │ │ │ ├── LinqHelpers.cs │ │ │ │ ├── LinqHelpers.cs.meta │ │ │ │ ├── Loaders/ │ │ │ │ │ ├── EmbeddedResourcesScriptLoader.cs │ │ │ │ │ ├── EmbeddedResourcesScriptLoader.cs.meta │ │ │ │ │ ├── FileSystemScriptLoader.cs │ │ │ │ │ ├── FileSystemScriptLoader.cs.meta │ │ │ │ │ ├── IScriptLoader.cs │ │ │ │ │ ├── IScriptLoader.cs.meta │ │ │ │ │ ├── InvalidScriptLoader.cs │ │ │ │ │ ├── InvalidScriptLoader.cs.meta │ │ │ │ │ ├── ScriptLoaderBase.cs │ │ │ │ │ ├── ScriptLoaderBase.cs.meta │ │ │ │ │ ├── UnityAssetsScriptLoader.cs │ │ │ │ │ └── UnityAssetsScriptLoader.cs.meta │ │ │ │ ├── Loaders.meta │ │ │ │ ├── Modules/ │ │ │ │ │ ├── CoreModules.cs │ │ │ │ │ ├── CoreModules.cs.meta │ │ │ │ │ ├── ModuleRegister.cs │ │ │ │ │ ├── ModuleRegister.cs.meta │ │ │ │ │ ├── MoonSharpModuleAttribute.cs │ │ │ │ │ ├── MoonSharpModuleAttribute.cs.meta │ │ │ │ │ ├── MoonSharpModuleConstantAttribute.cs │ │ │ │ │ ├── MoonSharpModuleConstantAttribute.cs.meta │ │ │ │ │ ├── MoonSharpModuleMethodAttribute.cs │ │ │ │ │ └── MoonSharpModuleMethodAttribute.cs.meta │ │ │ │ ├── Modules.meta │ │ │ │ ├── NameSpace_XmlHelp.cs │ │ │ │ ├── NameSpace_XmlHelp.cs.meta │ │ │ │ ├── Options/ │ │ │ │ │ ├── ColonOperatorBehaviour.cs │ │ │ │ │ └── ColonOperatorBehaviour.cs.meta │ │ │ │ ├── Options.meta │ │ │ │ ├── Platforms/ │ │ │ │ │ ├── DotNetCorePlatformAccessor.cs │ │ │ │ │ ├── DotNetCorePlatformAccessor.cs.meta │ │ │ │ │ ├── IPlatformAccessor.cs │ │ │ │ │ ├── IPlatformAccessor.cs.meta │ │ │ │ │ ├── LimitedPlatformAccessor.cs │ │ │ │ │ ├── LimitedPlatformAccessor.cs.meta │ │ │ │ │ ├── PlatformAccessorBase.cs │ │ │ │ │ ├── PlatformAccessorBase.cs.meta │ │ │ │ │ ├── PlatformAutoDetector.cs │ │ │ │ │ ├── PlatformAutoDetector.cs.meta │ │ │ │ │ ├── StandardFileType.cs │ │ │ │ │ ├── StandardFileType.cs.meta │ │ │ │ │ ├── StandardPlatformAccessor.cs │ │ │ │ │ └── StandardPlatformAccessor.cs.meta │ │ │ │ ├── Platforms.meta │ │ │ │ ├── REPL/ │ │ │ │ │ ├── ReplHistoryNavigator.cs │ │ │ │ │ ├── ReplHistoryNavigator.cs.meta │ │ │ │ │ ├── ReplInterpreter.cs │ │ │ │ │ ├── ReplInterpreter.cs.meta │ │ │ │ │ ├── ReplInterpreterScriptLoader.cs │ │ │ │ │ └── ReplInterpreterScriptLoader.cs.meta │ │ │ │ ├── REPL.meta │ │ │ │ ├── Script.cs │ │ │ │ ├── Script.cs.meta │ │ │ │ ├── ScriptGlobalOptions.cs │ │ │ │ ├── ScriptGlobalOptions.cs.meta │ │ │ │ ├── ScriptOptions.cs │ │ │ │ ├── ScriptOptions.cs.meta │ │ │ │ ├── Serialization/ │ │ │ │ │ ├── Json/ │ │ │ │ │ │ ├── JsonNull.cs │ │ │ │ │ │ ├── JsonNull.cs.meta │ │ │ │ │ │ ├── JsonTableConverter.cs │ │ │ │ │ │ └── JsonTableConverter.cs.meta │ │ │ │ │ ├── Json.meta │ │ │ │ │ ├── ObjectValueConverter.cs │ │ │ │ │ ├── ObjectValueConverter.cs.meta │ │ │ │ │ ├── SerializationExtensions.cs │ │ │ │ │ └── SerializationExtensions.cs.meta │ │ │ │ ├── Serialization.meta │ │ │ │ ├── Tree/ │ │ │ │ │ ├── Expression_.cs │ │ │ │ │ ├── Expression_.cs.meta │ │ │ │ │ ├── Expressions/ │ │ │ │ │ │ ├── AdjustmentExpression.cs │ │ │ │ │ │ ├── AdjustmentExpression.cs.meta │ │ │ │ │ │ ├── BinaryOperatorExpression.cs │ │ │ │ │ │ ├── BinaryOperatorExpression.cs.meta │ │ │ │ │ │ ├── DynamicExprExpression.cs │ │ │ │ │ │ ├── DynamicExprExpression.cs.meta │ │ │ │ │ │ ├── ExprListExpression.cs │ │ │ │ │ │ ├── ExprListExpression.cs.meta │ │ │ │ │ │ ├── FunctionCallExpression.cs │ │ │ │ │ │ ├── FunctionCallExpression.cs.meta │ │ │ │ │ │ ├── FunctionDefinitionExpression.cs │ │ │ │ │ │ ├── FunctionDefinitionExpression.cs.meta │ │ │ │ │ │ ├── IndexExpression.cs │ │ │ │ │ │ ├── IndexExpression.cs.meta │ │ │ │ │ │ ├── LiteralExpression.cs │ │ │ │ │ │ ├── LiteralExpression.cs.meta │ │ │ │ │ │ ├── SymbolRefExpression.cs │ │ │ │ │ │ ├── SymbolRefExpression.cs.meta │ │ │ │ │ │ ├── TableConstructor.cs │ │ │ │ │ │ ├── TableConstructor.cs.meta │ │ │ │ │ │ ├── UnaryOperatorExpression.cs │ │ │ │ │ │ └── UnaryOperatorExpression.cs.meta │ │ │ │ │ ├── Expressions.meta │ │ │ │ │ ├── Fast_Interface/ │ │ │ │ │ │ ├── Loader_Fast.cs │ │ │ │ │ │ └── Loader_Fast.cs.meta │ │ │ │ │ ├── Fast_Interface.meta │ │ │ │ │ ├── IVariable.cs │ │ │ │ │ ├── IVariable.cs.meta │ │ │ │ │ ├── Lexer/ │ │ │ │ │ │ ├── Lexer.cs │ │ │ │ │ │ ├── Lexer.cs.meta │ │ │ │ │ │ ├── LexerUtils.cs │ │ │ │ │ │ ├── LexerUtils.cs.meta │ │ │ │ │ │ ├── Token.cs │ │ │ │ │ │ ├── Token.cs.meta │ │ │ │ │ │ ├── TokenType.cs │ │ │ │ │ │ └── TokenType.cs.meta │ │ │ │ │ ├── Lexer.meta │ │ │ │ │ ├── Loop.cs │ │ │ │ │ ├── Loop.cs.meta │ │ │ │ │ ├── NodeBase.cs │ │ │ │ │ ├── NodeBase.cs.meta │ │ │ │ │ ├── Statement.cs │ │ │ │ │ ├── Statement.cs.meta │ │ │ │ │ ├── Statements/ │ │ │ │ │ │ ├── AssignmentStatement.cs │ │ │ │ │ │ ├── AssignmentStatement.cs.meta │ │ │ │ │ │ ├── BreakStatement.cs │ │ │ │ │ │ ├── BreakStatement.cs.meta │ │ │ │ │ │ ├── ChunkStatement.cs │ │ │ │ │ │ ├── ChunkStatement.cs.meta │ │ │ │ │ │ ├── CompositeStatement.cs │ │ │ │ │ │ ├── CompositeStatement.cs.meta │ │ │ │ │ │ ├── EmptyStatement.cs │ │ │ │ │ │ ├── EmptyStatement.cs.meta │ │ │ │ │ │ ├── ForEachLoopStatement.cs │ │ │ │ │ │ ├── ForEachLoopStatement.cs.meta │ │ │ │ │ │ ├── ForLoopStatement.cs │ │ │ │ │ │ ├── ForLoopStatement.cs.meta │ │ │ │ │ │ ├── FunctionCallStatement.cs │ │ │ │ │ │ ├── FunctionCallStatement.cs.meta │ │ │ │ │ │ ├── FunctionDefinitionStatement.cs │ │ │ │ │ │ ├── FunctionDefinitionStatement.cs.meta │ │ │ │ │ │ ├── GotoStatement.cs │ │ │ │ │ │ ├── GotoStatement.cs.meta │ │ │ │ │ │ ├── IfStatement.cs │ │ │ │ │ │ ├── IfStatement.cs.meta │ │ │ │ │ │ ├── LabelStatement.cs │ │ │ │ │ │ ├── LabelStatement.cs.meta │ │ │ │ │ │ ├── RepeatStatement.cs │ │ │ │ │ │ ├── RepeatStatement.cs.meta │ │ │ │ │ │ ├── ReturnStatement.cs │ │ │ │ │ │ ├── ReturnStatement.cs.meta │ │ │ │ │ │ ├── ScopeBlockStatement.cs │ │ │ │ │ │ ├── ScopeBlockStatement.cs.meta │ │ │ │ │ │ ├── WhileStatement.cs │ │ │ │ │ │ └── WhileStatement.cs.meta │ │ │ │ │ └── Statements.meta │ │ │ │ └── Tree.meta │ │ │ └── Interpreter.meta │ │ ├── MoonSharp.meta │ │ ├── aarch64/ │ │ │ ├── discord_game_sdk.bundle │ │ │ ├── discord_game_sdk.bundle.meta │ │ │ └── discord_game_sdk.dylib.meta │ │ ├── aarch64.meta │ │ ├── user32.dll.meta │ │ ├── x86/ │ │ │ ├── discord_game_sdk.dll.lib │ │ │ ├── discord_game_sdk.dll.lib.meta │ │ │ └── discord_game_sdk.dll.meta │ │ ├── x86.meta │ │ ├── x86_64/ │ │ │ ├── discord_game_sdk.bundle │ │ │ ├── discord_game_sdk.bundle.meta │ │ │ ├── discord_game_sdk.dll.lib │ │ │ ├── discord_game_sdk.dll.lib.meta │ │ │ ├── discord_game_sdk.dll.meta │ │ │ ├── discord_game_sdk.dylib.meta │ │ │ └── discord_game_sdk.so.meta │ │ └── x86_64.meta │ ├── Plugins.meta │ ├── Resources/ │ │ ├── Audios/ │ │ │ ├── ButtonSound.ogg │ │ │ ├── ButtonSound.ogg.meta │ │ │ ├── GoatSound.ogg │ │ │ ├── GoatSound.ogg.meta │ │ │ ├── MisriHalek.ogg │ │ │ ├── MisriHalek.ogg.meta │ │ │ ├── Rhenny.ogg │ │ │ ├── Rhenny.ogg.meta │ │ │ └── sound.wav.meta │ │ ├── Audios.meta │ │ ├── Prefabs/ │ │ │ ├── BGCamera.prefab │ │ │ ├── BGCamera.prefab.meta │ │ │ ├── Background 1.prefab │ │ │ ├── Background 1.prefab.meta │ │ │ ├── Background.prefab │ │ │ ├── Background.prefab.meta │ │ │ ├── Canvas OW.prefab │ │ │ ├── Canvas OW.prefab.meta │ │ │ ├── CanvasLoad.prefab │ │ │ ├── CanvasLoad.prefab.meta │ │ │ ├── CstmTxtContainer.prefab │ │ │ ├── CstmTxtContainer.prefab.meta │ │ │ ├── Debugger.prefab │ │ │ ├── Debugger.prefab.meta │ │ │ ├── DialogBubble.prefab │ │ │ ├── DialogBubble.prefab.meta │ │ │ ├── Event1.prefab │ │ │ ├── Event1.prefab.meta │ │ │ ├── Example-Shader.prefab │ │ │ ├── Example-Shader.prefab.meta │ │ │ ├── FightInstance.prefab │ │ │ ├── FightInstance.prefab.meta │ │ │ ├── HPBar.prefab │ │ │ ├── HPBar.prefab.meta │ │ │ ├── Image 1.prefab │ │ │ ├── Image 1.prefab.meta │ │ │ ├── Image.prefab │ │ │ ├── Image.prefab.meta │ │ │ ├── ImageEvent.prefab │ │ │ ├── ImageEvent.prefab.meta │ │ │ ├── Keybinding.prefab │ │ │ ├── Keybinding.prefab.meta │ │ │ ├── LUAEnemy.prefab │ │ │ ├── LUAEnemy.prefab.meta │ │ │ ├── LUAProjectile.prefab │ │ │ ├── LUAProjectile.prefab.meta │ │ │ ├── Main Camera OW.prefab │ │ │ ├── Main Camera OW.prefab.meta │ │ │ ├── Main Camera.prefab │ │ │ ├── Main Camera.prefab.meta │ │ │ ├── Maps/ │ │ │ │ ├── Core - Pont.prefab │ │ │ │ ├── Core - Pont.prefab.meta │ │ │ │ ├── _ReadMe.txt │ │ │ │ ├── _ReadMe.txt.meta │ │ │ │ ├── newhome1.prefab │ │ │ │ ├── newhome1.prefab.meta │ │ │ │ ├── newhome2.prefab │ │ │ │ ├── newhome2.prefab.meta │ │ │ │ ├── newhome3.prefab │ │ │ │ ├── newhome3.prefab.meta │ │ │ │ ├── test-1.prefab │ │ │ │ ├── test-1.prefab.meta │ │ │ │ ├── test5.prefab │ │ │ │ └── test5.prefab.meta │ │ │ ├── Maps.meta │ │ │ ├── ModButton.prefab │ │ │ ├── ModButton.prefab.meta │ │ │ ├── MonsterDuster.prefab │ │ │ ├── MonsterDuster.prefab.meta │ │ │ ├── MonsterSpareParticleSys.prefab │ │ │ ├── MonsterSpareParticleSys.prefab.meta │ │ │ ├── Player.prefab │ │ │ ├── Player.prefab.meta │ │ │ ├── Retromode Warning.prefab │ │ │ ├── Retromode Warning.prefab.meta │ │ │ ├── Save.prefab │ │ │ ├── Save.prefab.meta │ │ │ ├── Shader.prefab │ │ │ ├── Shader.prefab.meta │ │ │ ├── SpeButton.prefab │ │ │ ├── SpeButton.prefab.meta │ │ │ ├── StationaryMiss.prefab │ │ │ ├── StationaryMiss.prefab.meta │ │ │ ├── TP On-the-fly.prefab │ │ │ ├── TP On-the-fly.prefab.meta │ │ │ ├── TextManager OW.prefab │ │ │ ├── TextManager OW.prefab.meta │ │ │ ├── generic_sprite.prefab │ │ │ ├── generic_sprite.prefab.meta │ │ │ ├── heart_broken.prefab │ │ │ ├── heart_broken.prefab.meta │ │ │ ├── letter.prefab │ │ │ └── letter.prefab.meta │ │ ├── Prefabs.meta │ │ ├── Sprites/ │ │ │ ├── FolderClosed.png.meta │ │ │ ├── FolderOpen.png.meta │ │ │ ├── Lu/ │ │ │ │ ├── HoldNormal0.png.meta │ │ │ │ ├── HoldNormal1.png.meta │ │ │ │ ├── HoldNormal2.png.meta │ │ │ │ ├── NormalHappy0.png.meta │ │ │ │ ├── NormalHappy1.png.meta │ │ │ │ ├── NormalHappy2.png.meta │ │ │ │ ├── NormalNormal0.png.meta │ │ │ │ ├── NormalNormal1.png.meta │ │ │ │ ├── NormalNormal2.png.meta │ │ │ │ ├── NormalSad0.png.meta │ │ │ │ ├── NormalSad1.png.meta │ │ │ │ ├── NormalSad2.png.meta │ │ │ │ ├── PointHappy0.png.meta │ │ │ │ ├── PointHappy1.png.meta │ │ │ │ ├── PointHappy2.png.meta │ │ │ │ ├── PointNormal0.png.meta │ │ │ │ ├── PointNormal1.png.meta │ │ │ │ ├── PointNormal2.png.meta │ │ │ │ ├── WaveHappy0.png.meta │ │ │ │ ├── WaveHappy1.png.meta │ │ │ │ ├── WaveHappy2.png.meta │ │ │ │ ├── WaveNormal0.png.meta │ │ │ │ ├── WaveNormal1.png.meta │ │ │ │ └── WaveNormal2.png.meta │ │ │ ├── Lu.meta │ │ │ ├── Punder/ │ │ │ │ ├── determined.png.meta │ │ │ │ ├── determinedT.png.meta │ │ │ │ ├── happy.png.meta │ │ │ │ ├── happyT.png.meta │ │ │ │ ├── idle.png.meta │ │ │ │ ├── idleT.png.meta │ │ │ │ ├── laugh.png.meta │ │ │ │ ├── laughT.png.meta │ │ │ │ ├── misriHalek.png.meta │ │ │ │ ├── misriHalekT.png.meta │ │ │ │ ├── perv.png.meta │ │ │ │ ├── pervT.png.meta │ │ │ │ ├── petted.png.meta │ │ │ │ ├── question.png.meta │ │ │ │ ├── questionHappy.png.meta │ │ │ │ ├── questionHappyT.png.meta │ │ │ │ ├── questionT.png.meta │ │ │ │ ├── sad.png.meta │ │ │ │ ├── sadT.png.meta │ │ │ │ ├── serious.png.meta │ │ │ │ ├── seriousT.png.meta │ │ │ │ ├── undyne.png.meta │ │ │ │ ├── undyne2.png.meta │ │ │ │ ├── undyne3.png.meta │ │ │ │ ├── veryHappy.png.meta │ │ │ │ └── veryHappyT.png.meta │ │ │ ├── Punder.meta │ │ │ ├── QuickFolderClosed.png.meta │ │ │ ├── QuickFolderOpen.png.meta │ │ │ ├── mm.png.meta │ │ │ ├── mm2.png.meta │ │ │ ├── mm2Old.png.meta │ │ │ ├── mmOld.png.meta │ │ │ └── pause.png.meta │ │ ├── Sprites.meta │ │ ├── unity default resources │ │ ├── unity default resources.meta │ │ ├── unity_builtin_extra │ │ └── unity_builtin_extra.meta │ ├── Resources.meta │ ├── Scenes/ │ │ ├── BasicOWScene.unity │ │ ├── BasicOWScene.unity.meta │ │ ├── Battle.unity │ │ ├── Battle.unity.meta │ │ ├── Disclaimer.unity │ │ ├── Disclaimer.unity.meta │ │ ├── EnterName.unity │ │ ├── EnterName.unity.meta │ │ ├── Error.unity │ │ ├── Error.unity.meta │ │ ├── Intro.unity │ │ ├── Intro.unity.meta │ │ ├── KeybindSettings.unity │ │ ├── KeybindSettings.unity.meta │ │ ├── ModSelect.unity │ │ ├── ModSelect.unity.meta │ │ ├── Options.unity │ │ ├── Options.unity.meta │ │ ├── Secret.unity │ │ ├── Secret.unity.meta │ │ ├── Shop.unity │ │ ├── Shop.unity.meta │ │ ├── SpecialAnnouncement.unity │ │ ├── SpecialAnnouncement.unity.meta │ │ ├── TitleScreen.unity │ │ ├── TitleScreen.unity.meta │ │ ├── TransitionOverworld.unity │ │ ├── TransitionOverworld.unity.meta │ │ ├── Void.unity │ │ ├── Void.unity.meta │ │ ├── newhome1.unity │ │ ├── newhome1.unity.meta │ │ ├── newhome2.unity │ │ ├── newhome2.unity.meta │ │ ├── newhome3.unity │ │ ├── newhome3.unity.meta │ │ ├── test-1.unity │ │ ├── test-1.unity.meta │ │ ├── test.unity │ │ ├── test.unity.meta │ │ ├── test2.unity │ │ ├── test2.unity.meta │ │ ├── test4.unity │ │ ├── test4.unity.meta │ │ ├── test5.unity │ │ └── test5.unity.meta │ ├── Scenes.meta │ ├── Scripts/ │ │ ├── Animation/ │ │ │ ├── Keyframe.cs │ │ │ ├── Keyframe.cs.meta │ │ │ ├── KeyframeCollection.cs │ │ │ └── KeyframeCollection.cs.meta │ │ ├── Animation.meta │ │ ├── Battle/ │ │ │ ├── ArenaManager.cs │ │ │ ├── ArenaManager.cs.meta │ │ │ ├── BackgroundLoader.cs │ │ │ ├── BackgroundLoader.cs.meta │ │ │ ├── BulletPool.cs │ │ │ ├── BulletPool.cs.meta │ │ │ ├── EnemyController.cs │ │ │ ├── EnemyController.cs.meta │ │ │ ├── EnemyEncounter.cs │ │ │ ├── EnemyEncounter.cs.meta │ │ │ ├── FightUI.cs │ │ │ ├── FightUI.cs.meta │ │ │ ├── FightUIController.cs │ │ │ ├── FightUIController.cs.meta │ │ │ ├── GameOverBehavior.cs │ │ │ ├── GameOverBehavior.cs.meta │ │ │ ├── GameOverInit.cs │ │ │ ├── GameOverInit.cs.meta │ │ │ ├── LifeBarController.cs │ │ │ ├── LifeBarController.cs.meta │ │ │ ├── StationaryMissScript.cs │ │ │ ├── StationaryMissScript.cs.meta │ │ │ ├── UIController.cs │ │ │ ├── UIController.cs.meta │ │ │ ├── UIStats.cs │ │ │ └── UIStats.cs.meta │ │ ├── Battle.meta │ │ ├── Debug/ │ │ │ ├── ProjectileHitboxRenderer.cs │ │ │ ├── ProjectileHitboxRenderer.cs.meta │ │ │ ├── UserDebugger.cs │ │ │ └── UserDebugger.cs.meta │ │ ├── Debug.meta │ │ ├── Device/ │ │ │ ├── DisclaimerScript.cs │ │ │ ├── DisclaimerScript.cs.meta │ │ │ ├── DiscordControls.cs │ │ │ ├── DiscordControls.cs.meta │ │ │ ├── GlobalControls.cs │ │ │ ├── GlobalControls.cs.meta │ │ │ ├── Input/ │ │ │ │ ├── IUndertaleInput.cs │ │ │ │ ├── IUndertaleInput.cs.meta │ │ │ │ ├── KeyboardInput.cs │ │ │ │ └── KeyboardInput.cs.meta │ │ │ ├── Input.meta │ │ │ ├── Misc.cs │ │ │ ├── Misc.cs.meta │ │ │ ├── ScreenResolution.cs │ │ │ └── ScreenResolution.cs.meta │ │ ├── Device.meta │ │ ├── Inventory/ │ │ │ ├── Inventory.cs │ │ │ ├── Inventory.cs.meta │ │ │ ├── ItemBox.cs │ │ │ ├── ItemBox.cs.meta │ │ │ ├── UnderItem.cs │ │ │ └── UnderItem.cs.meta │ │ ├── Inventory.meta │ │ ├── Lua/ │ │ │ ├── CLRBindings/ │ │ │ │ ├── LuaArenaStatus.cs │ │ │ │ ├── LuaArenaStatus.cs.meta │ │ │ │ ├── LuaCYFObject.cs │ │ │ │ ├── LuaCYFObject.cs.meta │ │ │ │ ├── LuaDiscord.cs │ │ │ │ ├── LuaDiscord.cs.meta │ │ │ │ ├── LuaFile.cs │ │ │ │ ├── LuaFile.cs.meta │ │ │ │ ├── LuaInputBinding.cs │ │ │ │ ├── LuaInputBinding.cs.meta │ │ │ │ ├── LuaInventory.cs │ │ │ │ ├── LuaInventory.cs.meta │ │ │ │ ├── LuaPlayerStatus.cs │ │ │ │ ├── LuaPlayerStatus.cs.meta │ │ │ │ ├── LuaPlayerUI.cs │ │ │ │ ├── LuaPlayerUI.cs.meta │ │ │ │ ├── LuaSpriteController.cs │ │ │ │ ├── LuaSpriteController.cs.meta │ │ │ │ ├── LuaSpriteShader.cs │ │ │ │ ├── LuaSpriteShader.cs.meta │ │ │ │ ├── LuaTextManager.cs │ │ │ │ ├── LuaTextManager.cs.meta │ │ │ │ ├── LuaUnityTime.cs │ │ │ │ ├── LuaUnityTime.cs.meta │ │ │ │ ├── MusicManager.cs │ │ │ │ ├── MusicManager.cs.meta │ │ │ │ ├── NewMusicManager.cs │ │ │ │ ├── NewMusicManager.cs.meta │ │ │ │ ├── Overworld/ │ │ │ │ │ ├── LuaEventOW.cs │ │ │ │ │ ├── LuaEventOW.cs.meta │ │ │ │ │ ├── LuaGeneralOW.cs │ │ │ │ │ ├── LuaGeneralOW.cs.meta │ │ │ │ │ ├── LuaInventoryOW.cs │ │ │ │ │ ├── LuaInventoryOW.cs.meta │ │ │ │ │ ├── LuaMapOW.cs │ │ │ │ │ ├── LuaMapOW.cs.meta │ │ │ │ │ ├── LuaPlayerOW.cs │ │ │ │ │ ├── LuaPlayerOW.cs.meta │ │ │ │ │ ├── LuaScreenOW.cs │ │ │ │ │ └── LuaScreenOW.cs.meta │ │ │ │ ├── Overworld.meta │ │ │ │ ├── ProjectileController.cs │ │ │ │ └── ProjectileController.cs.meta │ │ │ ├── CLRBindings.meta │ │ │ ├── ErrorDisplay.cs │ │ │ ├── ErrorDisplay.cs.meta │ │ │ ├── FileLoader.cs │ │ │ ├── FileLoader.cs.meta │ │ │ ├── LuaScriptBinder.cs │ │ │ ├── LuaScriptBinder.cs.meta │ │ │ ├── ScriptWrapper.cs │ │ │ ├── ScriptWrapper.cs.meta │ │ │ ├── StaticRegistries/ │ │ │ │ ├── AudioClipRegistry.cs │ │ │ │ ├── AudioClipRegistry.cs.meta │ │ │ │ ├── ShaderRegistry.cs │ │ │ │ ├── ShaderRegistry.cs.meta │ │ │ │ ├── SpriteFontRegistry.cs │ │ │ │ ├── SpriteFontRegistry.cs.meta │ │ │ │ ├── SpriteRegistry.cs │ │ │ │ └── SpriteRegistry.cs.meta │ │ │ └── StaticRegistries.meta │ │ ├── Lua.meta │ │ ├── Overworld/ │ │ │ ├── CYFAnimator.cs │ │ │ ├── CYFAnimator.cs.meta │ │ │ ├── EnterNameScript.cs │ │ │ ├── EnterNameScript.cs.meta │ │ │ ├── EventManager.cs │ │ │ ├── EventManager.cs.meta │ │ │ ├── EventOW.cs │ │ │ ├── EventOW.cs.meta │ │ │ ├── Fading.cs │ │ │ ├── Fading.cs.meta │ │ │ ├── GameState.cs │ │ │ ├── GameState.cs.meta │ │ │ ├── IntroManager.cs │ │ │ ├── IntroManager.cs.meta │ │ │ ├── ItemBoxUI.cs │ │ │ ├── ItemBoxUI.cs.meta │ │ │ ├── MapInfos.cs │ │ │ ├── MapInfos.cs.meta │ │ │ ├── MapLoader.cs │ │ │ ├── MapLoader.cs.meta │ │ │ ├── PermanentGameState.cs │ │ │ ├── PermanentGameState.cs.meta │ │ │ ├── PlayerOverworld.cs │ │ │ ├── PlayerOverworld.cs.meta │ │ │ ├── SaveLoad.cs │ │ │ ├── SaveLoad.cs.meta │ │ │ ├── ShopScript.cs │ │ │ ├── ShopScript.cs.meta │ │ │ ├── SpecialAnnouncementScript.cs │ │ │ ├── SpecialAnnouncementScript.cs.meta │ │ │ ├── TPHandler.cs │ │ │ ├── TPHandler.cs.meta │ │ │ ├── Title.cs │ │ │ ├── Title.cs.meta │ │ │ ├── TransitionOverworld.cs │ │ │ └── TransitionOverworld.cs.meta │ │ ├── Overworld.meta │ │ ├── PlayerControllers/ │ │ │ ├── .vs/ │ │ │ │ ├── ProjectSettings.json │ │ │ │ └── VSWorkspaceState.json │ │ │ ├── AbstractSoul.cs │ │ │ ├── AbstractSoul.cs.meta │ │ │ ├── BlueSoul.cs │ │ │ ├── BlueSoul.cs.meta │ │ │ ├── PlayerController.cs │ │ │ ├── PlayerController.cs.meta │ │ │ ├── RedSoul.cs │ │ │ └── RedSoul.cs.meta │ │ ├── PlayerControllers.meta │ │ ├── PregamePlaceholder/ │ │ │ ├── KeybindEntry.cs │ │ │ ├── KeybindEntry.cs.meta │ │ │ ├── KeybindSettings.cs │ │ │ ├── KeybindSettings.cs.meta │ │ │ ├── MenuButton.cs │ │ │ ├── MenuButton.cs.meta │ │ │ ├── ModPage.cs │ │ │ ├── ModPage.cs.meta │ │ │ ├── OptionsScript.cs │ │ │ ├── OptionsScript.cs.meta │ │ │ ├── SelectOMatic.cs │ │ │ └── SelectOMatic.cs.meta │ │ ├── PregamePlaceholder.meta │ │ ├── Projectile/ │ │ │ ├── LuaProjectile.cs │ │ │ ├── LuaProjectile.cs.meta │ │ │ ├── Projectile.cs │ │ │ └── Projectile.cs.meta │ │ ├── Projectile.meta │ │ ├── Rendering/ │ │ │ ├── CYFSprite.cs │ │ │ ├── CYFSprite.cs.meta │ │ │ ├── CameraShader.cs │ │ │ ├── CameraShader.cs.meta │ │ │ ├── EarthboundBG.cs │ │ │ ├── EarthboundBG.cs.meta │ │ │ ├── MaskImage.cs │ │ │ ├── MaskImage.cs.meta │ │ │ ├── ParticleDuplicator.cs │ │ │ └── ParticleDuplicator.cs.meta │ │ ├── Rendering.meta │ │ ├── Status/ │ │ │ ├── PlayerCharacter.cs │ │ │ └── PlayerCharacter.cs.meta │ │ ├── Status.meta │ │ ├── Tests/ │ │ │ ├── ArenaSwagger.cs │ │ │ ├── ArenaSwagger.cs.meta │ │ │ ├── BlookSwagger.cs │ │ │ ├── BlookSwagger.cs.meta │ │ │ ├── LetterWiggle.cs │ │ │ ├── LetterWiggle.cs.meta │ │ │ ├── ProgrammaticFontTest.cs │ │ │ ├── ProgrammaticFontTest.cs.meta │ │ │ ├── TextSceneInsertion.cs │ │ │ ├── TextSceneInsertion.cs.meta │ │ │ ├── UndertaleSaveReader.cs │ │ │ └── UndertaleSaveReader.cs.meta │ │ ├── Tests.meta │ │ ├── Text/ │ │ │ ├── Letter.cs │ │ │ ├── Letter.cs.meta │ │ │ ├── MonsterMessage.cs │ │ │ ├── MonsterMessage.cs.meta │ │ │ ├── RegularMessage.cs │ │ │ ├── RegularMessage.cs.meta │ │ │ ├── SelectMessage.cs │ │ │ ├── SelectMessage.cs.meta │ │ │ ├── TextEffect/ │ │ │ │ ├── RotatingEffect.cs │ │ │ │ ├── RotatingEffect.cs.meta │ │ │ │ ├── ShakeEffect.cs │ │ │ │ ├── ShakeEffect.cs.meta │ │ │ │ ├── TextEffect.cs │ │ │ │ ├── TextEffect.cs.meta │ │ │ │ ├── TwitchEffect.cs │ │ │ │ └── TwitchEffect.cs.meta │ │ │ ├── TextEffect.meta │ │ │ ├── TextEffectLetter/ │ │ │ │ ├── RotatingEffectLetter.cs │ │ │ │ ├── RotatingEffectLetter.cs.meta │ │ │ │ ├── ShakeEffectLetter.cs │ │ │ │ ├── ShakeEffectLetter.cs.meta │ │ │ │ ├── TextEffectLetter.cs │ │ │ │ ├── TextEffectLetter.cs.meta │ │ │ │ ├── TwitchEffectLetter.cs │ │ │ │ └── TwitchEffectLetter.cs.meta │ │ │ ├── TextEffectLetter.meta │ │ │ ├── TextManager.cs │ │ │ ├── TextManager.cs.meta │ │ │ ├── TextMessage.cs │ │ │ ├── TextMessage.cs.meta │ │ │ ├── UnderFont.cs │ │ │ └── UnderFont.cs.meta │ │ ├── Text.meta │ │ ├── UnityUIParticles/ │ │ │ ├── Editor/ │ │ │ │ ├── ParticleSystemMeshGeneratorEditor.cs │ │ │ │ └── ParticleSystemMeshGeneratorEditor.cs.meta │ │ │ ├── Editor.meta │ │ │ ├── Internal/ │ │ │ │ ├── BakingCamera.cs │ │ │ │ ├── BakingCamera.cs.meta │ │ │ │ ├── MeshHelper.cs │ │ │ │ └── MeshHelper.cs.meta │ │ │ ├── Internal.meta │ │ │ ├── LICENSE.md │ │ │ ├── LICENSE.md.meta │ │ │ ├── ParticleSystemMeshGenerator.cs │ │ │ ├── ParticleSystemMeshGenerator.cs.meta │ │ │ ├── README.md │ │ │ └── README.md.meta │ │ ├── UnityUIParticles.meta │ │ ├── Util/ │ │ │ ├── AutoloadResourcesFromRegistry.cs │ │ │ ├── AutoloadResourcesFromRegistry.cs.meta │ │ │ ├── CYFEventFunctionAttribute.cs │ │ │ ├── CYFEventFunctionAttribute.cs.meta │ │ │ ├── CYFException.cs │ │ │ ├── CYFException.cs.meta │ │ │ ├── CYFTimer.cs │ │ │ ├── CYFTimer.cs.meta │ │ │ ├── ControlPanel.cs │ │ │ ├── ControlPanel.cs.meta │ │ │ ├── FPSDisplay.cs │ │ │ ├── FPSDisplay.cs.meta │ │ │ ├── InputUtil.cs │ │ │ ├── InputUtil.cs.meta │ │ │ ├── LateUpdater.cs │ │ │ ├── LateUpdater.cs.meta │ │ │ ├── Math.cs │ │ │ ├── Math.cs.meta │ │ │ ├── MoonSharpUtil.cs │ │ │ ├── MoonSharpUtil.cs.meta │ │ │ ├── ParseUtil.cs │ │ │ ├── ParseUtil.cs.meta │ │ │ ├── RTUtil.cs │ │ │ ├── RTUtil.cs.meta │ │ │ ├── RetromodeWarning.cs │ │ │ ├── RetromodeWarning.cs.meta │ │ │ ├── SpriteUtil.cs │ │ │ ├── SpriteUtil.cs.meta │ │ │ ├── StaticInits.cs │ │ │ ├── StaticInits.cs.meta │ │ │ ├── UnitaleUtil.cs │ │ │ └── UnitaleUtil.cs.meta │ │ ├── Util.meta │ │ ├── Why/ │ │ │ ├── DogGyrator.cs │ │ │ ├── DogGyrator.cs.meta │ │ │ ├── Temmify.cs │ │ │ └── Temmify.cs.meta │ │ └── Why.meta │ ├── Scripts.meta │ ├── Sprites/ │ │ ├── Arrow.png.meta │ │ ├── Backspace.png.meta │ │ ├── ChangeName.png.meta │ │ ├── Continue.png.meta │ │ ├── CrateYourFrisk_Title.png.meta │ │ ├── CreateYourFrisk_Title - Copie.png.meta │ │ ├── CreateYourFrisk_Title.png.meta │ │ ├── Done.png.meta │ │ ├── EncounterBubble.png.meta │ │ ├── EncounterBubbleGeno.png.meta │ │ ├── Enter Name.png.meta │ │ ├── IntroDummy.png.meta │ │ ├── IntroDummy1.png.meta │ │ ├── ItemBox.png.meta │ │ ├── Loading.png.meta │ │ ├── MisriHalek(The Lamb).png.meta │ │ ├── No.png.meta │ │ ├── Quit.png.meta │ │ ├── Reset.png.meta │ │ ├── ResetScreen.png.meta │ │ ├── Save.controller │ │ ├── Save.controller.meta │ │ ├── Shop.png.meta │ │ ├── Shop2.png.meta │ │ ├── ShopText.png.meta │ │ ├── SolidWhiteUnlit.mat │ │ ├── SolidWhiteUnlit.mat.meta │ │ ├── Title.png.meta │ │ ├── Title2 0.6.png.meta │ │ ├── Title2.png.meta │ │ ├── UnitySymbol.jpg.meta │ │ ├── UnitySymbol2.png.meta │ │ ├── Void.png.meta │ │ ├── Yes.png.meta │ │ ├── arenaborder.png.meta │ │ ├── black.png.meta │ │ ├── blank.png.meta │ │ ├── bottomleftcorner.png.meta │ │ ├── bottomrightcorner.png.meta │ │ ├── empty.png.meta │ │ ├── foreground.png.meta │ │ ├── px.png.meta │ │ ├── retromode-warn.png.meta │ │ ├── savepoint.anim │ │ ├── savepoint.anim.meta │ │ ├── savepoint1.png.meta │ │ ├── savepoint2.png.meta │ │ ├── speechthing.png.meta │ │ ├── speechthingshadow.png.meta │ │ ├── spr_tobdogl_still_0.png.meta │ │ ├── topleftcorner.png.meta │ │ ├── toprightcorner.png.meta │ │ └── uidialog.png.meta │ ├── Sprites.meta │ ├── Tiled2Unity/ │ │ ├── Imported/ │ │ │ ├── Core - Pont.tiled2unity.xml │ │ │ ├── Core - Pont.tiled2unity.xml.meta │ │ │ ├── _ReadMe.txt │ │ │ ├── _ReadMe.txt.meta │ │ │ ├── newhome1.tiled2unity.xml │ │ │ ├── newhome1.tiled2unity.xml.meta │ │ │ ├── newhome2.tiled2unity.xml │ │ │ ├── newhome2.tiled2unity.xml.meta │ │ │ ├── newhome3.tiled2unity.xml │ │ │ ├── newhome3.tiled2unity.xml.meta │ │ │ ├── test-1.tiled2unity.xml │ │ │ ├── test-1.tiled2unity.xml.meta │ │ │ ├── test5.tiled2unity.xml │ │ │ └── test5.tiled2unity.xml.meta │ │ ├── Imported.meta │ │ ├── License.txt │ │ ├── License.txt.meta │ │ ├── Materials/ │ │ │ ├── PC Computer - Undertale - Core Tileset(1).mat │ │ │ ├── PC Computer - Undertale - Core Tileset(1).mat.meta │ │ │ ├── Snow 2.mat │ │ │ ├── Snow 2.mat.meta │ │ │ ├── UT NewHome 1.mat │ │ │ ├── UT NewHome 1.mat.meta │ │ │ ├── UT NewHome 2.mat │ │ │ ├── UT NewHome 2.mat.meta │ │ │ ├── UT NewHome 3.mat │ │ │ ├── UT NewHome 3.mat.meta │ │ │ ├── UT NewHome.mat │ │ │ ├── UT NewHome.mat.meta │ │ │ ├── _ReadMe.txt │ │ │ ├── _ReadMe.txt.meta │ │ │ ├── t2USprite-DiffuseDepth.mat │ │ │ ├── t2USprite-DiffuseDepth.mat.meta │ │ │ ├── t2uSprite-Depth.mat │ │ │ └── t2uSprite-Depth.mat.meta │ │ ├── Materials.meta │ │ ├── Meshes/ │ │ │ ├── Core - Pont/ │ │ │ │ ├── Core - Pont.obj │ │ │ │ └── Core - Pont.obj.meta │ │ │ ├── Core - Pont.meta │ │ │ ├── Core - Pont.obj │ │ │ ├── Core - Pont.obj.meta │ │ │ ├── _ReadMe.txt │ │ │ ├── _ReadMe.txt.meta │ │ │ ├── newhome1/ │ │ │ │ ├── newhome1.obj │ │ │ │ └── newhome1.obj.meta │ │ │ ├── newhome1.meta │ │ │ ├── newhome1.obj │ │ │ ├── newhome1.obj.meta │ │ │ ├── newhome2/ │ │ │ │ ├── newhome2.obj │ │ │ │ └── newhome2.obj.meta │ │ │ ├── newhome2.meta │ │ │ ├── newhome2.obj │ │ │ ├── newhome2.obj.meta │ │ │ ├── newhome3/ │ │ │ │ ├── newhome3.obj │ │ │ │ └── newhome3.obj.meta │ │ │ ├── newhome3.meta │ │ │ ├── newhome3.obj │ │ │ ├── newhome3.obj.meta │ │ │ ├── test-1/ │ │ │ │ ├── test-1.obj │ │ │ │ └── test-1.obj.meta │ │ │ ├── test-1.meta │ │ │ ├── test-1.obj │ │ │ ├── test-1.obj.meta │ │ │ ├── test5/ │ │ │ │ ├── test5.obj │ │ │ │ └── test5.obj.meta │ │ │ ├── test5.meta │ │ │ ├── test5.obj │ │ │ └── test5.obj.meta │ │ ├── Meshes.meta │ │ ├── Prefabs/ │ │ │ ├── Core - Pont.prefab │ │ │ ├── Core - Pont.prefab.meta │ │ │ ├── _ReadMe.txt │ │ │ ├── _ReadMe.txt.meta │ │ │ ├── newhome1.prefab │ │ │ ├── newhome1.prefab.meta │ │ │ ├── newhome2.prefab │ │ │ ├── newhome2.prefab.meta │ │ │ ├── newhome3.prefab │ │ │ ├── newhome3.prefab.meta │ │ │ ├── test-1.prefab │ │ │ ├── test-1.prefab.meta │ │ │ ├── test5.prefab │ │ │ └── test5.prefab.meta │ │ ├── Prefabs.meta │ │ ├── Scripts/ │ │ │ ├── Editor/ │ │ │ │ ├── CustomTiledImporterAttribute.cs │ │ │ │ ├── CustomTiledImporterAttribute.cs.meta │ │ │ │ ├── ICustomTiledImporter.cs │ │ │ │ ├── ICustomTiledImporter.cs.meta │ │ │ │ ├── ImportTiled2Unity.Material.cs │ │ │ │ ├── ImportTiled2Unity.Material.cs.meta │ │ │ │ ├── ImportTiled2Unity.Mesh.cs │ │ │ │ ├── ImportTiled2Unity.Mesh.cs.meta │ │ │ │ ├── ImportTiled2Unity.Prefab.cs │ │ │ │ ├── ImportTiled2Unity.Prefab.cs.meta │ │ │ │ ├── ImportTiled2Unity.Texture.cs │ │ │ │ ├── ImportTiled2Unity.Texture.cs.meta │ │ │ │ ├── ImportTiled2Unity.Xml.cs │ │ │ │ ├── ImportTiled2Unity.Xml.cs.meta │ │ │ │ ├── ImportTiled2Unity.cs │ │ │ │ ├── ImportTiled2Unity.cs.meta │ │ │ │ ├── ImportUtils.cs │ │ │ │ ├── ImportUtils.cs.meta │ │ │ │ ├── SortingLayerExposedEditor.cs │ │ │ │ ├── SortingLayerExposedEditor.cs.meta │ │ │ │ ├── SpriteDepthInMapEditor.cs │ │ │ │ ├── SpriteDepthInMapEditor.cs.meta │ │ │ │ ├── Tiled2UnityMenuItems.cs │ │ │ │ ├── Tiled2UnityMenuItems.cs.meta │ │ │ │ ├── TiledAssetPostProcessor.cs │ │ │ │ └── TiledAssetPostProcessor.cs.meta │ │ │ ├── Editor.meta │ │ │ ├── Runtime/ │ │ │ │ ├── CircleObject.cs │ │ │ │ ├── CircleObject.cs.meta │ │ │ │ ├── GPUInstancing.cs │ │ │ │ ├── GPUInstancing.cs.meta │ │ │ │ ├── GameObjectExtensions.cs │ │ │ │ ├── GameObjectExtensions.cs.meta │ │ │ │ ├── GroupLayer.cs │ │ │ │ ├── GroupLayer.cs.meta │ │ │ │ ├── ImportBehaviour.cs │ │ │ │ ├── ImportBehaviour.cs.meta │ │ │ │ ├── Layer.cs │ │ │ │ ├── Layer.cs.meta │ │ │ │ ├── Log.cs │ │ │ │ ├── Log.cs.meta │ │ │ │ ├── ObjectLayer.cs │ │ │ │ ├── ObjectLayer.cs.meta │ │ │ │ ├── PolygonObject.cs │ │ │ │ ├── PolygonObject.cs.meta │ │ │ │ ├── PolylineObject.cs │ │ │ │ ├── PolylineObject.cs.meta │ │ │ │ ├── RectangleObject.cs │ │ │ │ ├── RectangleObject.cs.meta │ │ │ │ ├── SortingLayerExposed.cs │ │ │ │ ├── SortingLayerExposed.cs.meta │ │ │ │ ├── SpriteDepthInMap.cs │ │ │ │ ├── SpriteDepthInMap.cs.meta │ │ │ │ ├── TileAnimator.cs │ │ │ │ ├── TileAnimator.cs.meta │ │ │ │ ├── TileLayer.cs │ │ │ │ ├── TileLayer.cs.meta │ │ │ │ ├── TileObject.cs │ │ │ │ ├── TileObject.cs.meta │ │ │ │ ├── TiledInitialShaderProperties.cs │ │ │ │ ├── TiledInitialShaderProperties.cs.meta │ │ │ │ ├── TiledMap.cs │ │ │ │ ├── TiledMap.cs.meta │ │ │ │ ├── TmxObject.cs │ │ │ │ └── TmxObject.cs.meta │ │ │ └── Runtime.meta │ │ ├── Scripts.meta │ │ ├── Shaders/ │ │ │ ├── Tiled2Unity.cginc │ │ │ ├── Tiled2Unity.cginc.meta │ │ │ ├── shaColorKey-Instanced.shader │ │ │ ├── shaColorKey-Instanced.shader.meta │ │ │ ├── shaColorKey.shader │ │ │ ├── shaColorKey.shader.meta │ │ │ ├── shaDefault-Instanced.shader │ │ │ ├── shaDefault-Instanced.shader.meta │ │ │ ├── shaDefault.shader │ │ │ ├── shaDefault.shader.meta │ │ │ ├── shaDepth-Instanced.shader │ │ │ ├── shaDepth-Instanced.shader.meta │ │ │ ├── shaDepth.shader │ │ │ ├── shaDepth.shader.meta │ │ │ ├── shaDepthColorKey-Instanced.shader │ │ │ ├── shaDepthColorKey-Instanced.shader.meta │ │ │ ├── shaDepthColorKey.shader │ │ │ ├── shaDepthColorKey.shader.meta │ │ │ ├── shaDiffuseDepth-Instanced.shader │ │ │ ├── shaDiffuseDepth-Instanced.shader.meta │ │ │ ├── shaDiffuseDepth.shader │ │ │ ├── shaDiffuseDepth.shader.meta │ │ │ ├── shaTiledMap.shader │ │ │ └── shaTiledMap.shader.meta │ │ ├── Shaders.meta │ │ ├── Textures/ │ │ │ ├── PC Computer - Undertale - Core Tileset(1).png.meta │ │ │ ├── Snow 2.png.meta │ │ │ ├── UT NewHome 1.png.meta │ │ │ ├── UT NewHome 2.png.meta │ │ │ ├── UT NewHome 3.png.meta │ │ │ ├── UT NewHome.png.meta │ │ │ ├── _ReadMe.txt │ │ │ └── _ReadMe.txt.meta │ │ ├── Textures.meta │ │ ├── Tiled2Unity.export.txt │ │ └── Tiled2Unity.export.txt.meta │ └── Tiled2Unity.meta ├── Build.py ├── Documentation CYF 1.0/ │ ├── .idea/ │ │ ├── Documentation.iml │ │ ├── copyright/ │ │ │ └── profiles_settings.xml │ │ ├── dictionaries/ │ │ │ └── test1.xml │ │ ├── modules.xml │ │ └── workspace.xml │ ├── css/ │ │ ├── bootstrap-theme.css │ │ ├── bootstrap.css │ │ ├── bootstrap.min - Copy.css │ │ ├── shThemeRDark.css │ │ ├── themesidebar.css │ │ └── themesidebar.css.bak │ ├── index.html │ ├── js/ │ │ ├── FontToggleButton.js │ │ ├── SideBar.js │ │ ├── bootstrap.js │ │ ├── npm.js │ │ ├── shAutoloader.js │ │ ├── shBrushLua.js │ │ ├── shBrushPlain.js │ │ ├── shCore.js │ │ ├── shLegacy.js │ │ └── show_hide_comments.js │ └── pages/ │ ├── api-animation.html │ ├── api-events.html │ ├── api-functions-audio.html │ ├── api-functions-discord.html │ ├── api-functions-input.html │ ├── api-functions-main.html │ ├── api-functions-misc.html │ ├── api-functions-newaudio.html │ ├── api-functions-object.html │ ├── api-functions-player.html │ ├── api-functions-script.html │ ├── api-functions-time.html │ ├── api-functions-ui.html │ ├── api-functions-waves.html │ ├── api-keys.html │ ├── api-projectile.html │ ├── api-text.html │ ├── basic.html │ ├── controls.html │ ├── cyf-inventory.html │ ├── cyf-ppcollision.html │ ├── cyf-text.html │ ├── howtoread.html │ ├── item-list.html │ ├── overworld-howto-animevent.html │ ├── overworld-howto-event.html │ ├── overworld-howto-map.html │ ├── overworld-howto-shop.html │ ├── overworld-object-event.html │ ├── overworld-object-general.html │ ├── overworld-object-inventory.html │ ├── overworld-object-map.html │ ├── overworld-object-player.html │ ├── overworld-object-screen.html │ ├── overworld.html │ ├── shaders-coding.html │ ├── shaders-object.html │ ├── shaders.html │ ├── terms.html │ ├── unity.html │ └── variables.html ├── How to use CYF and add mods (Mac).txt ├── LICENSE ├── MOONSHARP_LICENSE ├── Packages/ │ ├── Config/ │ │ ├── manifest.json │ │ └── manifest.json.meta │ ├── Config.meta │ ├── manifest.json │ └── manifest.json.meta ├── ProjectSettings/ │ ├── AudioManager.asset │ ├── ClusterInputManager.asset │ ├── DynamicsManager.asset │ ├── EditorBuildSettings.asset │ ├── EditorSettings.asset │ ├── GraphicsSettings.asset │ ├── InputManager.asset │ ├── NavMeshAreas.asset │ ├── NetworkManager.asset │ ├── Physics2DSettings.asset │ ├── PresetManager.asset │ ├── ProjectSettings.asset │ ├── ProjectVersion.txt │ ├── QualitySettings.asset │ ├── TagManager.asset │ ├── TimeManager.asset │ ├── UnityConnectSettings.asset │ └── VFXManager.asset └── README.md ================================================ FILE CONTENTS ================================================ ================================================ FILE: .gitattributes ================================================ # Auto detect text files and perform LF normalization * text=auto # Custom for Visual Studio *.cs diff=csharp # Standard to msysgit *.doc diff=astextplain *.DOC diff=astextplain *.docx diff=astextplain *.DOCX diff=astextplain *.dot diff=astextplain *.DOT diff=astextplain *.pdf diff=astextplain *.PDF diff=astextplain *.rtf diff=astextplain *.RTF diff=astextplain *.7z filter=lfs diff=lfs merge=lfs -text *.zip filter=lfs diff=lfs merge=lfs -text *.rar filter=lfs diff=lfs merge=lfs -text ================================================ FILE: .github/ISSUE_TEMPLATE/bug_report.md ================================================ --- name: Bug report about: Create a report to help us improve --- **Describe the bug** A clear and concise description of what the bug is. **To Reproduce** Steps to reproduce the behavior: 1. Go to '...' 2. Click on '....' 3. Scroll down to '....' 4. See error **Expected behavior** A clear and concise description of what you expected to happen. **Screenshots** If applicable, add screenshots to help explain your problem. **Setup (please complete the following information):** - OS: [e.g. Windows, Linux, Mac] - Version [e.g. 0.6.1.2] - Mod (Please upload it and send a link) **Additional context** Add any other context about the problem here. ================================================ FILE: .github/workflows/activation.yml ================================================ name: Acquire activation file on: workflow_dispatch jobs: activation: name: Request manual activation file 🔑 runs-on: ubuntu-latest steps: # Request manual activation file - name: Request manual activation file id: getManualLicenseFile uses: game-ci/unity-request-activation-file@v2 # Upload artifact (Unity_v20XX.X.XXXX.alf) - name: Expose as artifact uses: actions/upload-artifact@v2 with: name: ${{ steps.getManualLicenseFile.outputs.filePath }} path: ${{ steps.getManualLicenseFile.outputs.filePath }} ================================================ FILE: .github/workflows/build.yml ================================================ name: Build CYF & Notify on: [push, pull_request, workflow_dispatch] jobs: buildWindows: name: Build CYF (Windows) runs-on: ubuntu-latest steps: # Checkout - name: Checkout repository uses: actions/checkout@v2 with: lfs: true # Cache - uses: actions/cache@v4 with: path: Library key: Library-${{ hashFiles('Assets/**', 'Packages/**', 'ProjectSettings/**') }} restore-keys: | Library- # Build - name: Build project uses: game-ci/unity-builder@v2 env: UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }} UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }} UNITY_PASSWORD: ${{ secrets.UNITY_PASSWORD }} with: targetPlatform: StandaloneWindows64 buildMethod: UnityBuilderAction.BuildScript.Build buildName: CreateYourFrisk-win64 # Copy Assets to Build - run: sudo mkdir -v "${{ github.workspace }}/build/StandaloneWindows64/Default" "${{ github.workspace }}/build/StandaloneWindows64/Mods" - run: sudo cp -Rv "${{ github.workspace }}/Assets/Default/" "${{ github.workspace }}/build/StandaloneWindows64/" - run: sudo cp -Rv "${{ github.workspace }}/Assets/Mods/" "${{ github.workspace }}/build/StandaloneWindows64/" - run: sudo cp -Rv "${{ github.workspace }}/Documentation CYF 1.0/" "${{ github.workspace }}/build" - run: sudo find ${{ github.workspace }}/build/StandaloneWindows64/ -name "*.meta" -type f -delete - run: sudo mv ${{ github.workspace }}/build/StandaloneWindows64/ ${{ github.workspace }}/build/CreateYourFrisk/ # Output - uses: actions/upload-artifact@v4 with: name: CreateYourFrisk-win64 path: build buildMacOS: name: Build CYF (MacOS) runs-on: ubuntu-latest steps: # Checkout - name: Checkout repository uses: actions/checkout@v2 with: lfs: true # Cache - uses: actions/cache@v4 with: path: Library key: Library-${{ hashFiles('Assets/**', 'Packages/**', 'ProjectSettings/**') }} restore-keys: | Library- # Build - name: Build project uses: game-ci/unity-builder@v2 env: UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }} UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }} UNITY_PASSWORD: ${{ secrets.UNITY_PASSWORD }} with: targetPlatform: StandaloneOSX buildMethod: UnityBuilderAction.BuildScript.Build buildName: CreateYourFrisk-macos64 # Copy Assets to Build - run: sudo mkdir -v "${{ github.workspace }}/build/StandaloneOSX/Default" "${{ github.workspace }}/build/StandaloneOSX/Mods" - run: sudo cp -Rv "${{ github.workspace }}/Assets/Default/" "${{ github.workspace }}/build/StandaloneOSX/" - run: sudo cp -Rv "${{ github.workspace }}/Assets/Mods/" "${{ github.workspace }}/build/StandaloneOSX/" - run: sudo cp -Rv "${{ github.workspace }}/Documentation CYF 1.0/" "${{ github.workspace }}/build" - run: sudo cp "${{ github.workspace }}/How to use CYF and add mods (Mac).txt" "${{ github.workspace }}/build/StandaloneOSX/" - run: sudo find ${{ github.workspace }}/build/StandaloneOSX/ -name "*.meta" -type f -delete - run: sudo mv ${{ github.workspace }}/build/StandaloneOSX/ ${{ github.workspace }}/build/CreateYourFrisk/ # Output - uses: actions/upload-artifact@v4 with: name: CreateYourFrisk-macos64 path: build buildLinux: name: Build CYF (Linux) runs-on: ubuntu-latest steps: # Checkout - name: Checkout repository uses: actions/checkout@v2 with: lfs: true # Cache - uses: actions/cache@v4 with: path: Library key: Library-${{ hashFiles('Assets/**', 'Packages/**', 'ProjectSettings/**') }} restore-keys: | Library- # Build - name: Build project uses: game-ci/unity-builder@v2 env: UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }} UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }} UNITY_PASSWORD: ${{ secrets.UNITY_PASSWORD }} with: targetPlatform: StandaloneLinux64 buildMethod: UnityBuilderAction.BuildScript.Build buildName: CreateYourFrisk-lin64 # Copy Assets to Build - run: sudo mkdir -v "${{ github.workspace }}/build/StandaloneLinux64/Default" "${{ github.workspace }}/build/StandaloneLinux64/Mods" - run: sudo cp -Rv "${{ github.workspace }}/Assets/Default/" "${{ github.workspace }}/build/StandaloneLinux64/" - run: sudo cp -Rv "${{ github.workspace }}/Assets/Mods/" "${{ github.workspace }}/build/StandaloneLinux64/" - run: sudo cp -Rv "${{ github.workspace }}/Documentation CYF 1.0/" "${{ github.workspace }}/build" - run: sudo find ${{ github.workspace }}/build/StandaloneLinux64/ -name "*.meta" -type f -delete - run: sudo mv ${{ github.workspace }}/build/StandaloneLinux64/ ${{ github.workspace }}/build/CreateYourFrisk/ # Output - uses: actions/upload-artifact@v4 with: name: CreateYourFrisk-lin64 path: build message-success: runs-on: ubuntu-latest needs: [buildWindows, buildMacOS, buildLinux] if: success() steps: - name: Send Success Message uses: tsickert/discord-webhook@v5.3.0 with: webhook-url: ${{ secrets.NIGHTLY_WEBHOOK_LINK }} username: Poseur Mail Service avatar-url: https://github.githubassets.com/assets/GitHub-Mark-ea2971cee799.png content: | The last CYF nightly is ready to be used! Enjoy! The links are stored here: https://discord.com/channels/110129114882543616/220238710271115265/1129795830317064314 message-failure: runs-on: ubuntu-latest needs: [buildWindows, buildMacOS, buildLinux] if: failure() steps: - name: Send Failure Message uses: tsickert/discord-webhook@v5.3.0 with: webhook-url: ${{ secrets.NIGHTLY_WEBHOOK_LINK }} username: Poseur Mail Service avatar-url: https://github.githubassets.com/assets/GitHub-Mark-ea2971cee799.png content: | Oh no! The last CYF build failed! You're bad at your job! The run's details are here: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }} ================================================ FILE: .github/workflows/docs.yml ================================================ # Simple workflow for deploying static content to GitHub Pages name: Deploy static content to Pages on: # Runs on pushes targeting the default branch push: branches: ["master"] # Allows you to run this workflow manually from the Actions tab workflow_dispatch: # Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages permissions: contents: read pages: write id-token: write # Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued. # However, do NOT cancel in-progress runs as we want to allow these production deployments to complete. concurrency: group: "pages" cancel-in-progress: false jobs: # Single deploy job since we're just deploying deploy: environment: name: github-pages url: ${{ steps.deployment.outputs.page_url }} runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Setup Pages uses: actions/configure-pages@v5 - name: Upload artifact uses: actions/upload-pages-artifact@v3 with: # Upload entire repository path: './Documentation CYF 1.0' - name: Deploy to GitHub Pages id: deployment uses: actions/deploy-pages@v4 ================================================ FILE: .github/workflows/nightly_notification.yml ================================================ name: Send a message to the channel cyf-nightly on: workflow_run: workflows: ["Build CYF"] types: - completed workflow_dispatch: jobs: message: runs-on: ubuntu-latest steps: - name: Discord Webhook Action uses: tsickert/discord-webhook@v5.3.0 with: webhook-url: ${{ secrets.NIGHTLY_WEBHOOK_LINK }} username: Poseur Mail Service avatar-url: https://github.githubassets.com/assets/GitHub-Mark-ea2971cee799.png content: | The last CYF nightly is ready to be used! Enjoy! The links are stored here: https://discord.com/channels/110129114882543616/220238710271115265/1129795830317064314 ================================================ FILE: .gitignore ================================================ # Unitale ignored directories /Assets/Logs/* /Assets/Sprites/ScreenReference/ /Assets/Scripts/Unused/ /Assets/Tests/ /Assets/Scenes/Outdated/ /Assets/Scenes/Testing/ /Assets/EnemyPrefabs/ /Assets/Animations/ /Assets/ProjectilePrefabs/ /TestResults/ !MoonSharp.Interpreter.dll # Github default gitignore settings for Unity projects /[Ll]ibrary/ /[Tt]emp/ /[Oo]bj/ /[Bb]uild/ /[Bb]uilds/ /Assets/AssetStoreTools* # Autogenerated VS/MD solution and project files ExportedObj/ *.csproj *.unityproj *.sln *.suo *.tmp *.user *.userprefs *.pidb *.booproj *.svd UpgradeLog.htm # Unity3D generated meta files *.pidb.meta # Unity3D Generated File On Crash Reports sysinfo.txt # Builds *.apk *.unitypackage /bin /Assets/Editor/Output # External mods /Assets/Mods/* # Include basic mods !/Assets/Mods/@0.5.0_SEE_CRATE !/Assets/Mods/@0.5.0_SEE_CRATE.meta !/Assets/Mods/Encounter Skeleton !/Assets/Mods/Encounter Skeleton.meta !/Assets/Mods/Examples !/Assets/Mods/Examples.meta !/Assets/Mods/Examples 2 !/Assets/Mods/Examples 2.meta !/Assets/Mods/@OverWorld Test !/Assets/Mods/@OverWorld Test.meta !/Assets/Mods/RTLGeno !/Assets/Mods/RTLGeno.meta !/Assets/Mods/@Title !/Assets/Mods/@Title.meta # IDE Stuff and others /.vs/* /.vscode/* /.bin/* # GIMP project files *.xcf *.xcf.meta ================================================ FILE: .vsconfig ================================================ { "version": "1.0", "components": [ "Microsoft.VisualStudio.Workload.ManagedGame" ] } ================================================ FILE: Assets/Default/Audio/Credits.txt ================================================ FamilyJules7x made the mus_batle_1 remix used here: https://www.youtube.com/watch?v=c9KbQcuaTA0 ================================================ FILE: Assets/Default/Audio/Credits.txt.meta ================================================ fileFormatVersion: 2 guid: aab1f8e238c34ea46bea6070878a6d14 timeCreated: 1503470811 licenseType: Free TextScriptImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Audio/mus_barrier.ogg.meta ================================================ fileFormatVersion: 2 guid: aa33be8af984ff248a1c13e7db396a37 AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Audio/mus_battle1 fj7x.ogg.meta ================================================ fileFormatVersion: 2 guid: 70d6d2eeb5340c84bb40404aaaaf4048 AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Audio/mus_battle1.ogg.meta ================================================ fileFormatVersion: 2 guid: 50ec4c2bfcf8d9b4eb7eb1fc56707101 timeCreated: 1502841103 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Audio/mus_gameover.ogg.meta ================================================ fileFormatVersion: 2 guid: 75848a4b95afe824cab4175919a8c1fa timeCreated: 1457547354 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Audio.meta ================================================ fileFormatVersion: 2 guid: 14e96c05e5db4b646909d6cb2bf9d1ae folderAsset: yes timeCreated: 1457546963 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Shaders/cyfshaders/linux.meta ================================================ fileFormatVersion: 2 guid: 681062b1a96faab46ab9297169b5fb8a DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Shaders/cyfshaders/mac.meta ================================================ fileFormatVersion: 2 guid: b9be2b6501dd2c6459a88b7913d24ce9 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Shaders/cyfshaders/windows.meta ================================================ fileFormatVersion: 2 guid: 1e182b18668d13e4394c7eb1082ee5e4 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Shaders/cyfshaders.meta ================================================ fileFormatVersion: 2 guid: 3aa04ef2c9d2c6e4ba03a4648e4f599a folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Shaders.meta ================================================ fileFormatVersion: 2 guid: 3c3f6c917658d134d87bb96acadfa6cd folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/BeginBattle1.wav.meta ================================================ fileFormatVersion: 2 guid: 431beb76492f1f845b9520a34e7b8cc0 timeCreated: 1459078780 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/BeginBattle2.wav.meta ================================================ fileFormatVersion: 2 guid: 1bf6d2433b1e5134799b6c04440d6bc9 timeCreated: 1459078779 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/BeginBattle3.wav.meta ================================================ fileFormatVersion: 2 guid: 8572f22f35523a84184153a813e7f8e9 timeCreated: 1459078781 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/HotCat.wav.meta ================================================ fileFormatVersion: 2 guid: 8a3d720eb17fdc042b2d0e6351cfa6ce timeCreated: 1466143929 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/HotDog.wav.meta ================================================ fileFormatVersion: 2 guid: b8c1de3cfdb715e4980688468db9d4b9 timeCreated: 1466143930 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/LegHero.wav.meta ================================================ fileFormatVersion: 2 guid: f64a19ef31041c5498c601ca2eef3747 timeCreated: 1466159742 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/SeaTea.wav.meta ================================================ fileFormatVersion: 2 guid: 8069749ee551e47498e91c1706aa6381 timeCreated: 1466159985 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/ShopFail.wav.meta ================================================ fileFormatVersion: 2 guid: 7998b58882adf934babd4ce014cb4f50 AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/ShopSuccess.wav.meta ================================================ fileFormatVersion: 2 guid: 3c8dbfb25db012a4da636f9c85517dee AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/Voices/monsterfont.wav.meta ================================================ fileFormatVersion: 2 guid: 70ef014a5e60beb4bbc2f9ccda4ff8cf timeCreated: 1473925228 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/Voices/tem1.wav.meta ================================================ fileFormatVersion: 2 guid: 3f5b2c4f30edb8a46b71a01ccfd42931 timeCreated: 1477305948 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/Voices/tem2.wav.meta ================================================ fileFormatVersion: 2 guid: fd12a91715afc6249ba3545f8bc78328 timeCreated: 1477305949 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/Voices/tem3.wav.meta ================================================ fileFormatVersion: 2 guid: 53dfe92cd1f828b41a539bb6f84a1200 timeCreated: 1477305949 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/Voices/tem4.wav.meta ================================================ fileFormatVersion: 2 guid: 294cdd8d71e1fc74e833f0091a7a05af timeCreated: 1477305948 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/Voices/tem5.wav.meta ================================================ fileFormatVersion: 2 guid: 45dd1604071457e47bd466d526eb52ce timeCreated: 1477305949 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/Voices/tem6.wav.meta ================================================ fileFormatVersion: 2 guid: 1370756a15833254397eebd7936add75 timeCreated: 1477305948 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/Voices/uifont.wav.meta ================================================ fileFormatVersion: 2 guid: 02b1f572cebcf2c4abbea26d6c9be407 timeCreated: 1457547093 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/Voices/uifontold.wav.meta ================================================ fileFormatVersion: 2 guid: 4d5d112418204d14c9fc5bf0834c1dd0 timeCreated: 1471528187 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/Voices/v_asriel.wav.meta ================================================ fileFormatVersion: 2 guid: fedff4117c9b8e84ba45bbef01149471 timeCreated: 1478061990 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/Voices/v_flowey.wav.meta ================================================ fileFormatVersion: 2 guid: abe55480052ca2a409a8e679e7d2ab32 timeCreated: 1457547415 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/Voices/v_floweymad.wav.meta ================================================ fileFormatVersion: 2 guid: 67687bd8c0218354bab506a354b2d933 timeCreated: 1457547346 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/Voices/v_fluffybuns.wav.meta ================================================ fileFormatVersion: 2 guid: b67594aada2061f44a1caf66fc309297 timeCreated: 1457547415 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/Voices/v_papyrus.wav.meta ================================================ fileFormatVersion: 2 guid: 06c0240b00b50b340b7517d24e2bf85e timeCreated: 1457547099 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/Voices/v_sans.wav.meta ================================================ fileFormatVersion: 2 guid: d620307963e14f947b4178dab17bfdb9 timeCreated: 1457547476 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/Voices.meta ================================================ fileFormatVersion: 2 guid: 5f3db5e7056a6b84f8ace82c40a85d43 folderAsset: yes timeCreated: 1457546965 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/dogsecret.wav.meta ================================================ fileFormatVersion: 2 guid: c85400fcc8fa50741aa1f8364c91c2c8 timeCreated: 1457547475 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/enemydust.wav.meta ================================================ fileFormatVersion: 2 guid: 0f8822ff1c0128c48bfc2e95168dec7e timeCreated: 1457547101 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/healsound.wav.meta ================================================ fileFormatVersion: 2 guid: 12641dc00331b414392bd546ddd5883c timeCreated: 1457547102 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/heartbeatbreaker.wav.meta ================================================ fileFormatVersion: 2 guid: d8d0f7997e5dcc144879c704559cde92 timeCreated: 1457547476 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/heartsplosion.wav.meta ================================================ fileFormatVersion: 2 guid: cc6f9fea44a46c741a20551ebdd1b14f timeCreated: 1457547475 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/hitsound.wav.meta ================================================ fileFormatVersion: 2 guid: 7da91f56bafdc944c8ca3fe0f80134ff timeCreated: 1457547377 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/hurtsound.wav.meta ================================================ fileFormatVersion: 2 guid: 9eb776ec771073f48b9dd23c7cb7e84d timeCreated: 1457547411 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/levelup.wav.meta ================================================ fileFormatVersion: 2 guid: acd614b82fb034645aa668e455f5df2a timeCreated: 1465461309 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/menuconfirm.wav.meta ================================================ fileFormatVersion: 2 guid: 244468e146686ee4dba3b4a4db13f682 timeCreated: 1457547293 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/menumove.wav.meta ================================================ fileFormatVersion: 2 guid: c3f3d23f5a5569541aaec3d969661223 timeCreated: 1457547474 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/meow1.wav.meta ================================================ fileFormatVersion: 2 guid: 912b7158d7bef4d4bbc69b94d970c044 timeCreated: 1476775283 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/meow2.wav.meta ================================================ fileFormatVersion: 2 guid: 0ba7e24662753e043920dd31e2b48bff timeCreated: 1476775283 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/meow3.wav.meta ================================================ fileFormatVersion: 2 guid: 080b556e27fc67b4e8c7ba3539024aa2 timeCreated: 1476775282 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/meow4.wav.meta ================================================ fileFormatVersion: 2 guid: 4970da98ec15970418f2b47d3fcb859e timeCreated: 1476775283 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/meow5.wav.meta ================================================ fileFormatVersion: 2 guid: fda07ac1ebf679d4ea42ca77efe6c5dd timeCreated: 1476775283 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/meow6.wav.meta ================================================ fileFormatVersion: 2 guid: 486e21dccf68a1443b6164f646134952 timeCreated: 1476726035 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/meow7.wav.meta ================================================ fileFormatVersion: 2 guid: fa0ead1ac4bf9984caf82eb759618014 timeCreated: 1476726035 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/meow8.wav.meta ================================================ fileFormatVersion: 2 guid: 11afd05c0f3bab04e82f0324ddefd21f timeCreated: 1476726034 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/runaway.wav.meta ================================================ fileFormatVersion: 2 guid: b6c0dddedaae5d14581c869a56b319aa timeCreated: 1457547416 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/saved.wav.meta ================================================ fileFormatVersion: 2 guid: bcb94a74efc33744781b7c8a88ca483e timeCreated: 1465856098 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/slice.wav.meta ================================================ fileFormatVersion: 2 guid: 34b19c24f4e9b4c479d985c9af711ca9 timeCreated: 1457547294 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds/success.wav.meta ================================================ fileFormatVersion: 2 guid: 5ee26f66351b1a5408ca86c09999219b timeCreated: 1457547317 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sounds.meta ================================================ fileFormatVersion: 2 guid: ca5dedaed30358543b26b6a20fb4d9c0 folderAsset: yes timeCreated: 1457546964 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/0.png.meta ================================================ fileFormatVersion: 2 guid: 577797dbbe35aac48a0b15c2c7916dcf TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c11dd4e708ebf83458b37e1b987b39dc vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/1.png.meta ================================================ fileFormatVersion: 2 guid: 7326c839d4af26847b8b70ceebd04f47 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: ab31d08ad53fe0846a495da0bbb2b3ca vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/10.png.meta ================================================ fileFormatVersion: 2 guid: f08a5e26139d9d74cb1296614332fac1 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 29d1f7c53f984204aab840ef36ad9551 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/11.png.meta ================================================ fileFormatVersion: 2 guid: d640185c49624d648b68a99832ffc6b4 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: bc16049df3d9d7f43bf5418c542db3f0 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/12.png.meta ================================================ fileFormatVersion: 2 guid: f3a66c88be1694b4da0a27b0a75aa3c7 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: f8b2422c66a27c4448cc0ddd476630cf vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/13.png.meta ================================================ fileFormatVersion: 2 guid: 21e32fa7c16bbe747bcb47ece4e9c568 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 56a07a719c972794fa7cb31af38f2cde vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/14.png.meta ================================================ fileFormatVersion: 2 guid: cc8a0cdcc36ba4f4599baac8dd73134b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: bd4beaa005c8e944180621bf301220f9 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/15.png.meta ================================================ fileFormatVersion: 2 guid: c901c713901f48d42a509d6f89aadc7f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 7d4d90b93a5f3b443bacf7f5e1a99b1a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/2.png.meta ================================================ fileFormatVersion: 2 guid: b33ce194414c39e488d4822e4f90baba TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 73ca7e1b8b1dace41859b72ba49b9b3a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/3.png.meta ================================================ fileFormatVersion: 2 guid: 98908ac10b0866649a62f57bdf4d4ab5 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c2b365fb697236b489c2f0bf89a9d916 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/4.png.meta ================================================ fileFormatVersion: 2 guid: 58fc372ea804377498cf7167f0b00489 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 264cb8ac8c10c1b40a6eae56ca3c48b5 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/5.png.meta ================================================ fileFormatVersion: 2 guid: 6896b8354b919da40a9e581241a6003b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: ebbe7f1d0e6e1a84aa1cfcb202cecbd0 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/6.png.meta ================================================ fileFormatVersion: 2 guid: 9729339f60a8bb34f88a8dee27cade93 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 30ad5eb67894e5146bdae80ccd601dcb vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/7.png.meta ================================================ fileFormatVersion: 2 guid: dd938e69de784c74fad3dbedbff27e1b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 539e783489ea073469d5458a44d0a88c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/8.png.meta ================================================ fileFormatVersion: 2 guid: d570ff85768bcd643b32e28ff03905c7 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 54c546b2cfe046146b034a7b4c55c658 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/9.png.meta ================================================ fileFormatVersion: 2 guid: daac7788f6ac65141bfb87ecc60314c5 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4a4b1eb2fcfbed644b26223dd53f0802 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/Huggu/h0.png.meta ================================================ fileFormatVersion: 2 guid: d4461a3ed2a82ba47b7fdc06ab80c10a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e78d40beb2673bb44bece319e8c3aadf vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/Huggu/h1.png.meta ================================================ fileFormatVersion: 2 guid: a67982f2dcaa926449051948f81d7966 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 35f02b0a4a619b244af86d8300a6f924 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/Huggu/h2.png.meta ================================================ fileFormatVersion: 2 guid: 5d720980f287ea04ea4a35c611c2ce6b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: ec9f78c01c7724440bdef4fb25e9c169 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/Huggu/h3.png.meta ================================================ fileFormatVersion: 2 guid: b8797af297b09214699ac141e7b7dd5b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 9f57bb944adc8854ca47413be5fac9c9 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/Huggu/h4.png.meta ================================================ fileFormatVersion: 2 guid: a180c25d3c2f13e48b475ac62bf88546 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e35148de9bc0ced469f1b83ad7d43cf4 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/Huggu/h5.png.meta ================================================ fileFormatVersion: 2 guid: cf8432231d47f224b8fa14eb7b015304 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 110a6705207ab6d40836b77913d5d3a1 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/Huggu/h6.png.meta ================================================ fileFormatVersion: 2 guid: 77587ffc3151b0b42a29fde00f29be90 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 07c1a28c9cdf0aa41a7fa917365ea75c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/Huggu/h7.png.meta ================================================ fileFormatVersion: 2 guid: f5dea9343ec9fb64fa193ce0b3b9f295 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 56d722ecaee729e40ac0838eb37f8c2a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/Huggu/h8.png.meta ================================================ fileFormatVersion: 2 guid: 0fe95aee121c70a43b23cb0317d7589c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 24fd2a77b45d0354fbda9daddf544b37 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/Huggu/h9.png.meta ================================================ fileFormatVersion: 2 guid: 5dc543eb6d21dc4489fb0a9446a1f530 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 3742117ddbd26824a81cce1ac561387e vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/Huggu.meta ================================================ fileFormatVersion: 2 guid: 671d4ec01db613d4e9e8dde60b9b31fa folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/s0.png.meta ================================================ fileFormatVersion: 2 guid: d239396e77e1637409e0c8649e02fdf4 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 00b8ad1c32c25224b997c207b4fc5da3 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/s1.png.meta ================================================ fileFormatVersion: 2 guid: caf5196662968e04dafb207be27f9cb4 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: ae6e9364813dfc6468942fb5565253c0 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/s10-1.png.meta ================================================ fileFormatVersion: 2 guid: 99cdc0ffd8c0d854f9234d17251e846a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: b11998e2527f41641a12a96093daeab2 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/s10-2.png.meta ================================================ fileFormatVersion: 2 guid: 8ee2b612d3fe814419862c5b02e2db7f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 0f91c5718f6a1124da41d8f41da72c8c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/s11.png.meta ================================================ fileFormatVersion: 2 guid: 7b05529ac11c5054bb8ff1f3ec4c07da TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 8176e030e16fc3f4ab052353ad2d59e8 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/s12.png.meta ================================================ fileFormatVersion: 2 guid: 9c4b2f1584d14bf4f88045d7318ed0f1 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 22cca4941ef930f49868747e8db624a9 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/s13.png.meta ================================================ fileFormatVersion: 2 guid: e723bac10a1a5a84a8c433a36d06f7ee TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: b46a8b619294cfa4195c3baeeb088791 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/s14.png.meta ================================================ fileFormatVersion: 2 guid: 24964212465fb524b81992ed28348144 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 6f81402d282b045469c20c538a8d4cd6 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/s15.png.meta ================================================ fileFormatVersion: 2 guid: 4308e783318d7b24a844ce2768de6cc1 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 003feb06f7e7bbd4295e714fcad0e923 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/s16.png.meta ================================================ fileFormatVersion: 2 guid: ff27a6bb88f130641aa66050ca1a6085 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: d2e15df08231d11488ab0c0686ae6745 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/s17.png.meta ================================================ fileFormatVersion: 2 guid: a1bf7b28ec9a48246abf8e58908b9f5c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 97a98d0e8477e1a44a649b6fe0c8e592 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/s18.png.meta ================================================ fileFormatVersion: 2 guid: 7517c208fe8111f4cb8bc1a7ecbc2779 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 918bb67bc103b6945a027ecec0711b21 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/s2.png.meta ================================================ fileFormatVersion: 2 guid: e28e72691b634244896ce979471add4b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c0ba560b4be16af45bc0600dc1df79d4 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/s3.png.meta ================================================ fileFormatVersion: 2 guid: 7f0d82682a061a94ead5f0f672ad9a2b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 5a36d63e022f92546a933357b8a31d4c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/s4.png.meta ================================================ fileFormatVersion: 2 guid: c67c8d09b47948845bb8c7ec7a92d0e5 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 67262c3ce5a8db94d93b7fc13d8cb2db vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/s5.png.meta ================================================ fileFormatVersion: 2 guid: 6f78760685004804d846618f963d628c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: bee7e2855ae98944daf1e493f27fcc56 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/s6.png.meta ================================================ fileFormatVersion: 2 guid: ee8db0891bf36ac4a95bd0abb2482c7d TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2206223f3fca0e54fbef7dbd8a255758 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/s7.png.meta ================================================ fileFormatVersion: 2 guid: ba382c6c270c3c14c829aa496a4b8128 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: dd291e439759496448f2638fd3ee81c0 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/s8.png.meta ================================================ fileFormatVersion: 2 guid: 3a050360c84d72a44927c0bb5532c6e4 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c92e72f2f5c74fb42ba438e77a28441f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW/s9.png.meta ================================================ fileFormatVersion: 2 guid: 8d518a2fb5151da4d92cbfb965ef1c45 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 6aca4db58bbc89f4ba9f799d95a3ed3f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/AsrielOW.meta ================================================ fileFormatVersion: 2 guid: 8a8a3eebfb803604f9397e7e4623cb4c folderAsset: yes timeCreated: 1493557737 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/BoosterOW/0.png.meta ================================================ fileFormatVersion: 2 guid: f0e2a2f2777a1fa448302eba64368e1d TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 9b67046082f541d479372f52b03f2855 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/BoosterOW/1.png.meta ================================================ fileFormatVersion: 2 guid: 4cdaf19576d12ae4a896859af528e35e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 81ca1a5d72034e747a81203431506c5c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/BoosterOW/10.png.meta ================================================ fileFormatVersion: 2 guid: 616cb7b012811914da3c6a14fd0a6c25 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 71e2966503391cc49814a5f5e1055a08 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/BoosterOW/11.png.meta ================================================ fileFormatVersion: 2 guid: 4f1c2dc6e4319bd4bbc4e0d082662c20 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 55df20012c89b2b4e91004ab124a0604 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/BoosterOW/12.png.meta ================================================ fileFormatVersion: 2 guid: a182c62192b430d4fbd4e7ffe8e4f087 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: aacfb8a0a92e1b844b80f760c739aa81 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/BoosterOW/13.png.meta ================================================ fileFormatVersion: 2 guid: 11df0d286b9d68c428f366f4060bfa23 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 8f14e1b5c99e79d4e86a7cebdc638ddb vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/BoosterOW/14.png.meta ================================================ fileFormatVersion: 2 guid: cbf2c20ea3ef0474e92d2142223ab0e3 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 73791ca67b09de047affaae497a47754 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/BoosterOW/15.png.meta ================================================ fileFormatVersion: 2 guid: b941a07410ff3ad4291a04c5f8cd8936 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 6087f98384308564cb6c153316ccf9c5 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/BoosterOW/2.png.meta ================================================ fileFormatVersion: 2 guid: 77141d41c7e8d82419d88fa20efa4ea0 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4ba0d4850af8165448adea53ed13054d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/BoosterOW/3.png.meta ================================================ fileFormatVersion: 2 guid: 42c28ff6eadaa33439195a006825ffc8 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2eec6a8277bd2b34d987cc377811062b vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/BoosterOW/4.png.meta ================================================ fileFormatVersion: 2 guid: f9de730c798974049804b31818d97b7c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c887ad8b7ae92644bbc10cb7c4d3c1b8 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/BoosterOW/5.png.meta ================================================ fileFormatVersion: 2 guid: a5a9b71c564a62545959da90d4f17a27 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 79bbdb35167a35a4f83a0e9baddcce00 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/BoosterOW/6.png.meta ================================================ fileFormatVersion: 2 guid: 41c1eee041e00f64fb6410f8fbe7e500 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: a00c24fb3168182499d2a543380b5bef vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/BoosterOW/7.png.meta ================================================ fileFormatVersion: 2 guid: f47717c4986745140a32080cf6377250 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e2890cce85179d84ba21658483e59349 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/BoosterOW/8.png.meta ================================================ fileFormatVersion: 2 guid: 0bf069d973cee1547a05b614d21d59fc TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 07a18d9a58b899342b2ccecb79d39d8e vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/BoosterOW/9.png.meta ================================================ fileFormatVersion: 2 guid: 59d487f4d00435c48ae9cf52c0f35b6b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 7ca5185a217c8e940bb1cf51c754f416 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/BoosterOW/j0.png.meta ================================================ fileFormatVersion: 2 guid: ab646b19ca046224e93eab9336152440 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2b5d0128dfdc6704fa3583f82ec07973 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/BoosterOW/j1.png.meta ================================================ fileFormatVersion: 2 guid: 9aa3c9913dece8d49b8c15805d59bdc0 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: b4d30b83e6a6acc4b975c2a2e532f6cd vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/BoosterOW.meta ================================================ fileFormatVersion: 2 guid: 0bc2635621edc9b4f975c92b1e164095 folderAsset: yes timeCreated: 1497720991 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/CharaOW/0.png.meta ================================================ fileFormatVersion: 2 guid: ad466656d4b5e6a4db5fd79529f55c27 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 7e8a4cfbedf48da44a46b74496a64b2e vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/CharaOW/1.png.meta ================================================ fileFormatVersion: 2 guid: efeeffdcac2165145bbcab24bc362626 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: d4dab82ee7c0be4458f1753ffed4994b vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/CharaOW/10.png.meta ================================================ fileFormatVersion: 2 guid: 0ec422c79fc192f479ee8256677a197b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 6c9abe0930a8cac469b284b1b44246c7 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/CharaOW/11.png.meta ================================================ fileFormatVersion: 2 guid: 921f293ede543cb4d825e3cb498e9e48 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 018a4346448adf64a96ef0d2bd94a44a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/CharaOW/12.png.meta ================================================ fileFormatVersion: 2 guid: a4072362a12736145a38e190f0a261c0 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 436cc5855d1f5ef43a16f44c1fff5214 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/CharaOW/13.png.meta ================================================ fileFormatVersion: 2 guid: dd312cb5bb290cb4da969e758775a83a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 85c3be0431e40914eb09d3394df00f15 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/CharaOW/14.png.meta ================================================ fileFormatVersion: 2 guid: fd07b4027fc600c43affdbe0b67efaa3 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 5f1aa9a567a2fff4086da1654bb0ae89 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/CharaOW/15.png.meta ================================================ fileFormatVersion: 2 guid: ea94fda5262aad74182829e1d35d7d72 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 315c0f5d88b83fe4ea8c99129d4900f4 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/CharaOW/2.png.meta ================================================ fileFormatVersion: 2 guid: 5f55d954126d65f439b6f23683e99ffd TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 5d216dfbb4451af40a648caeb4ee94c3 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/CharaOW/3.png.meta ================================================ fileFormatVersion: 2 guid: 312c7417d7a2ac541bef34590a6f0d42 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2f9f621c1462d604cb53e907fd83b30b vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/CharaOW/4.png.meta ================================================ fileFormatVersion: 2 guid: 7807d5ccebbe88a41bcfdb105953c324 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 191f98442f547364cab459fe9e84ac63 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/CharaOW/5.png.meta ================================================ fileFormatVersion: 2 guid: 0590713846a1c4149957991f7ad24f8b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c2d365dce5b260b45bc5724456280da4 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/CharaOW/6.png.meta ================================================ fileFormatVersion: 2 guid: 1f59a71e9cebf1041a06be43e58b43be TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 9d044afc3c0072f4191493753e100ca2 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/CharaOW/7.png.meta ================================================ fileFormatVersion: 2 guid: e00ae7ff064044d40830aaef631c56f4 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 12a8661fd2d7187448a18178fc556006 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/CharaOW/8.png.meta ================================================ fileFormatVersion: 2 guid: c995161e99ad9274a8c5a459a338cea5 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: a8fa03480b381204d83fd91dfca9723f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/CharaOW/9.png.meta ================================================ fileFormatVersion: 2 guid: 743c5196c7cafae42a593455c21105ed TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 796ad6c6d782ad54d8d850b8aa556a15 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/CharaOW/l1.png.meta ================================================ fileFormatVersion: 2 guid: 985af152ac122aa48a805f9f6b838830 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2df16af94f52e61409efb7aa09320fdd vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/CharaOW/l2.png.meta ================================================ fileFormatVersion: 2 guid: ffbccff19c9935b41938b40d104dc211 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 487c07e5622a9bd45bdfb8b98b7aaf7d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/CharaOW/l3.png.meta ================================================ fileFormatVersion: 2 guid: 27193c6b2cce0624c9fb7793ebbc278c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 5e7d7199155bfde458ae0bcf9c14a5e2 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/CharaOW.meta ================================================ fileFormatVersion: 2 guid: 44d9c9df9574f294c8d9dce25b7b8ab6 folderAsset: yes timeCreated: 1493425668 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/0.png.meta ================================================ fileFormatVersion: 2 guid: 0cd40369340055b4f8b73af76fd26763 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4eae01fa045dd3649870e6c3a8b1636d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/1.png.meta ================================================ fileFormatVersion: 2 guid: ba3bc926f01aa7e4782aa6b0faf2a3d8 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 75d4653570a66134aa4e329111b4dc09 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/10.png.meta ================================================ fileFormatVersion: 2 guid: 838b785b4e4249c49bc92b3385651a4b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 5945ee38538e7854691c36a71c26c649 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/11.png.meta ================================================ fileFormatVersion: 2 guid: d36e4e096f220054f9a00fcdad9a6bcd TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 484a8e5647ee86844ad036167b2bc634 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/12.png.meta ================================================ fileFormatVersion: 2 guid: 2b1b22fb123ae2643826959df63ea840 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 003aef513c14a484088a27a879b477d1 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/13.png.meta ================================================ fileFormatVersion: 2 guid: 082000e8c418f184095431519cc37075 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c8a00fe42b7c21b4c98f488b6ae9b3cb vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/14.png.meta ================================================ fileFormatVersion: 2 guid: baccee3983d65bc4d864b7df7159f7e8 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c2b4ecf43d31a69409e570b599d70391 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/15.png.meta ================================================ fileFormatVersion: 2 guid: 1bdacc3d8b336204ea6b5db8a494e01d TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4d750b1d631e9a04f9b9bf857f8c8ee8 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/2.png.meta ================================================ fileFormatVersion: 2 guid: af23c6c8a6d35304392407bf04dc160c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: b8b06919f97866741b6525882d478bd1 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/3.png.meta ================================================ fileFormatVersion: 2 guid: 606cdb7dbb65bc04e9751e9790fc02cc TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: d8ce0fd86f7ad4b48b2edae7c1db1608 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/4.png.meta ================================================ fileFormatVersion: 2 guid: bf4f3c556ff738e43a6f8efd808d3fd2 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: f45f45d2ddb918d4da8d05a27c187651 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/5.png.meta ================================================ fileFormatVersion: 2 guid: 075e83ca017ba0545bba2465f1e6c993 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 0629a1560a5026e4b84939e2c31e14ee vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/6.png.meta ================================================ fileFormatVersion: 2 guid: 1cb3e0bd47d98194085aeb4255a66ee1 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 7a41809816719e447a109f07f9e5fcc7 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/7.png.meta ================================================ fileFormatVersion: 2 guid: 0964c75799ba697438ad23896a4107fc TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 1329be33e457b5c489d789f72a72a054 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/8.png.meta ================================================ fileFormatVersion: 2 guid: 9a634abda8898fd499f1264c77c3cb97 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4b11ed9579c10a6489ceb4ecc733fa1d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/9.png.meta ================================================ fileFormatVersion: 2 guid: 29b8b27a4045bde4c8ba97c1a30b2095 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 34841621db3bb17449338c149ffca0aa vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/Fall/ef0.png.meta ================================================ fileFormatVersion: 2 guid: 5bdcb51559b69934e9ebf9f125243e50 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 54097119b9ccc1f4f9a972adc8093df7 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/Fall/ef1.png.meta ================================================ fileFormatVersion: 2 guid: a0c1223929b608a44b3b2214cabf9daf TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: cd72400f2d5b9c94f92eb49a8ecb5478 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/Fall/ef2.png.meta ================================================ fileFormatVersion: 2 guid: 2629ce93b75c5b3439582f04f5fc46cc TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 0ebf2e0999cb0be488a0f5b42813d013 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/Fall/ef3.png.meta ================================================ fileFormatVersion: 2 guid: eaf3b483b9e31df4fb9e0190bd1d7dac TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 75f2ce090897865408a344a69f151eca vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/Fall/ef4.png.meta ================================================ fileFormatVersion: 2 guid: a6cee9c11b5522a40b5e20a3f2c1c922 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: b5e78a64717a48744abd7b8bff0c1d4e vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/Fall/f0.png.meta ================================================ fileFormatVersion: 2 guid: 982ac32bde5cf2c46b8c2fc4b4ecfc9a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 3f45e48a0cb2cf14c8704c52832ee77a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/Fall/f1.png.meta ================================================ fileFormatVersion: 2 guid: 4a40b6f9f9984f540ba342c7a0a1a1c0 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 1088e6aa54903064b88262ab8e542da1 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/Fall/f2.png.meta ================================================ fileFormatVersion: 2 guid: 32edd8b28aaf38f418e49a41e0aa489e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 010ea89e817290f409189229dc27ca51 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/Fall/f3.png.meta ================================================ fileFormatVersion: 2 guid: b140d33d26371eb4f9982c1ec16444d0 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 9ecb68bbb102db548ba9589e14556668 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/Fall/f4.png.meta ================================================ fileFormatVersion: 2 guid: d3e2edb6bd1db6641bf2fdf827774a66 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c59a616f925d10340be3db2858069dca vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/Fall.meta ================================================ fileFormatVersion: 2 guid: 0908985321c7535468f2b22ac4c90030 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/Glitch/g0.png.meta ================================================ fileFormatVersion: 2 guid: d81365b24e2cece479178039af2bad56 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 063e0e9c4dea1c444af0c37e9b4e4a44 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/Glitch/g1.png.meta ================================================ fileFormatVersion: 2 guid: a66dc9fdb2f3e9646a7c932415e72948 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: a85f6eda2391adb4d968f8d7e00f2277 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/Glitch/g2.png.meta ================================================ fileFormatVersion: 2 guid: 1e0649e4cdeb16446a1dfb66e5ab9486 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 06d67f835b0e2a54db7f9391aaf7d147 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/Glitch/gg.png.meta ================================================ fileFormatVersion: 2 guid: 7d560ee9aac5b4b4f9e8f89420c50143 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 7963e9ae26a0a21448fd9fb02918d851 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT/Glitch.meta ================================================ fileFormatVersion: 2 guid: df6dd1276e002244ab304ef8ebb49354 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/FriskUT.meta ================================================ fileFormatVersion: 2 guid: 32780a5e36b5bed4986714e398cfc245 folderAsset: yes timeCreated: 1492427435 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/MonsterKidOW/0.png.meta ================================================ fileFormatVersion: 2 guid: e0e2d8020c6f1d64388c22899d22776d TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 61d836c010499414f983cc5d6691f6ee vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/MonsterKidOW/1.png.meta ================================================ fileFormatVersion: 2 guid: 2271711158c27db4683ad026e5f2a285 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e93f76c8eb617ee4486bdeac9cc74a21 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/MonsterKidOW/10.png.meta ================================================ fileFormatVersion: 2 guid: 9bcb7f7fc3c04ba4fbfbab3dacfd2cc7 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: a0942548ba43a6c49b61dad0dc0be62b vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/MonsterKidOW/11.png.meta ================================================ fileFormatVersion: 2 guid: fbbeadc5e485f8f499ea22a47112ca82 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: b43cacf19537d1d489da154621aeddb8 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/MonsterKidOW/12.png.meta ================================================ fileFormatVersion: 2 guid: 195bde516bbd96c4c9b65ee8a893109b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 06aaddcfc15cb054cbc793f06be33e2c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/MonsterKidOW/13.png.meta ================================================ fileFormatVersion: 2 guid: 3fc11aab7d9ac8843b8e274bb691c202 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: fb3819d2e0faf65429fbbe1388dafa15 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/MonsterKidOW/14.png.meta ================================================ fileFormatVersion: 2 guid: 363f8f54afe63464cae58c393ab7c369 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: bd88bbfc95e5f7f49bc334e84d56723f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/MonsterKidOW/15.png.meta ================================================ fileFormatVersion: 2 guid: 7e71a4b589542024989e7168b3712ced TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: ffe99cf779d849349ac779aa7d15f617 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/MonsterKidOW/2.png.meta ================================================ fileFormatVersion: 2 guid: ccda01f9015fed04098d41fa5741d1a1 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c37704c877b609d48b808acb2b0aff42 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/MonsterKidOW/3.png.meta ================================================ fileFormatVersion: 2 guid: 4ea8372b65de669499035f48b7bee8f6 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 1f1101ad25b7f024b9e6ce77b72412ca vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/MonsterKidOW/4.png.meta ================================================ fileFormatVersion: 2 guid: 67c1f60a5134ccf4aa6601eea28b24eb TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 51616eee9c8a6884590fe64cb8e9d940 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/MonsterKidOW/5.png.meta ================================================ fileFormatVersion: 2 guid: 43d5a8c5aa60f6243b1f5d04b8a21bfd TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 1752b0b37779860429414a64b11dddaf vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/MonsterKidOW/6.png.meta ================================================ fileFormatVersion: 2 guid: 2bc842413686c8d40bad3f685560f0ed TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 3311df1d56930a2448da45b0d6c4fe51 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/MonsterKidOW/7.png.meta ================================================ fileFormatVersion: 2 guid: 714aeec0963f73d4aa29cb7feb06e19c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 07b88bffe7597dd4e8a13e188f368638 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/MonsterKidOW/8.png.meta ================================================ fileFormatVersion: 2 guid: 740737abd85013f47999abf40a17a0e9 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e1bf459d81a95ce41adf69e06a4aa9cb vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/MonsterKidOW/9.png.meta ================================================ fileFormatVersion: 2 guid: cdf6c54ef530dc44fb5c83240daf6183 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 46589d046c7780041b122069d8dd8eeb vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/MonsterKidOW/f0.png.meta ================================================ fileFormatVersion: 2 guid: 7614d517020128a4f853cb48a10176aa TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2774083ccf9b132489f16cd699f3d4d1 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/MonsterKidOW/f1.png.meta ================================================ fileFormatVersion: 2 guid: 7f0d4413072f0d74d871cf882bcee761 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 7e6078ee9dc26384087f001274fc478a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/MonsterKidOW/f10.png.meta ================================================ fileFormatVersion: 2 guid: 8823b7d63a446a94980010c2d55571bd TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4056cb344fd2b8d4ba5ec15d9d5b2ff1 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/MonsterKidOW/f11.png.meta ================================================ fileFormatVersion: 2 guid: 21fe716ff8bb1d9459d3723f8fdb2183 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: a178508e32bf79b4b800be6276547a9b vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/MonsterKidOW/f2.png.meta ================================================ fileFormatVersion: 2 guid: 83034e698cd6d98408787605644eb3c6 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: efaedad3eaeac1e45a6b68b9ca084957 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/MonsterKidOW/f3.png.meta ================================================ fileFormatVersion: 2 guid: 9c4acdb6951ed514bb7531fecb17a143 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 56c0a02a94c06de46ad94c9d1ee4362d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/MonsterKidOW/f4.png.meta ================================================ fileFormatVersion: 2 guid: 60be83014ddfd404580ac9e76d8e1e89 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 8d9657483a57f6e49b0260554852ea6a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/MonsterKidOW/f5.png.meta ================================================ fileFormatVersion: 2 guid: 3af580fd90062124f89a5f629899f978 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: d41d144708eb96b4db3802b4adc3c725 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/MonsterKidOW/f6.png.meta ================================================ fileFormatVersion: 2 guid: 6355704d14a80204aa32fe97151109ee TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e94fcef553dbccb489701eaf28ce8b10 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/MonsterKidOW/f7.png.meta ================================================ fileFormatVersion: 2 guid: 4b5006c98fd9327439f8d4d70cb0ae1e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: ef0afc7d553dcdd45a8d92fdd0044d8e vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/MonsterKidOW/f8.png.meta ================================================ fileFormatVersion: 2 guid: 58be838d76af7fd44be0cc8f45c7c9b1 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 922929c8d35f86648837b676dbb51c0c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/MonsterKidOW/f9.png.meta ================================================ fileFormatVersion: 2 guid: 8e791843a1442394abbd61d2992e034a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 01cf76f4c157d0a42bf42743d24f3ff8 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/MonsterKidOW.meta ================================================ fileFormatVersion: 2 guid: 735ee4e89f6a6e94ca41e3aa18dbf6f5 folderAsset: yes timeCreated: 1493425668 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Asriel/happy.png.meta ================================================ fileFormatVersion: 2 guid: 67e0c3d1d620d9940a86c17d8a57d8e0 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 31f700a9a90a05648bf7a9e06f0fb025 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Asriel/happyT.png.meta ================================================ fileFormatVersion: 2 guid: fc939c9cefca7ae47a1e1afcb803ce9a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 6a270fb833cd0ab47b3187b42a910b2c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Asriel/normal.png.meta ================================================ fileFormatVersion: 2 guid: 2fa142b39ea7f7449be1dec9929a4346 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2c40a333573b960438df7073d644a6f4 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Asriel/normalT.png.meta ================================================ fileFormatVersion: 2 guid: 53c25b42d7814e84887cd3258baa2e37 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 5030f6d548e33e44e863d809fda57d20 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Asriel/sad.png.meta ================================================ fileFormatVersion: 2 guid: 6ebe9f61efe4adf418532d4494272355 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 6d0deba93bf8aad409b4555dab8fe1fb vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Asriel/sadT.png.meta ================================================ fileFormatVersion: 2 guid: a84ce2dec8de24243afcaf34eba0f270 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 37bce7e6e0f02dd4d937e8a99a80a451 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Asriel/verySad.png.meta ================================================ fileFormatVersion: 2 guid: f7c6fd014c72af84c8af378710939df5 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: eab1f89720e6f0d468d209b13846d4cb vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Asriel/what.png.meta ================================================ fileFormatVersion: 2 guid: 5c64106998bdcb244b7d733bbbe35c8a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 0f52a2c28e9c8f647ae09dfc3737439f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Asriel.meta ================================================ fileFormatVersion: 2 guid: 909b3d29ea7eb2c4ba764fbc4050c5f3 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Booster/angry.png.meta ================================================ fileFormatVersion: 2 guid: 519e099aa4cacee49a0fcb90f8b29977 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c00b887e79e53d74684aa53be393aee1 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Booster/angryT.png.meta ================================================ fileFormatVersion: 2 guid: 8b5441e46f4a07843881143ae67913fb TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 705278ea20c627248b25be92917a4518 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Booster/awMan.png.meta ================================================ fileFormatVersion: 2 guid: e31e763dacd3f084a9819041e92f7ca0 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 104d4891bb18e834091b8dad17b0982d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Booster/happy.png.meta ================================================ fileFormatVersion: 2 guid: 6ad9c764c56329c4bbcc7d01aed662db TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 7b370cd54a935624b8b68c55262adf59 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Booster/happyT.png.meta ================================================ fileFormatVersion: 2 guid: 9a663693ad90354439a8f0bc3912367e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 9eaac7ae7ee7c954c8280e8221fa8331 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Booster/normal.png.meta ================================================ fileFormatVersion: 2 guid: d1b4f8acec43ff34b88419d832236726 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 58b5a14c38457b642a4c6138b3fb781a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Booster/normalT.png.meta ================================================ fileFormatVersion: 2 guid: fc275231f9b47b74584c325ff2f2ea90 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 164a6e7fe8f332b4fa37c7b164efafe6 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Booster/sad.png.meta ================================================ fileFormatVersion: 2 guid: 4022d3732cd16d747a1f0070aabe28f1 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 98046a74a381c3247a0601b5a871b4ca vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Booster/sadT.png.meta ================================================ fileFormatVersion: 2 guid: c6a04a689ebf7c24cb6db1e1586edba7 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: d65aa1acf3ae9f04187d41ef4ecdafba vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Booster/shock.png.meta ================================================ fileFormatVersion: 2 guid: eb6ba21bdb9a01f49aceb891017f868b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2e0a2a0a8c3c8ac45a745d937e9d8792 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Booster/shockT.png.meta ================================================ fileFormatVersion: 2 guid: 538d9668c8d62d447be33022ee380f4f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2ced1bb8e9ca6234baf4b6c0463550e5 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Booster.meta ================================================ fileFormatVersion: 2 guid: 5de4cdcf8d37f1c4dbb55aac7c666fbc folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Chara/ahem.png.meta ================================================ fileFormatVersion: 2 guid: 9a01e2d02137b544693ef9e4b6a69b19 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 68f7d30c26973a7439b44e03ab774f3d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Chara/angry.png.meta ================================================ fileFormatVersion: 2 guid: 8487460ef4f84484b84f4024a7780a4b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: d340f520df4b7624382967db664d5c32 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Chara/badsmile.png.meta ================================================ fileFormatVersion: 2 guid: 6cb284a28fa9e524b96a4d95c056a72d TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 85bc4e067eb023e42b2c4f2060209f08 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Chara/creepy.png.meta ================================================ fileFormatVersion: 2 guid: e6f19ec5f1e941840977a22f6b66add7 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2a75a343cec46e7459b5848b82bcc4ea vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Chara/normal.png.meta ================================================ fileFormatVersion: 2 guid: bd152aca925fe1749b8470b1e4ab4dc1 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4757313133ef911459d2525dee23732a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Chara/sad.png.meta ================================================ fileFormatVersion: 2 guid: d2e63550876a3ae47904b5938a4aa01e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2c39cd408a675c449aeaf0d085217fe4 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Chara/smile.png.meta ================================================ fileFormatVersion: 2 guid: 2a013b8ee6ca00040a19dcce373f8f3f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 8869649e69e0c794797bd16c85a4ac74 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Chara/thinking.png.meta ================================================ fileFormatVersion: 2 guid: 1d8c74c09d3f51c42acd51746bc5498c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2dc1d1b118479c54cac1e1f577e36836 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Chara.meta ================================================ fileFormatVersion: 2 guid: c7ccedde356cceb429bcb516ec2d2aa3 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Frisk/angry.png.meta ================================================ fileFormatVersion: 2 guid: ae5029448dc9b0946ab703f9791288fe TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: fa02c646dc9b8b5478d6061b1a567cf5 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Frisk/angryLeft.png.meta ================================================ fileFormatVersion: 2 guid: 74ae0b663c7e4f646a7649e8792a1eb2 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 56d5ae2c23fbcf14a9a264c3f08c3111 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Frisk/angryRight.png.meta ================================================ fileFormatVersion: 2 guid: 524a35d6ded986e41b7e1298bf7e5362 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 3ae9190061faacd438cc286bf571403a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Frisk/displeased.png.meta ================================================ fileFormatVersion: 2 guid: ecd6c1d513491aa44b7d7d53b83e8a76 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: dc8bd947907b78b4aba1c8067dc5ff39 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Frisk/frustrated.png.meta ================================================ fileFormatVersion: 2 guid: b317f4994d2288648bb283ff0aa1160e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: a5a9d812bf498594c873bdd6dc0c7c49 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Frisk/fury.png.meta ================================================ fileFormatVersion: 2 guid: fc37651a8b48308418aa056f72f6c00e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 08dfd6013c022b741a18bcfc18f9568d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Frisk/glad.png.meta ================================================ fileFormatVersion: 2 guid: d80fe8b5f61ad4e41ba421cabdb269c3 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 980ab4bdc66353444982f0b561d4172d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Frisk/happy.png.meta ================================================ fileFormatVersion: 2 guid: 97bda0b06e002414eb18582e9274afb9 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c1a9ba2b1c7f31d4db416fe081dc9c21 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Frisk/mad.png.meta ================================================ fileFormatVersion: 2 guid: 36a6e7c322fcac846b65dbd4db4e633a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 96015fa4b1bd6cd46b30498e408f3a38 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Frisk/normal.png.meta ================================================ fileFormatVersion: 2 guid: 3425d44f847ec904290b0d28ffe3bc5c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 1659a847fc1fb7d489f681727911a136 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Frisk/normalOld.png.meta ================================================ fileFormatVersion: 2 guid: 8bc0a2ef67a480945ba063c13c646084 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 21dc10273c5befa49a76944cecf7ef16 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Frisk/sad.png.meta ================================================ fileFormatVersion: 2 guid: 68e7c3e7695da46419ce05720024bf32 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: ed6562edd9a5a8a4daa29106c78cb75f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Frisk/serious.png.meta ================================================ fileFormatVersion: 2 guid: 99656efa822ecc4419cc5f8f1783629f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 1a4208399f5207147a744ae7f67b4a52 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Frisk/woke.png.meta ================================================ fileFormatVersion: 2 guid: 610c049530b940c4daa4e83691e346f5 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 0153df5cc2eb0f44481d737b39f31777 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Frisk/wokeOld.png.meta ================================================ fileFormatVersion: 2 guid: 14f4a66e30590c3458066112d2e51af4 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: d8e3e08b4f9717b4ebb7996071edf3cd vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Frisk.meta ================================================ fileFormatVersion: 2 guid: 1aae22ad5bc2faf41ab0e3d423cfceb6 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Lukark/=3.png.meta ================================================ fileFormatVersion: 2 guid: cf7ac1f3934db5e46a8779d5076a752b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 5e8f10efd5633ee4d9e3d2a2d500c268 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Lukark/angry.png.meta ================================================ fileFormatVersion: 2 guid: b7f2d080c27cb994d91e81025905e318 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 3b97ff42582abe847b89d7a8f04c120b vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Lukark/determimed.png.meta ================================================ fileFormatVersion: 2 guid: 6e0b1949825cace4e91b9961aa5b8c36 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 8f2eaf19f6df0e84a81709778c7601c4 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Lukark/determined.png.meta ================================================ fileFormatVersion: 2 guid: 656861fe83c8b2940b78427ddc37d8b2 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 5cf2c356e68346b4eafaa3c13ebbab3d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Lukark/normal.png.meta ================================================ fileFormatVersion: 2 guid: d17f6d19ba845414fbb459a23091dfc5 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 34356d4e90856c24b8daf11821da7af1 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Lukark/perv.png.meta ================================================ fileFormatVersion: 2 guid: 548f01c495fc0fa469dcaaf40c2f1e36 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 11fe319958fc4dc4591e154a8e4c2a4b vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Lukark/pity.png.meta ================================================ fileFormatVersion: 2 guid: 37a9ed50043fd824b9ab6a8a3593b792 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 39904ed2fd17bda44898709d876460ca vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Lukark/seriously.png.meta ================================================ fileFormatVersion: 2 guid: 3c25b140c48ea4a44bf2575d93ea6b9c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 570e30da97a45964c8474da6cdbfd82a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Lukark/sorry.png.meta ================================================ fileFormatVersion: 2 guid: 2a4242523450d33439928a0ecb2a06fa TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: eeb60e8e5b9acb74c9b45cd901035147 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Lukark/surprised.png.meta ================================================ fileFormatVersion: 2 guid: d809b9a1e8a647046a1db97a2531f546 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: b91cdc92a294b1d418aa321ffe9d30fe vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Lukark/waitwhat.png.meta ================================================ fileFormatVersion: 2 guid: 2a95cc004a18ce64daea12250002ae92 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 801479b4c6caa6b459aab0854a0f1804 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Lukark.meta ================================================ fileFormatVersion: 2 guid: d6490568f8d66c44c8df1b1872dfc9a9 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/MK/determined.png.meta ================================================ fileFormatVersion: 2 guid: 122fefd2a556fcc47abbd1bc36493c50 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 8e75307625c835745bc0b3fe524d5f49 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/MK/happy.png.meta ================================================ fileFormatVersion: 2 guid: 351323f7fb59ba041887e63cc5adf856 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e41dcf46400a4f44ca5f177d7317802a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/MK/horrified.png.meta ================================================ fileFormatVersion: 2 guid: a27e386190bdb3e45b9870289a30843a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: da16ad419262d4f42ae5229127bc2f98 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/MK/horrified2.png.meta ================================================ fileFormatVersion: 2 guid: 499c3341afd3e3749b26a083e94f5c6f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 51ab9db5fbb5274409ee03ba2481464f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/MK/normal.png.meta ================================================ fileFormatVersion: 2 guid: 5504693ba7ef9ce4c8307e0bc4d1e9cb TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: fcacd3fd8a9ab9249beef06f20af2c02 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/MK/sad.png.meta ================================================ fileFormatVersion: 2 guid: 17ab6f32c9124164bb70b4860f222a74 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: d9731ef77ad248844968f00eea612039 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/MK/sad2.png.meta ================================================ fileFormatVersion: 2 guid: 41007ac9f9b64274d8fe8cc8095975f2 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: b9b89df38bc1d794eb4c4fda294742b6 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/MK/stars.png.meta ================================================ fileFormatVersion: 2 guid: 97353acb16dec8d449160e9672ebaa14 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 08deb8bd18599fd41870f3990033c32c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/MK/surprised.png.meta ================================================ fileFormatVersion: 2 guid: 8c593bd5d40bc27438f768ae3d2f53c1 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: ece5fb1d2582c384d94089ad66eb967b vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/MK.meta ================================================ fileFormatVersion: 2 guid: 9970d8cacbba1c24d952d3e28fdd115a folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Punder/angryIntimidated.png.meta ================================================ fileFormatVersion: 2 guid: 421ba4a82d161cf49914a6e8f6a16cc7 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c0b2ed910f6beba40b12cf8431ade782 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Punder/intimidated.png.meta ================================================ fileFormatVersion: 2 guid: 496844c2d7e4c7543b7dbd7cb0bda8e0 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 166084ecf429f7b4ca91ef7025d09f84 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Punder/normal.png.meta ================================================ fileFormatVersion: 2 guid: 3f924d7cf7425f848b4a758833117c09 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: d4572047ab6e0c3458b6a3f63156b1d5 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Punder/shocked.png.meta ================================================ fileFormatVersion: 2 guid: b2370844129c3194d9b82ca24b987c74 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 688be47242085464aa50bdd764085ea8 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Punder/superIntimidated.png.meta ================================================ fileFormatVersion: 2 guid: 3b6fd89035954674c98661e561459d64 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 110228239f01b7848b8ef2362e3eb41f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Punder/veryHappy.png.meta ================================================ fileFormatVersion: 2 guid: 817a6eac350404b4999dd737fd527ac5 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: b722b2482b9529b45b7323c09bdee797 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Punder.meta ================================================ fileFormatVersion: 2 guid: f83be8fcb99af09499a65f8c3bc5ac04 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots/Test_literal.png.meta ================================================ fileFormatVersion: 2 guid: d8aa9ecce841d5a45892923bdcc72a4b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 89cd0a9d8741276409074c653abe26cd vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Mugshots.meta ================================================ fileFormatVersion: 2 guid: 8a7687e022632004589d25da814cc576 folderAsset: yes timeCreated: 1461241170 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/Photo.png.meta ================================================ fileFormatVersion: 2 guid: d009c5535a9364343840beeb299b3123 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: 16 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 83ca5f90fd4c7f642a5d09fec5a9c036 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/PhotoBack.png.meta ================================================ fileFormatVersion: 2 guid: 249ca6518569c69409f1a73eebecb56a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e540499e00fa233438756850d482c62c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/SavePoint/0.png.meta ================================================ fileFormatVersion: 2 guid: 46c67532872caa8448d944649249bb01 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 8b26d603a2dddf44297f637a9af71da2 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/SavePoint/1.png.meta ================================================ fileFormatVersion: 2 guid: e1bb3a2c3667d814c84a46cc5112fb09 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 518f0b8776bec0b4aa9b8761f0a61cf2 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/SavePoint.meta ================================================ fileFormatVersion: 2 guid: db8596b51891d784e9dd82b7bcf7a68b folderAsset: yes timeCreated: 1492435156 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Battle/heartshard_0.png.meta ================================================ fileFormatVersion: 2 guid: c34e225043b2c4b449167dba2e73274e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 537191f261c2d2c41a679d4aea13f8d7 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Battle/heartshard_1.png.meta ================================================ fileFormatVersion: 2 guid: 05456ecf9dded6742b9fa8adba1520dc TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 115c3e4dcd0f57f4db11d77f5ba28540 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Battle/heartshard_2.png.meta ================================================ fileFormatVersion: 2 guid: 69c2f6e5cc2d630468268d0f91759702 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 595a3983cb1ffa04baaa780543ebba54 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Battle/heartshard_3.png.meta ================================================ fileFormatVersion: 2 guid: 5780cb701a2a42844b256aec0bad9cda TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 279b5e287f0abcf4aadd2441702d058e vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Battle/spr_dustcloud_1.png.meta ================================================ fileFormatVersion: 2 guid: 32ccdb104f63a2843be39852cb73f553 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 02410f302bc9cdf4aa89ab17d83a38e3 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Battle/spr_hpname_0.png.meta ================================================ fileFormatVersion: 2 guid: 81e451484c0db794d93a3e52c98f9a53 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 3afaf7a6bc109414ab76fafe51fe1646 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Battle/spr_slice_o_0.png.meta ================================================ fileFormatVersion: 2 guid: 95322bb965aadae42b3f8d6f6c73018e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: a3eb87199325a0742981c8fb90191319 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Battle/spr_slice_o_1.png.meta ================================================ fileFormatVersion: 2 guid: f327e5e336ef40a45ba009f207299e17 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 76fe850b550548548a147dbab4527505 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Battle/spr_slice_o_2.png.meta ================================================ fileFormatVersion: 2 guid: ef1a3c0a3d77f7142b8389cdfaf16075 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 276e520cf4849ce45a07f2412bb9851a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Battle/spr_slice_o_3.png.meta ================================================ fileFormatVersion: 2 guid: 1a557ee4f6c80f14ea14f7e6ebcbe87e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c018025885a38a146aa59d1c2f0410db vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Battle/spr_slice_o_4.png.meta ================================================ fileFormatVersion: 2 guid: abc872bc00f532141ab1eed5bcba2127 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 9845587cad4c00b4c8a1a877f34dc495 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Battle/spr_slice_o_5.png.meta ================================================ fileFormatVersion: 2 guid: 8e6b8acd15ca7f7478b928b103a32e71 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 817dd946109378e40a51fe5a1459a5aa vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Battle/spr_target_0.png.meta ================================================ fileFormatVersion: 2 guid: 3d647a0d8e9c3734cad4e2077e9b9b37 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 61b556641f6b1df46a894c553c6619ec vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Battle/spr_targetchoice_0.png.meta ================================================ fileFormatVersion: 2 guid: 07c36d6bf583bbc4ca501b452fca6378 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4c6439b5f82511944937b44c9e26486c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Battle/spr_targetchoice_1.png.meta ================================================ fileFormatVersion: 2 guid: f293eda8d2a27e34a85bb8d92f8fd40e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 7d7a35a0adcc7f54384b8a2dad0b2fed vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Battle.meta ================================================ fileFormatVersion: 2 guid: 08421c9587c3b1a43963b1631c0b7bea folderAsset: yes timeCreated: 1457546967 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Buttons/actbt_0.png.meta ================================================ fileFormatVersion: 2 guid: c56a04d61e132a64ba4c7b66e9d37209 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: f4c340fbecc176c4ab638bebc132957c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Buttons/actbt_1.png.meta ================================================ fileFormatVersion: 2 guid: 89e4c93551ad7f64ba52320d0bae5a9a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: d43eef615a1ea6c4581d72ea4fe58464 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Buttons/catbt_0.png.meta ================================================ fileFormatVersion: 2 guid: 351c43af85e2cab44979d1f393d35515 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 8c3e195f014379944bb05a8fd332a9a6 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Buttons/catbt_1.png.meta ================================================ fileFormatVersion: 2 guid: c66f0eb94a420744684429cb8a33a6ed TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 8e26c82457121234da6f035f0726ca94 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Buttons/fightbt_0.png.meta ================================================ fileFormatVersion: 2 guid: 8a1620ed25b024a4eb20a00c38b6dc6b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 190964d2418f3484a9fef06ff57d8a4f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Buttons/fightbt_1.png.meta ================================================ fileFormatVersion: 2 guid: 23df333bb1ef0134dba9426e5edd87fd TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: ed462d255915e9141a4601e8d44a79e8 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Buttons/gifhtbt_0.png.meta ================================================ fileFormatVersion: 2 guid: 7caee85b0bc1f3c469236b706e26b552 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 68ad3c2476531c04d87d544d7a79895b vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Buttons/gifhtbt_1.png.meta ================================================ fileFormatVersion: 2 guid: 517aa31cc6411514b81e03fbd60d1dee TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 42d4de85201a9f94180f1160de5cd7e3 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Buttons/itembt_0.png.meta ================================================ fileFormatVersion: 2 guid: 6c6b044a0aa21e245bc1a70b52018b31 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 9afa5cef16e2a154d84f8a6dbe0da5ab vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Buttons/itembt_1.png.meta ================================================ fileFormatVersion: 2 guid: 1ea8b06932bbd2a4c8081b4c510327a4 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 8968ad02f97833645b632b94f9ab2ea0 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Buttons/mecrybt_0.png.meta ================================================ fileFormatVersion: 2 guid: 35798cd8895b4184794be2de6d665e89 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 7fdcb77af9591694f8357511b5102473 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Buttons/mecrybt_1.png.meta ================================================ fileFormatVersion: 2 guid: 933386744ad19354b8988f4953e67bdf TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 3544d9cfd8249f747be73175b05a89f4 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Buttons/mercybt_0.png.meta ================================================ fileFormatVersion: 2 guid: 315ecddcee569d745a09ce7c38329f7c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 64ba53b18a59cc94286f9330570a0982 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Buttons/mercybt_1.png.meta ================================================ fileFormatVersion: 2 guid: 385d6044036a1784aba77a86b604eb65 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4f06117a7193c48418b4386c5ac95166 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Buttons/tembt_0.png.meta ================================================ fileFormatVersion: 2 guid: ec8e08df600e0cb47b3091d98e6e69a0 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: a4481cac05af839429c621687bd16a52 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Buttons/tembt_1.png.meta ================================================ fileFormatVersion: 2 guid: 8e1789be4f43f33449bf586fa034f913 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: b213b506a99f3dd4ca3ad753383a57d2 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Buttons/tiembt_0.png.meta ================================================ fileFormatVersion: 2 guid: a6e01b40d2099be49bf7d6008f25029c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: ded6ff77d1dabf64196e084dc717d836 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Buttons.meta ================================================ fileFormatVersion: 2 guid: 97022de6a71afb84fac1e33d079d046b folderAsset: yes timeCreated: 1457546969 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Fonts/automap_from_meta.py ================================================ #dirty python script to read out unity multi-sprite meta files and make XML maps out of them #files = ["uidialog", "monster", "papyrus", "sans", "uibattlesmall", "uidamagetext"] files = ["wingdings"] nametag = "- name: " bordertag = "border: " xtag = "x: " ytag = "y: " wtag = "width: " htag = "height: " rx, ry, rw, rh, bx, by, bz, bw = 0, 0, 0, 0, 0, 0, 0, 0 charname = "" xmldict = {} xmlhead = """ """ xmlnode = """ """ xmltail = "\n" xmlstr = "" def parseborder(bstr): global bx, by, bz, bw bstr = bstr[1:-1] vars = bstr.split(',') for var in vars: var = var.strip() intv = int(var[2:]) if var[0] == 'x': bx = intv if var[0] == 'y': by = intv if var[0] == 'z': bz = intv if var[0] == 'w': bw = intv def striptag(line, tag): return line[len(tag):] for fn in files: file = open(fn + ".png.meta") xmlfile = open(fn + ".xml", "w") lines = file.readlines() xmlstr = xmlhead for line in lines: line = line.strip() if line.startswith(nametag): print line charname = striptag(line, nametag) if charname =="''''": charname = "'" elif charname[0] == "'": charname = charname[1] if charname == "&": charname = "ampersand" if line.startswith(xtag): rx = int(striptag(line, xtag)) if line.startswith(ytag): ry = int(striptag(line, ytag)) if line.startswith(wtag): rw = int(striptag(line, wtag)) if line.startswith(htag): rh = int(striptag(line, htag)) if line.startswith(bordertag): print rx,ry,rw,rh borderline = striptag(line, bordertag) parseborder(borderline) if bx+by+bz+bw > 0: print 'borders:', bx,by,bz,bw xmldict[charname] = xmlnode%(charname, rx,ry,rw,rh,bx,by,bz,bw) print "--- CHARACTER COMPLETE ---" for k,v in sorted(xmldict.items()): xmlstr += v xmldict = {} xmlstr += xmltail xmlfile.write(xmlstr) xmlfile.close() xmlstr = "" ================================================ FILE: Assets/Default/Sprites/UI/Fonts/automap_from_meta.py.meta ================================================ fileFormatVersion: 2 guid: 03d0b77e1751e4841b559221e969cb0e timeCreated: 1457546971 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Fonts/menu.png.meta ================================================ fileFormatVersion: 2 guid: 0b3f98aa0243fb6448f90153a6f78af7 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: d7962b9de9e684149aa1525d3d7c929f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Fonts/menu.xml ================================================ monsterfont ffffff 18 ================================================ FILE: Assets/Default/Sprites/UI/Fonts/menu.xml.meta ================================================ fileFormatVersion: 2 guid: a56ce3e5720042a4fb1e2444dabc8492 timeCreated: 1467108105 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Fonts/monster.png.meta ================================================ fileFormatVersion: 2 guid: 06411e511c20278499dff81a9456e95a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4b79180a42b30974f813fbdebca72e3d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Fonts/monster.xml ================================================ monsterfont 000000 18 ================================================ FILE: Assets/Default/Sprites/UI/Fonts/monster.xml.meta ================================================ fileFormatVersion: 2 guid: 29fbf0fe75121e441b413fcdc38fc308 timeCreated: 1457547293 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Fonts/monsternew.xml ================================================ monsterfont 000000 18 ================================================ FILE: Assets/Default/Sprites/UI/Fonts/monsternew.xml.meta ================================================ fileFormatVersion: 2 guid: df9c9079495f3ef419844124c654d830 timeCreated: 1457547477 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Fonts/papyrus.png.meta ================================================ fileFormatVersion: 2 guid: c41c875ddd9a2fd49be6ae576b29b493 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4b33542b92cfbf54aa4464da1ab40246 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Fonts/papyrus.xml ================================================ v_papyrus 000000 16.5 ================================================ FILE: Assets/Default/Sprites/UI/Fonts/papyrus.xml.meta ================================================ fileFormatVersion: 2 guid: 4e011ea1d7903a340b1641419a2ef150 timeCreated: 1457547298 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Fonts/sans.png.meta ================================================ fileFormatVersion: 2 guid: 854470922b3583b4caa0b47e91daec3a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 27a4df00e6aaa384b8d6e6cdf1db8ea1 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Fonts/sans.xml ================================================ v_sans 000000 16.5 ================================================ FILE: Assets/Default/Sprites/UI/Fonts/sans.xml.meta ================================================ fileFormatVersion: 2 guid: 34d37b691d7a88c41a03a9d11b8b979b timeCreated: 1457547294 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Fonts/uibattlesmall.png.meta ================================================ fileFormatVersion: 2 guid: 51704bcd13e8a3a45ad123d471d54b6c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 52efe256cb1350e4996aa33c73271093 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Fonts/uibattlesmall.xml ================================================ ffffff ================================================ FILE: Assets/Default/Sprites/UI/Fonts/uibattlesmall.xml.meta ================================================ fileFormatVersion: 2 guid: 746d187e5fb3add4a94c19a07ae89ee8 timeCreated: 1457547347 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Fonts/uidamagetext.png.meta ================================================ fileFormatVersion: 2 guid: 296df25e2c0a4c241a04d5c6eacd5f38 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: a0e8c491f034a854da2199f11c7b5f24 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Fonts/uidamagetext.xml ================================================ 30 ================================================ FILE: Assets/Default/Sprites/UI/Fonts/uidamagetext.xml.meta ================================================ fileFormatVersion: 2 guid: 09957cdfaf581fb499e4a316611cbd0e timeCreated: 1457547100 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Fonts/uidamagetransp.png.meta ================================================ fileFormatVersion: 2 guid: 855f071767e97ea4081a777c9d189708 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: bcea4a2ae55b75e4daaf7d2b0ca2b63f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Fonts/uidamagetransp.xml ================================================ 30 ================================================ FILE: Assets/Default/Sprites/UI/Fonts/uidamagetransp.xml.meta ================================================ fileFormatVersion: 2 guid: 8c30ff929d7e94b4485e6e395b7e046d timeCreated: 1457547381 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Fonts/uidialog.png.meta ================================================ fileFormatVersion: 2 guid: 74edd79091df5d44c9d9347e0f164208 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4156fea9d52d92a4f8be3183cd074bca vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Fonts/uidialog.xml ================================================ uifont 30 ================================================ FILE: Assets/Default/Sprites/UI/Fonts/uidialog.xml.meta ================================================ fileFormatVersion: 2 guid: be2d83a91a606484cb40d3d1422676d5 timeCreated: 1457547454 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Fonts/uidialoglilspace.png.meta ================================================ fileFormatVersion: 2 guid: 0db7ff501b0c2b141bdf76b2b2b97972 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e9897058a205b0c47b8c8565e07474e6 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Fonts/uidialoglilspace.xml ================================================ uifont 2 30 ================================================ FILE: Assets/Default/Sprites/UI/Fonts/uidialoglilspace.xml.meta ================================================ fileFormatVersion: 2 guid: f43213529bf280a489e91785649b5182 timeCreated: 1495388317 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Fonts/uidialognew.png.meta ================================================ fileFormatVersion: 2 guid: c8a2d6d2790076c4c875a5e8760c0530 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 6322ad40fe3e3b440889eeaf15ca8dc4 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Fonts/uidialognew.xml ================================================ uifont 30 ================================================ FILE: Assets/Default/Sprites/UI/Fonts/uidialognew.xml.meta ================================================ fileFormatVersion: 2 guid: 231f129e7f6346b49b3fb42f369b9918 timeCreated: 1457547291 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Fonts/unnamed_2013.png.meta ================================================ fileFormatVersion: 2 guid: 318fed82190e3c74b839e764959d3327 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 40fa1e39e0d037e44b54f453bb0624c9 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Fonts/unnamed_2014.png.meta ================================================ fileFormatVersion: 2 guid: c871c9011d33f0240bf2f6e257e146e1 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c9939561fcf190c46919173db07c56c8 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Fonts/unnamed_2016.png.meta ================================================ fileFormatVersion: 2 guid: 856131f63a9077c45919870d99d9707a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 7a054f7cfc0c3e245a4a339c3831aeae vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Fonts/wingdings.png.meta ================================================ fileFormatVersion: 2 guid: f91e786b6e777f74faaadb7093765db1 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 7f59af037a6ab78428db6e2afcc60fa0 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Fonts/wingdings.xml ================================================ 000000 ================================================ FILE: Assets/Default/Sprites/UI/Fonts/wingdings.xml.meta ================================================ fileFormatVersion: 2 guid: 56922760782c6014bbdca550c6fedc50 timeCreated: 1457547306 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/Fonts.meta ================================================ fileFormatVersion: 2 guid: 63fcefd1a6e305a4b816159e7af6de12 folderAsset: yes timeCreated: 1457546968 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/bottom.png.meta ================================================ fileFormatVersion: 2 guid: db4be3bd99e64514c93221b3b42dd781 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 93bf30af3aa08c1459dbc0d7f8f7abc8 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/bottom.xml ================================================ 156 ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/bottom.xml.meta ================================================ fileFormatVersion: 2 guid: 4b06cc7484b0f3048bd394e4fd5cec8d timeCreated: 1457547298 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/empty.png.meta ================================================ fileFormatVersion: 2 guid: 71c0eb7d14d393d4784621261327beb2 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 788e1c9f42f19a248873a724798b9208 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/left.png.meta ================================================ fileFormatVersion: 2 guid: 8f01448b87e11ab449cfb66ec9641beb TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 6d0219b0845b21e4a8fd9fd4be045221 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/left.xml ================================================ 69 ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/left.xml.meta ================================================ fileFormatVersion: 2 guid: 3ee2a3a7a955ae84ab84cd4ae739800b timeCreated: 1457547296 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/leftlarge.png.meta ================================================ fileFormatVersion: 2 guid: 879b96b75fbff344aafca6d4687397ec TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 7ccfa35096f25334d804281f18447e17 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/leftlarge.xml ================================================ 138 ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/leftlarge.xml.meta ================================================ fileFormatVersion: 2 guid: 9e5e140797230a24a9661853763d28a1 timeCreated: 1457547411 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/leftlargeminus.png.meta ================================================ fileFormatVersion: 2 guid: ed0ec7ac0c77f9f44b57db79193eaf69 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 15dd94c84bdb8ec4b9314d106035a1bf vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/leftlargeminus.xml ================================================ 170 ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/leftlargeminus.xml.meta ================================================ fileFormatVersion: 2 guid: 36f168c013953054a90b887c0f668ef3 timeCreated: 1457547295 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/leftshort.png.meta ================================================ fileFormatVersion: 2 guid: c0cf0f56c06971b479ea3668b09449c6 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: dd50cf3847e9e6d41b0639273213adca vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/leftshort.xml ================================================ 69 ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/leftshort.xml.meta ================================================ fileFormatVersion: 2 guid: d692c9ec9fd0a6b4c9d469a36dc7578f timeCreated: 1457547476 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/leftwide.png.meta ================================================ fileFormatVersion: 2 guid: e3e60804497ba1e49acf222b63e4e8d2 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 87599b33a5dc3574b93bbdacfaa832b0 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/leftwide.xml ================================================ 194 ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/leftwide.xml.meta ================================================ fileFormatVersion: 2 guid: 64a5b8bd22039e842966fa7a8512e958 timeCreated: 1457547341 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/leftwideminus.png.meta ================================================ fileFormatVersion: 2 guid: abc6f0dd9552a514eac7adcc8aef09d5 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: a51731f81537f0447b3b15368bdc217a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/leftwideminus.xml ================================================ 140 ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/leftwideminus.xml.meta ================================================ fileFormatVersion: 2 guid: 67d5eadb48fa9a843a1d48f1f5e91894 timeCreated: 1457547346 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/right.png.meta ================================================ fileFormatVersion: 2 guid: 1138fbe0ae4d6e44180dc5316c640431 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: af0fb0f14dc3ea349b743e48262063a6 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/right.xml ================================================ 73 ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/right.xml.meta ================================================ fileFormatVersion: 2 guid: bc7cbf2070691b249bb26662d4e1f1f4 timeCreated: 1457547418 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/rightlarge.png.meta ================================================ fileFormatVersion: 2 guid: 50ee7a39b79879f40b683ea8be296da2 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 09a4df7d67084d247b28620cd6241914 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/rightlarge.xml ================================================ 150 ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/rightlarge.xml.meta ================================================ fileFormatVersion: 2 guid: cc9ac9f70205d3b4eb093aaf1deca99c timeCreated: 1457547475 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/rightlargeminus.png.meta ================================================ fileFormatVersion: 2 guid: 4391b40bd32d65f47a48bb6ee6922782 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: d578b48988903c34a90e2a6f67b6b075 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/rightlargeminus.xml ================================================ 173 ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/rightlargeminus.xml.meta ================================================ fileFormatVersion: 2 guid: 7f15264b293211e4280170468852efd6 timeCreated: 1457547377 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/rightlong.png.meta ================================================ fileFormatVersion: 2 guid: 19d3542e0dde2564c99a2dabeb329556 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 1434da03418968d4bbcce94704b726bf vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/rightlong.xml ================================================ 79 ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/rightlong.xml.meta ================================================ fileFormatVersion: 2 guid: 14e4c8de36971384ebbdc4eeecf9688e timeCreated: 1457547102 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/rightshort.png.meta ================================================ fileFormatVersion: 2 guid: ae70d8140a54c4a41b422f4f0da4a0ab TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: fa7cf9d0a8db37c46a83ecac6a7d5a8a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/rightshort.xml ================================================ 73 ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/rightshort.xml.meta ================================================ fileFormatVersion: 2 guid: 1c916732ae84c664b9ada02a6ac2ea16 timeCreated: 1457547291 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/rightwide.png.meta ================================================ fileFormatVersion: 2 guid: 75a753b4de0951c4d81d3a1d14be7d12 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4a4bf354ea5fae34096695db8213994c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/rightwide.xml ================================================ 194 ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/rightwide.xml.meta ================================================ fileFormatVersion: 2 guid: da0e761bd72fd3c4abfcb991e5f59b54 timeCreated: 1457547477 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/rightwideminus.png.meta ================================================ fileFormatVersion: 2 guid: 96dccb8fac6f18544bdb1a5b21f11ba0 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4e5358caf531dd84288e4dca3b52d1f1 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/rightwideminus.xml ================================================ 144 ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/rightwideminus.xml.meta ================================================ fileFormatVersion: 2 guid: d2aaa6d05e04b5940ad5ac8df790ce36 timeCreated: 1457547475 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/spr_blcontiny_0.png.meta ================================================ fileFormatVersion: 2 guid: cfe7975712b18ec4281943c8fad94700 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 72a2dc8bc5053264ea06cfe3bb9905a2 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/top.png.meta ================================================ fileFormatVersion: 2 guid: 3c601ad9df6ea764ab61e4eb0aba9ea0 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 04f418e3196b6f645943cc1574660c10 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/top.xml ================================================ 160 ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/top.xml.meta ================================================ fileFormatVersion: 2 guid: 13c39d77e7ff66044b736d4d4481f81d timeCreated: 1457547102 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/toptiny.png.meta ================================================ fileFormatVersion: 2 guid: 68756a4a8801f5e4b85a2c2108346635 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4466ff7f68dd2f94f894e6775028f3a4 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/toptiny.xml ================================================ 56 ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles/toptiny.xml.meta ================================================ fileFormatVersion: 2 guid: 494af0e6f31aa904993190f2e13b7749 timeCreated: 1457547297 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/SpeechBubbles.meta ================================================ fileFormatVersion: 2 guid: 9d65512997b4cdf4bb021256c7ced9b3 folderAsset: yes timeCreated: 1457546969 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/spr_gameoverbg_0.png.meta ================================================ fileFormatVersion: 2 guid: b691c6a7277a1e54299eb506593a87d9 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 5d2fcab436dc6d0479f070a40112fd13 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/spr_hpname_0.png.meta ================================================ fileFormatVersion: 2 guid: fa3ef7c878607934e8021dbde893bd0d TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c0ee68b5c0f574f4bbb5e54dbe208e73 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/spr_phname_0.png.meta ================================================ fileFormatVersion: 2 guid: 2929382bfff775d4e9e965282555567b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: 16 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 6ca1bace6e009bf488d3b3fd66999e42 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/spr_target_0.png.meta ================================================ fileFormatVersion: 2 guid: 4bd02c60a9a9f6344845684af20f264c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 9a54bbcc0dbca184393ec2025fbc8193 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI/sq_white.png.meta ================================================ fileFormatVersion: 2 guid: fb5a323e2b9f3e141957e3b2730b0303 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 11687cf032c743e4ea6fc754e8027112 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/UI.meta ================================================ fileFormatVersion: 2 guid: 1ed63af026e0b074e877c25d235d653c folderAsset: yes timeCreated: 1457546965 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/bar-px.png.meta ================================================ fileFormatVersion: 2 guid: 76468a0c14f9fe7469307b8047d6f5c9 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 5e696b7f8c5c59f438096e6e8ba62089 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/black.png.meta ================================================ fileFormatVersion: 2 guid: 3dcf2dd032bf193498c6f1d2118f795d TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: bf762b0762459d3418f7a1eb12dc2240 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/empty.png.meta ================================================ fileFormatVersion: 2 guid: 876f2cc47fea2394b98c7950cde30cd9 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: aadd686fd72b98948b36b3b4e30b0724 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/px.png.meta ================================================ fileFormatVersion: 2 guid: 6239da56460a87342a1e19b522989976 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 1efab3858868e6b4194c853c4b4c2660 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/spr_chestbox_0.png.meta ================================================ fileFormatVersion: 2 guid: 0acd4547315eb914f93ba1859fa4f79b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 9187d3978fa87f6438d5679a9fd4af33 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/spr_heartgtfo_0.png.meta ================================================ fileFormatVersion: 2 guid: 9efd02381a758124c9e56e646c1db259 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c3a1e8180fa2ec84ba130af1a7cb51a8 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/spr_heartgtfo_1.png.meta ================================================ fileFormatVersion: 2 guid: fd05f675221cb374f906b5d9ddba53f7 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 260a96f92150fbb41affab2b08f2c451 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/ut-heart-broken.png.meta ================================================ fileFormatVersion: 2 guid: e21d102223e967a47b12c83852a1880f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: dc90b1c4d6a6a764092569a1c586aee0 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites/ut-heart.png.meta ================================================ fileFormatVersion: 2 guid: 84380142b5676e44daea94b5219bcf93 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 1 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: -1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e0ae2a656aa85d6478a673bc74be69ef vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default/Sprites.meta ================================================ fileFormatVersion: 2 guid: 45f94a5c6cbaf274bb7e9d5cdae6c2c8 folderAsset: yes timeCreated: 1457546963 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Default.meta ================================================ fileFormatVersion: 2 guid: 9dd946716e1f38c4ca0a023170d92873 folderAsset: yes timeCreated: 1487368923 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Editor/BundleShaders.cs ================================================ /// Some code from https://bitbucket.org/Unity-Technologies/assetbundledemo/src/default/ #pragma warning disable 0618 using UnityEditor; using UnityEngine; using UnityEngine.UI; using System.IO; using System.Collections.Generic; public static class BundleShaders { private static string assetBundleDirectory = "Assets/Editor/Output"; private static string shaderDirectory = "Assets/Editor/Shaders"; [MenuItem("Create Your Frisk/Build Shader AssetBundles...")] static void OneBundleOption() { if (EditorApplication.isPlaying) { Debug.LogError("You may only build AssetBundles while not in play mode."); return; } BundleShaderDialog window = (BundleShaderDialog)EditorWindow.GetWindow(typeof(BundleShaderDialog)); window.Show(); } public static void AllBundlesOption() { if (EditorApplication.isPlaying) { Debug.LogError("You may only build AssetBundles while not in play mode."); return; } // Gets all AssetBundles from files within the shader directory Dictionary> bundles = RetrieveAllBundles(); if (bundles == null) return; // Build AssetBundles BuildBundles(bundles); EditorUtility.DisplayDialog("Bundling Shaders", "All CYF Shader Bundles have been created!\n\nYou can find them in:\n" + assetBundleDirectory, "OK"); } public static void OneBundle(string bundleName) { if (bundleName == "") { Debug.LogError("Please enter the name of an AssetBundle assigned in the Unity Editor."); return; } // Gets all AssetBundles from files within the shader directory Dictionary> bundles = RetrieveAllBundles(); if (bundles == null) return; // Check if the given bundle name exists within this dictionary if (!bundles.ContainsKey(bundleName)) { Debug.LogError("The AssetBundle \"" + bundleName + "\" does not exist on any files in \"" + shaderDirectory + "\"."); return; } // Build all files with this bundle name into one AssetBundle Dictionary> bundlesToBuild = new Dictionary>(); List shaders = new List(); foreach (Shader shader in bundles[bundleName]) shaders.Add(shader); bundlesToBuild[bundleName] = shaders; BuildBundles(bundlesToBuild); EditorUtility.DisplayDialog("Bundling Shaders", "The CYF Shader Bundle \"" + bundleName + "\" has been created!\n\nYou can find it in:\n" + assetBundleDirectory + "/" + bundleName, "OK"); } private static Dictionary> RetrieveAllBundles() { if (!Directory.Exists(shaderDirectory)) { Debug.LogError("The shaders directory (\"" + shaderDirectory + "\") does not exist. Thus, there are no bundles to build. Aborting."); return null; } // Get all assets string[] assets = Directory.GetFiles(shaderDirectory, "*.shader"); Dictionary> bundles = new Dictionary>(); // Get asset bundle names from each file foreach (string file in assets) { ShaderImporter importer = (ShaderImporter)AssetImporter.GetAtPath(file); if (importer == null) { Debug.LogWarning("Could not import asset \"" + file + "\". Skipping."); continue; } // Get asset bundle name string bundleName = importer.assetBundleName; if (bundleName != "") { // Create a folder for each bundle if applicable if (!Directory.Exists(assetBundleDirectory + "/" + bundleName)) Directory.CreateDirectory(assetBundleDirectory + "/" + bundleName); // Create a bundle if applicable if (!bundles.ContainsKey(bundleName)) { List list = new List(); bundles[bundleName] = list; } bundles[bundleName].Add(importer.GetShader()); } } if (bundles.Count == 0) { Debug.LogError("There are no AssetBundles to build. Aborting."); return null; } return bundles; } static void BuildBundles(Dictionary> bundles) { if (!Directory.Exists(assetBundleDirectory)) Directory.CreateDirectory(assetBundleDirectory); // Build AssetBundles foreach (KeyValuePair> pair in bundles) { // Windows if (!BuildPipeline.BuildAssetBundle(null, pair.Value.ToArray(), assetBundleDirectory + "/" + pair.Key + "/windows", BuildAssetBundleOptions.None, BuildTarget.StandaloneWindows)) Debug.LogError("An error occured while building the AssetBundle \"" + pair.Key + "\"."); // Linux if (!BuildPipeline.BuildAssetBundle(null, pair.Value.ToArray(), assetBundleDirectory + "/" + pair.Key + "/linux", BuildAssetBundleOptions.None, BuildTarget.StandaloneLinuxUniversal)) Debug.LogError("An error occured while building the AssetBundle \"" + pair.Key + "\"."); // Mac if (!BuildPipeline.BuildAssetBundle(null, pair.Value.ToArray(), assetBundleDirectory + "/" + pair.Key + "/mac", BuildAssetBundleOptions.None, BuildTarget.StandaloneOSX)) Debug.LogError("An error occured while building the AssetBundle \"" + pair.Key + "\"."); } } } public class BundleShaderDialog : EditorWindow { public string bundleName; void OnEnable() { this.titleContent = new GUIContent("CYF Shaders", "Utilities used to build CYF Shader AssetBundles for use with Create Your Frisk mods."); } void OnGUI() { bundleName = EditorGUILayout.TextField(new GUIContent("AssetBundle to build", "The name of a CYF Shader AssetBundle within the shaders directory to build."), bundleName); if (GUILayout.Button(new GUIContent("Build one AssetBundle", "Builds a CYF Shader AssetBundle with the name given in the text box above."))) { BundleShaders.OneBundle(bundleName); GUIUtility.ExitGUI(); } else if (GUILayout.Button(new GUIContent("Build all AssetBundles", "Builds all CYF Shader AssetBundles set up in the shaders directory."))) { BundleShaders.AllBundlesOption(); GUIUtility.ExitGUI(); } } } ================================================ FILE: Assets/Editor/BundleShaders.cs.meta ================================================ fileFormatVersion: 2 guid: ad28b96481f6641409dfc02fb9b6e17d MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Editor/Shaders/CYFShaderTemplate.shader ================================================ // Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt) Shader "CYF/Template" { Properties { _MainTex("Sprite Texture", 2D) = "white" {} _StencilComp("Stencil Comparison", Float) = 8 _Stencil("Stencil ID", Float) = 0 _StencilOp("Stencil Operation", Float) = 0 _StencilWriteMask("Stencil Write Mask", Float) = 255 _StencilReadMask("Stencil Read Mask", Float) = 255 _ColorMask("Color Mask", Float) = 15 [Toggle(UNITY_UI_ALPHACLIP)] _UseUIAlphaClip("Use Alpha Clip", Float) = 0 } SubShader { Tags { "Queue" = "Transparent" "IgnoreProjector" = "True" "RenderType" = "Transparent" "PreviewType" = "Plane" "CanUseSpriteAtlas" = "True" } Stencil { Ref[_Stencil] Comp[_StencilComp] Pass[_StencilOp] ReadMask[_StencilReadMask] WriteMask[_StencilWriteMask] } Cull Off Lighting Off ZWrite Off ZTest[unity_GUIZTestMode] Blend SrcAlpha OneMinusSrcAlpha ColorMask[_ColorMask] Pass { Name "Default" CGPROGRAM #pragma vertex vert #pragma fragment frag #pragma target 2.0 #include "UnityCG.cginc" #include "UnityUI.cginc" #pragma multi_compile __ UNITY_UI_CLIP_RECT #pragma multi_compile __ UNITY_UI_ALPHACLIP struct appdata_t { float4 vertex : POSITION; float4 color : COLOR; float2 texcoord : TEXCOORD0; UNITY_VERTEX_INPUT_INSTANCE_ID }; struct v2f { float4 vertex : SV_POSITION; fixed4 color : COLOR; float2 uv : TEXCOORD0; float4 worldPosition : TEXCOORD1; UNITY_VERTEX_OUTPUT_STEREO }; sampler2D _MainTex; fixed4 _TextureSampleAdd; float4 _ClipRect; float4 _MainTex_ST; v2f vert(appdata_t v) { v2f OUT; UNITY_SETUP_INSTANCE_ID(v); UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(OUT); OUT.worldPosition = v.vertex; OUT.vertex = UnityObjectToClipPos(OUT.worldPosition); OUT.uv = TRANSFORM_TEX(v.texcoord, _MainTex); OUT.color = v.color; return OUT; } fixed4 frag(v2f IN) : SV_Target { half4 color = (tex2D(_MainTex, IN.uv) + _TextureSampleAdd) * IN.color; #ifdef UNITY_UI_CLIP_RECT color.a *= UnityGet2DClipping(IN.worldPosition.xy, _ClipRect); #endif #ifdef UNITY_UI_ALPHACLIP clip(color.a - 0.001); #endif return color; } ENDCG } } } ================================================ FILE: Assets/Editor/Shaders/CYFShaderTemplate.shader.meta ================================================ fileFormatVersion: 2 guid: e7ed959beb558b247b1f4018d1671548 ShaderImporter: externalObjects: {} defaultTextures: [] nonModifiableTextures: [] userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Editor/Shaders/Displacement.shader ================================================ // Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt) Shader "CYF/Displacement" { Properties { _MainTex("Sprite Texture", 2D) = "white" {} _StencilComp("Stencil Comparison", Float) = 8 _Stencil("Stencil ID", Float) = 0 _StencilOp("Stencil Operation", Float) = 0 _StencilWriteMask("Stencil Write Mask", Float) = 255 _StencilReadMask("Stencil Read Mask", Float) = 255 _ColorMask("Color Mask", Float) = 15 [Toggle(UNITY_UI_ALPHACLIP)] _UseUIAlphaClip("Use Alpha Clip", Float) = 0 DispMap("Displacement Map", 2D) = "black" {} Intensity("Intensity", Float) = 1 } SubShader { Tags { "Queue" = "Transparent" "IgnoreProjector" = "True" "RenderType" = "Transparent" "PreviewType" = "Plane" "CanUseSpriteAtlas" = "True" } Stencil { Ref[_Stencil] Comp[_StencilComp] Pass[_StencilOp] ReadMask[_StencilReadMask] WriteMask[_StencilWriteMask] } Cull Off Lighting Off ZWrite Off ZTest[unity_GUIZTestMode] Blend SrcAlpha OneMinusSrcAlpha ColorMask[_ColorMask] Pass { Name "Default" CGPROGRAM #pragma vertex vert #pragma fragment frag #pragma target 2.0 #include "UnityCG.cginc" #include "UnityUI.cginc" #pragma multi_compile __ UNITY_UI_CLIP_RECT #pragma multi_compile __ UNITY_UI_ALPHACLIP #pragma multi_compile __ NO_PIXEL_SNAP #pragma multi_compile __ NO_WRAP struct appdata_t { float4 vertex : POSITION; float4 color : COLOR; float2 texcoord : TEXCOORD0; UNITY_VERTEX_INPUT_INSTANCE_ID }; struct v2f { float4 vertex : SV_POSITION; fixed4 color : COLOR; float2 uv : TEXCOORD0; float4 worldPosition : TEXCOORD1; UNITY_VERTEX_OUTPUT_STEREO }; sampler2D _MainTex; uniform float4 _MainTex_TexelSize; fixed4 _TextureSampleAdd; float4 _ClipRect; float4 _MainTex_ST; sampler2D DispMap; float Intensity; v2f vert(appdata_t v) { v2f OUT; UNITY_SETUP_INSTANCE_ID(v); UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(OUT); OUT.worldPosition = v.vertex; OUT.vertex = UnityObjectToClipPos(OUT.worldPosition); OUT.uv = TRANSFORM_TEX(v.texcoord, _MainTex); OUT.color = v.color; return OUT; } fixed4 frag(v2f IN) : SV_Target { half4 coloff = (tex2D(DispMap, IN.uv) + _TextureSampleAdd) * IN.color; coloff *= 255; coloff -= 128; float2 offset = IN.uv; offset.xy += mul(coloff.xy, float2(-Intensity / 640, -Intensity / 640)); #ifndef NO_PIXEL_SNAP offset.x = (floor(offset.x * _MainTex_TexelSize.z) + 0.5) / _MainTex_TexelSize.z; offset.y = (floor(offset.y * _MainTex_TexelSize.w) + 0.5) / _MainTex_TexelSize.w; #endif half4 col = (tex2D(_MainTex, offset) + _TextureSampleAdd) * IN.color; #ifdef UNITY_UI_CLIP_RECT col.a *= UnityGet2DClipping(IN.worldPosition.xy, _ClipRect); #endif #ifdef UNITY_UI_ALPHACLIP clip (col.a - 0.001); #endif #ifdef NO_WRAP col.a = (offset.x < 0 || offset.x > 1) || (offset.y < 0 || offset.y > 1) ? 0 : col.a; #endif return col; } ENDCG } } } ================================================ FILE: Assets/Editor/Shaders/Displacement.shader.meta ================================================ fileFormatVersion: 2 guid: 7a571d6496c4aa0419961f24d54cdd36 ShaderImporter: externalObjects: {} defaultTextures: [] nonModifiableTextures: [] userData: assetBundleName: cyfshaders assetBundleVariant: ================================================ FILE: Assets/Editor/Shaders/FitScreen.shader ================================================ // Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt) Shader "CYF/FitScreen" { Properties { _MainTex("Sprite Texture", 2D) = "white" {} _StencilComp("Stencil Comparison", Float) = 8 _Stencil("Stencil ID", Float) = 0 _StencilOp("Stencil Operation", Float) = 0 _StencilWriteMask("Stencil Write Mask", Float) = 255 _StencilReadMask("Stencil Read Mask", Float) = 255 _ColorMask("Color Mask", Float) = 15 [Toggle(UNITY_UI_ALPHACLIP)] _UseUIAlphaClip("Use Alpha Clip", Float) = 0 Width("Screen Width", Float) = 640 } SubShader { Tags { "Queue" = "Transparent" "IgnoreProjector" = "True" "RenderType" = "Transparent" "PreviewType" = "Plane" "CanUseSpriteAtlas" = "True" } Stencil { Ref[_Stencil] Comp[_StencilComp] Pass[_StencilOp] ReadMask[_StencilReadMask] WriteMask[_StencilWriteMask] } Cull Off Lighting Off ZWrite Off ZTest[unity_GUIZTestMode] Blend SrcAlpha OneMinusSrcAlpha ColorMask[_ColorMask] Pass { Name "Default" CGPROGRAM #pragma vertex vert #pragma fragment frag #pragma target 2.0 #include "UnityCG.cginc" #include "UnityUI.cginc" #pragma multi_compile __ UNITY_UI_CLIP_RECT #pragma multi_compile __ UNITY_UI_ALPHACLIP #pragma multi_compile __ NO_PIXEL_SNAP struct appdata_t { float4 vertex : POSITION; float4 color : COLOR; float2 texcoord : TEXCOORD0; UNITY_VERTEX_INPUT_INSTANCE_ID }; struct v2f { float4 vertex : SV_POSITION; fixed4 color : COLOR; float2 uv : TEXCOORD0; float4 worldPosition : TEXCOORD1; UNITY_VERTEX_OUTPUT_STEREO }; sampler2D _MainTex; uniform float4 _MainTex_TexelSize; fixed4 _TextureSampleAdd; float4 _ClipRect; float4 _MainTex_ST; float Width; v2f vert(appdata_t v) { v2f OUT; UNITY_SETUP_INSTANCE_ID(v); UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(OUT); OUT.worldPosition = v.vertex; OUT.vertex = UnityObjectToClipPos(OUT.worldPosition); OUT.uv = TRANSFORM_TEX(v.texcoord, _MainTex); OUT.color = v.color; return OUT; } fixed4 frag(v2f IN) : SV_Target { float2 offset = IN.uv; offset.x -= 0.5; offset.x = offset.x * (640 / Width); offset.x += 0.5; #ifndef NO_PIXEL_SNAP offset.x = (floor(offset.x * _MainTex_TexelSize.z) + 0.5) / _MainTex_TexelSize.z; offset.y = (floor(offset.y * _MainTex_TexelSize.w) + 0.5) / _MainTex_TexelSize.w; #endif half4 col = (tex2D(_MainTex, offset) + _TextureSampleAdd) * IN.color; #ifdef UNITY_UI_CLIP_RECT col.a *= UnityGet2DClipping(IN.worldPosition.xy, _ClipRect); #endif #ifdef UNITY_UI_ALPHACLIP clip (col.a - 0.001); #endif return col; } ENDCG } } } ================================================ FILE: Assets/Editor/Shaders/FitScreen.shader.meta ================================================ fileFormatVersion: 2 guid: 6fd260c8573714a47b91fa3b24e3ac93 ShaderImporter: externalObjects: {} defaultTextures: [] nonModifiableTextures: [] userData: assetBundleName: cyfshaders assetBundleVariant: ================================================ FILE: Assets/Editor/Shaders/Gradient.shader ================================================ // Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt) Shader "CYF/Gradient" { Properties { _MainTex("Sprite Texture", 2D) = "white" {} _StencilComp("Stencil Comparison", Float) = 8 _Stencil("Stencil ID", Float) = 0 _StencilOp("Stencil Operation", Float) = 0 _StencilWriteMask("Stencil Write Mask", Float) = 255 _StencilReadMask("Stencil Read Mask", Float) = 255 _ColorMask("Color Mask", Float) = 15 [Toggle(UNITY_UI_ALPHACLIP)] _UseUIAlphaClip("Use Alpha Clip", Float) = 0 TopLeft("Top Left Color", Color) = (1,1,1,1) TopRight("Top Right Color", Color) = (1,1,1,1) BottomLeft("Bottom Left Color", Color) = (1,1,1,1) BottomRight("Bottom Right Color", Color) = (1,1,1,1) } SubShader { Tags { "Queue" = "Transparent" "IgnoreProjector" = "True" "RenderType" = "Transparent" "PreviewType" = "Plane" "CanUseSpriteAtlas" = "True" } Stencil { Ref[_Stencil] Comp[_StencilComp] Pass[_StencilOp] ReadMask[_StencilReadMask] WriteMask[_StencilWriteMask] } Cull Off Lighting Off ZWrite Off ZTest[unity_GUIZTestMode] Blend SrcAlpha OneMinusSrcAlpha ColorMask[_ColorMask] Pass { Name "Default" CGPROGRAM #pragma vertex vert #pragma fragment frag #pragma target 2.0 #include "UnityCG.cginc" #include "UnityUI.cginc" #pragma multi_compile _ UNITY_UI_CLIP_RECT #pragma multi_compile _ UNITY_UI_ALPHACLIP struct appdata_t { float4 vertex : POSITION; float4 color : COLOR; float2 texcoord : TEXCOORD0; UNITY_VERTEX_INPUT_INSTANCE_ID }; struct v2f { float4 vertex : SV_POSITION; fixed4 color : COLOR; float2 uv : TEXCOORD0; float4 worldPosition : TEXCOORD1; UNITY_VERTEX_OUTPUT_STEREO }; sampler2D _MainTex; fixed4 _TextureSampleAdd; float4 _ClipRect; float4 _MainTex_ST; fixed4 TopLeft; fixed4 TopRight; fixed4 BottomLeft; fixed4 BottomRight; v2f vert(appdata_t v) { v2f OUT; UNITY_SETUP_INSTANCE_ID(v); UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(OUT); OUT.worldPosition = v.vertex; OUT.vertex = UnityObjectToClipPos(OUT.worldPosition); OUT.uv = TRANSFORM_TEX(v.texcoord, _MainTex); OUT.color = v.color; return OUT; } fixed4 frag(v2f IN) : SV_Target { half4 col = (tex2D(_MainTex, IN.uv) + _TextureSampleAdd) * IN.color; #ifdef UNITY_UI_CLIP_RECT col.a *= UnityGet2DClipping(IN.worldPosition.xy, _ClipRect); #endif #ifdef UNITY_UI_ALPHACLIP clip(col.a - 0.001); #endif half4 c = col * lerp(lerp(BottomLeft, BottomRight, IN.uv.x), lerp(TopLeft, TopRight, IN.uv.x),IN.uv.y); return c; } ENDCG } } } ================================================ FILE: Assets/Editor/Shaders/Gradient.shader.meta ================================================ fileFormatVersion: 2 guid: aeb44b95b14cdbc449bb4ca5992dedf3 ShaderImporter: externalObjects: {} defaultTextures: [] nonModifiableTextures: [] userData: assetBundleName: cyfshaders assetBundleVariant: ================================================ FILE: Assets/Editor/Shaders/Invert.shader ================================================ // Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt) Shader "CYF/Invert" { Properties { _MainTex("Sprite Texture", 2D) = "white" {} _StencilComp("Stencil Comparison", Float) = 8 _Stencil("Stencil ID", Float) = 0 _StencilOp("Stencil Operation", Float) = 0 _StencilWriteMask("Stencil Write Mask", Float) = 255 _StencilReadMask("Stencil Read Mask", Float) = 255 _ColorMask("Color Mask", Float) = 15 [Toggle(UNITY_UI_ALPHACLIP)] _UseUIAlphaClip("Use Alpha Clip", Float) = 0 } SubShader { Tags { "Queue" = "Transparent" "IgnoreProjector" = "True" "RenderType" = "Transparent" "PreviewType" = "Plane" "CanUseSpriteAtlas" = "True" } Stencil { Ref[_Stencil] Comp[_StencilComp] Pass[_StencilOp] ReadMask[_StencilReadMask] WriteMask[_StencilWriteMask] } Cull Off Lighting Off ZWrite Off ZTest[unity_GUIZTestMode] Blend SrcAlpha OneMinusSrcAlpha ColorMask[_ColorMask] Pass { Name "Default" CGPROGRAM #pragma vertex vert #pragma fragment frag #pragma target 2.0 #include "UnityCG.cginc" #include "UnityUI.cginc" #pragma multi_compile __ UNITY_UI_CLIP_RECT #pragma multi_compile __ UNITY_UI_ALPHACLIP struct appdata_t { float4 vertex : POSITION; float4 color : COLOR; float2 texcoord : TEXCOORD0; UNITY_VERTEX_INPUT_INSTANCE_ID }; struct v2f { float4 vertex : SV_POSITION; fixed4 color : COLOR; float2 uv : TEXCOORD0; float4 worldPosition : TEXCOORD1; UNITY_VERTEX_OUTPUT_STEREO }; sampler2D _MainTex; fixed4 _TextureSampleAdd; float4 _ClipRect; float4 _MainTex_ST; v2f vert(appdata_t v) { v2f OUT; UNITY_SETUP_INSTANCE_ID(v); UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(OUT); OUT.worldPosition = v.vertex; OUT.vertex = UnityObjectToClipPos(OUT.worldPosition); OUT.uv = TRANSFORM_TEX(v.texcoord, _MainTex); OUT.color = v.color; return OUT; } fixed4 frag(v2f IN) : SV_Target { half4 col = (tex2D(_MainTex, IN.uv) + _TextureSampleAdd) * IN.color; #ifdef UNITY_UI_CLIP_RECT col.a *= UnityGet2DClipping(IN.worldPosition.xy, _ClipRect); #endif #ifdef UNITY_UI_ALPHACLIP clip(col.a - 0.001); #endif return fixed4(1 - col.r, 1 - col.g, 1 - col.b, col.a); } ENDCG } } } ================================================ FILE: Assets/Editor/Shaders/Invert.shader.meta ================================================ fileFormatVersion: 2 guid: 033f764f33384ea4cab484086ee560c8 ShaderImporter: externalObjects: {} defaultTextures: [] nonModifiableTextures: [] userData: assetBundleName: cyfshaders assetBundleVariant: ================================================ FILE: Assets/Editor/Shaders/Rotation.shader ================================================ // Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt) Shader "CYF/Rotation" { Properties { _MainTex("Sprite Texture", 2D) = "white" {} _StencilComp("Stencil Comparison", Float) = 8 _Stencil("Stencil ID", Float) = 0 _StencilOp("Stencil Operation", Float) = 0 _StencilWriteMask("Stencil Write Mask", Float) = 255 _StencilReadMask("Stencil Read Mask", Float) = 255 _ColorMask("Color Mask", Float) = 15 [Toggle(UNITY_UI_ALPHACLIP)] _UseUIAlphaClip("Use Alpha Clip", Float) = 0 Rotation("Rotation", float) = 0 xPivot("X Pivot", float) = 0.5 yPivot("Y Pivot", float) = 0.5 } SubShader { Tags { "Queue" = "Transparent" "IgnoreProjector" = "True" "RenderType" = "Transparent" "PreviewType" = "Plane" "CanUseSpriteAtlas" = "True" } Stencil { Ref[_Stencil] Comp[_StencilComp] Pass[_StencilOp] ReadMask[_StencilReadMask] WriteMask[_StencilWriteMask] } Cull Off Lighting Off ZWrite Off ZTest[unity_GUIZTestMode] Blend SrcAlpha OneMinusSrcAlpha ColorMask[_ColorMask] Pass { Name "Default" CGPROGRAM #pragma vertex vert #pragma fragment frag #pragma target 2.0 #include "UnityCG.cginc" #include "UnityUI.cginc" #pragma multi_compile __ UNITY_UI_CLIP_RECT #pragma multi_compile __ UNITY_UI_ALPHACLIP #pragma multi_compile __ NO_PIXEL_SNAP #pragma multi_compile __ WRAP struct appdata_t { float4 vertex : POSITION; float4 color : COLOR; float2 texcoord : TEXCOORD0; UNITY_VERTEX_INPUT_INSTANCE_ID }; struct v2f { float4 vertex : SV_POSITION; fixed4 color : COLOR; float2 uv : TEXCOORD0; float4 worldPosition : TEXCOORD1; UNITY_VERTEX_OUTPUT_STEREO }; sampler2D _MainTex; uniform float4 _MainTex_TexelSize; fixed4 _TextureSampleAdd; float4 _ClipRect; float4 _MainTex_ST; float Rotation; float xPivot; float yPivot; static const float DegToRad = (3.1415926f / 180.0f); v2f vert(appdata_t v) { v2f OUT; UNITY_SETUP_INSTANCE_ID(v); UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(OUT); OUT.worldPosition = v.vertex; OUT.vertex = UnityObjectToClipPos(OUT.worldPosition); OUT.uv = TRANSFORM_TEX(v.texcoord, _MainTex); OUT.color = v.color; return OUT; } fixed4 frag(v2f IN) : SV_Target { float yoff = IN.uv.y; float xoff = IN.uv.x; float2 Center = float2(xPivot, yPivot); float2 UV = float2(xoff * _MainTex_TexelSize.z, yoff * _MainTex_TexelSize.w); UV -= Center * float2(_MainTex_TexelSize.z, _MainTex_TexelSize.w); float s = sin(Rotation * DegToRad); float c = cos(Rotation * DegToRad); float2x2 rMatrix = float2x2(c, -s, s, c); rMatrix *= 0.5; rMatrix += 0.5; rMatrix = rMatrix * 2 - 1; UV.xy = mul(UV.xy, rMatrix); UV += Center * float2(_MainTex_TexelSize.z, _MainTex_TexelSize.w); UV *= float2(_MainTex_TexelSize.x, _MainTex_TexelSize.y); #ifndef NO_PIXEL_SNAP UV.x = (floor(UV.x * _MainTex_TexelSize.z) + 0.5) / _MainTex_TexelSize.z; UV.y = (floor(UV.y * _MainTex_TexelSize.w) + 0.5) / _MainTex_TexelSize.w; #endif half4 col = (tex2D(_MainTex, UV) + _TextureSampleAdd) * IN.color; #ifdef UNITY_UI_CLIP_RECT col.a *= UnityGet2DClipping(IN.worldPosition.xy, _ClipRect); #endif #ifdef UNITY_UI_ALPHACLIP clip (col.a - 0.001); #endif #ifndef WRAP col.a = (UV.x < 0 || UV.x > 1) || (UV.y < 0 || UV.y > 1) ? 0 : col.a; #endif return col; } ENDCG } } } ================================================ FILE: Assets/Editor/Shaders/Rotation.shader.meta ================================================ fileFormatVersion: 2 guid: 72bc16832188f814cb2572d0fe43573b ShaderImporter: externalObjects: {} defaultTextures: [] nonModifiableTextures: [] userData: assetBundleName: cyfshaders assetBundleVariant: ================================================ FILE: Assets/Editor/Shaders/ScreenScale.shader ================================================ // Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt) Shader "CYF/ScreenScale" { Properties { _MainTex("Sprite Texture", 2D) = "white" {} _StencilComp("Stencil Comparison", Float) = 8 _Stencil("Stencil ID", Float) = 0 _StencilOp("Stencil Operation", Float) = 0 _StencilWriteMask("Stencil Write Mask", Float) = 255 _StencilReadMask("Stencil Read Mask", Float) = 255 _ColorMask("Color Mask", Float) = 15 [Toggle(UNITY_UI_ALPHACLIP)] _UseUIAlphaClip("Use Alpha Clip", Float) = 0 HorMult("Width Multiplier", Float) = 1 VerMult("Width Multiplier", Float) = 1 } SubShader { Tags { "Queue" = "Transparent" "IgnoreProjector" = "True" "RenderType" = "Transparent" "PreviewType" = "Plane" "CanUseSpriteAtlas" = "True" } Stencil { Ref[_Stencil] Comp[_StencilComp] Pass[_StencilOp] ReadMask[_StencilReadMask] WriteMask[_StencilWriteMask] } Cull Off Lighting Off ZWrite Off ZTest[unity_GUIZTestMode] Blend SrcAlpha OneMinusSrcAlpha ColorMask[_ColorMask] Pass { Name "Default" CGPROGRAM #pragma vertex vert #pragma fragment frag #pragma target 2.0 #include "UnityCG.cginc" #include "UnityUI.cginc" #pragma multi_compile __ UNITY_UI_CLIP_RECT #pragma multi_compile __ UNITY_UI_ALPHACLIP #pragma multi_compile __ NO_PIXEL_SNAP #pragma multi_compile __ WRAP struct appdata_t { float4 vertex : POSITION; float4 color : COLOR; float2 texcoord : TEXCOORD0; UNITY_VERTEX_INPUT_INSTANCE_ID }; struct v2f { float4 vertex : SV_POSITION; fixed4 color : COLOR; float2 uv : TEXCOORD0; float4 worldPosition : TEXCOORD1; UNITY_VERTEX_OUTPUT_STEREO }; sampler2D _MainTex; uniform float4 _MainTex_TexelSize; fixed4 _TextureSampleAdd; float4 _ClipRect; float4 _MainTex_ST; float VerMult; float HorMult; v2f vert(appdata_t v) { v2f OUT; UNITY_SETUP_INSTANCE_ID(v); UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(OUT); OUT.worldPosition = v.vertex; OUT.vertex = UnityObjectToClipPos(OUT.worldPosition); OUT.uv = TRANSFORM_TEX(v.texcoord, _MainTex); OUT.color = v.color; return OUT; } fixed4 frag(v2f IN) : SV_Target { float2 offset = IN.uv; offset.y -= 0.5; offset.y /= VerMult; offset.y += 0.5; offset.x -= 0.5; offset.x /= HorMult; offset.x += 0.5; #ifndef NO_PIXEL_SNAP offset.x = (floor(offset.x * _MainTex_TexelSize.z) + 0.5) / _MainTex_TexelSize.z; offset.y = (floor(offset.y * _MainTex_TexelSize.w) + 0.5) / _MainTex_TexelSize.w; #endif half4 col = (tex2D(_MainTex, offset) + _TextureSampleAdd) * IN.color; #ifdef UNITY_UI_CLIP_RECT col.a *= UnityGet2DClipping(IN.worldPosition.xy, _ClipRect); #endif #ifdef UNITY_UI_ALPHACLIP clip(col.a - 0.001); #endif #ifndef WRAP col.a = (offset.x < 0 || offset.x > 1) || (offset.y < 0 || offset.y > 1) ? 0 : col.a; #endif return col; } ENDCG } } } ================================================ FILE: Assets/Editor/Shaders/ScreenScale.shader.meta ================================================ fileFormatVersion: 2 guid: cc68f134249331f4b92cbe801d376625 ShaderImporter: externalObjects: {} defaultTextures: [] nonModifiableTextures: [] userData: assetBundleName: cyfshaders assetBundleVariant: ================================================ FILE: Assets/Editor/Shaders/Wave.shader ================================================ // Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt) Shader "CYF/Wave" { Properties { _MainTex("Sprite Texture", 2D) = "white" {} _StencilComp("Stencil Comparison", Float) = 8 _Stencil("Stencil ID", Float) = 0 _StencilOp("Stencil Operation", Float) = 0 _StencilWriteMask("Stencil Write Mask", Float) = 255 _StencilReadMask("Stencil Read Mask", Float) = 255 _ColorMask("Color Mask", Float) = 15 [Toggle(UNITY_UI_ALPHACLIP)] _UseUIAlphaClip("Use Alpha Clip", Float) = 0 Width("Width Change Size", float) = 1 Rate("Width Change Rate", float) = 1 } SubShader { Tags { "Queue" = "Transparent" "IgnoreProjector" = "True" "RenderType" = "Transparent" "PreviewType" = "Plane" "CanUseSpriteAtlas" = "True" } Stencil { Ref[_Stencil] Comp[_StencilComp] Pass[_StencilOp] ReadMask[_StencilReadMask] WriteMask[_StencilWriteMask] } Cull Off Lighting Off ZWrite Off ZTest[unity_GUIZTestMode] Blend SrcAlpha OneMinusSrcAlpha ColorMask[_ColorMask] Pass { Name "Default" CGPROGRAM #pragma vertex vert #pragma fragment frag #pragma target 2.0 #include "UnityCG.cginc" #include "UnityUI.cginc" #pragma multi_compile __ UNITY_UI_CLIP_RECT #pragma multi_compile __ UNITY_UI_ALPHACLIP #pragma multi_compile __ NO_PIXEL_SNAP #pragma multi_compile __ NO_WRAP struct appdata_t { float4 vertex : POSITION; float4 color : COLOR; float2 texcoord : TEXCOORD0; UNITY_VERTEX_INPUT_INSTANCE_ID }; struct v2f { float4 vertex : SV_POSITION; fixed4 color : COLOR; float2 uv : TEXCOORD0; float4 worldPosition : TEXCOORD1; UNITY_VERTEX_OUTPUT_STEREO }; sampler2D _MainTex; uniform float4 _MainTex_TexelSize; fixed4 _TextureSampleAdd; float4 _ClipRect; float4 _MainTex_ST; float Width; float Rate; v2f vert(appdata_t v) { v2f OUT; UNITY_SETUP_INSTANCE_ID(v); UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(OUT); OUT.worldPosition = v.vertex; OUT.vertex = UnityObjectToClipPos(OUT.worldPosition); OUT.uv = TRANSFORM_TEX(v.texcoord, _MainTex); OUT.color = v.color; return OUT; } fixed4 frag(v2f IN) : SV_Target { float2 offset = IN.uv + float2(sin((_Time.y + IN.uv.y*Rate)) / 5*Width, 0); #ifndef NO_PIXEL_SNAP offset.x = (floor(offset.x * _MainTex_TexelSize.z) + 0.5) / _MainTex_TexelSize.z; offset.y = (floor(offset.y * _MainTex_TexelSize.w) + 0.5) / _MainTex_TexelSize.w; #endif half4 col = (tex2D(_MainTex, offset) + _TextureSampleAdd) * IN.color; #ifdef UNITY_UI_CLIP_RECT col.a *= UnityGet2DClipping(IN.worldPosition.xy, _ClipRect); #endif #ifdef UNITY_UI_ALPHACLIP clip (col.a - 0.001); #endif #ifdef NO_WRAP col.a = (offset.x < 0 || offset.x > 1) ? 0 : col.a; #endif return col; } ENDCG } } } ================================================ FILE: Assets/Editor/Shaders/Wave.shader.meta ================================================ fileFormatVersion: 2 guid: 4f08c9b31e89944478c20f2ba60db9c6 ShaderImporter: externalObjects: {} defaultTextures: [] nonModifiableTextures: [] userData: assetBundleName: cyfshaders assetBundleVariant: ================================================ FILE: Assets/Editor/Shaders.meta ================================================ fileFormatVersion: 2 guid: 30743e9af9df8f040a46a4db2402dfcc folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Editor/UnityBuilderAction/BuildScript.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using UnityEditor; using UnityEditor.Build.Reporting; namespace UnityBuilderAction { public static class BuildScript { private static readonly string Eol = Environment.NewLine; private static readonly string[] Secrets = {"androidKeystorePass", "androidKeyaliasName", "androidKeyaliasPass"}; public static void Build() { // Gather values from args Dictionary options = GetValidatedOptions(); // Set version for this build PlayerSettings.bundleVersion = options["buildVersion"]; PlayerSettings.macOS.buildNumber = options["buildVersion"]; PlayerSettings.Android.bundleVersionCode = int.Parse(options["androidVersionCode"]); // Apply build target var buildTarget = (BuildTarget) Enum.Parse(typeof(BuildTarget), options["buildTarget"]); // Determine subtarget int buildSubtarget = 0; // Custom build Build(buildTarget, buildSubtarget, options["customBuildPath"]); } private static Dictionary GetValidatedOptions() { Dictionary validatedOptions = ParseCommandLineArguments(); return validatedOptions; } private static Dictionary ParseCommandLineArguments() { var providedArguments = new Dictionary(); string[] args = Environment.GetCommandLineArgs(); // Extract flags with optional values for (int current = 0, next = 1; current < args.Length; current++, next++) { // Parse flag bool isFlag = args[current].StartsWith("-"); if (!isFlag) continue; string flag = args[current].TrimStart('-'); // Parse optional value bool flagHasValue = next < args.Length && !args[next].StartsWith("-"); string value = flagHasValue ? args[next].TrimStart('-') : ""; bool secret = Secrets.Contains(flag); // Assign providedArguments.Add(flag, value); } return providedArguments; } private static void Build(BuildTarget buildTarget, int buildSubtarget, string filePath) { string[] scenes = EditorBuildSettings.scenes.Where(scene => scene.enabled).Select(s => s.path).ToArray(); var buildPlayerOptions = new BuildPlayerOptions { scenes = scenes, target = buildTarget, locationPathName = filePath, }; BuildSummary buildSummary = BuildPipeline.BuildPlayer(buildPlayerOptions).summary; ExitWithResult(buildSummary.result); } private static void ExitWithResult(BuildResult result) { switch (result) { case BuildResult.Succeeded: Console.WriteLine("Build succeeded!"); EditorApplication.Exit(0); break; case BuildResult.Failed: Console.WriteLine("Build failed!"); EditorApplication.Exit(101); break; case BuildResult.Cancelled: Console.WriteLine("Build cancelled!"); EditorApplication.Exit(102); break; case BuildResult.Unknown: default: Console.WriteLine("Build result is unknown!"); EditorApplication.Exit(103); break; } } } } ================================================ FILE: Assets/Editor/UnityBuilderAction/BuildScript.cs.meta ================================================ fileFormatVersion: 2 guid: e2fdd24de7d7c2d498a7ef5ddb681155 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Editor/UnityBuilderAction.meta ================================================ fileFormatVersion: 2 guid: cabb474da3dd3bd4a8795e61b4256e1d folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Editor.meta ================================================ fileFormatVersion: 2 guid: 9917842ad630e114f885e87d44aeec18 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Fonts/Arial/ARIAL.TTF.meta ================================================ fileFormatVersion: 2 guid: abd91933b51b6fc47931c535c62c6929 TrueTypeFontImporter: externalObjects: {} serializedVersion: 4 fontSize: 16 forceTextureCase: -2 characterSpacing: 0 characterPadding: 1 includeFontData: 1 fontName: Arial fontNames: - Arial fallbackFontReferences: - {fileID: 12800000, guid: 54b92a2d8dd3f4447bfba8fffdf8e4e6, type: 3} - {fileID: 12800000, guid: a5625e3ef998003458714eb346f52fb6, type: 3} - {fileID: 12800000, guid: 44de006fe98c5af4f8d1f95cbee54461, type: 3} - {fileID: 12800000, guid: 15acadafa08329141bd73d04f21c3df3, type: 3} customCharacters: fontRenderingMode: 0 ascentCalculationMode: 1 useLegacyBoundsCalculation: 0 shouldRoundAdvanceValue: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Fonts/Arial/ARIALBD.TTF.meta ================================================ fileFormatVersion: 2 guid: a5625e3ef998003458714eb346f52fb6 TrueTypeFontImporter: externalObjects: {} serializedVersion: 4 fontSize: 16 forceTextureCase: -2 characterSpacing: 0 characterPadding: 1 includeFontData: 1 fontName: Arial fontNames: - Arial fallbackFontReferences: - {fileID: 12800000, guid: 54b92a2d8dd3f4447bfba8fffdf8e4e6, type: 3} - {fileID: 12800000, guid: 44de006fe98c5af4f8d1f95cbee54461, type: 3} - {fileID: 12800000, guid: 15acadafa08329141bd73d04f21c3df3, type: 3} customCharacters: fontRenderingMode: 0 ascentCalculationMode: 1 useLegacyBoundsCalculation: 0 shouldRoundAdvanceValue: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Fonts/Arial/ARIALI.TTF.meta ================================================ fileFormatVersion: 2 guid: f5cd2b4678fea12459fa95ba13ea4ccd TrueTypeFontImporter: externalObjects: {} serializedVersion: 4 fontSize: 16 forceTextureCase: -2 characterSpacing: 0 characterPadding: 1 includeFontData: 1 fontName: Arial fontNames: - Arial fallbackFontReferences: - {fileID: 12800000, guid: c94568d197f7343468d5b1247c990a6d, type: 3} - {fileID: 12800000, guid: abd91933b51b6fc47931c535c62c6929, type: 3} - {fileID: 12800000, guid: d4ebaf485f502504096bbc00b9cdb74f, type: 3} - {fileID: 12800000, guid: b99617eabfbf4694984f67db2b9f4654, type: 3} - {fileID: 12800000, guid: 54b92a2d8dd3f4447bfba8fffdf8e4e6, type: 3} - {fileID: 12800000, guid: a5625e3ef998003458714eb346f52fb6, type: 3} - {fileID: 12800000, guid: 44de006fe98c5af4f8d1f95cbee54461, type: 3} - {fileID: 12800000, guid: 15acadafa08329141bd73d04f21c3df3, type: 3} customCharacters: fontRenderingMode: 0 ascentCalculationMode: 1 useLegacyBoundsCalculation: 0 shouldRoundAdvanceValue: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Fonts/Arial.meta ================================================ fileFormatVersion: 2 guid: 69d97557886d89e47998f8e4d301cb15 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Fonts/PixelOperator/LICENSE.txt ================================================ Reserved font name: Pixel Operator (previously known as the 8-bit Operator) Released by Jayvee Enaguas (HarvettFox96) , licensed under the SIL OFL 1.1 . (C) 2009-2016. ----------------------------------------------------------- SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 ----------------------------------------------------------- PREAMBLE The goals of the Open Font License (OFL) are to stimulate worldwide development of collaborative font projects, to support the font creation efforts of academic and linguistic communities, and to provide a free and open framework in which fonts may be shared and improved in partnership with others. The OFL allows the licensed fonts to be used, studied, modified and redistributed freely as long as they are not sold by themselves. The fonts, including any derivative works, can be bundled, embedded, redistributed and/or sold with any software provided that any reserved names are not used by derivative works. The fonts and derivatives, however, cannot be released under any other type of license. The requirement for fonts to remain under this license does not apply to any document created using the fonts or their derivatives. DEFINITIONS "Font Software" refers to the set of files released by the Copyright Holder(s) under this license and clearly marked as such. This may include source files, build scripts and documentation. "Reserved Font Name" refers to any names specified as such after the copyright statement(s). "Original Version" refers to the collection of Font Software components as distributed by the Copyright Holder(s). "Modified Version" refers to any derivative made by adding to, deleting, or substituting -- in part or in whole -- any of the components of the Original Version, by changing formats or by porting the Font Software to a new environment. "Author" refers to any designer, engineer, programmer, technical writer or other person who contributed to the Font Software. PERMISSION & CONDITIONS Permission is hereby granted, free of charge, to any person obtaining a copy of the Font Software, to use, study, copy, merge, embed, modify, redistribute, and sell modified and unmodified copies of the Font Software, subject to the following conditions: 1) Neither the Font Software nor any of its individual components, in Original or Modified Versions, may be sold by itself. 2) Original or Modified Versions of the Font Software may be bundled, redistributed and/or sold with any software, provided that each copy contains the above copyright notice and this license. These can be included either as stand-alone text files, human-readable headers or in the appropriate machine-readable metadata fields within text or binary files as long as those fields can be easily viewed by the user. 3) No Modified Version of the Font Software may use the Reserved Font Name(s) unless explicit written permission is granted by the corresponding Copyright Holder. This restriction only applies to the primary font name as presented to the users. 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font Software shall not be used to promote, endorse or advertise any Modified Version, except to acknowledge the contribution(s) of the Copyright Holder(s) and the Author(s) or with their explicit written permission. 5) The Font Software, modified or unmodified, in part or in whole, must be distributed entirely under this license, and must not be distributed under any other license. The requirement for fonts to remain under this license does not apply to any document created using the Font Software. TERMINATION This license becomes null and void if any of the above conditions are not met. DISCLAIMER THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE. ================================================ FILE: Assets/Fonts/PixelOperator/LICENSE.txt.meta ================================================ fileFormatVersion: 2 guid: cbb3343b9f745d14b9d6b7e301a7d89e timeCreated: 1498845275 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Fonts/PixelOperator/PixelOperator-Bold.ttf.meta ================================================ fileFormatVersion: 2 guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e timeCreated: 1498845275 licenseType: Free TrueTypeFontImporter: serializedVersion: 4 fontSize: 16 forceTextureCase: -2 characterSpacing: 0 characterPadding: 1 includeFontData: 1 fontName: Pixel Operator fontNames: - Pixel Operator fallbackFontReferences: [] customCharacters: fontRenderingMode: 2 ascentCalculationMode: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Fonts/PixelOperator.meta ================================================ fileFormatVersion: 2 guid: 18943380c06c42c458fb942cf920d3d2 folderAsset: yes timeCreated: 1498845275 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Fonts.meta ================================================ fileFormatVersion: 2 guid: 67de240aaa11e70499368b09541d1867 folderAsset: yes timeCreated: 1498845275 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Audio/mus_undertale.ogg.meta ================================================ fileFormatVersion: 2 guid: eac32315e7cb1df42ab7111c053f0928 AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Audio/put your music here, oggs only ================================================ ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Audio/put your music here, oggs only.meta ================================================ fileFormatVersion: 2 guid: 31d9fef5bb556d844a491090533c7c44 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Audio/thechoice.ogg.meta ================================================ fileFormatVersion: 2 guid: f63ccd4cb3377b64e96f256873d96b04 AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Audio.meta ================================================ fileFormatVersion: 2 guid: 6a13b51a8c7d9af48a67c302a8d532b3 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/DON'T SPOIL YOURSELF ================================================ ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/DON'T SPOIL YOURSELF.meta ================================================ fileFormatVersion: 2 guid: 2805b19ece058c64ca69f9b7437bbcbf DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Animations/ScruffleAnim.lua ================================================ scruffleFalseUpperBody = CreateSprite("empty") scruffleLArmTop = CreateSprite("Scruffle/leftarmtop") scruffleLHand = CreateSprite("Scruffle/lefthand") scruffleLArmBot = CreateSprite("Scruffle/leftarmbot") scruffleLLeg = CreateSprite("Scruffle/leftleg") scruffleRLeg = CreateSprite("Scruffle/rightleg") scruffleUpperBody = CreateSprite("empty") scruffleHood = CreateSprite("Scruffle/hoodtail") scruffleTorso = CreateSprite("Scruffle/torso") scruffleHead = CreateSprite("Scruffle/head") scruffleBlush = CreateSprite("Scruffle/blush") scruffleRArmTop = CreateSprite("Scruffle/rightarmtop") scruffleRHand = CreateSprite("Scruffle/righthand") scruffleRArmBot = CreateSprite("Scruffle/rightarmbot") scruffleHurt = CreateSprite("Scruffle/hurt") scruffleSpared = CreateSprite("Scruffle/spared") scruffleFalseUpperBody.Scale(scruffleTorso.width * 2, scruffleTorso.height * 2) scruffleLArmTop.Scale(2, 2) scruffleLHand.Scale(2, 2) scruffleLArmBot.Scale(2, 2) scruffleLLeg.Scale(2, 2) scruffleRLeg.Scale(2, 2) scruffleUpperBody.Scale(scruffleTorso.width * 2, scruffleTorso.height * 2) scruffleHood.Scale(2, 2) scruffleTorso.Scale(2, 2) scruffleHead.Scale(2, 2) scruffleBlush.Scale(2, 2) scruffleRArmTop.Scale(2, 2) scruffleRHand.Scale(2, 2) scruffleRArmBot.Scale(2, 2) scruffleHurt.Scale(2, 2) --[[ Parenting tree: deathParent monstersprite scruffleFalseUpperBody scruffleLArmTop scruffleLHand scruffleLArmBot scruffleLLeg scruffleRLeg scruffleUpperBody scruffleHood scruffleTorso scruffleHead scruffleBlush scruffleRArmTop scruffleRHand scruffleRArmBot scruffleHurt scruffleSpared ]] scruffleFalseUpperBody.SetParent(monstersprite) scruffleLArmTop.SetParent(scruffleFalseUpperBody) scruffleLHand.SetParent(scruffleLArmTop) scruffleLArmBot.SetParent(scruffleLArmTop) scruffleLLeg.SetParent(monstersprite) scruffleRLeg.SetParent(monstersprite) scruffleUpperBody.SetParent(monstersprite) scruffleHood.SetParent(scruffleUpperBody) scruffleTorso.SetParent(scruffleUpperBody) scruffleHead.SetParent(scruffleTorso) scruffleBlush.SetParent(scruffleHead) scruffleRArmTop.SetParent(scruffleTorso) scruffleRHand.SetParent(scruffleRArmTop) scruffleRArmBot.SetParent(scruffleRArmTop) scruffleHurt.SetParent(monstersprite) scruffleSpared.SetParent(monstersprite) scruffleFalseUpperBody.MoveToAbs(monstersprite.absx - 4, monstersprite.absy + 80) scruffleLArmTop.MoveTo(-13, 64) scruffleLArmTop.SetPivot(0.7, 0.88) scruffleLHand.MoveTo(-20, -18) scruffleLHand.SetPivot(0.67, 0.96) scruffleLArmBot.MoveTo(7, 18) scruffleLArmBot.SetPivot(0.7, 0.88) scruffleLLeg.SetPivot(0.5, 0) scruffleLLeg.MoveToAbs(monstersprite.absx - 31, monstersprite.absy) scruffleRLeg.SetPivot(0.5, 0) scruffleRLeg.MoveToAbs(monstersprite.absx + 27, monstersprite.absy) scruffleUpperBody.MoveToAbs(monstersprite.absx - 4, monstersprite.absy + 80) scruffleHood.MoveTo(11, 90) scruffleHood.SetPivot(0.105, 0.6) scruffleTorso.MoveTo(0, 0) scruffleTorso.SetPivot(0.5, 0.25) scruffleHead.MoveTo(5, 56) scruffleHead.SetPivot(0.7, 0.22) scruffleBlush.MoveTo(0, 0) scruffleBlush.alpha = 0 scruffleRArmTop.MoveTo(22, 26) scruffleRArmTop.SetPivot(0.22, 0.85) scruffleRHand.MoveTo(13, -15) scruffleRHand.SetPivot(0.39, 0.96) scruffleRArmBot.MoveTo(-12, 19) scruffleRArmBot.SetPivot(0.22, 0.85) scruffleHurt.SetPivot(.5, 0) scruffleHurt.SetAnchor(.5, 0) scruffleHurt.MoveTo(0, 0) scruffleHurt.alpha = 0 scruffleSpared.SetPivot(.5, 0) scruffleSpared.SetAnchor(.5, 0) scruffleSpared.MoveTo(2, -4) scruffleSpared.color = { 0.5, 0.5, 0.5, 0 } local time = 0 local timer = 0 animation = "Idle" function SwitchAnimation(anim) -- Reset the anim properly ResetScruffle() time = 0 -- Differences between the Idle and Death animation if anim == "Death" then scruffleLLeg.Set("Scruffle/Death/leftleg") scruffleRLeg.Set("Scruffle/Death/rightleg") scruffleRArmTop.Set("Scruffle/leftarm") scruffleRArmTop.SetPivot(0.7, 0.88) scruffleRArmTop.Move(-17, -34) scruffleRArmBot.Set("empty") scruffleRHand.Set("Scruffle/Death/righthand") scruffleRHand.MoveTo(-4, -18) scruffleRHand.SetPivot(0.66, 0.06) scruffleFalseUpperBody.SetParent(deathParent) scruffleLLeg.SetParent(deathParent) scruffleRLeg.SetParent(deathParent) scruffleUpperBody.SetParent(deathParent) scruffleHurt.SetParent(deathParent) end animation = anim end function AnimateScruffle() -- Idle looped animation if animation == "Idle" then scruffleHood.rotation = 10 * math.sin(time * 2) scruffleHead.MoveTo(5, 56 + 1.5 * math.sin(time * 1.5)) scruffleHead.rotation = 5 * math.sin(time) scruffleLArmTop.rotation = 5 * math.sin(time * 1.75) scruffleLArmBot.rotation = 5 * math.sin(time * 1.75) scruffleLHand.rotation = -10 + 6 * math.sin(time / 1.25) scruffleRArmTop.rotation = 4 * math.sin(time) scruffleRArmBot.rotation = 4 * math.sin(time) scruffleRHand.rotation = -4 + 6 * math.sin(time / 1.4) scruffleFalseUpperBody.rotation = 3 * math.sin(time / 1.3) scruffleFalseUpperBody.MoveToAbs(monstersprite.absx - 4, monstersprite.absy + 81 + 2 * math.sin(time * 1.1)) scruffleUpperBody.rotation = 3 * math.sin(time / 1.3) scruffleUpperBody.MoveToAbs(monstersprite.absx - 4, monstersprite.absy + 81 + 2 * math.sin(time * 1.1)) if scruffleHood.alpha > 0 then time = time + Time.dt end -- Death oneshot animation elseif animation == "Death" then -- Right arm detaches from the body (hahaha) if timer == 0 then scruffleRArmTop.SetParent(deathParent) scruffleRArmTop.SetPivot(0.23, 0.17) Audio.PlaySound("spear") -- Right arm falls on the ground elseif timer < 45 then scruffleRArmTop.Move(1.4, -timer * 4.2 / 45) scruffleRArmTop.rotation = scruffleRArmTop.rotation + 2.5 scruffleRHand.rotation = scruffleRHand.rotation + 6 -- Scruffle squeaks and looks at his missing arm elseif timer == 90 then scruffleHead.Move(14, 0) scruffleHead.Set("Scruffle/Death/head2") Audio.PlaySound("squeak") -- All the parts of the body are detached from the monster (hahahahaha) elseif timer == 135 then scruffleHead.Set("Scruffle/Death/head3") scruffleLArmTop.SetParent(deathParent) scruffleTorso.SetParent(deathParent) scruffleHood.SetParent(deathParent) scruffleLLeg.SetPivot(0.5, 0.5) scruffleLLeg.Move(0, scruffleLLeg.height) scruffleLLeg.SendToTop() scruffleRLeg.SetPivot(0.5, 0.5) scruffleRLeg.Move(0, scruffleRLeg.height) scruffleRLeg.SendToTop() scruffleRArmTop.SendToTop() scruffleHead.SetParent(deathParent) Audio.PlaySound("sudden") -- All the parts fall on the ground elseif timer > 135 and timer < 180 then scruffleLArmTop.rotation = scruffleLArmTop.rotation - 1.5 scruffleLArmTop.Move(0.5, -(timer - 135) * 5.4 / 45) scruffleLLeg.rotation = scruffleLLeg.rotation - 1.8 scruffleLLeg.Move(0, -(timer - 135) * 0.5 / 45) scruffleRLeg.rotation = scruffleRLeg.rotation + 1.8 scruffleRLeg.Move(0.5, -(timer - 135) * 0.5 / 45) scruffleHood.rotation = scruffleHood.rotation + 3.9 scruffleHood.Move(1.5, -(timer - 135) * 7 / 45) scruffleTorso.rotation = scruffleTorso.rotation + 1.9 scruffleTorso.Move(0.75, -(timer - 135) * 2 / 45) scruffleHead.Move(0.5, -(timer - 135) * 6 / 45) -- Destroy the entire animation, replace deathParent by a unique dusting sprite elseif timer == 180 then deathParent.Set("Scruffle/Death/dustingmess") deathParent.alpha = 1 deathParent.Move(13, -8) DeleteAnimation() deathParent.Dust(true, true) end timer = timer + 1 end end -- Reset the animation to its starting Idle animation positions function ResetScruffle() if animation == "Idle" then scruffleHood.rotation = 0 scruffleHead.MoveTo(5, 56) scruffleHead.rotation = 0 scruffleLArmTop.rotation = 0 scruffleLArmBot.rotation = 0 scruffleLHand.rotation = 0 scruffleRArmTop.rotation = 0 scruffleRArmBot.rotation = 0 scruffleRHand.rotation = 0 scruffleFalseUpperBody.rotation = 0 scruffleFalseUpperBody.MoveToAbs(monstersprite.absx - 4, monstersprite.absy + 80) scruffleUpperBody.rotation = 0 scruffleUpperBody.MoveToAbs(monstersprite.absx - 4, monstersprite.absy + 80) end end blushAlpha = 0 -- Makes the blushing sprite visible with a given alpha value function Blush(alpha) scruffleBlush.alpha = alpha blushAlpha = alpha end -- It hurts to be knifed function AnimateHurt(hurt) local animAlpha = hurt and 0 or 1 scruffleLArmTop.alpha = animAlpha scruffleLHand.alpha = animAlpha scruffleLArmBot.alpha = animAlpha scruffleLLeg.alpha = animAlpha scruffleRLeg.alpha = animAlpha scruffleHood.alpha = animAlpha scruffleTorso.alpha = animAlpha scruffleHead.alpha = animAlpha scruffleBlush.alpha = animAlpha == 0 and 0 or blushAlpha scruffleRArmTop.alpha = animAlpha scruffleRHand.alpha = animAlpha scruffleRArmBot.alpha = animAlpha scruffleHurt.alpha = 1 - animAlpha ResetScruffle() time = 0 end -- It's nice to be spared function AnimateSpare(spare) local animAlpha = spare and 0 or 1 scruffleLArmTop.alpha = animAlpha scruffleLHand.alpha = animAlpha scruffleLArmBot.alpha = animAlpha scruffleLLeg.alpha = animAlpha scruffleRLeg.alpha = animAlpha scruffleHood.alpha = animAlpha scruffleTorso.alpha = animAlpha scruffleHead.alpha = animAlpha scruffleBlush.alpha = animAlpha == 0 and 0 or blushAlpha scruffleRArmTop.alpha = animAlpha scruffleRHand.alpha = animAlpha scruffleRArmBot.alpha = animAlpha scruffleSpared.alpha = 1 - animAlpha ResetScruffle() time = 0 end -- Destroy it all function DeleteAnimation() scruffleHurt.Remove() scruffleRArmBot.Remove() scruffleRHand.Remove() scruffleRArmTop.Remove() scruffleBlush.Remove() scruffleHead.Remove() scruffleTorso.Remove() scruffleHood.Remove() scruffleUpperBody.Remove() scruffleRLeg.Remove() scruffleLLeg.Remove() scruffleLArmBot.Remove() scruffleLHand.Remove() scruffleLArmTop.Remove() scruffleFalseUpperBody.Remove() end ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Animations/ScruffleAnim.lua.meta ================================================ fileFormatVersion: 2 guid: 51e457d5c7af401468079cba485e5c60 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Animations/StaticAnim.lua ================================================ staticFalseUpperBody = CreateSprite("empty") staticTail = CreateSprite("Static/tail") staticTailMask = CreateSprite("Static/tailmask") staticTailStatic = CreateSprite("Static/staticeffect") staticLArm = CreateSprite("Static/larm") staticLHand = CreateSprite("Static/lhand") staticLegs = CreateSprite("Static/legs") staticTorso = CreateSprite("Static/torso") staticRArm = CreateSprite("Static/rarm") staticRHand = CreateSprite("Static/rhand") staticFluff = CreateSprite("Static/fluff") staticFluffMask = CreateSprite("Static/fluffmask") staticFluffStatic = CreateSprite("Static/staticeffect") staticFalseHeadBase = CreateSprite("empty") staticHeadBase = CreateSprite("Static/headbase") staticFace = CreateSprite("Static/face") staticFaceMask = CreateSprite("Static/facemask") staticFaceStatic = CreateSprite("Static/staticeffect") staticDeathExplosion = CreateSprite("empty") staticDeathSmokes = { } staticLEar = CreateSprite("Static/lear") staticLEarMask = CreateSprite("Static/learmask") staticLEarStatic = CreateSprite("Static/staticeffect") staticREar = CreateSprite("Static/rear") staticREarMask = CreateSprite("Static/rearmask") staticREarStatic = CreateSprite("Static/staticeffect") staticHurt = CreateSprite("Static/Hurt/hurt") staticHurtFluffMask = CreateSprite("Static/Hurt/fluffmask") staticHurtFluffStatic = CreateSprite("Static/staticeffect") staticHurtTailMask = CreateSprite("Static/Hurt/tailmask") staticHurtTailStatic = CreateSprite("Static/staticeffect") staticHurtFaceMask = CreateSprite("Static/Hurt/facemask") staticHurtFaceStatic = CreateSprite("Static/staticeffect") staticHurtLEarMask = CreateSprite("Static/Hurt/learmask") staticHurtLEarStatic = CreateSprite("Static/staticeffect") staticHurtREarMask = CreateSprite("Static/Hurt/rearmask") staticHurtREarStatic = CreateSprite("Static/staticeffect") staticSpared = CreateSprite("Static/spared") staticFalseUpperBody.Scale(staticTorso.width * 2, staticTorso.height * 2) staticTail.Scale(2, 2) staticTailMask.Scale(2, 2) staticLArm.Scale(2, 2) staticLHand.Scale(2, 2) staticLegs.Scale(2, 2) staticTorso.Scale(2, 2) staticRArm.Scale(2, 2) staticRHand.Scale(2, 2) staticFluff.Scale(2, 2) staticFluffMask.Scale(2, 2) staticFalseHeadBase.Scale(staticHeadBase.width * 2, staticHeadBase.height * 2) staticHeadBase.Scale(2, 2) staticFace.Scale(2, 2) staticFaceMask.Scale(2, 2) staticDeathExplosion.Scale(2, 2) staticLEar.Scale(2, 2) staticLEarMask.Scale(2, 2) staticREar.Scale(2, 2) staticREarMask.Scale(2, 2) staticHurt.Scale(2, 2) staticHurtFluffMask.Scale(2, 2) staticHurtTailMask.Scale(2, 2) staticHurtFaceMask.Scale(2, 2) staticHurtLEarMask.Scale(2, 2) staticHurtREarMask.Scale(2, 2) --[[ Parenting tree: deathparent monstersprite staticFalseUpperBody +1 staticTail staticTailMask ^ staticTailStatic X staticLArm staticLHand staticLegs staticTorso +1 staticRArm staticRHand staticFluff staticFluffMask ^ staticFluffStatic X staticHeadBase staticLEar staticLEarMask ^ staticLEarStatic X staticREar staticREarMask ^ staticREarStatic X staticFace ^ staticFaceMask ^ staticFaceStatic X staticDeathExplosion staticHurt ^ staticHurtFluffMask staticHurtFluffStatic X staticHurtTailMask staticHurtTailStatic X staticHurtFaceMask staticHurtFaceStatic X staticHurtLEarMask staticHurtLEarStatic X staticHurtREarMask staticHurtREarStatic X staticSpared ^ ^ = same position as parent X = static sprite +1 = same position ]] staticFalseUpperBody.SetParent(monstersprite) staticTail.SetParent(staticFalseUpperBody) staticTailMask.SetParent(staticTail) staticTailStatic.SetParent(staticTailMask) staticLArm.SetParent(staticFalseUpperBody) staticLHand.SetParent(staticLArm) staticLegs.SetParent(monstersprite) staticTorso.SetParent(staticLegs) staticRArm.SetParent(staticTorso) staticRHand.SetParent(staticRArm) staticFluff.SetParent(staticTorso) staticFluffMask.SetParent(staticFluff) staticFluffStatic.SetParent(staticFluffMask) staticHeadBase.SetParent(staticTorso) staticLEar.SetParent(staticHeadBase) staticLEarMask.SetParent(staticLEar) staticLEarStatic.SetParent(staticLEarMask) staticREar.SetParent(staticHeadBase) staticREarMask.SetParent(staticREar) staticREarStatic.SetParent(staticREarMask) staticFace.SetParent(staticHeadBase) staticFaceMask.SetParent(staticFace) staticFaceStatic.SetParent(staticFaceMask) staticDeathExplosion.SetParent(staticFace) staticHurt.SetParent(monstersprite) staticHurtFluffMask.SetParent(staticHurt) staticHurtFluffStatic.SetParent(staticHurtFluffMask) staticHurtTailMask.SetParent(staticHurt) staticHurtTailStatic.SetParent(staticHurtTailMask) staticHurtFaceMask.SetParent(staticHurt) staticHurtFaceStatic.SetParent(staticHurtFaceMask) staticHurtLEarMask.SetParent(staticHurt) staticHurtLEarStatic.SetParent(staticHurtLEarMask) staticHurtREarMask.SetParent(staticHurt) staticHurtREarStatic.SetParent(staticHurtREarMask) staticSpared.SetParent(monstersprite) staticLegs.SetPivot(0.5, 0) staticLegs.MoveToAbs(monstersprite.absx - 22, monstersprite.absy) staticTorso.SetAnchor(0.5, 0.9) staticTorso.SetPivot(0.5, 0.13) staticTorso.MoveTo(7, 3) staticFalseUpperBody.SetPivot(0.5, 0.13) staticFalseUpperBody.MoveToAbs(staticTorso.absx, staticTorso.absy) staticTail.SetPivot(0.2, 0.17) staticTail.MoveTo(28, -45) staticTailMask.MoveTo(0, 0) staticTailMask.Mask("stencil") staticTailStatic.MoveTo(0, 0) staticLArm.SetPivot(0.86, 0.85) staticLArm.MoveTo(-16, 26) staticLHand.SetPivot(0.73, 0.22) staticLHand.MoveTo(-15, -15) staticRArm.SetPivot(0.23, 0.8) --staticRArm.MoveToAbs(monstersprite.absx + 5, monstersprite.absy + 154) staticRArm.MoveTo(20, 26) staticRHand.SetPivot(0.81, 0.85) staticRHand.MoveTo(18, -6) staticFluff.MoveTo(5, 26) staticFluffMask.MoveTo(0, 0) staticFluffMask.Mask("stencil") staticFluffStatic.MoveTo(0, 0) staticHeadBase.SetPivot(0.45, 0.13) staticHeadBase.MoveTo(2, 46) staticLEar.SetPivot(0.75, 0.42) staticLEar.MoveTo(-30, 12) staticLEarMask.MoveTo(0, 0) staticLEarMask.Mask("stencil") staticLEarStatic.MoveTo(0, 0) staticREar.SetPivot(0.29, 0.38) staticREar.MoveTo(40, 10) staticREarMask.MoveTo(0, 0) staticREarMask.Mask("stencil") staticREarStatic.MoveTo(100, 0) staticFace.SetPivot(0, 0.5) staticFace.SetAnchor(0, 0.5) staticFace.MoveTo(0, 0) staticFaceMask.MoveTo(0, 0) staticFaceMask.Mask("stencil") staticFaceStatic.MoveTo(0, 0) staticDeathExplosion.SetAnchor(0.84, 0.83) staticDeathExplosion.MoveTo(0, 0) staticDeathExplosion.loopmode = "ONESHOTEMPTY" staticHurt.SetPivot(0.5, 0) staticHurt.MoveToAbs(monstersprite.absx, monstersprite.absy) staticHurt.alpha = 0 staticHurtFluffMask.MoveTo(5, 18) staticHurtFluffMask.Mask("stencil") staticHurtFluffStatic.MoveTo(0, 0) staticHurtFluffStatic.alpha = 0 staticHurtTailMask.MoveTo(50, -1) staticHurtTailMask.Mask("stencil") staticHurtTailStatic.MoveTo(0, 0) staticHurtTailStatic.alpha = 0 staticHurtFaceMask.MoveTo(1, 64) staticHurtFaceMask.Mask("stencil") staticHurtFaceStatic.MoveTo(0, 0) staticHurtFaceStatic.alpha = 0 staticHurtLEarMask.MoveTo(-26, 93) staticHurtLEarMask.Mask("stencil") staticHurtLEarStatic.MoveTo(0, 0) staticHurtLEarStatic.alpha = 0 staticHurtREarMask.MoveTo(48, 81) staticHurtREarMask.Mask("stencil") staticHurtREarStatic.MoveTo(0, 0) staticHurtREarStatic.alpha = 0 staticSpared.SetPivot(0.5, 0) staticSpared.MoveToAbs(monstersprite.absx, monstersprite.absy) staticSpared.color = { 0.5, 0.5, 0.5, 0 } -- Animation used for the explosion explosionAnimation = { } for i = 1, 5 do table.insert(explosionAnimation, "Waves/SSLaserPoint/Boom/" .. i) end -- Used to know which sprites to update to create a static effect local staticSprites = { { staticTailStatic, 98, 86 }, { staticFaceStatic, 72, 60 }, { staticFluffStatic, 94, 64 }, { staticLEarStatic, 32, 38 }, { staticREarStatic, 34, 42 }, { staticHurtFluffStatic, 108, 54 }, { staticHurtTailStatic, 70, 80 }, { staticHurtFaceStatic, 40, 34 }, { staticHurtLEarStatic, 14, 28 }, { staticHurtREarStatic, 22, 28 } } -- Compute how much leeway pixels we have to move the static image around for _, staticEffect in pairs(staticSprites) do staticEffect["diffX"] = 180 - staticEffect[2] staticEffect["halfDiffX"] = staticEffect["diffX"] / 2 staticEffect["diffY"] = 180 - staticEffect[3] staticEffect["halfDiffY"] = staticEffect["diffY"] / 2 end local time = 0 local timer = 0 animation = "Idle" function SwitchAnimation(anim) -- Reset the anim properly ResetStatic() time = 0 timer = 0 -- Differences between the Idle and Death animation if anim == "Death" then staticSprites[2]["diffX"] = 256 - staticSprites[2][2] staticSprites[2]["halfDiffX"] = staticSprites[2]["diffX"] / 2 staticSprites[2]["diffY"] = 256 - staticSprites[2][3] staticSprites[2]["halfDiffY"] = staticSprites[2]["diffY"] / 2 staticFace.Set("Static/Death/face") staticFaceMask.Set("Static/Death/facemask") staticDeathExplosion.SetAnimation(explosionAnimation, 1/15) Audio.PlaySound("boom") staticFalseUpperBody.SetParent(deathParent) staticLegs.SetParent(deathParent) staticHurt.SetParent(deathParent) staticSpared.SetParent(deathParent) end animation = anim end function AnimateStatic() -- Update all static sprites so they look random if staticSprites[1][1].isactive and timer % 5 == 0 then for _, staticEffect in pairs(staticSprites) do staticEffect[1].rotation = staticEffect[1].rotation + math.random(1, 3) * 90 staticEffect[1].Scale(math.random() < .5 and -1 or 1, math.random() < .5 and -1 or 1) staticEffect[1].MoveTo(math.random(0, staticEffect["diffX"]) - staticEffect["halfDiffX"], math.random(0, staticEffect["diffY"]) - staticEffect["halfDiffY"]) end end -- Idle looped animation if animation == "Idle" then staticLegs.yscale = 1.9 + 0.1 * math.cos(time / 2) staticTail.rotation = -15 * math.sin(time * 3) staticTorso.MoveTo(7, 3 + 2 * math.cos(time * 1.2)) staticTorso.rotation = -4 * math.sin(time / 1.2) staticFalseUpperBody.MoveToAbs(staticTorso.absx, staticTorso.absy) staticLArm.rotation = -6 * math.sin(time / 1.5) staticLHand.rotation = -8 * math.sin(time / 1.3) staticRArm.rotation = 2 - 2 * math.cos(time / 3) staticRHand.rotation = 2 - 2 * math.cos(time / 3) staticHeadBase.rotation = -5 * math.sin(time) staticHeadBase.MoveTo(2, 46 + -3 * math.sin(time / 2)) staticLEar.rotation = 10 * math.sin(time * 1.5) staticREar.rotation = -10 * math.sin(time * 1.5) if staticTorso.alpha > 0 then time = time + Time.dt end else -- Death oneshot animation if timer <= 115 then -- Update the face's static sprite if timer % 5 == 0 then staticSprites[2][1].Set("Static/Death/staticeffect" .. math.random(1, 3)) staticSprites[2][1].rotation = math.random(0, 1) * 180 staticSprites[2][1].MoveTo(math.random(0, staticSprites[2]["diffX"]) - staticSprites[2]["halfDiffX"], math.random(0, staticSprites[2]["diffY"]) - staticSprites[2]["halfDiffY"]) end -- Spawn smoke if timer % 15 == 14 then local smoke = CreateSprite("Static/Death/smoke", "BelowArena") smoke.MoveToAbs(staticDeathExplosion.absx + math.random(-15, 15), staticDeathExplosion.absy + math.random(-15, 15)) smoke.alpha = 0.5 smoke.Scale(0, 0) smoke["timer"] = timer table.insert(staticDeathSmokes, smoke) end -- Play static sound if timer == 30 then NewAudio.CreateChannel("static") NewAudio.PlaySound("static", "static", false, 0.2) end -- Ouch! Explosions hurt! if timer < 10 then staticHeadBase.rotation = staticHeadBase.rotation + 1.5 elseif timer >= 30 and timer < 60 then staticHeadBase.rotation = staticHeadBase.rotation - 0.5 -- Drooping arms elseif timer >= 90 and timer < 100 then staticLHand.rotation = staticLHand.rotation + 5 staticRHand.rotation = staticRHand.rotation + 2 -- Replace a few hand sprites elseif timer == 100 then staticLHand.Set("Static/Death/rhand") staticLHand.SetPivot(0.33, 0.8) staticLHand.xscale = -2 staticLHand.rotation = 75 staticLHand.Move(7, -4) staticRArm.Move(0, -6) staticRHand.Set("Static/Death/rhand") staticRHand.SetPivot(0.33, 0.8) staticRHand.rotation = -45 staticRHand.Move(-4, -6) -- Life slowly leaves the body as all body parts start to dangle elseif timer > 100 and timer < 115 then staticLHand.rotation = staticLHand.rotation - 5 staticLArm.rotation = staticLArm.rotation + 2 staticRHand.rotation = staticRHand.rotation + 2 staticRArm.rotation = staticRArm.rotation - 2 staticTail.yscale = staticTail.yscale - 2/7 staticLEar.rotation = staticLEar.rotation + 1.5 staticREar.rotation = staticREar.rotation - 1.5 -- ded elseif timer == 115 then deathParent.Set("Static/Death/dustingmess") deathParent.alpha = 1 deathParent.Move(13, 0) DeleteAnimation() deathParent.Dust(true, true) NewAudio.DestroyChannel("static") end end -- Update smoke for i = #staticDeathSmokes, 1, -1 do local smoke = staticDeathSmokes[i] local time = timer - smoke["timer"] smoke.Move(0, 0.5) if time < 30 then smoke.Scale((time + 1) / 30, (time + 1) / 30) else smoke.alpha = smoke.alpha - 0.5 / 30 end if smoke.alpha == 0 then table.remove(staticDeathSmokes, i) smoke.Remove() end end end timer = timer + 1 end -- Reset the animation to its starting Idle animation positions function ResetStatic() staticLegs.yscale = 2 staticTail.rotation = 0 staticTorso.MoveTo(7, 3) staticTorso.rotation = 0 staticFalseUpperBody.MoveToAbs(staticTorso.absx, staticTorso.absy) staticLArm.rotation = 0 staticLHand.rotation = 0 staticRArm.rotation = 0 staticRHand.rotation = 0 staticHeadBase.rotation = 0 staticHeadBase.MoveTo(2, 46) staticLEar.rotation = 0 staticREar.rotation = 0 end -- It hurts to be knifed function AnimateHurt(hurt) local animAlpha = hurt and 0 or 1 staticTail.alpha = animAlpha staticTailStatic.alpha = animAlpha staticLArm.alpha = animAlpha staticLHand.alpha = animAlpha staticLegs.alpha = animAlpha staticTorso.alpha = animAlpha staticRArm.alpha = animAlpha staticRHand.alpha = animAlpha staticFluff.alpha = animAlpha staticFluffStatic.alpha = animAlpha staticHeadBase.alpha = animAlpha staticFace.alpha = animAlpha staticFaceStatic.alpha = animAlpha staticLEar.alpha = animAlpha staticLEarStatic.alpha = animAlpha staticREar.alpha = animAlpha staticREarStatic.alpha = animAlpha staticHurt.alpha = 1 - animAlpha staticHurtFluffStatic.alpha = 1 - animAlpha staticHurtTailStatic.alpha = 1 - animAlpha staticHurtFaceStatic.alpha = 1 - animAlpha staticHurtLEarStatic.alpha = 1 - animAlpha staticHurtREarStatic.alpha = 1 - animAlpha ResetStatic() time = 0 end -- It's nice to be spared function AnimateSpare(spare) local animAlpha = spare and 0 or 1 staticTail.alpha = animAlpha staticTailStatic.alpha = animAlpha staticLArm.alpha = animAlpha staticLHand.alpha = animAlpha staticLegs.alpha = animAlpha staticTorso.alpha = animAlpha staticRArm.alpha = animAlpha staticRHand.alpha = animAlpha staticFluff.alpha = animAlpha staticFluffStatic.alpha = animAlpha staticHeadBase.alpha = animAlpha staticFace.alpha = animAlpha staticFaceStatic.alpha = animAlpha staticLEar.alpha = animAlpha staticLEarStatic.alpha = animAlpha staticREar.alpha = animAlpha staticREarStatic.alpha = animAlpha staticSpared.alpha = 1 - animAlpha ResetStatic() time = 0 end -- Change Static's TV screen so it displays a quick Mettaton animation function ChangeChannel() table.remove(staticSprites, 2) staticFaceStatic.Scale(2, 2) staticFaceStatic.rotation = staticFace.rotation staticFaceStatic.MoveTo(0, 0) local a = "Static/faceMTT1" local b = "Static/faceMTT2" staticFaceStatic.SetAnimation({ a, a, a, b, b, b, a, b, a, b }, 1 / 8) end -- Destroy it all function DeleteAnimation() staticSpared.Remove() staticHurtREarStatic.Remove() staticHurtREarMask.Remove() staticHurtLEarStatic.Remove() staticHurtLEarMask.Remove() staticHurtFaceStatic.Remove() staticHurtFaceMask.Remove() staticHurtTailStatic.Remove() staticHurtTailMask.Remove() staticHurtFluffStatic.Remove() staticHurtFluffMask.Remove() staticHurt.Remove() staticREarStatic.Remove() staticREarMask.Remove() staticREar.Remove() staticLEarStatic.Remove() staticLEarMask.Remove() staticLEar.Remove() staticDeathExplosion.Remove() staticFaceStatic.Remove() staticFaceMask.Remove() staticFace.Remove() staticHeadBase.Remove() staticFalseHeadBase.Remove() staticFluffStatic.Remove() staticFluffMask.Remove() staticFluff.Remove() staticRHand.Remove() staticRArm.Remove() staticTorso.Remove() staticLegs.Remove() staticLHand.Remove() staticLArm.Remove() staticTailStatic.Remove() staticTailMask.Remove() staticTail.Remove() staticFalseUpperBody.Remove() end ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Animations/StaticAnim.lua.meta ================================================ fileFormatVersion: 2 guid: fb974ffc7f5ca5e46b64f1ec68b4bd54 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Animations/exrumia_anim.lua ================================================ animationFrames = {"ExRumia/1", "ExRumia/2", "ExRumia/3", "ExRumia/4", "ExRumia/5", "ExRumia/6", "ExRumia/7", "ExRumia/8", "ExRumia/9"} currentFrame = 1 animationTimer = 0 function AnimateExRumia() animationTimer = animationTimer + 1 if(animationTimer%8 == 0) then currentFrame = (currentFrame % (#animationFrames)) + 1 animationTimer = 0 enemies[1].Call("SetSprite", animationFrames[currentFrame]) end end ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Animations/exrumia_anim.lua.meta ================================================ fileFormatVersion: 2 guid: 760ef10defcbfeb47a621999e4e964e4 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Animations/lukark_anim.lua ================================================ temp_anim = 0 hair = CreateSprite("Lukark/hair/1") head = CreateSprite("Lukark/headnormal") legs = CreateSprite("Lukark/legs") torso = CreateSprite("Lukark/torso") arms = CreateSprite("Lukark/arms/1") arms.SetAnimation({"Lukark/arms/1","Lukark/arms/1","Lukark/arms/1","Lukark/arms/1","Lukark/arms/1", "Lukark/arms/2","Lukark/arms/2","Lukark/arms/2","Lukark/arms/2","Lukark/arms/2", "Lukark/arms/3","Lukark/arms/3","Lukark/arms/4","Lukark/arms/4","Lukark/arms/3", "Lukark/arms/3","Lukark/arms/4","Lukark/arms/4","Lukark/arms/3","Lukark/arms/3", "Lukark/arms/2","Lukark/arms/2","Lukark/arms/2","Lukark/arms/2","Lukark/arms/2"} , 1/25) hair.SetAnimation({"Lukark/hair/1","Lukark/hair/2","Lukark/hair/3", "Lukark/hair/4","Lukark/hair/3","Lukark/hair/2"} , 1/5) legs.x = 120 legs.y = 340 arms.x = 320 arms.y = 340 hair.x = 320 hair.y = 340 head.x = 320 head.y = 340 torso.x = 320 torso.y = 340 head.SetPivot(0.5, 0.5) arms.SetPivot(0.5, 0.5) torso.SetPivot(0.5, 0.5) torso.SetAnchor(0.5, 0.5) legs.SetPivot(0.5, 0.5) hair.SetPivot(0.5, 0.5) function Animate(animation) head.Set("Lukark/head" .. animation) end function AnimateLukark() legs.Scale(1, 1+0.05*math.sin(temp_anim*2)) legs.MoveTo(320, 340+(5.15*math.sin(temp_anim*2))) arms.MoveTo(320, 341+(5.15*math.sin(temp_anim*2))) head.MoveTo(321, 342+(5.15*math.sin(temp_anim*2))) hair.MoveTo(320, 341+(5.15*math.sin(temp_anim*2))) torso.MoveTo(320, 341+(5.15*math.sin(temp_anim*2))) temp_anim = temp_anim + Time.dt end ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Animations/lukark_anim.lua.meta ================================================ fileFormatVersion: 2 guid: c6960ca1758675e4181a36548378c1e8 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Animations.meta ================================================ fileFormatVersion: 2 guid: d525ca66ca9bf214da1e22dfd3783c50 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Encounters/Story1.lua ================================================ if not GetRealGlobal("ow") then error("You really should try to access these encounters the normal way...\n\nHere is a clue: You should try talking to the dog.\n\nNow good luck!", 0) end encountertext = "Poseur strikes a pose!" --Modify as necessary. It will only be read out in the action select screen. nextwaves = {"bullettest_chaserorb"} wavetimer = 4.0 arenasize = {155, 130} autolinebreak = true unescape = true currentTime = Time.time beginfade = false endfade = false alphaup = false enemies = {"exrumia"} enemypositions = {{0, 0}} possible_attacks = {"bullettest_bouncy", "bullettest_chaserorb", "bullettest_touhou"} function EncounterStarting() oldname = Player.name Player.name = "FRISKY" fade = CreateSprite("black", "Top") fade.x = 320 fade.y = 240 fade.Scale(640, 480) require "Animations/exrumia_anim" enemies[1]["currentdialogue"] = {"[noskip][func:LaunchFade, true][w:30][next]", "[noskip]If you came here,[w:10] it must be for a good reason.[w:30][next]", "[noskip]We'll tell you the story of Create Your Frisk.[w:30][next]", "[noskip]In February 2016,[w:10] RhenaudTheLukark,[w:10] the creator of Create Your Frisk decided,[w:10] with some of their friends,[w:10] to create their own AU.[w:30][next]", "[noskip]They concluded that Unitale was the easiest way to make it.[w:30][next]", "[noskip]If we had told him what would have happened,[w:10] he'd have laughed at it.[w:30][next]", "[noskip][func:LaunchFade, false][w:35][func:State,DONE]"} require "Waves/bullettest_touhou" State("ENEMYDIALOGUE") end --[[If you came here, this is for a good reason. We'll tell you the story of Create Your Frisk. In February, RhenaudTheLukark, the creator of Create Your Frisk decided, with some of their friends, to create their own AU. They concluded that Unitale was the easiest way to do it. If we had told him what would have happened, he'd have laughed at it. ~~~~~~~~~~ But, after some time playing around with the engine, he found out that lots of features were missing. First of all, there was no overworld: to make an AU with his friends, RhenaudTheLukark needed one. Thus, after contacting with lvkuln, he got access to the sources a bit before the official release of the open-source version. Having been a complete beginner in Unity, he first tried to fix the bugs related to the open-source version of the engine... and succeeded. ~~~~~~~~~~ After fixing these bugs, he felt something new, as if he did something extraordinary: this was at this moment he knew he'd have to resume lvkuln's work. fade.alpha = 1 require "Animations/exrumia_anim" enemies[1]["currentdialogue"] = {"[noskip][func:LaunchFade, true][w:60][next]", "[noskip]If you came here,[w:20] it is for a good reason.[w:60][next]", He then tried to contact the original developer, but in vain: it was already too late. IRL stuff took the latter away from the project. Thus, he tried to create something on his own, even if he had never followed any tutorial on using Unity or even a C# tutorial. ~~~~~~~~~~ After two months of hard work, RhenaudTheLukark released CYF 0.1. He did every possible thing to keep secret of the incoming engine, but was too excited about showing it to the world. This new engine wasn't very well known, as the official Unitale 0.2.1a version was still used by a good part of the community. The only new thing was the overworld system, but it was unusable without giving away the sources. Then, the developer decided to extend his engine to make it more useful for the community. ~~~~~~~~~~ However, the next releases of Create Your Frisk weren't very successful, despite a lot of new features, tweaks and functions. The problem was that all the versions had at least one bug that greatly reduced the appeal of the engine. Even today, with the 0.5.0, though RTL said that 0.4.4.4 was stable, it wasn't. Besides, there will always have a bug somewhere, that's how coding works. He had a lot of problems about this, as feeling sorry for himself because he couldn't make a good engine for people to use without any bug... ~~~~~~~~~~ But in the end, it's not that important. Now, we're close to 1.0's release. There's not much to do, now. We're close to the end. I could have abandoned a lot of times... I could have stopped everything and quit as lvk did thousand times... But I'm still here. Thanks to my friends. Thanks to my testers. Thanks to you all. Without all of you, I'd have stopped a long time ago, and I'm very proud about giving you this new version of Create Your Frisk. For you, this message may not be very much... But for me... It's everything. ]] function LaunchFade(begin) if begin then beginfade = true fade.alpha = 1 else endfade = true fade.alpha = 0 end end function Update() AnimateExRumia() if (beginfade or endfade) and Time.time - currentTime >= 1/3 then alphaup = endfade endfade = false beginfade = false if alphaup then fade.alpha = fade.alpha + Time.dt else fade.alpha = fade.alpha - Time.dt end end if (fade.alpha * 1000) % 1000 ~= 1000 and (fade.alpha * 1000) % 1000 ~= 0 then if alphaup then fade.alpha = fade.alpha + Time.dt else fade.alpha = fade.alpha - Time.dt end if fade.alpha > 1 then fade.alpha = 1 end if fade.alpha < 0 then fade.alpha = 0 end end end require "Waves/bullettest_bouncy" function EnteringState(newstate, oldstate) if newstate == "DONE" then Player.name = oldname end end function EnemyDialogueStarting() end function EnemyDialogueEnding() nextwaves = { possible_attacks[math.random(#possible_attacks)] } end function DefenseEnding() encountertext = RandomEncounterText() --This built-in function gets a random encounter text from a random enemy. end function HandleSpare() State("ENEMYDIALOGUE") end function HandleItem(ItemID) BattleDialog({"Selected item " .. ItemID .. "."}) end ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Encounters/Story1.lua.meta ================================================ fileFormatVersion: 2 guid: d5768580ca1a1234ebcc48feeca7d7d6 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Encounters/Story2.lua ================================================ if not GetRealGlobal("ow") then error("You really should try to access these encounters the normal way...\n\nHere is a clue: You should try talking to the dog.\n\nNow good luck!", 0) end encountertext = "Poseur strikes a pose!" --Modify as necessary. It will only be read out in the action select screen. nextwaves = {"bullettest_chaserorb"} wavetimer = 4.0 arenasize = {155, 130} autolinebreak = true unescape = true currentTime = Time.time beginfade = false endfade = false alphaup = false enemies = {"claribel", "ellie"} enemypositions = {{-34, 0}, {0, 0}} possible_attacks = {"bullettest_bouncy", "bullettest_chaserorb", "bullettest_touhou"} function EncounterStarting() oldname = Player.name Player.name = "FRISKY" fade = CreateSprite("black", "Top") fade.x = 320 fade.y = 240 fade.Scale(640, 480) fade.alpha = 1 enemies[2]["currentdialogue"] = {"[noskip][func:LaunchFade, true][w:30][next]", "[noskip][effect:none]But,[w:10] after some time playing around with the engine,[w:10] he found out that lots of features were missing.[w:30][next]", "[noskip][effect:none]First of all,[w:10] there was no overworld.[w:15] To make an AU with his friends,[w:10] Rhenaud needed one.[w:30][next]", "[noskip][effect:none]Thus,[w:10] after contacting lvkuln,[w:10] he got access to the Unitale sources a bit before the release of its open-source version.[w:30][next]", "[noskip][effect:none]Having been a complete beginner in Unity,[w:10] he first tried to fix the bugs related to the open-source version of the engine...[w:15] and succeeded.[w:30][next]",} enemies[1]["currentdialogue"] = {"", "", "", "", "", "[noskip][effect:none]After fixing these bugs,[w:10] he felt something new,[w:10] as if he had done something extraordinary.[w:15] At this moment,[w:10] he knew he'd have to keep going.[w:30][next]", "[noskip][effect:none]He then tried to contact the original developer,[w:10] but in vain:[w:15] it was already too late.[w:15] IRL matters took lvkuln away from the project.[w:30][next]", "[noskip][effect:none]Thus,[w:10] he tried to create something on his own,[w:10] even if he had never followed any tutorials on using Unity or even C#.[w:30][next]", "[noskip][func:LaunchFade, false][w:35][func:State,DONE]"} require "Waves/bullettest_touhou" State("ENEMYDIALOGUE") end function LaunchFade(begin) if begin then beginfade = true fade.alpha = 1 else endfade = true fade.alpha = 0 end end function Update() if (beginfade or endfade) and Time.time - currentTime >= 1/3 then alphaup = endfade endfade = false beginfade = false if alphaup then fade.alpha = fade.alpha + Time.dt else fade.alpha = fade.alpha - Time.dt end end if (fade.alpha * 1000) % 1000 ~= 1000 and (fade.alpha * 1000) % 1000 ~= 0 then if alphaup then fade.alpha = fade.alpha + Time.dt else fade.alpha = fade.alpha - Time.dt end if fade.alpha > 1 then fade.alpha = 1 end if fade.alpha < 0 then fade.alpha = 0 end end end require "Waves/bullettest_bouncy" function EnteringState(newstate, oldstate) if newstate == "DONE" then Player.name = oldname end end function EnemyDialogueStarting() end function EnemyDialogueEnding() nextwaves = { possible_attacks[math.random(#possible_attacks)] } end function DefenseEnding() encountertext = RandomEncounterText() --This built-in function gets a random encounter text from a random enemy. end function HandleSpare() State("ENEMYDIALOGUE") end function HandleItem(ItemID) BattleDialog({"Selected item " .. ItemID .. "."}) end ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Encounters/Story2.lua.meta ================================================ fileFormatVersion: 2 guid: c02ae1734d47bb74480c98b0cb48f41b DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Encounters/Story3.lua ================================================ if not GetRealGlobal("ow") then error("You really should try to access these encounters the normal way...\n\nHere is a clue: You should try talking to the dog.\n\nNow good luck!", 0) end encountertext = "Poseur strikes a pose!" --Modify as necessary. It will only be read out in the action select screen. nextwaves = {"bullettest_chaserorb"} wavetimer = 4.0 arenasize = {155, 130} autolinebreak = true unescape = true currentTime = Time.time beginfade = false endfade = false alphaup = false enemies = {"scruffle", "static"} enemypositions = {{-80, 2}, {80, 0}} possible_attacks = {"bullettest_bouncy", "bullettest_chaserorb", "bullettest_touhou"} function EncounterStarting() oldname = Player.name Player.name = "FRISKY" fade = CreateSprite("black", "Top") fade.x = 320 fade.y = 240 fade.Scale(640, 480) for i = 1, #enemies do enemies[i].Call("EncounterStarting") enemies[i]["enemyNumber"] = i end enemies[1]["currentdialogue"] = {"[noskip][func:LaunchFade, true][w:30][next]", "[noskip][effect:none]After two months of hard work,[w:10] RhenaudTheLukark released CYF 0.1.[w:30][next]", "[noskip][effect:none]He did everything he could to keep the upcoming engine a secret,[w:10] but was too excited about showing it to the world.[w:30][next]"} enemies[2]["currentdialogue"] = {"", "", "", "[noskip][effect:none]This new engine wasn't very well known,[w:10] as the official Unitale 0.2.1a version was still used by a good part of the community.[w:30][next]", "[noskip][effect:none]The only new thing was the overworld system,[w:10] but it was unusable without giving away the sources.[w:30][next]", "[noskip][effect:none]Then,[w:10] the developer decided to extend his engine to make it more useful for the community.[w:30][next]", "[noskip][func:LaunchFade, false][w:35][func:State,DONE]"} require "Waves/bullettest_touhou" State("ENEMYDIALOGUE") end function LaunchFade(begin) if begin then beginfade = true fade.alpha = 1 else endfade = true fade.alpha = 0 end end function Update() if (beginfade or endfade) and Time.time - currentTime >= 1/3 then alphaup = endfade endfade = false beginfade = false if alphaup then fade.alpha = fade.alpha + Time.dt else fade.alpha = fade.alpha - Time.dt end end if (fade.alpha * 1000) % 1000 ~= 1000 and (fade.alpha * 1000) % 1000 ~= 0 then if alphaup then fade.alpha = fade.alpha + Time.dt else fade.alpha = fade.alpha - Time.dt end if fade.alpha > 1 then fade.alpha = 1 end if fade.alpha < 0 then fade.alpha = 0 end end for i = 1, #enemies do enemies[i].Call("Update") end end require "Waves/bullettest_bouncy" function EnteringState(newstate, oldstate) if newstate == "DONE" then Player.name = oldname end end function EnemyDialogueStarting() end function EnemyDialogueEnding() nextwaves = { possible_attacks[math.random(#possible_attacks)] } end function DefenseEnding() encountertext = RandomEncounterText() --This built-in function gets a random encounter text from a random enemy. end function HandleSpare() State("ENEMYDIALOGUE") end function HandleItem(ItemID) BattleDialog({"Selected item " .. ItemID .. "."}) end ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Encounters/Story3.lua.meta ================================================ fileFormatVersion: 2 guid: a2ac31d45c020ff4489bb37dd41a91a8 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Encounters/Story4.lua ================================================ if not GetRealGlobal("ow") then error("You really should try to access these encounters the normal way...\n\nHere is a clue: You should try talking to the dog.\n\nNow good luck!", 0) end encountertext = "Poseur strikes a pose!" --Modify as necessary. It will only be read out in the action select screen. nextwaves = {"bullettest_chaserorb"} wavetimer = 4.0 arenasize = {155, 130} autolinebreak = true unescape = true currentTime = Time.time beginfade = false endfade = false alphaup = false enemies = {"mionn"} enemypositions = {{0,0}} possible_attacks = {"bullettest_bouncy", "bullettest_chaserorb", "bullettest_touhou"} function EncounterStarting() oldname = Player.name Player.name = "FRISKY" fade = CreateSprite("black", "Top") fade.x = 320 fade.y = 240 fade.Scale(640, 480) fade.alpha = 1 enemies[1]["currentdialogue"] = {"[noskip][func:LaunchFade, true][w:30][next]", "[noskip][effect:none][func:Animate]However,[w:10] the next releases of Create Your Frisk weren't very successful,[w:10] despite a lot of new features,[w:10] tweaks and functions.[w:30][next]", "[noskip][effect:none][func:SetSprite,Mionn/sad]The problem was that all the versions had at least one bug that greatly reduced the appeal of the engine.[w:30][next]", "[noskip][effect:none]Up to CYF v0.6.1.2,[w:10] though RTL said that a lot of versions were stable,[w:10] they weren't.[w:30][next]", "[noskip][effect:none][func:SetSprite,Mionn/transit_to_fight4]Besides,[w:10] there will always be a bug somewhere.[w:10] That's how coding is.[w:30][next]", "[noskip][effect:none][func:SetSprite,Mionn/sad]He had a lot of problems with this,[w:10] and felt sorry for himself because he couldn't make a good,[w:10] stable engine for people to use freely...[w:30][next]", "[noskip][effect:none][func:SetSprite,Mionn/happy]Thankfully,[w:10] since CYF v0.6.2,[w:10] the engine is much more stable.[w:30][next]", "[noskip][effect:none]Other developers took part in the project,[w:10] and their new additions made it better than ever before.[w:30][next]", "[noskip][func:LaunchFade, false][w:35][func:State,DONE]"} require "Waves/bullettest_touhou" State("ENEMYDIALOGUE") end function LaunchFade(begin) if begin then beginfade = true fade.alpha = 1 else endfade = true fade.alpha = 0 end end function Update() enemies[1].Call("Update") if (beginfade or endfade) and Time.time - currentTime >= 1/3 then alphaup = endfade endfade = false beginfade = false if alphaup then fade.alpha = fade.alpha + Time.dt else fade.alpha = fade.alpha - Time.dt end end if (fade.alpha * 1000) % 1000 ~= 1000 and (fade.alpha * 1000) % 1000 ~= 0 then if alphaup then fade.alpha = fade.alpha + Time.dt else fade.alpha = fade.alpha - Time.dt end if fade.alpha > 1 then fade.alpha = 1 end if fade.alpha < 0 then fade.alpha = 0 end end end require "Waves/bullettest_bouncy" function EnteringState(newstate, oldstate) if newstate == "DONE" then Player.name = oldname end end function EnemyDialogueStarting() end function EnemyDialogueEnding() nextwaves = { possible_attacks[math.random(#possible_attacks)] } end function DefenseEnding() encountertext = RandomEncounterText() --This built-in function gets a random encounter text from a random enemy. end function HandleSpare() State("ENEMYDIALOGUE") end function HandleItem(ItemID) BattleDialog({"Selected item " .. ItemID .. "."}) end ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Encounters/Story4.lua.meta ================================================ fileFormatVersion: 2 guid: 879f7951bed3c7e4ca9a56279dea5f71 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Encounters/Story5.lua ================================================ if not GetRealGlobal("ow") then error("You really should try to access these encounters the normal way...\n\nHere is a clue: You should try talking to the dog.\n\nNow good luck!", 0) end encountertext = "Poseur strikes a pose!" --Modify as necessary. It will only be read out in the action select screen. nextwaves = {"bullettest_chaserorb"} wavetimer = 4.0 arenasize = {155, 130} autolinebreak = true unescape = true currentTime = Time.time beginfade = false endfade = false alphaup = false enemies = {"lukark"} enemypositions = {{0, 20}} possible_attacks = {"bullettest_bouncy", "bullettest_chaserorb", "bullettest_touhou"} function EncounterStarting() oldname = Player.name Player.name = "FRISKY" fade = CreateSprite("black", "Top") fade.x = 320 fade.y = 240 fade.Scale(640, 480) fade.alpha = 1 require "Animations/lukark_anim" enemies[1].Call("SetBubbleOffset", {30, 0}) enemies[1]["currentdialogue"] = {"[noskip][func:LaunchFade, true][w:30][next]", "[noskip][effect:none]Time has flown by. [w:15]Mentalities have changed.[w:30][next]", "[noskip][effect:none]Back then, [w:10]when I first wrote this message, [w:10]I thought I was close to the end.[w:30][next]", "[noskip][effect:none]But now, [w:10]after more than 8 years of work on this engine, [w:10][func:Animate,sad]I realize that it won't ever happen.[w:30][next]", "[noskip][effect:none]Even if this engine will never be completely finished, [w:10]completely perfect...[w:30][next]", "[noskip][effect:none][func:Animate,smile]I still hope you'll have a great time with it.[w:30][next]", "[noskip][effect:none][func:Animate,normal]I could have stopped everything and quit as Unitale's creator did...[w:30][next]", "[noskip][effect:none][func:Animate,happy]But I am still here.[w:30][next]", "[noskip][effect:none]And it's all thanks to everyone around me. [w:15][func:Animate,smile]Including YOU, [w:10]who is currently running this engine.[w:30][next]", "[noskip][effect:none][func:Animate,normal]Without all of you, [w:10]I'd have stopped a long time ago, [w:10][func:Animate,smile]and I'm very proud about giving you this new version of Create Your Frisk.[w:30][next]", "[noskip][effect:none][func:Animate,normal]Maybe this message might be a little bit...[w:15][func:Animate,sad]odd[w:5] for you.[w:30][next]", "[noskip][effect:none]But...[w:15]it's my way to [w:5][func:Animate,smile]express my gratitude. [w:15]For making this engine an experience that lived much longer than I hoped it would.[w:30][next]", "[noskip][effect:none][func:Animate,normal]So, [w:10]all in all...[w:30][next]", "[noskip][effect:none][func:Animate,happy]Thank you.[w:30][next]", "[noskip][func:LaunchFade, false][w:35][func:State,DONE]"} require "Waves/bullettest_touhou" State("ENEMYDIALOGUE") end function LaunchFade(begin) if begin then beginfade = true fade.alpha = 1 else endfade = true fade.alpha = 0 end end function Update() AnimateLukark() if (beginfade or endfade) and Time.time - currentTime >= 1/3 then alphaup = endfade endfade = false beginfade = false if alphaup then fade.alpha = fade.alpha + Time.dt else fade.alpha = fade.alpha - Time.dt end end if (fade.alpha * 1000) % 1000 ~= 1000 and (fade.alpha * 1000) % 1000 ~= 0 then if alphaup then fade.alpha = fade.alpha + Time.dt else fade.alpha = fade.alpha - Time.dt end if fade.alpha > 1 then fade.alpha = 1 end if fade.alpha < 0 then fade.alpha = 0 end end end require "Waves/bullettest_bouncy" function EnteringState(newstate, oldstate) if newstate == "DONE" then Player.name = oldname end end function EnemyDialogueStarting() end function EnemyDialogueEnding() nextwaves = { possible_attacks[math.random(#possible_attacks)] } end function DefenseEnding() encountertext = RandomEncounterText() --This built-in function gets a random encounter text from a random enemy. end function HandleSpare() State("ENEMYDIALOGUE") end function HandleItem(ItemID) BattleDialog({"Selected item " .. ItemID .. "."}) end ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Encounters/Story5.lua.meta ================================================ fileFormatVersion: 2 guid: 138318596d7492c4d9ef4a4b76aeaa79 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Encounters/TheFinalChoice.lua ================================================ if not GetRealGlobal("ow") then error("You really should try to access these encounters the normal way...\n\nHere is a clue: You should try talking to the dog.\n\nNow good luck!", 0) end encountertext = "Poseur strikes a pose!" --Modify as necessary. It will only be read out in the action select screen. nextwaves = {"thechoice"} wavetimer = math.huge arenasize = {155, 130} autolinebreak = true unescape = true currentTime = Time.time beginfade = false endfade = false alphaup = false count = 0 white = false enemies = {"punderbolt", "punderbolt"} enemypositions = { { 0, 0 }, { 0, 0 } } possible_attacks = {"thechoice"} function EncounterStarting() Audio.Stop() fade = CreateSprite("black", "Top") fade.x = 320 fade.y = 240 fade.Scale(640, 480) enemies[1].Call("SetSprite", "Punderbolt/normal") enemies[2].Call("SetBubbleOffset", {0, 30}) enemies[2]["currentdialogue"] = {"[noskip][func:LaunchFade, true][w:30][next]", "[noskip][effect:none][func:Animate, smile]Here we are.[w:30][next]", "[noskip][effect:none][func:Animate, normal]Now that we're together,[w:10] what will you do?[w:30][next]", "[noskip][effect:none][func:Animate, angry]Will you attempt to fight me?[w:30][next]", "[noskip][effect:none][func:Animate, happy]Or will you leave me alone?[w:30][next]", "[noskip][effect:none][func:Animate, normal][func:Unpause]It's your choice,[w:10] now.[w:30][next]", "[func:State, DEFENDING][next]"} enemies[1]["randomdialogue"] = {""} require "Waves/bullettest_touhou" State("ENEMYDIALOGUE") end function LaunchFade(begin, whitee) if whitee == nil then whitee = false end white = whitee if whitee then fade.Set("white") end if begin then beginfade = true fade.alpha = 1 else endfade = true fade.alpha = 0 end end function Update() if (beginfade or endfade) and Time.time - currentTime >= 1/3 then alphaup = endfade endfade = false beginfade = false if alphaup then fade.alpha = fade.alpha + Time.dt else fade.alpha = fade.alpha - Time.dt end end if (fade.alpha * 1000) % 1000 ~= 1000 and (fade.alpha * 1000) % 1000 ~= 0 then if alphaup then fade.alpha = fade.alpha + Time.dt else fade.alpha = fade.alpha - Time.dt end if fade.alpha > 1 then fade.alpha = 1 end if fade.alpha < 0 then fade.alpha = 0 end if white and (fade.alpha * 1000) % 1000 > 500 then enemies[1].Call("Kill") enemies[2].Call("Kill") end elseif white then count = count + 1 if count == 30 then SetAlMightyGlobal("CrateYourFrisk", true) Misc.DestroyWindow() end end end function EnemyDialogueStarting() end function EnemyDialogueEnding() end function DefenseEnding() encountertext = RandomEncounterText() end function HandleSpare() State("ENEMYDIALOGUE") end function HandleItem(ItemID) BattleDialog({"Selected item " .. ItemID .. "."}) end ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Encounters/TheFinalChoice.lua.meta ================================================ fileFormatVersion: 2 guid: 7c1f6b19bb6b79d44ab91b650531d8b8 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Encounters.meta ================================================ fileFormatVersion: 2 guid: 8d1cfd5abdb8fdd478e540b499dbc99d folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Events/MusicWarper.lua ================================================ function EventPage1() Audio.PlaySound("glitch") Event.SetPage("MusicWarper", 2) end function EventPage2() local vBegin = 2040 local vEnd = 3320 local volume = 1 - math.max(0, math.min(1, (Event.GetPosition("Player")[1] - vBegin) / (vEnd - vBegin))) NewAudio.SetVolume("StaticKeptAudio", volume) end function EventPage3() if GetAlMightyGlobal("CrateYourFrisk") then Event.SetPage("MusicWarper", -1) else Event.SetPage("MusicWarper", 1) end end ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Events/MusicWarper.lua.meta ================================================ fileFormatVersion: 2 guid: 1e2ffeb05212baa42a9e3da23c5d8597 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Events/Story1.lua ================================================ function EventPage1() SetRealGlobal("ow", true) Event.SetPage("Story1", -1) General.SetBattle("Story1", "fast", true) end function EventPage2() if GetAlMightyGlobal("CrateYourFrisk") then Event.SetPage("Story1", -1) else Event.SetPage("Story1", 1) end end ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Events/Story1.lua.meta ================================================ fileFormatVersion: 2 guid: 5e07e2cf3ea9387428a51eb83f8151e6 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Events/Story2.lua ================================================ function EventPage1() Event.SetPage("Story2", -1) General.SetBattle("Story2", "fast", true) end function EventPage2() if GetAlMightyGlobal("CrateYourFrisk") then Event.SetPage("Story2", -1) else Event.SetPage("Story2", 1) end end ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Events/Story2.lua.meta ================================================ fileFormatVersion: 2 guid: f3f274a3db9f44243b8ce7091d41b7a4 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Events/Story3.lua ================================================ function EventPage1() Event.SetPage("Story3", -1) General.SetBattle("Story3", "fast", true) end function EventPage2() if GetAlMightyGlobal("CrateYourFrisk") then Event.SetPage("Story3", -1) else Event.SetPage("Story3", 1) end end ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Events/Story3.lua.meta ================================================ fileFormatVersion: 2 guid: 9b1fcf0dc779ec246aa896e912358d73 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Events/Story4.lua ================================================ function EventPage1() Event.SetPage("Story4", -1) General.SetBattle("Story4", "fast", true) end function EventPage2() if GetAlMightyGlobal("CrateYourFrisk") then Event.SetPage("Story4", -1) else Event.SetPage("Story4", 1) end end ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Events/Story4.lua.meta ================================================ fileFormatVersion: 2 guid: 933fc1c239ae3424bb05ce8dfd217780 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Events/Story5.lua ================================================ function EventPage1() Event.SetPage("Story5", -1) General.SetBattle("Story5", "fast", true) end function EventPage2() if GetAlMightyGlobal("CrateYourFrisk") then Event.SetPage("Story5", -1) else Event.SetPage("Story5", 1) end end ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Events/Story5.lua.meta ================================================ fileFormatVersion: 2 guid: 4bc8517c0eda0334eb6c876a9be25960 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Events/TheFinalChoice.lua ================================================ function EventPage1() General.Wait(30) Event.CenterOnCamera("TheFinalChoice", 2, true) General.Wait(30) local sprite = Event.GetSprite("TheFinalChoice") sprite.Set("Punderbolt/PunderLeft1") General.Wait(30) General.SetDialog({"[voice:punderbolt]Oh![w:10] There you are!"}, true, {"Punder/normal"}) Event.SetPage("TheFinalChoice", -1) General.SetBattle("TheFinalChoice", "fast", true) end function EventPage2() if GetAlMightyGlobal("CrateYourFrisk") then Event.SetPage("TheFinalChoice", -1) else Event.SetPage("TheFinalChoice", 1) end end ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Events/TheFinalChoice.lua.meta ================================================ fileFormatVersion: 2 guid: a0aa16ef95ef05342b9cf7483fc35d63 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Events.meta ================================================ fileFormatVersion: 2 guid: de32dff95a780ea4fbfb133184c5da72 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Monsters/claribel.lua ================================================ comments = {"Claribel peeks out at you from\rbehind Ellie's back."} commands = {} randomdialogue = {"[effect:none][voice:claribel](Um...)"} sprite = "claribel" --Always PNG. Extension is added automatically. name = "Claribel" hp = 2 atk = 1 def = 1 check = "You shouldn't see this." dialogbubble = "claribel" -- See documentation for what bubbles you have available. canspare = false cancheck = false voice = "claribel" function HandleAttack(attackstatus) end function LaunchFade(begin) Encounter.Call("LaunchFade", begin) end function HandleCustomCommand(command) end ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Monsters/claribel.lua.meta ================================================ fileFormatVersion: 2 guid: f2ba59a84213e4e408eaba584166509c DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Monsters/ellie.lua ================================================ comments = {"Ellie is waiting for your answer."} commands = {} randomdialogue = {"[effect:none][voice:ellie]I hope we're not\nimposing on you.","[effect:none][voice:ellie]Do you know the\nway out of here?"} sprite = "ellie" --Always PNG. Extension is added automatically. name = "Ellie" hp = 180 atk = 3 def = 999 check = "You shouldn't see this." dialogbubble = "ellie" -- See documentation for what bubbles you have available. canspare = false cancheck = false voice = "ellie" function HandleAttack(attackstatus) end function LaunchFade(begin) Encounter.Call("LaunchFade", begin) end function HandleCustomCommand(command) end ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Monsters/ellie.lua.meta ================================================ fileFormatVersion: 2 guid: 59b184a70684bd14e9d4dcf5b751a90a DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Monsters/exrumia.lua ================================================ comments = {"The world is covered in\ndarkness."} commands = {} randomdialogue = {"[func:Hurting]..."} sprite = "ExRumia/1" --Always PNG. Extension is added automatically. name = "Rumia EX" hp = 1150 atk = 20 def = 20 check = "Another Monster to Kill." dialogbubble = "exrumia" -- See documentation for what bubbles you have available. cancheck = true canspare = false voice = "rum" function HandleAttack(attackstatus) end function LaunchFade(begin) Encounter.Call("LaunchFade", begin) end function HandleCustomCommand(command) end ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Monsters/exrumia.lua.meta ================================================ fileFormatVersion: 2 guid: f5ff4d58f4423494b9e3209445dfcfa3 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Monsters/lukark.lua ================================================ comments = {"Lukark is revengeful."} commands = {} randomdialogue = {"[noskip]Come back\nhere!"} sprite = "emptylukark" --Always PNG. Extension is added automatically. name = "Lukark" hp = 1000 atk = 5 def = 1 check = "The Overworld Creator.[w:10]\nJust destroy him." dialogbubble = "lukark" -- See documentation for what bubbles you have available. cancheck = true canspare = false voice = "lukark" function HandleAttack(attackstatus) end function LaunchFade(begin) Encounter.Call("LaunchFade", begin) end function Animate(animation) Encounter.Call("Animate", animation) end function HandleCustomCommand(command) end ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Monsters/lukark.lua.meta ================================================ fileFormatVersion: 2 guid: aa048daac77b3cc41b6533fdc6203752 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Monsters/mionn.lua ================================================ comments = {"Mionn is."} commands = {} randomdialogue = {"[effect:none][voice:mionn]I'm talking."} sprite = "Mionn/transit_to_fight1" name = "Mionn" hp = 3000 atk = 20 def = -15 check = "" dialogbubble = "mionn" cancheck = false canspare = false voice = "mionn" timer = 0 function Update() timer = timer + Time.mult while timer >= 1 do timer = timer - 1 RunAnimations() end end function HandleAttack(attackstatus) end function LaunchFade(begin) Encounter.Call("LaunchFade", begin) end function HandleCustomCommand(command) end anim_running = false anim_frame = 1 anim_timer = 0 anim_fps = 7 anim_timer_max = math.ceil(60/anim_fps) anim_timer = anim_timer_max anim_length = 1 anim_frames = {} anim_rep = false function Animate() anim_fps = 10 anim_frames = {"Mionn/transit_to_fight1", "Mionn/transit_to_fight2", "Mionn/transit_to_fight3", "Mionn/transit_to_fight4"} anim_rep = false anim_length = 4 anim_frame = 1 anim_timer_max = math.ceil(60/anim_fps) anim_timer = 0 anim_running = true end function RunAnimations() if anim_running == true then if anim_timer <= 0 then anim_timer = anim_timer_max SetSprite(anim_frames[anim_frame]) anim_frame = anim_frame + 1 if anim_frame > anim_length then anim_running = false end end anim_timer = anim_timer - 1 end end ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Monsters/mionn.lua.meta ================================================ fileFormatVersion: 2 guid: ff255a67c4bc7fe4d9aed4427f7ba200 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Monsters/punderbolt.lua ================================================ comments = {"Punderbolt."} commands = {"Pun", "der", "bolt"} randomdialogue = {"Punderbolt."} sprite = "emptypunder" --Always PNG. Extension is added automatically. name = "Punderbolt" hp = 1000 atk = 2 def = 0 check = "One of the Overworld Creator's\nmany forms.\nCalled RTL too." dialogbubble = "rightwide" -- See documentation for what bubbles you have available. cancheck = true canspare = false voice = "punderbolt" function HandleAttack(attackstatus) Animate("Death/1") Encounter["enemies"][2].Call("SetBubbleOffset", {0, 6}) end function LaunchFade(begin) Encounter.Call("LaunchFade", begin) end function Unpause() if not unpaused then Audio.LoadFile("thechoice") unpaused = true Audio.Play() else Audio.Unpause() end end function Pause() Audio.Pause() end function SetBubble(bubble) dialogbubble = bubble end function GetCloser() Encounter["getcloser1"] = true end function GetCloser2() Encounter["getcloser2"] = true end function GetFurther() Encounter["getfurther"] = true end function Happening() Audio.PlaySound("happening") end function Animate(animation) if safe and string.sub(animation, 1, 5) == "Death" then local split = string.split(animation, "/") animation = split[1] .. "/Safe/" .. split[2] end Encounter["enemies"][1].Call("SetSprite", "Punderbolt/" .. animation) end function forceattack(number, damage) Player.ForceAttack(number, damage) end function AnimEnd() Audio.PlaySound("happening") Encounter.Call("LaunchFade", {false, true}) end function WindowClose() Audio.PlaySound("hitsound") Misc.DestroyWindow() end function HandleCustomCommand(command) end function string.split(inputstr, sep) local t = { } for str in string.gmatch(inputstr, "([^" .. sep .. "]+)") do table.insert(t, str) end return t end ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Monsters/punderbolt.lua.meta ================================================ fileFormatVersion: 2 guid: 7772bf03558012a48a03aa4e6e99abcf DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Monsters/scruffle.lua ================================================ comments = { "Smells like stuffing.", "Scruffle looks you up and down, watching your movements intensely.", "A little bit of cotton falls from an opening in Scruffle's side, which he covers with his big hand." } commands = {} randomdialogue = { "[effect:none]..." } sprite = "Scruffle/hollow" name = "Scruffle" hp = 100 atk = 0 def = 0 fakeatk = 2 fakedef = 5 check = "Tired of being mistaken for pajamas." dialogbubble = "scruffle" canspare = false cancheck = false effect = "none" gold = 12 xp = 100 function EncounterStarting() SetBubbleOffset(10, 60) -- Parent sprite used for the death animation, since the actual monstersprite is destroyed as soon as the enemy is killed deathParent = CreateSprite("Scruffle/hollow", "BelowArena") deathParent.SetPivot(0.5, 0) deathParent.MoveToAbs(monstersprite.absx, monstersprite.absy) require "Animations/ScruffleAnim" end function Update() AnimateScruffle() end function HandleAttack(attackstatus) end function LaunchFade(begin) Encounter.Call("LaunchFade", begin) end function HandleCustomCommand(command) end ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Monsters/scruffle.lua.meta ================================================ fileFormatVersion: 2 guid: 0e4c18f500842a547bcaf59c339cf5d5 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Monsters/static.lua ================================================ comments = { "Smells like a lack of HDMI connection.", "Static stamps her paw in the ground, barely missing you with her claws.", "Static looks away. It's not polite to stare, and looking too closely will hurt your eyes, after all." } commands = {} randomdialogue = { "[effect:none]Don't get too ruff!", "[effect:none]Quit staring!", "[effect:shake]*static noises*", "[effect:shake]*crackles*", "[effect:none]Distant connection..." } sprite = "Static/hollow" name = "Static" hp = 80 atk = 0 def = 0 fakeatk = 4 fakedef = 2 check = "Both their fur and their face are fuzzy." dialogbubble = "static" canspare = false cancheck = false gold = 100 xp = 110 function EncounterStarting() SetBubbleOffset(-10, 60) -- Parent sprite used for the death animation, since the actual monstersprite is destroyed as soon as the enemy is killed deathParent = CreateSprite("Static/hollow", "BelowArena") deathParent.SetPivot(0.5, 0) deathParent.MoveToAbs(monstersprite.absx, monstersprite.absy) require "Animations/StaticAnim" end function Update() AnimateStatic() end function HandleAttack(attackstatus) end function LaunchFade(begin) Encounter.Call("LaunchFade", begin) end function HandleCustomCommand(command) end ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Monsters/static.lua.meta ================================================ fileFormatVersion: 2 guid: 6513cbeb2f5d94849b356b1d46cdbee5 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Monsters.meta ================================================ fileFormatVersion: 2 guid: a9eb362b3a6ba18439d57faeffee43cd folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Waves/bullettest_bouncy.lua ================================================ local update = Update function Update() update() local speed = 2 if Input.Cancel > 0 then speed = 1 end if ppos == nil then ppos = {320, 90 + 75} end Player.MoveToAbs(ppos[1] + ((Input.Right > 0 and speed or 0) - (Input.Left > 0 and speed or 0)), ppos[2] + ((Input.Up > 0 and speed or 0) - (Input.Down > 0 and speed or 0)), false) if Input.Up > 0 or Input.Down > 0 or Input.Left > 0 or Input.Right > 0 then ppos = {Player.absx, Player.absy} end end ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Waves/bullettest_bouncy.lua.meta ================================================ fileFormatVersion: 2 guid: 0e59b8abd347bc1429489a59dcac5f83 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Waves/bullettest_chaserorb.lua ================================================ Player.SetControlOverride(true) Player.MoveToAbs(320, 155 + 90, true) Arena.ResizeImmediate(155, 130) ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Waves/bullettest_chaserorb.lua.meta ================================================ fileFormatVersion: 2 guid: c2d1814d9bc50ad43b1cc705961cf4d8 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Waves/bullettest_touhou.lua ================================================ local bg = CreateSprite("UI/sq_white", "BelowUI") bg.Scale(640/4,480/4) bg.x = 320 bg.y = 240 bg.color = {0,0,0} if enemies[1]["name"] ~= "Punderbolt" then local buttoncover = CreateSprite("UI/sq_white", "BelowArena") buttoncover.Scale(640/4,50/4) buttoncover.MoveTo(320,25) buttoncover.color = {0,0,0} local namecover = CreateSprite("UI/sq_white", "BelowArena") namecover.SetPivot(0,0.5) namecover.Scale((#Player.name*13)/4 + ((#Player.name*2)/4),16/4) namecover.MoveTo(30,71) namecover.color = {0,0,0} nextwaves = {"bullettest_chaserorb"} State("DEFENDING") update = Update function Update() local x = (Input.Right > 0 and Input.Right or 0) - (Input.Left > 0 and Input.Left or 0) local y = (Input.Up > 0 and Input.Up or 0) - (Input.Down > 0 and Input.Down or 0) local speed = Input.Cancel < 1 and 2 or 1 Player.Move(x*speed, y*speed, false) update() end else cover = CreateSprite("UI/sq_white", "Top") cover.Scale(640/4, 460/4) cover.MoveTo(320,0) cover.color = {0,0,0} end fade.SendToTop() ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Waves/bullettest_touhou.lua.meta ================================================ fileFormatVersion: 2 guid: e3049bec47e2b5c4c898c3c69bfabe23 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Waves/thechoice.lua ================================================ Encounter["cover"].MoveTo(Encounter["cover"].x, Encounter["cover"].y-150) bullet1 = CreateProjectileAbs("UI/Buttons/fightbt_0", 320-155, 160, "BelowPlayer") bullet2 = CreateProjectileAbs("UI/Buttons/mercybt_0", 320+155, 160, "BelowPlayer") Arena.MoveToAndResize(320, 90, 565, 130, false, true) finish = false inButton = false function Update() if not bullet1.isColliding() and not bullet2.isColliding() then inButton = false end if bullet1.isColliding() then bullet1.sprite.Set("UI/Buttons/fightbt_1") if not inButton then inButton = true Audio.PlaySound("menumove") end if Input.Confirm == 1 then Audio.PlaySound("menuconfirm") Encounter["enemies"][2]["currentdialogue"] = {"[noskip][effect:none][func:Animate,happy]Goo...[func:Animate,surprised]what?![w:10][next]", "[noskip][effect:none][func:Animate,bracing][func:forceattack,1," .. 54302+math.random(32592) .. "][w:80][next]", "[noskip][effect:none][func:Animate,Death/2]I[waitall:5]...[w:20][waitall:1]I am this engine's creator and you just assaulted me[waitall:5]...?[w:40][next]", "[noskip][effect:none][func:Animate,Death/angry]What kind of psycho are you?![w:40][next]", "[noskip][effect:none][func:Animate,Death/eyesclosed][waitall:5]...[w:20][waitall:1][func:Animate,Death/smile]heh.[w:40][next]", "[noskip][effect:none][func:Animate,Death/normal]I have one last trick[waitall:5]...[w:40][next]", "[noskip][waitall:2]Just for you[waitall:6]...[w:40][next]", "[noskip][effect:none][func:Animate,Death/hurt][waitall:3]Before I die[waitall:7]...[w:40][next]", "[noskip][effect:none][func:Animate,Death/contorted][waitall:4]I won't like it,[w:15] but[waitall:8]...[w:40][next]", "[noskip][effect:none][func:Animate,Death/death][waitall:5]Take th[func:AnimEnd]is![w:999]"} bullet1.Remove() bullet2.Remove() finish = true Audio.Pause() State("ENEMYDIALOGUE") Encounter["cover"].MoveTo(Encounter["cover"].x, Encounter["cover"].y+150) end else bullet1.sprite.Set("UI/Buttons/fightbt_0") end if bullet2.isColliding() and not finish then bullet2.sprite.Set("UI/Buttons/mercybt_1") if not inButton then inButton = true Audio.PlaySound("menumove") end if Input.Confirm == 1 then Audio.PlaySound("menuconfirm") Encounter["enemies"][2]["currentdialogue"] = {"[noskip][effect:none][func:Animate,happy]Good![w:40][next]", "[noskip][effect:none]Thanks for sparing me![w:40][next]", "[noskip][effect:none][func:Animate,normal][waitall:5]...[w:40][next]", "[noskip][effect:none][func:Animate,pensive]What would have happened if you had killed me?[w:40][next]", "[noskip][effect:none][func:Animate,dunno]I dunno.[w:40][func:WindowClose][w:999]"} bullet1.Remove() bullet2.Remove() Audio.Pause() State("ENEMYDIALOGUE") Encounter["cover"].MoveTo(Encounter["cover"].x, Encounter["cover"].y+150) end else bullet2.sprite.Set("UI/Buttons/mercybt_0") end end function OnHit(bullet) end ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Waves/thechoice.lua.meta ================================================ fileFormatVersion: 2 guid: 78052571a4b59d94cacd6f182575df35 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua/Waves.meta ================================================ fileFormatVersion: 2 guid: 0c26821f6d3e77f479530fc0c5394eed folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Lua.meta ================================================ fileFormatVersion: 2 guid: b528fb02b21709548a5dac70dd2d5322 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sounds/Voices/claribel-orig.wav.meta ================================================ fileFormatVersion: 2 guid: 0f1e0f50e1e607542a0a9a45aa876aad AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sounds/Voices/claribel.ogg.meta ================================================ fileFormatVersion: 2 guid: 964841423ee662b4a98d93a283ba5256 AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sounds/Voices/ellie.wav.meta ================================================ fileFormatVersion: 2 guid: 2a9f7120f2a4bfb4dbfdcc60484e243e AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sounds/Voices/lukark.ogg.meta ================================================ fileFormatVersion: 2 guid: e3859f7106336024db8e8a96ee302198 AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sounds/Voices/mionn.wav.meta ================================================ fileFormatVersion: 2 guid: 4b1108130f3a693499667b17abd11b8c AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sounds/Voices/punderbolt.ogg.meta ================================================ fileFormatVersion: 2 guid: 39ba96540d7b01b46911f02945ba97c7 AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sounds/Voices/rum.wav.meta ================================================ fileFormatVersion: 2 guid: d315e9c2dd009c44aa3c04cf22f05110 AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sounds/Voices.meta ================================================ fileFormatVersion: 2 guid: f39a10288032fb848a939abd230de135 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sounds/glitch.ogg.meta ================================================ fileFormatVersion: 2 guid: 5045d9ddf3451cf48af39b96d451eabe AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sounds/happening.ogg.meta ================================================ fileFormatVersion: 2 guid: e2e72f0a998b1624eaf35fcb18e1b95f AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sounds.meta ================================================ fileFormatVersion: 2 guid: d8b8c8e8a7afeb34283a1d0aabf27ae3 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/ExRumia/1.png.meta ================================================ fileFormatVersion: 2 guid: d622f868216d6ad4287a21467bcf8709 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2c7bb76416178a1449ed5f99e194b7ce vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/ExRumia/2.png.meta ================================================ fileFormatVersion: 2 guid: 86eb357e70e65df44b84ff59ea5ca370 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 038788c72b12de0409018ec019e6d358 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/ExRumia/3.png.meta ================================================ fileFormatVersion: 2 guid: f19d3f3e2015ad6409b9fc302a9297b6 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c5706005ecb2b484da86e6d8c1246e47 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/ExRumia/4.png.meta ================================================ fileFormatVersion: 2 guid: 1065d49ed62ebb0409fd50114a0080dc TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 0ffb8c08a3d61d047afdb0c9467420af vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/ExRumia/5.png.meta ================================================ fileFormatVersion: 2 guid: 4961057ded7a968498f611c4d051df10 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 9adfc08251bd04445bc6ac23d59a7fa9 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/ExRumia/6.png.meta ================================================ fileFormatVersion: 2 guid: 6e66b3fbeedc8ed4e9e29c6077d8c7fb TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 0faf25ff08090f74bbf573a57404521d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/ExRumia/7.png.meta ================================================ fileFormatVersion: 2 guid: dff83707ed475be4e885cec4fe953f7c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: f23bc71eda1363c429e111cfdc0452cd vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/ExRumia/8.png.meta ================================================ fileFormatVersion: 2 guid: e57bb75b3eb2b2e458440ca99c57d2c7 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 03e908c031ed8a84a8b11814d90f5c8a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/ExRumia/9.png.meta ================================================ fileFormatVersion: 2 guid: 5d5c8499accd6b64095fe3229e4e307f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 898ae751aa91fad4b8297bba7642030c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/ExRumia.meta ================================================ fileFormatVersion: 2 guid: ea23f0258bc991c428e873b59af02853 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Lukark/arms/1.png.meta ================================================ fileFormatVersion: 2 guid: bae329595206b8744911b33b4d2ea000 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 819e1e24341d55d4c808bdef0cee10de vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Lukark/arms/2.png.meta ================================================ fileFormatVersion: 2 guid: 401bbc2cdaedec24ab96914cd9dcad2f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 3500f195a453f5d4b9a6669d8209d3b7 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Lukark/arms/3.png.meta ================================================ fileFormatVersion: 2 guid: 07280ca80089f034485f5eca9f589435 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 384014cbf5ac5fa43a3e42297f2ff0da vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Lukark/arms/4.png.meta ================================================ fileFormatVersion: 2 guid: 1da8339fe2f077c4aa5700e5d1571051 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: f3db98d65eb64874dac05463b8e89b3d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Lukark/arms.meta ================================================ fileFormatVersion: 2 guid: 8b6163320b11019439e7d7b994ba47e8 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Lukark/hair/1.png.meta ================================================ fileFormatVersion: 2 guid: b06cbfc2268e9dc4e8a38863d11260ff TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2f3b7929b156d194a829d284ebfc2d9d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Lukark/hair/2.png.meta ================================================ fileFormatVersion: 2 guid: 58d49dccebd122a448b876f3f041024d TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 99631185586f9cc43a42c823fd3f70f8 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Lukark/hair/3.png.meta ================================================ fileFormatVersion: 2 guid: cca201e3a428b2e43bb08b60ba013f97 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e06cd6616c5e87d42a41b302dede3455 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Lukark/hair/4.png.meta ================================================ fileFormatVersion: 2 guid: ade344cee14655340b57fa1776dc6cf0 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 068f4feee40b94d46aad5f37d7cc3f8e vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Lukark/hair.meta ================================================ fileFormatVersion: 2 guid: d23f436002ec2654abc9ca2ab55b6806 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Lukark/headhappy.png.meta ================================================ fileFormatVersion: 2 guid: 46cbd618ef5c4f74bb05104b205c6b43 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 90ff717147b741c44b46c3b57b6dd57e vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Lukark/headnormal.png.meta ================================================ fileFormatVersion: 2 guid: f2dcdd98f47e5fb4cace713ddc0d6e7a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 884335e9424185249b5c993efa8d1e90 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Lukark/headsad.png.meta ================================================ fileFormatVersion: 2 guid: 6f0449eaea49b2342afc583312b9c2af TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 8bbb4376e749b164b82bd8a91f994c2c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Lukark/headsmile.png.meta ================================================ fileFormatVersion: 2 guid: 414252845c2691f41812f3b950337494 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: ffdb1155dc0600d438890ef7f162f1c5 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Lukark/legs.png.meta ================================================ fileFormatVersion: 2 guid: 5724239d9e73aa241b395b5eb3fb65c2 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: d68da2dd4bc5a1343b722afb4a5b3c1f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Lukark/torso.png.meta ================================================ fileFormatVersion: 2 guid: 99b747c4f81864547a666dfe6cc60553 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 9886d6b346f26024e9ae85016757749f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Lukark.meta ================================================ fileFormatVersion: 2 guid: 4c126d2d03dad8445a9bea0d9acbf96d folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Mionn/happy.png.meta ================================================ fileFormatVersion: 2 guid: 6e83425576c9a20449a1b2c85ef52a97 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 826da56a1c845af4ba684b198f43bd00 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Mionn/sad.png.meta ================================================ fileFormatVersion: 2 guid: 27d8477dd5b42894b979c2686108df8e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 44ef58ad2ae44374ab1a7ff5c2e70371 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Mionn/transit_to_fight1.png.meta ================================================ fileFormatVersion: 2 guid: 624fd11afe151ee468d48ad3fa738561 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 991cd65600e78e04ebc06ca1daeb381b vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Mionn/transit_to_fight2.png.meta ================================================ fileFormatVersion: 2 guid: b44aba7140e0e5247a3119dfba9dbd69 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 7de645d5cab55af4d915d47f13d7c8c5 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Mionn/transit_to_fight3.png.meta ================================================ fileFormatVersion: 2 guid: bbc2deeb582188a44928d488c9c5289f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: fa3bd3c7e72a348449fcc3529455fc80 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Mionn/transit_to_fight4.png.meta ================================================ fileFormatVersion: 2 guid: 30998cfb1549b3843956ee11e4eb33b6 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 71ef510960508c046bb224cf8923daa4 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Mionn.meta ================================================ fileFormatVersion: 2 guid: 65ea9b6c44557d046abc21fd802dae5e folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/Death/1.png.meta ================================================ fileFormatVersion: 2 guid: fbcaaea6217b2b34d86425cc8bfd93f7 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: fe6cc64676536c048b2099e7e6eb839a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/Death/2.png.meta ================================================ fileFormatVersion: 2 guid: dd7b9bb2614f46a4791f0426088aa7de TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: d9e264200d8fcc749914e1f4fd0fcd92 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/Death/Safe/1.png.meta ================================================ fileFormatVersion: 2 guid: f70622e92fc561e44a012b87d03389fa TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 30fb90f8afc7a8d47aa8b8ff44483f39 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/Death/Safe/2.png.meta ================================================ fileFormatVersion: 2 guid: ed84adf8674d31c45b5b337af07f2b72 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 66f60dc6c48f36746b438709f680c0da vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/Death/Safe/angry.png.meta ================================================ fileFormatVersion: 2 guid: 8a7097cc810c01e4a94e8e5d50f70bb6 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 73fd718211fc6a748ba9ffc304fd708d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/Death/Safe/contorted.png.meta ================================================ fileFormatVersion: 2 guid: 3b5d4e86082170844b743a1b5c45dada TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 88b2e35df08914c479ad400e65718a6a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/Death/Safe/death.png.meta ================================================ fileFormatVersion: 2 guid: 1138c2ce285fd034293e2fa7ab8dfe26 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 038a30bafc3eebf4988a5071f64c7f34 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/Death/Safe/eyesclosed.png.meta ================================================ fileFormatVersion: 2 guid: 869062d8b5bf8dc48ae3683f1d9f486b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 43499369223c03b49977f3deeb1d1825 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/Death/Safe/hurt.png.meta ================================================ fileFormatVersion: 2 guid: 06e24a52da05d9f458a57fbb825d309f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2416b4ed920a7ad45b622f84cf61032d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/Death/Safe/normal.png.meta ================================================ fileFormatVersion: 2 guid: ff4f4a59c5df36e4a89c0f9d4f8862ee TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 88e13a81eebaf154aa842529d79ad811 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/Death/Safe/smile.png.meta ================================================ fileFormatVersion: 2 guid: 61c12dc139728974cbd57194a01aa61f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 11ed7de801cce7448bb1abb623c386eb vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/Death/Safe.meta ================================================ fileFormatVersion: 2 guid: 306b0b0f25f6aa340b69e995f9a25da4 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/Death/angry.png.meta ================================================ fileFormatVersion: 2 guid: 706466960173164479001743a45b570b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 1fbb9630995c886489d989592985803e vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/Death/contorted.png.meta ================================================ fileFormatVersion: 2 guid: c36e5f716076d744cbfc6429f1ecbeec TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4bf5b46e6a5a63a4b8b06e8327a70ec6 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/Death/death.png.meta ================================================ fileFormatVersion: 2 guid: c28dc756f9dd37343b0e429805fed699 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: a81956c458161064282c54151dd856bc vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/Death/eyesclosed.png.meta ================================================ fileFormatVersion: 2 guid: 615f719c0239d7d4b871c46a71cd8923 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 62ba9f00ac8a35843a314aef746df394 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/Death/hurt.png.meta ================================================ fileFormatVersion: 2 guid: 4b78f5e93ae2c334ca206afbbecdd8d1 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: be8ce4fb4bf422e4cb2f2f047bd1e940 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/Death/normal.png.meta ================================================ fileFormatVersion: 2 guid: a1bad026773185b428c2aae66eb994f1 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e1ed508b6dab9f240947496ff3e6e350 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/Death/smile.png.meta ================================================ fileFormatVersion: 2 guid: da79990e578da14489c6076123d92edc TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e1eb7a28c91330d4fbead1d3e9986fdd vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/Death.meta ================================================ fileFormatVersion: 2 guid: 6f3e33d33254a984c89e2b0509b037f1 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/Punder over.png.meta ================================================ fileFormatVersion: 2 guid: 1649eb55b6cff9d4f97491367a74210c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4db373fc5fc4c41418730dac0d29e6da vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/PunderDown1.png.meta ================================================ fileFormatVersion: 2 guid: c1ae4674bbbd77d488be58bc61a922c4 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 5989f1b835fd26c4785a41fbd75b1fd0 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/PunderDown2.png.meta ================================================ fileFormatVersion: 2 guid: fe6804a4a1a2427448e7068065e2b217 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 1e6acae823dc3bc45a3705e506e513c2 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/PunderDown3.png.meta ================================================ fileFormatVersion: 2 guid: 8c296a04e300c634e94786354bd08a94 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e05c265ab10941b41976583559248750 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/PunderDown4.png.meta ================================================ fileFormatVersion: 2 guid: 0fc740f14ff42e649a1cf8fcaa6e00fb TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 15d3fbc61ed342a4aaf6a447ae2fb172 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/PunderLeft1.png.meta ================================================ fileFormatVersion: 2 guid: 064bdfe5b1247454ca33fae20b56fcfe TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: be0902e2287238c4ab5a4921c832e856 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/PunderLeft2.png.meta ================================================ fileFormatVersion: 2 guid: f624dbe877957a4479ba8f1652d6ea59 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e5a68871a47130d409a25dc701111ad5 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/PunderLeft3.png.meta ================================================ fileFormatVersion: 2 guid: c88c4dcfd7692be428fa3b3ba3e321d1 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: fa64451e927b01f4f96816232848f39d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/PunderLeft4.png.meta ================================================ fileFormatVersion: 2 guid: 049037a54c90ce349bc761d63649ca02 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: a6034b7f857b5b3438efc31c720af8dc vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/PunderRight1.png.meta ================================================ fileFormatVersion: 2 guid: 4d4093970286f77498c4c8b6199138bf TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c65cf7ee5a2b91f49a8fad5874e50ad1 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/PunderRight2.png.meta ================================================ fileFormatVersion: 2 guid: f2e6ec13a5650da4ba7dbe9183d9525c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 0b36a6ffdef98b64eb35d5acd92d397b vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/PunderRight3.png.meta ================================================ fileFormatVersion: 2 guid: 6011316c4d1c6c04a8652c4edc367b3c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 5e4d5b3e0dc57484c97ee6474311ccf3 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/PunderRight4.png.meta ================================================ fileFormatVersion: 2 guid: 76c6fdf560c77df4faa3a1bde902331d TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 864f07179a8a62f42bb687632ff2bda8 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/PunderUp1.png.meta ================================================ fileFormatVersion: 2 guid: ebae2f85dbb85d34bbce86f952a58dda TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 7649be8b441756747a1a124aee668cc2 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/PunderUp2.png.meta ================================================ fileFormatVersion: 2 guid: a292cac0c1b78bc4e8b16ad9bc0f0df5 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: d3b7c5e35fb692b4680ec8fb031f8abb vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/PunderUp3.png.meta ================================================ fileFormatVersion: 2 guid: 009a9cf92d45c7e4cae545cd59c4bc7e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 32d67f1445b84344c96cdbd9b052b1cd vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/PunderUp4.png.meta ================================================ fileFormatVersion: 2 guid: 98e0664d631a3e9469c2e634d9c4ba5d TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e5a5b4c14296bc944b4fae2181057ca2 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/angry.png.meta ================================================ fileFormatVersion: 2 guid: 08899e57517e21445a1229db64732f69 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 50f6ef5ef66e82948b973987f17c096d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/bracing.png.meta ================================================ fileFormatVersion: 2 guid: 8c1eaad6088b25142871e6f72bd5950b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 9d1ff9fb75660d84ba2053cae963ead2 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/dunno.png.meta ================================================ fileFormatVersion: 2 guid: d30466cf76fd3a54e995c8d6be26532a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c02437007935a69459f18eb34d9325a2 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/happy.png.meta ================================================ fileFormatVersion: 2 guid: 2dc4370138a37a24dab8b41465c8d049 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: a740a2317abfaf14084c5ae17c17bb8a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/lookbottomrightsmile.png.meta ================================================ fileFormatVersion: 2 guid: 469dc7f5f0de24e44ada773e57b4b0be TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 066ebc111afa69244a7c38ccec77746b vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/lookright.png.meta ================================================ fileFormatVersion: 2 guid: 60ddb322b161afe418fa790afbaf7705 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 288eb7d3622224c41ade15c00bee906b vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/lookrightsmile.png.meta ================================================ fileFormatVersion: 2 guid: 2876e1594135b9a48bf56ed3608fe6fa TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 539e7ca00c70b264ba930b84175124d3 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/normal.png.meta ================================================ fileFormatVersion: 2 guid: 48da5c39f5b2d874aa3779097860ab11 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 639d952aec003744a851c42b06b1263e vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/pensive.png.meta ================================================ fileFormatVersion: 2 guid: 40a02048f00ebb840b41213663f8ffc6 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 08b177867237f384a88320821a7272ea vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/smile.png.meta ================================================ fileFormatVersion: 2 guid: 17da7bb51e4d5ed4ebf4119da81181c4 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 171401f72a845f34a833e896080fa810 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt/surprised.png.meta ================================================ fileFormatVersion: 2 guid: e12aa0dd7c915e948a2ed9e800cc730d TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: eb187f0d5c16885468e71b60d8be2341 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Punderbolt.meta ================================================ fileFormatVersion: 2 guid: c4355ce7069286a41a58692b7c5584e3 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Scruffle/Death/dustingmess.png.meta ================================================ fileFormatVersion: 2 guid: fff4e0cacf82d7a4983f2ef62f4f48ae TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2d2955ab4b295a940b9377f0b3f45c24 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Scruffle/Death/head2.png.meta ================================================ fileFormatVersion: 2 guid: 4d169a2efe247d94da25b09afdca35cd TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 6ada82f54265b904ab6b27dd66f15c71 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Scruffle/Death/head3.png.meta ================================================ fileFormatVersion: 2 guid: 0cd71bdd2d26c0245a70d223d84b6f1b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 61e1933c0ca0d3d498159437ee364503 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Scruffle/Death/head4.png.meta ================================================ fileFormatVersion: 2 guid: 127834e9b87009046b3f416dd967b4e4 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: b207fc10bdb8af342a46608718490285 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Scruffle/Death/leftleg.png.meta ================================================ fileFormatVersion: 2 guid: 6045aa6a03148b742b9b1cc9c0612823 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2fcdb6c9f0851ea47a80e169bda17b8f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Scruffle/Death/righthand.png.meta ================================================ fileFormatVersion: 2 guid: 584939b67f88f3544b858a5f83909d38 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: d69336aecf216564d92b3f8433bfd7c9 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Scruffle/Death/rightleg.png.meta ================================================ fileFormatVersion: 2 guid: 3be9369e6a761bb4481ee0aec4676cf4 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 87139f8a66cf80842827f52ec9310d29 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Scruffle/Death/surprise.png.meta ================================================ fileFormatVersion: 2 guid: 33786192417d93e469f27ef9f71e8a93 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 8d09c01cf746ec94e8ab9cc18c08a27d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Scruffle/Death.meta ================================================ fileFormatVersion: 2 guid: 2c6b57965a52bc247a519fcce112bae1 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Scruffle/blush.png.meta ================================================ fileFormatVersion: 2 guid: cd9f048ce8dc4154d8139d986c716092 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c8101c4594b19074b8eacdc00d5a2d06 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Scruffle/head.png.meta ================================================ fileFormatVersion: 2 guid: ec76f2f9520ad224f978db97c61d572d TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c2ba45b4ab3246240bce615338aa9618 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Scruffle/hollow.png.meta ================================================ fileFormatVersion: 2 guid: 739de9e80b0f25e48904d02adb0c956e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 6868b1c4b350a124fb047a39c0f6a897 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Scruffle/hoodtail.png.meta ================================================ fileFormatVersion: 2 guid: 7e13459b3293bd546bf6d13b86fbcee5 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 43755006a22a8db41b6e7226e0d1b4ea vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Scruffle/hurt.png.meta ================================================ fileFormatVersion: 2 guid: 9aff4a8a02cecb54db86e78efd97866b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 9dfcb0d83fbc905429c09c247a60926c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Scruffle/hurtOld.png.meta ================================================ fileFormatVersion: 2 guid: 324f6ad99102152408e85ecfe9f1093c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: ef4c98b487464be48bc8b15ac1525c34 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Scruffle/leftarm.png.meta ================================================ fileFormatVersion: 2 guid: 675b00d7d1e7b5d4f8a0492c6cd6f293 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: dc3ac7e9f59d1d9449d219c49a77387a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Scruffle/leftarmbot.png.meta ================================================ fileFormatVersion: 2 guid: e20deea191599d840948068a8f8696ad TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 013f18780d572754e9e20cfbe7ade1a5 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Scruffle/leftarmtop.png.meta ================================================ fileFormatVersion: 2 guid: a0d6432f23d27c4408fbea504970b14a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 016415561b7753a4f8be6c68f7596a25 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Scruffle/lefthand.png.meta ================================================ fileFormatVersion: 2 guid: c94f218f621269d44ba4567dd65ca415 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: bdef5e835b82f104a87d8eef02daf95e vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Scruffle/leftleg.png.meta ================================================ fileFormatVersion: 2 guid: 8da3c4d7aa9742142ba2846855f08f70 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: d56c61037b0e8c74a85f0dc72e3b2e10 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Scruffle/preview.png.meta ================================================ fileFormatVersion: 2 guid: 0341bdccf89d3b446b2a8988a5ba2dfe TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 0e307691d4f1eab42a4e738907f3b2f7 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Scruffle/rightarm.png.meta ================================================ fileFormatVersion: 2 guid: 86da463544354f441af9180ba5bcae36 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 1eb79839ac020dd49a15c5206c547ff7 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Scruffle/rightarmbot.png.meta ================================================ fileFormatVersion: 2 guid: 7d7fb9c3035c7bf428540efb8174a616 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 7ab314bed080f6f4ba269358dc67a328 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Scruffle/rightarmtop.png.meta ================================================ fileFormatVersion: 2 guid: 00edfbfbd2bc9f94fb48c09f939f9a93 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 87a6f796fd503924f8bbf1123755e61f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Scruffle/righthand.png.meta ================================================ fileFormatVersion: 2 guid: 37f9fb5433ce2ae4688d8c80a41bebb8 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2ea9a9673bab960479deb99a2e29f87d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Scruffle/rightleg.png.meta ================================================ fileFormatVersion: 2 guid: 0d4d70e17a653ea428a5a858a70c3adc TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 3fc09a260d1aea84b9beb01bedb6b6a5 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Scruffle/spared.png.meta ================================================ fileFormatVersion: 2 guid: 3f50b9275736ffb448db0b447bad6791 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2c7d95dff2eb3a74087843bf9d427023 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Scruffle/torso.png.meta ================================================ fileFormatVersion: 2 guid: 2005fe9c58780a64094773b7970dfffe TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: aaf9e4efdb6b4f549958c415b6fd83e8 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Scruffle.meta ================================================ fileFormatVersion: 2 guid: 547d093319ebdd54bae667da59174560 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/Death/dustingmess.png.meta ================================================ fileFormatVersion: 2 guid: eb014888db8a50a44a5ce3118be23806 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 955c13610e34d764ea7cf0915d85ce0d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/Death/face - Copy.png.meta ================================================ fileFormatVersion: 2 guid: cd43a9f784eae6a46ab565a5304ab0bb TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 9f115217caba06144a0f880b609056b9 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/Death/face.png.meta ================================================ fileFormatVersion: 2 guid: 335d34789634a5244a878adeebc327be TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 89101802d74420c4891856e10a81af4e vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/Death/facemask.png.meta ================================================ fileFormatVersion: 2 guid: 81766e023cf08224e8342e563f4b035c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c755fd04d7f1fa849958a69b70fdc26d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/Death/rhand.png.meta ================================================ fileFormatVersion: 2 guid: d640a8f3a50076c4bb85fe008557519c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: dcb364975388f794cbe887434fdf0e7b vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/Death/smoke.png.meta ================================================ fileFormatVersion: 2 guid: f1885bc9f2caeb14b8dffc03e7e78c89 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 8f5fecb1eaf0a52498e3078d89a87714 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/Death/staticeffect1.png.meta ================================================ fileFormatVersion: 2 guid: 8f1bafa1f64b6a84dbf09c9b437f6eb1 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c0daa1309ddf77b48833505ec7b51227 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/Death/staticeffect2.png.meta ================================================ fileFormatVersion: 2 guid: be179fed7bd7f0745ae7cee1263f6070 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 8b82d7e4760f1f04f84da0d9ffa0dcaa vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/Death/staticeffect3.png.meta ================================================ fileFormatVersion: 2 guid: be4f9dc92a30f6546ba8351d43e01e1d TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4c21900513a3b654ca9a58062c4a382f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/Death/x.png.meta ================================================ fileFormatVersion: 2 guid: 7b489a30a38df5b4bb95c51be2e0f577 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 27d9721aa03b3ff49941298d512aadfc vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/Death.meta ================================================ fileFormatVersion: 2 guid: ba4fae5a2566da846910f29b2e4d5126 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/Hurt/Hurt.png.meta ================================================ fileFormatVersion: 2 guid: 44cbc9852785b8a41b6eb582b87ca2cb TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 34d2a345e5fc75148b1d70d206ae4935 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/Hurt/facemask.png.meta ================================================ fileFormatVersion: 2 guid: f7e4f49d49c33024488e831ee8acf824 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 7f5f81ac750ef614b94ad9f6f3a91ee7 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/Hurt/fluffmask.png.meta ================================================ fileFormatVersion: 2 guid: cdf87408213c8ad498fe4605e16d0822 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: a91ccc9f220f97a459474b36ac319e01 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/Hurt/learmask.png.meta ================================================ fileFormatVersion: 2 guid: a79cecd83d7f61f46870c77dc8bfbbfd TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 91eb9b4e7208cf74eae00795cba180bf vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/Hurt/rearmask.png.meta ================================================ fileFormatVersion: 2 guid: edddedc32a153fa4cb93937b3969a6a9 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c123e83a499a9914997cc98578879715 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/Hurt/tailmask.png.meta ================================================ fileFormatVersion: 2 guid: cab445f3766203b448d5c1fb85922f9c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e37408557a322ff42979bffceb1de0f8 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/Hurt.meta ================================================ fileFormatVersion: 2 guid: ca2460bb32cebe54a97bc3f0d7722874 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/face.png.meta ================================================ fileFormatVersion: 2 guid: bc1d567141ca1fe498e73d17d8d7086e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 413767bdaa2f2e1478c972e14f906a5d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/faceMTT1.png.meta ================================================ fileFormatVersion: 2 guid: 8674dde6329ff36419c5137d693f89a4 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c9aed61b3f78d8c48a3472eef0cf7934 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/faceMTT2.png.meta ================================================ fileFormatVersion: 2 guid: ce85efb6bd5619e4ca4cc91ade0337d5 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: ca9da258cd8f202468ba1b3520ec2478 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/facemask.png.meta ================================================ fileFormatVersion: 2 guid: efaf1ad326e61d64ca8a2a9a793deab0 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 91e84d5d3c249154d988c5ebd9eeca04 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/fluff.png.meta ================================================ fileFormatVersion: 2 guid: a60d1f036127bec4c8b81fa409782fb4 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: ebb7b844f82cef843b8d1a5eecfdceaa vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/fluffmask.png.meta ================================================ fileFormatVersion: 2 guid: 5e6c40603afc89a43a4bd8fddb84a4c2 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 7b0ab40ec632c744b9ddc1503f0d81b3 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/headbase.png.meta ================================================ fileFormatVersion: 2 guid: 8f6e0a45576244e4e9131110e685715d TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: bbdabbf3b8cd35f49bc086cb100e8fa8 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/hollow.png.meta ================================================ fileFormatVersion: 2 guid: 4f396e3cf2fc9db44b26d2bc2755795a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 66722cce46b6e3b4cbc263e7311d4f7a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/larm.png.meta ================================================ fileFormatVersion: 2 guid: e1ee84fc8b4ddc744b4d5f0153205023 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 6b3450917a7156847bf343029482be56 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/lear.png.meta ================================================ fileFormatVersion: 2 guid: 192829a8576aac8419b87ccc308973f6 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 0322a7be1cab568448cb1cb207eaa0ee vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/learmask.png.meta ================================================ fileFormatVersion: 2 guid: e15d453bd3bcbac43b9ea14f020fd10c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 547d086c65f8cd84280b15964b6dcc3c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/legs.png.meta ================================================ fileFormatVersion: 2 guid: 90e6ab165f3ee424aaa07262f0e6818d TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 3a869b45f24d34f40bbe5a857fdd8fcd vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/lhand.png.meta ================================================ fileFormatVersion: 2 guid: fbb2c231d6dba71488a599246db537f5 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 62bc4e0b2188f1c449ccf671a1b0d220 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/preview.png.meta ================================================ fileFormatVersion: 2 guid: 61e3160f577aa5e4797820dc302c2084 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 179edbdfb2a1de4458a1d2667aab5ef2 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/previewNoMask.png.meta ================================================ fileFormatVersion: 2 guid: f9f7558c6a672aa4e938534b2a023dde TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 80238a2c9ffa01043a5793a822194a16 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/rarm.png.meta ================================================ fileFormatVersion: 2 guid: 5360fce36e184ca4e951d139eae34573 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: d9bd9b3d638c13842a9f9b6ba4e1d307 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/rear.png.meta ================================================ fileFormatVersion: 2 guid: 2fa35af67bb67b144861804648a34014 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 8aea97302b647b34a997a9227cdffbc1 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/rearmask.png.meta ================================================ fileFormatVersion: 2 guid: 249b6160598e2dd478f24b515a405b3f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: cafa018a27914464ca4dd053ed361381 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/rhand.png.meta ================================================ fileFormatVersion: 2 guid: 88af5c3413cf8a74999f2db70dcd1bcc TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: ce3fe631431d01e4387fc38aee695242 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/spared.png.meta ================================================ fileFormatVersion: 2 guid: 2106f6cabcd5b384c828016982eaaae7 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 128ced9a97106d444b347b6b411a99df vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/staticeffect.png.meta ================================================ fileFormatVersion: 2 guid: b0230084927ebff40a9179664f9bdf79 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 31d1898cbff323c458385dfa1df41088 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/tail.png.meta ================================================ fileFormatVersion: 2 guid: 6daff4a6cca25924c8d5266408dd8c51 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c0ffe6cae852595428c23f5474e40629 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/tailmask.png.meta ================================================ fileFormatVersion: 2 guid: e24152c91cbc6cf418c51bc3deed652c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: f41a18e12d0e2bb4faa959a1666215d2 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static/torso.png.meta ================================================ fileFormatVersion: 2 guid: 699f1c3c18fba144dacaa7825d253443 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: db802684fc963dd458ab8b9c792cc203 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/Static.meta ================================================ fileFormatVersion: 2 guid: dcbbfa49644239e4ca5fece8a4f6dc18 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/UI/SpeechBubbles/claribel.png.meta ================================================ fileFormatVersion: 2 guid: f25194271d7030043b10624da109ca97 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 45e22e50f5a98cb49969ed1209277967 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/UI/SpeechBubbles/claribel.xml ================================================ 175 ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/UI/SpeechBubbles/claribel.xml.meta ================================================ fileFormatVersion: 2 guid: 76d371fb41e98394d92db5392da8335d TextScriptImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/UI/SpeechBubbles/ellie.png.meta ================================================ fileFormatVersion: 2 guid: 3dc54873f5b615f4babb640231e8210e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4a31efe6a9269c042a8e703267e71d81 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/UI/SpeechBubbles/ellie.xml ================================================ 175 ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/UI/SpeechBubbles/ellie.xml.meta ================================================ fileFormatVersion: 2 guid: c8da040583da68c41875d7086638422c TextScriptImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/UI/SpeechBubbles/exrumia.png.meta ================================================ fileFormatVersion: 2 guid: bfa16415fccb5c743b4afc23e8713d0b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: ce695762aa962bc4eacb755abe0f5fae vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/UI/SpeechBubbles/exrumia.xml ================================================ 175 ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/UI/SpeechBubbles/exrumia.xml.meta ================================================ fileFormatVersion: 2 guid: 8cd918667961fb04196dd0be4b5fa4ba TextScriptImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/UI/SpeechBubbles/lukark.png.meta ================================================ fileFormatVersion: 2 guid: f95cc5f20d7c77a4ca128d806c34eefd TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 5f2d231a24e8c9745ae29a5a57b379fb vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/UI/SpeechBubbles/lukark.xml ================================================ 175 ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/UI/SpeechBubbles/lukark.xml.meta ================================================ fileFormatVersion: 2 guid: 3ae1c2fd69a5a7e44bbee96d7e581a7a TextScriptImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/UI/SpeechBubbles/mionn.png.meta ================================================ fileFormatVersion: 2 guid: 095b4ddea25595640abfbfa4a652545d TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: a22beb0c3279953429a9d5c0db0b72df vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/UI/SpeechBubbles/mionn.xml ================================================ 175 ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/UI/SpeechBubbles/mionn.xml.meta ================================================ fileFormatVersion: 2 guid: ea2b9797c19a3e14790f415b0229db6d TextScriptImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/UI/SpeechBubbles/rightlargeminus.png.meta ================================================ fileFormatVersion: 2 guid: a67bc72cb9ec7f8498f585211841cd8b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2a95bc8ebdb7a18408671954b6583f5a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/UI/SpeechBubbles/rightlargeminus.xml ================================================ 175 ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/UI/SpeechBubbles/rightlargeminus.xml.meta ================================================ fileFormatVersion: 2 guid: 14164cb6da504ed469459bfdaa12fb2c TextScriptImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/UI/SpeechBubbles/scruffle.png.meta ================================================ fileFormatVersion: 2 guid: 61a302a1c26078a43ab0e07ed4d243ab TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: fdcb33481d5f33741baa23ea52c7fc25 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/UI/SpeechBubbles/scruffle.xml ================================================ 175 ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/UI/SpeechBubbles/scruffle.xml.meta ================================================ fileFormatVersion: 2 guid: 937cc307473c93142a1cbd2e06670b96 TextScriptImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/UI/SpeechBubbles/static.png.meta ================================================ fileFormatVersion: 2 guid: 63f706b8a2bb5c844a0e7a2db74bf3e3 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 930f5a982774ffc4d8f50045857ae3ea vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/UI/SpeechBubbles/static.xml ================================================ 175 ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/UI/SpeechBubbles/static.xml.meta ================================================ fileFormatVersion: 2 guid: 7120fa2d01d1e2e4e93ed31ed637ddfa TextScriptImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/UI/SpeechBubbles.meta ================================================ fileFormatVersion: 2 guid: aee3782dd2b8b514dbe3c93f0e905886 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/UI.meta ================================================ fileFormatVersion: 2 guid: 9ac6aebe72449f349befd9c75824b3f9 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/bg.png.meta ================================================ fileFormatVersion: 2 guid: 1656e7c5f94bcdc44aaaa8f1162622c8 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: d9a506db9d3494346990cda77151f090 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/black.png.meta ================================================ fileFormatVersion: 2 guid: 6554802bdb8192845aa9bcc9c55c01b2 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4ec47d90630b0584087a5b8521248d7d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/bullet.png.meta ================================================ fileFormatVersion: 2 guid: c394f27340c0a124b94411d9722201ea TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 69886893e1671734dbada711249d10c1 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/claribel.png.meta ================================================ fileFormatVersion: 2 guid: c11168d4ed8ac4e409940e61661077b5 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e35a53677d72db140a85f1be51acc440 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/ellie.png.meta ================================================ fileFormatVersion: 2 guid: b55e2d82128d9854ba1692211ab75a77 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 5729e54fbbe7cea4cbce21a707c800d4 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/emptylukark.png.meta ================================================ fileFormatVersion: 2 guid: 5a73dd85657976540aa4ec54d2bf05d6 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: dd4809a2532d93e49aee3abfd0bcf1d1 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/emptypunder.png.meta ================================================ fileFormatVersion: 2 guid: 225cfdc24e9037944a9e1905b5cd86ed TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 769a63669f0587e44995bd4043992fd6 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/newhome3.png.meta ================================================ fileFormatVersion: 2 guid: 969e2abca5380e74288a26233ef80551 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 4096 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 4096 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 0f0b36aff33af194898a97a6877d9084 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/poseur.png.meta ================================================ fileFormatVersion: 2 guid: 48b1a1e4fd1920643a33ba1a055af346 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e94fbf7a2ebe3d14cacc9358f9553705 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites/white.png.meta ================================================ fileFormatVersion: 2 guid: b69cf9fdd2affd042818108cb740f355 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 09c06345f8914a8458783f2f4e472ff2 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE/Sprites.meta ================================================ fileFormatVersion: 2 guid: 67aa47a9fbd88304e8c608d4af415e69 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@0.5.0_SEE_CRATE.meta ================================================ fileFormatVersion: 2 guid: 6e9a5a2786782bc4497dbc4188e02a0e folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Audio/mus_core.ogg.meta ================================================ fileFormatVersion: 2 guid: e363d206f1f85a740bf2b9471430f107 timeCreated: 1487174554 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Audio/put your music here, oggs only ================================================ ================================================ FILE: Assets/Mods/@OverWorld Test/Audio/put your music here, oggs only.meta ================================================ fileFormatVersion: 2 guid: 9e5d9eb395fb19b44b1224439ea1c3fe timeCreated: 1487174274 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Audio.meta ================================================ fileFormatVersion: 2 guid: 80d9f4ec6518816449004d8e39443472 folderAsset: yes timeCreated: 1487174273 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Lua/Encounters/encounter.lua ================================================ -- A basic encounter script skeleton you can copy and modify for your own creations. -- music = "shine_on_you_crazy_diamond" --Always OGG. Extension is added automatically. Remove the first two lines for custom music. encountertext = "Poseur strikes a pose!" --Modify as necessary. It will only be read out in the action select screen. nextwaves = {"bullettest_chaserorb"} wavetimer = 4.0 arenasize = {155, 130} enemies = { "poseur" } enemypositions = { {0, 0} } -- A custom list with attacks to choose from. Actual selection happens in EnemyDialogueEnding(). Put here in case you want to use it. possible_attacks = {"bullettest_bouncy", "bullettest_chaserorb", "bullettest_touhou"} function EncounterStarting() Audio["hurtsound"] = "dogsecret" -- If you want to change the game state immediately, this is the place. end function EnemyDialogueStarting() -- Good location for setting monster dialogue depending on how the battle is going. --enemies[1].SetVar('currentdialogue', {"It's\nworking."}) end function EnemyDialogueEnding() -- Good location to fill the 'nextwaves' table with the attacks you want to have simultaneously. -- This example line below takes a random attack from 'possible_attacks'. nextwaves = { possible_attacks[math.random(#possible_attacks)] } end function DefenseEnding() --This built-in function fires after the defense round ends. encountertext = RandomEncounterText() --This built-in function gets a random encounter text from a random enemy. Audio["RESETDICTIONARY"] = "dogsecret" end function HandleSpare() State("ENEMYDIALOGUE") end function HandleItem(ItemID) BattleDialog({"Selected item " .. ItemID .. "."}) end ================================================ FILE: Assets/Mods/@OverWorld Test/Lua/Encounters/encounter.lua.meta ================================================ fileFormatVersion: 2 guid: d1b6c201dd4b02843a01238575d56260 timeCreated: 1487174276 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Lua/Encounters.meta ================================================ fileFormatVersion: 2 guid: 817f831f852ef0146b46de5bdc03bc4a folderAsset: yes timeCreated: 1487174275 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Lua/Events/SaveTest.lua ================================================ function EventPage0() local spriteTest = Event.GetSprite(Event.GetName()) spriteTest.SetAnimation({"SavePoint/0", "SavePoint/1"}, 0.2) end function EventPage1() if GetRealGlobal("CYFInternalCross2") then local count = 5 for i = 1, 5 do if GetRealGlobal("CYFInternalCross" .. i) then count = count - 1 end end General.SetDialog({"[health:Max][color:ff0000]" .. count .. " left."}, true) else General.SetDialog({"[health:Max]That weird kangaroo staying in place at your left...", "Seeing that he won't move by an inch fills you with determination."}, true) end General.Save() end ================================================ FILE: Assets/Mods/@OverWorld Test/Lua/Events/SaveTest.lua.meta ================================================ fileFormatVersion: 2 guid: 690db47ccfa9fa54590386bc0ba70403 timeCreated: 1490006153 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Lua/Events/Secret/8ba3f2c2.lua ================================================ function EventPage0() if Event.GetAnimHeader("Player") ~= "MK" then Event.Remove(Event.GetName() .. " (1)") Event.Remove(Event.GetName()) end end function EventPage1() local playerSprite = Event.GetSprite("Player") local charaSprite = Event.GetSprite("8ba3f2c2 (1)") local maskSprite = Event.GetSprite("8ba3f2c2 (2)") Event.MoveToPoint("Player", 380, 200, true) Event.SetDirection("Player", 2) General.SetDialog({"[noskip]Man, [w:15]the Core is a nice place... [w:25][mugshot:MK/sad]but I'm very far away from home...", "[noskip]I told my parents I went exploring the world, [w:15][mugshot:MK/sad2]but man, [w:15]this place is scary...", "[noskip]I better move on."}, true, {"MK/stars", "MK/normal", "MK/determined"}) Event.MoveToPoint("Player", 400, 200, true) Event.Teleport("8ba3f2c2 (1)", 40, 200) local playerPos = Event.GetPosition("Player") Event.Teleport("8ba3f2c2 (2)", playerPos[1] + 14, playerPos[2]) maskSprite.loopmode = "ONESHOT" maskSprite.Scale(-1, 1) Event.SetAnimHeader("8ba3f2c2 (2)", "Fall") playerSprite.alpha = 0 General.Wait(1) while not maskSprite.animcomplete do General.Wait(1) end maskSprite.z = -1 Event.Teleport("8ba3f2c2 (2)", playerPos[1], playerPos[2]) maskSprite.loopmode = "LOOP" Event.SetAnimHeader("8ba3f2c2 (2)", "Fallen") Event.MoveToPoint("8ba3f2c2 (2)", 420, 146, true) General.Wait(30) General.SetDialog({"[noskip]W-W-What![w:25]\n[mugshot:MK/horrified]I tripped!"}, true, {"MK/surprised"}) Event.SetAnimHeader("8ba3f2c2 (1)", "") Event.Teleport("8ba3f2c2 (1)", 0, 240) Event.MoveToPoint("8ba3f2c2 (1)", 400, 240, true) General.Wait(3) Event.SetDirection("8ba3f2c2 (1)", 2) General.Wait(30) Event.SetAnimHeader("8ba3f2c2 (2)", "Fallen2") General.SetDialog({"[noskip]Y-Yo![w:25]\nP-Please, [w:15]help m-me!", "[noskip]I...[w:25]\nI'm slipping!"}, true, {"MK/horrified", "MK/horrified2"}) General.Wait(30) Event.MoveToPoint("8ba3f2c2 (2)", 420, 0, true, false) local maskPos repeat maskPos = Event.GetPosition("8ba3f2c2 (2)") local c = maskPos[2] / 150 NewAudio.SetVolume("StaticKeptAudio", c) maskSprite.color = {c, c, c} General.Wait(1) until maskPos[2] == 0 NewAudio.Stop("StaticKeptAudio") NewAudio.SetVolume("StaticKeptAudio", 1) General.Wait(60) NewAudio.CreateChannel("temp") NewAudio.PlaySound("temp", "Secret/noise") charaSprite.loopmode = "ONESHOT" Event.SetAnimHeader("8ba3f2c2 (1)", "Glitch") General.Wait(1) while not charaSprite.animcomplete do General.Wait(1) end Event.SetAnimHeader("8ba3f2c2 (1)", "Chara") General.Wait(60) Screen.SetTone(true, true, 0, 0, 0, 255) --General.Wait(30) NewAudio.DestroyChannel("temp") SetRealGlobal("CYFInternalCross3", true) SetRealGlobal("CYFInternalCharacterSelected", false) Event.SetAnimHeader("8ba3f2c2 (1)", "StopDown") Event.SetAnimHeader("8ba3f2c2 (2)", "StopDown") Player.Teleport("test2", 320, 200, 2, false) end ================================================ FILE: Assets/Mods/@OverWorld Test/Lua/Events/Secret/8ba3f2c2.lua.meta ================================================ fileFormatVersion: 2 guid: 1033f8400f27ef94a8458118be256ddc DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Lua/Events/Secret.meta ================================================ fileFormatVersion: 2 guid: dd97ea2ed8c684541a344187534cf281 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Lua/Events/punderTest1.lua ================================================ function EventPage0() if GetRealGlobal("CYFInternalCross2") then Event.Remove(Event.GetName()) end end function EventPage1() --General.TitleScreen() local spriteTest = Event.GetSprite(Event.GetName()) local playerpos = Event.GetPosition("Player") local eventpos = Event.GetPosition(Event.GetName()) local dir local diff dir, diff = calcDirAndDiff(eventpos, playerpos) local text = "" local mugshot = "Punder/normal" if Event.GetAnimHeader("Player") == "MK" then text = "Hello there little buddy!" mugshot = "Punder/veryHappy" elseif Event.GetAnimHeader("Player") == "Chara" then local tempPunderX = Event.GetPosition(Event.GetName())[1] Event.MoveToPoint(Event.GetName(), diff[1] > 0 and eventpos[1] + 60 or eventpos[1] - 60, eventpos[2]) eventpos = Event.GetPosition(Event.GetName()) if tempPunderX == eventpos[1] then text = "What are you doing? [w:25]\nBack off!" else text = "Hey...[w:25]you look kinda menacing...[w:25]\nBe good, [w:15]alright?" end mugshot = "Punder/intimidated" elseif Event.GetAnimHeader("Player") == "Asriel" then text = "Oh hi kid! [w:25]You're cute, [w:15]you know that?" mugshot = "Punder/veryHappy" else text = "Hey, [w:15]how's it going?" end dir, diff = calcDirAndDiff(Event.GetPosition(Event.GetName()), Event.GetPosition("Player")) Event.SetDirection(Event.GetName(), dir) General.SetDialog({"[voice:punderbolt]" .. text}, true, {mugshot}) end function calcDirAndDiff(vect1, vect2) local diff = { vect1[1] - vect2[1], vect1[2] - vect2[2] } local angle = (math.atan2(diff[1], diff[2]) + (math.pi*2)) % (math.pi*2) local dir = 2 if angle > math.pi/4 and angle <= 3*math.pi/4 then dir = 4 elseif angle > 3*math.pi/4 and angle <= 5*math.pi/4 then dir = 8 elseif angle > 5*math.pi/4 and angle <= 7*math.pi/4 then dir = 6 end return dir, diff end ================================================ FILE: Assets/Mods/@OverWorld Test/Lua/Events/punderTest1.lua.meta ================================================ fileFormatVersion: 2 guid: f812feee4654d1b4485c40ebf7cd1a8d timeCreated: 1488955218 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Lua/Events.meta ================================================ fileFormatVersion: 2 guid: 39ad4eea17efca7429fffd796466d1e7 folderAsset: yes timeCreated: 1488874461 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Lua/Monsters/poseur.lua ================================================ -- A basic monster script skeleton you can copy and modify for your own creations. comments = {"Smells like the work\rof an enemy stand.", "Poseur is posing like his\rlife depends on it.", "Poseur's limbs shouldn't be\rmoving in this way."} commands = {"Act 1", "Act 2", "Act 3"} randomdialogue = {"Random\nDialogue\n1.", "Random\nDialogue\n2.", "Random\nDialogue\n3."} sprite = "poseur" --Always PNG. Extension is added automatically. name = "Poseur" hp = 10 atk = 1 def = 1 check = "Check message goes here." dialogbubble = "right" -- See documentation for what bubbles you have available. canspare = false cancheck = true -- Happens after the slash animation but before function HandleAttack(attackstatus) if attackstatus == -1 then -- player pressed fight but didn't press Z afterwards else -- player did actually attack end end -- This handles the commands; all-caps versions of the commands list you have above. function HandleCustomCommand(command) if command == "ACT 1" then currentdialogue = {"[voice:Dating]aaaaaaa\naaaaaaa\naaaaaaa"} elseif command == "ACT 2" then currentdialogue = {"Selected\nAct 2."} elseif command == "ACT 3" then currentdialogue = {"Selected\nAct 3."} end BattleDialog({"You selected " .. command .. "."}) end ================================================ FILE: Assets/Mods/@OverWorld Test/Lua/Monsters/poseur.lua.meta ================================================ fileFormatVersion: 2 guid: 7919cac38d9e945478e1e62650617e6d timeCreated: 1487174278 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Lua/Monsters.meta ================================================ fileFormatVersion: 2 guid: 7b8d365049bd6614196cd6dc4ce97fb6 folderAsset: yes timeCreated: 1487174276 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Lua/Waves/bullettest_bouncy.lua ================================================ -- The bouncing bullets attack from the documentation example. spawntimer = 0 bullets = {} function Update() spawntimer = spawntimer + 1 if spawntimer%30 == 0 then local posx = 30 - math.random(60) local posy = Arena.height/2 local bullet = CreateProjectile('bullet', posx, posy) bullet.SetVar('velx', 1 - 2*math.random()) bullet.SetVar('vely', 0) table.insert(bullets, bullet) end for i=1,#bullets do local bullet = bullets[i] local velx = bullet.GetVar('velx') local vely = bullet.GetVar('vely') local newposx = bullet.x + velx local newposy = bullet.y + vely if(bullet.x > -Arena.width/2 and bullet.x < Arena.width/2) then if(bullet.y < -Arena.height/2 + 8) then newposy = -Arena.height/2 + 8 vely = 4 end end vely = vely - 0.04 bullet.MoveTo(newposx, newposy) bullet.SetVar('vely', vely) end end ================================================ FILE: Assets/Mods/@OverWorld Test/Lua/Waves/bullettest_bouncy.lua.meta ================================================ fileFormatVersion: 2 guid: 60aaf2a29c0b6f444afa8164acfb63c3 timeCreated: 1487174281 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Lua/Waves/bullettest_chaserorb.lua ================================================ -- The chasing attack from the documentation example. chasingbullet = CreateProjectile('bullet', Arena.width/2, Arena.height/2) chasingbullet.SetVar('xspeed', 0) chasingbullet.SetVar('yspeed', 0) function Update() local xdifference = Player.x - chasingbullet.x local ydifference = Player.y - chasingbullet.y local xspeed = chasingbullet.GetVar('xspeed') / 2 + xdifference / 100 local yspeed = chasingbullet.GetVar('yspeed') / 2 + ydifference / 100 chasingbullet.Move(xspeed, yspeed) chasingbullet.SetVar('xspeed', xspeed) chasingbullet.SetVar('yspeed', yspeed) end ================================================ FILE: Assets/Mods/@OverWorld Test/Lua/Waves/bullettest_chaserorb.lua.meta ================================================ fileFormatVersion: 2 guid: aa62b121337d29749b7f82b1f0c26e47 timeCreated: 1487174276 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Lua/Waves/bullettest_touhou.lua ================================================ -- You've seen this one in the trailer (if you've seen the trailer). spawntimer = 0 bullets = {} yOffset = 180 mult = 0.5 function Update() spawntimer = spawntimer + 1 if(spawntimer % 30 == 0) then local numbullets = 10 for i=1,numbullets+1 do local bullet = CreateProjectile('bullet', 0, yOffset) bullet.SetVar('timer', 0) bullet.SetVar('offset', math.pi * 2 * i / numbullets) bullet.SetVar('negmult', mult) bullet.SetVar('lerp', 0) table.insert(bullets, bullet) end mult = mult + 0.05 end for i=1,#bullets do local bullet = bullets[i] local timer = bullet.GetVar('timer') local offset = bullet.GetVar('offset') local lerp = bullet.GetVar('lerp') local neg = 1 local posx = (70*lerp)*math.sin(timer*bullet.GetVar('negmult') + offset) local posy = (70*lerp)*math.cos(timer + offset) + yOffset - lerp*50 bullet.MoveTo(posx, posy) bullet.SetVar('timer', timer + 1/40) lerp = lerp + 1 / 90 if lerp > 4.0 then lerp = 4.0 end bullet.SetVar('lerp', lerp) end end ================================================ FILE: Assets/Mods/@OverWorld Test/Lua/Waves/bullettest_touhou.lua.meta ================================================ fileFormatVersion: 2 guid: e938c1863a656ae44825707c8427178e timeCreated: 1487174280 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Lua/Waves.meta ================================================ fileFormatVersion: 2 guid: 36c914effdc881e438573d0757bcf93f folderAsset: yes timeCreated: 1487174275 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Lua.meta ================================================ fileFormatVersion: 2 guid: 15e09704707914c45a64292950458d04 folderAsset: yes timeCreated: 1487174273 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Sounds/Secret/Fall.wav.meta ================================================ fileFormatVersion: 2 guid: 568a0f4a8a251584bad1094c1e062eec AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Sounds/Secret/noise.wav.meta ================================================ fileFormatVersion: 2 guid: 83b51623d081c90488a24037c1de9bc1 AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Sounds/Secret.meta ================================================ fileFormatVersion: 2 guid: 5ae924d67d7ada048ac95904d52a4363 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Sounds/Voices/punderbolt.ogg.meta ================================================ fileFormatVersion: 2 guid: 89d690fcf6f0f394998121a48097e173 timeCreated: 1488955306 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Sounds/Voices.meta ================================================ fileFormatVersion: 2 guid: 1d7abf6575ccd024ab929c8d539eeb08 folderAsset: yes timeCreated: 1487174275 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Sounds.meta ================================================ fileFormatVersion: 2 guid: 06a23abb57155c546b01e45835ffce1f folderAsset: yes timeCreated: 1487174273 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Sprites/Mugshots/addYourCustomFaceSpritesHere.png.meta ================================================ fileFormatVersion: 2 guid: 01236d09dece1d44aad5971ab5111e91 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 27b39c27bb540a241ba2cfed33e2d3c5 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Sprites/Mugshots.meta ================================================ fileFormatVersion: 2 guid: d063d4f64c15fc5429dd9a00c1a04fc0 folderAsset: yes timeCreated: 1488955306 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Sprites/Overworld/Punder/0.png.meta ================================================ fileFormatVersion: 2 guid: 2017658947d8a5b43bb6720e34af23d0 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 885bb826d86b7544a908f6efa320080f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Sprites/Overworld/Punder/1.png.meta ================================================ fileFormatVersion: 2 guid: 7801b99d48f55d844bbe1a64c451983b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 3075155ba505ffe4a9ceed24efbff6f4 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Sprites/Overworld/Punder/10.png.meta ================================================ fileFormatVersion: 2 guid: 779dc6ff33066ae46984cda03366db28 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 52d1f68b4a291034cba074ced0164c73 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Sprites/Overworld/Punder/11.png.meta ================================================ fileFormatVersion: 2 guid: 77405624508834441a5dd2282878b4f2 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 8b3bb506670056147b4222cba42c3380 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Sprites/Overworld/Punder/12.png.meta ================================================ fileFormatVersion: 2 guid: 45b60e4621bfb9648800ffae2b3f3df4 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: f16d67ea4c9d74540ae62dfb23b55e70 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Sprites/Overworld/Punder/13.png.meta ================================================ fileFormatVersion: 2 guid: d30a26ea4bd3e8844a3be98054b489e7 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 07fa66fc850934b42a4d89e68cbc9d27 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Sprites/Overworld/Punder/14.png.meta ================================================ fileFormatVersion: 2 guid: 9de74b071b32c674fbb399aa90140be8 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: b9c428e8584384f4786d58ad363e7878 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Sprites/Overworld/Punder/15.png.meta ================================================ fileFormatVersion: 2 guid: bac9073150a33bb4fa00b35e69279011 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: f2109642160488b44a2285f6e84c6564 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Sprites/Overworld/Punder/2.png.meta ================================================ fileFormatVersion: 2 guid: ea361498a6ffa9e419906b87185aa406 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: f7aeac0cb4dbb3d42becedda6e542ae1 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Sprites/Overworld/Punder/3.png.meta ================================================ fileFormatVersion: 2 guid: 633cc6a5a32b0754eaa25e98a20f6c0c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: b72c689c5832f034fa4384962efb6c4e vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Sprites/Overworld/Punder/4.png.meta ================================================ fileFormatVersion: 2 guid: fb0ca28f9e09aaa4e81bf4a4cf28a86e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: bd707765eb40bee408d081b9b0bc3ff3 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Sprites/Overworld/Punder/5.png.meta ================================================ fileFormatVersion: 2 guid: 16b935915a17fbc4488724da15db2395 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 5bd512b8b9003d44eb451bee23f44dd9 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Sprites/Overworld/Punder/6.png.meta ================================================ fileFormatVersion: 2 guid: b34020ddc44472b4791cdf552d4fe99a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 1643ede642d683541b944d2d9ad2d127 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Sprites/Overworld/Punder/7.png.meta ================================================ fileFormatVersion: 2 guid: 99b1a1be3c4307940b2bf6b833371604 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: b441a653ba8c09842842b3ffea7fb53c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Sprites/Overworld/Punder/8.png.meta ================================================ fileFormatVersion: 2 guid: db8276de94d6665418bd855c8e3366fd TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4c0adb80081bad54eb5d385cf3b50325 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Sprites/Overworld/Punder/9.png.meta ================================================ fileFormatVersion: 2 guid: 230b48f60a712574b9c63ddc86fb2e35 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: ab96d510b95bb6c458780600f6c9b246 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Sprites/Overworld/Punder.meta ================================================ fileFormatVersion: 2 guid: 4301aa454e6a7834ea3c0324f36a9670 folderAsset: yes timeCreated: 1493458827 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Sprites/Overworld.meta ================================================ fileFormatVersion: 2 guid: 4847be6414150294f955525e0a8dd3b9 folderAsset: yes timeCreated: 1488873249 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Sprites/bg.png.meta ================================================ fileFormatVersion: 2 guid: aae334fdb53a38f48b52e343e0872331 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 32be4cdecb2cc5a40ac40d2d91e8513d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Sprites/bullet.png.meta ================================================ fileFormatVersion: 2 guid: 414e6321a98555b44ad77910c19385a4 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 5589c9a44f4cb0d4880719f3540cbfe3 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Sprites/poseur.png.meta ================================================ fileFormatVersion: 2 guid: 4a9b8ae60a0e247469a6f4c0ab699152 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: a2b1032a3b4180d448858a7811ec6fa7 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test/Sprites.meta ================================================ fileFormatVersion: 2 guid: 89904592902453f468c7fef415d8165a folderAsset: yes timeCreated: 1487174273 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@OverWorld Test.meta ================================================ fileFormatVersion: 2 guid: b06fc4ed1b3848447b98839ab520aded folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@Title/Audio/mus_intro.ogg.meta ================================================ fileFormatVersion: 2 guid: 1118009dfe969374db4d301dd5f10dab timeCreated: 1487174350 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@Title/Audio/mus_menu.ogg.meta ================================================ fileFormatVersion: 2 guid: 6c8fd50b551e493499020fd161f73868 timeCreated: 1487174398 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@Title/Audio.meta ================================================ fileFormatVersion: 2 guid: 1703cd979f8fde54d9ec75ad13706389 folderAsset: yes timeCreated: 1487174273 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@Title/Sounds/intro_holdup.ogg.meta ================================================ fileFormatVersion: 2 guid: 090fa912902b281498591fd1cfa5cb9a timeCreated: 1487174332 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@Title/Sounds/intro_noise.ogg.meta ================================================ fileFormatVersion: 2 guid: bc988bc44ed70834cb71d00fa85180c9 timeCreated: 1487174566 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@Title/Sounds.meta ================================================ fileFormatVersion: 2 guid: 684a33acef153174a86504e0549e431d folderAsset: yes timeCreated: 1487174273 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@Title/Sprites/Intro/mask.png.meta ================================================ fileFormatVersion: 2 guid: 87c5f65df0217fa4cab10f623c015081 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 35dd13d4103a413489c64f13ef3f9cfe vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@Title/Sprites/Intro/spr_introimage_0.png.meta ================================================ fileFormatVersion: 2 guid: 294f7115e9264f949acf91b92ba9088d TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 56654971814d90149801955b4cabc73a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@Title/Sprites/Intro/spr_introimage_1.png.meta ================================================ fileFormatVersion: 2 guid: afb352772a5c1c947be32b567a8f83d2 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 900a84677ec837b4289ec0ea6d89b91c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@Title/Sprites/Intro/spr_introimage_10.png.meta ================================================ fileFormatVersion: 2 guid: d65c1e3016a2aa74fae1e3eaaa60e992 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 0f0695201cbe03744a885230aebc516a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@Title/Sprites/Intro/spr_introimage_2.png.meta ================================================ fileFormatVersion: 2 guid: 3fee180fba233b348ae41dd747bcec2d TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 84dbe2031f902ea42adc3325c5a609fa vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@Title/Sprites/Intro/spr_introimage_3.png.meta ================================================ fileFormatVersion: 2 guid: 397dbdb118b99ff48b6a3fb3d9e2644f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c10a8667483cc9d42ada705a31e8aa98 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@Title/Sprites/Intro/spr_introimage_4.png.meta ================================================ fileFormatVersion: 2 guid: d9d99ec2fda417a4296f5e7653d35709 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: fc2f25dcf628613438c1890d8e651d16 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@Title/Sprites/Intro/spr_introimage_5.png.meta ================================================ fileFormatVersion: 2 guid: 1ca3369533117f846805987db047e817 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 958074028b6c8064e812daa9f636639d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@Title/Sprites/Intro/spr_introimage_6.png.meta ================================================ fileFormatVersion: 2 guid: 5bd6737e5da91eb43881e2ca81ac7868 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 01f3ebf9c087aaf4982bc12afc9f98c3 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@Title/Sprites/Intro/spr_introimage_7.png.meta ================================================ fileFormatVersion: 2 guid: 8002689054964a74d8a757412db7888e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 02d36b56148108c428bf10dfef5d7ae7 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@Title/Sprites/Intro/spr_introimage_8.png.meta ================================================ fileFormatVersion: 2 guid: a174ddfb740778a46a5195005978f9e2 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c4a89f1f8c04d8d40a6799217e69c78b vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@Title/Sprites/Intro/spr_introimage_9.png.meta ================================================ fileFormatVersion: 2 guid: 4b0bf26120dbd3a46b8e366f175a8590 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 191ec32d748257d4b809f69dd45ab80a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@Title/Sprites/Intro/spr_introlast_0.png.meta ================================================ fileFormatVersion: 2 guid: 4f25a2dabec87b040a2547ffb883339e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 66d967ed791913e408563642cbc4d33b vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@Title/Sprites/Intro.meta ================================================ fileFormatVersion: 2 guid: 53d74e7b07452c1459b6528e003342fc folderAsset: yes timeCreated: 1487174274 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@Title/Sprites/Press Enter or Z.png.meta ================================================ fileFormatVersion: 2 guid: ce6788712929f4b419f8f4f7df4dc62e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: aa9e857cd3d9e2341ace83d1a6742531 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@Title/Sprites/Unitale_title.png.meta ================================================ fileFormatVersion: 2 guid: c6967095e7820b342827fb4af94b61f8 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 7fcdbf5ffd92a3045a578f693a4b8b56 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@Title/Sprites.meta ================================================ fileFormatVersion: 2 guid: 0df25520e8460454ba26022f2278e252 folderAsset: yes timeCreated: 1487174273 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/@Title.meta ================================================ fileFormatVersion: 2 guid: 584e7d646e717ee48b3ba44a59786db3 folderAsset: yes timeCreated: 1487174273 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Encounter Skeleton/Audio/put your music here, oggs only ================================================ ================================================ FILE: Assets/Mods/Encounter Skeleton/Audio/put your music here, oggs only.meta ================================================ fileFormatVersion: 2 guid: 26f5972a8ac89e147bbf59dc3da90151 timeCreated: 1487174274 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Encounter Skeleton/Audio.meta ================================================ fileFormatVersion: 2 guid: 9dc88d0f03cb7bb4583433688e0abdb8 folderAsset: yes timeCreated: 1487174273 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Encounter Skeleton/Lua/Encounters/encounter.lua ================================================ -- A basic encounter script skeleton you can copy and modify for your own creations. -- music = "shine_on_you_crazy_diamond" --Either OGG or WAV. Extension is added automatically. Uncomment for custom music. encountertext = "Poseur strikes a pose!" --Modify as necessary. It will only be read out in the action select screen. nextwaves = {"bullettest_chaserorb"} wavetimer = 4.0 arenasize = {155, 130} enemies = { "poseur" } enemypositions = { {0, 0} } -- A custom list with attacks to choose from. Actual selection happens in EnemyDialogueEnding(). Put here in case you want to use it. possible_attacks = {"bullettest_bouncy", "bullettest_chaserorb", "bullettest_touhou"} function EncounterStarting() -- If you want to change the game state immediately, this is the place. end function EnemyDialogueStarting() -- Good location for setting monster dialogue depending on how the battle is going. end function EnemyDialogueEnding() -- Good location to fill the 'nextwaves' table with the attacks you want to have simultaneously. nextwaves = { possible_attacks[math.random(#possible_attacks)] } end function DefenseEnding() --This built-in function fires after the defense round ends. encountertext = RandomEncounterText() --This built-in function gets a random encounter text from a random enemy. end function HandleSpare() State("ENEMYDIALOGUE") end function HandleItem(ItemID, ItemIndex, IsSilent) if not IsSilent then BattleDialog({"Selected item " .. ItemID .. "."}) end end ================================================ FILE: Assets/Mods/Encounter Skeleton/Lua/Encounters/encounter.lua.meta ================================================ fileFormatVersion: 2 guid: 1e175123c8cc13249a248151674fb151 timeCreated: 1487174276 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Encounter Skeleton/Lua/Encounters.meta ================================================ fileFormatVersion: 2 guid: 811bf02ecf853be4399e6eac4699514b folderAsset: yes timeCreated: 1487174275 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Encounter Skeleton/Lua/Monsters/poseur.lua ================================================ -- A basic monster script skeleton you can copy and modify for your own creations. comments = {"Smells like the work\rof an enemy stand.", "Poseur is posing like his\rlife depends on it.", "Poseur's limbs shouldn't be\rmoving in this way."} commands = {"Act 1", "Act 2", "Act 3"} randomdialogue = {"Random\nDialogue\n1.", "Random\nDialogue\n2.", "Random\nDialogue\n3."} sprite = "poseur" --Always PNG. Extension is added automatically. name = "Poseur" hp = 100 atk = 1 def = 1 check = "Check message goes here." dialogbubble = "right" -- See documentation for what bubbles you have available. canspare = false cancheck = true -- Happens after the slash animation but before function HandleAttack(attackstatus) if attackstatus == -1 then -- player pressed fight but didn't press Z afterwards else -- player did actually attack end end -- This handles the commands; all-caps versions of the commands list you have above. function HandleCustomCommand(command) if command == "ACT 1" then currentdialogue = {"Selected\nAct 1."} elseif command == "ACT 2" then currentdialogue = {"Selected\nAct 2."} elseif command == "ACT 3" then currentdialogue = {"Selected\nAct 3."} end BattleDialog({"You selected " .. command .. "."}) end ================================================ FILE: Assets/Mods/Encounter Skeleton/Lua/Monsters/poseur.lua.meta ================================================ fileFormatVersion: 2 guid: 82553f31d23e8404abf3c181ca168a30 timeCreated: 1487174278 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Encounter Skeleton/Lua/Monsters.meta ================================================ fileFormatVersion: 2 guid: e791cd3826123f8428e84b13cc253ffe folderAsset: yes timeCreated: 1487174276 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Encounter Skeleton/Lua/Waves/bullettest_bouncy.lua ================================================ -- The bouncing bullets attack from the documentation example. spawntimer = 0 bullets = {} function Update() spawntimer = spawntimer + 1 if spawntimer%30 == 0 then local posx = 30 - math.random(60) local posy = Arena.height/2 local bullet = CreateProjectile('bullet', posx, posy) bullet.SetVar('velx', 1 - 2*math.random()) bullet.SetVar('vely', 0) table.insert(bullets, bullet) end for i=1,#bullets do local bullet = bullets[i] local velx = bullet.GetVar('velx') local vely = bullet.GetVar('vely') local newposx = bullet.x + velx local newposy = bullet.y + vely if(bullet.x > -Arena.width/2 and bullet.x < Arena.width/2) then if(bullet.y < -Arena.height/2 + 8) then newposy = -Arena.height/2 + 8 vely = 4 end end vely = vely - 0.04 bullet.MoveTo(newposx, newposy) bullet.SetVar('vely', vely) end end ================================================ FILE: Assets/Mods/Encounter Skeleton/Lua/Waves/bullettest_bouncy.lua.meta ================================================ fileFormatVersion: 2 guid: fd8dda59f7fb38e4dad4f83e4798b72e timeCreated: 1487174281 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Encounter Skeleton/Lua/Waves/bullettest_chaserorb.lua ================================================ -- The chasing attack from the documentation example. chasingbullet = CreateProjectile('bullet', Arena.width/2, Arena.height/2) chasingbullet.SetVar('xspeed', 0) chasingbullet.SetVar('yspeed', 0) function Update() local xdifference = Player.x - chasingbullet.x local ydifference = Player.y - chasingbullet.y local xspeed = chasingbullet.GetVar('xspeed') / 2 + xdifference / 100 local yspeed = chasingbullet.GetVar('yspeed') / 2 + ydifference / 100 chasingbullet.Move(xspeed, yspeed) chasingbullet.SetVar('xspeed', xspeed) chasingbullet.SetVar('yspeed', yspeed) end ================================================ FILE: Assets/Mods/Encounter Skeleton/Lua/Waves/bullettest_chaserorb.lua.meta ================================================ fileFormatVersion: 2 guid: 04b8c4152d7850243915b95e87e83e37 timeCreated: 1487174276 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Encounter Skeleton/Lua/Waves/bullettest_touhou.lua ================================================ -- You've seen this one in the trailer (if you've seen the trailer). spawntimer = 0 bullets = {} yOffset = 180 mult = 0.5 function Update() spawntimer = spawntimer + 1 if(spawntimer % 30 == 0) then local numbullets = 10 for i=1,numbullets+1 do local bullet = CreateProjectile('bullet', 0, yOffset) bullet.SetVar('timer', 0) bullet.SetVar('offset', math.pi * 2 * i / numbullets) bullet.SetVar('negmult', mult) bullet.SetVar('lerp', 0) table.insert(bullets, bullet) end mult = mult + 0.05 end for i=1,#bullets do local bullet = bullets[i] local timer = bullet.GetVar('timer') local offset = bullet.GetVar('offset') local lerp = bullet.GetVar('lerp') local neg = 1 local posx = (70*lerp)*math.sin(timer*bullet.GetVar('negmult') + offset) local posy = (70*lerp)*math.cos(timer + offset) + yOffset - lerp*50 bullet.MoveTo(posx, posy) bullet.SetVar('timer', timer + 1/40) lerp = lerp + 1 / 90 if lerp > 4.0 then lerp = 4.0 end bullet.SetVar('lerp', lerp) end end ================================================ FILE: Assets/Mods/Encounter Skeleton/Lua/Waves/bullettest_touhou.lua.meta ================================================ fileFormatVersion: 2 guid: cb1bf65a243c14d49aec8bb236eb4fb9 timeCreated: 1487174280 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Encounter Skeleton/Lua/Waves.meta ================================================ fileFormatVersion: 2 guid: 98da3de9507a70b42aa4ae66321ff076 folderAsset: yes timeCreated: 1487174275 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Encounter Skeleton/Lua.meta ================================================ fileFormatVersion: 2 guid: 0e4103f4f396a2e41872ab298ff56c8d folderAsset: yes timeCreated: 1487174273 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Encounter Skeleton/Sprites/bg.png.meta ================================================ fileFormatVersion: 2 guid: 3c361e57237900b44bebbe57dc40fea0 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 04dc830b012bb054a82d9c999a8502bb vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Encounter Skeleton/Sprites/bullet.png.meta ================================================ fileFormatVersion: 2 guid: 0cccbba1bca14ab4083d4293b2d8c969 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 3aa732a34f0cc5143bd3d777004bb5d8 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Encounter Skeleton/Sprites/poseur.png.meta ================================================ fileFormatVersion: 2 guid: ba61469fa2960ea4c8a832e07b73e654 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: ad35b31888dbd4843b0c3a38dadc0ff4 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Encounter Skeleton/Sprites.meta ================================================ fileFormatVersion: 2 guid: e66ed79da529c684ca3fadc82d425a67 folderAsset: yes timeCreated: 1487174273 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Encounter Skeleton.meta ================================================ fileFormatVersion: 2 guid: 671a50c40ad6a5f46b8bcce5f7b9a76c folderAsset: yes timeCreated: 1487174273 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Audio/mus_anothermedium.ogg.meta ================================================ fileFormatVersion: 2 guid: 78b283dc041c3b74b86feb8102a27c46 timeCreated: 1487174419 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Audio/mus_zzz_c.ogg.meta ================================================ fileFormatVersion: 2 guid: bbe244e98cb2ff145bd23c73f9de7ffd AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Audio/put your music here, ogg or wav only ================================================ ================================================ FILE: Assets/Mods/Examples/Audio/put your music here, ogg or wav only.meta ================================================ fileFormatVersion: 2 guid: 5100ff0ae034ce64b8d05123d60a2abc timeCreated: 1487174274 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Audio.meta ================================================ fileFormatVersion: 2 guid: e714717b52e91e348a654c3b29de8998 folderAsset: yes timeCreated: 1487174273 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Animations/sans_anim.lua ================================================ --For usage, check out the encounter Lua's EncounterStarting() and Update() functions. -- First, we can create the torso, legs and head. sanstorso = CreateSprite("sans/sanstorso") sanslegs = CreateSprite("sans/sanslegs") sanshead = CreateSprite("sans/sanshead1") --We parent the torso to the legs, so when you move the legs, the torso moves too. --We do the same for attaching the head to the torso. sanstorso.SetParent(sanslegs) sanshead.SetParent(sanstorso) --Now we adjust the height for the individual parts so they look more like a skeleton and less like a pile of bones. sanslegs.y = 240 sanslegs.x = 320 sanstorso.y = -5 --The torso's height is relative to the legs they're parented to. sanshead.y = 40 --The head's height is relative to the torso it's parented to. --We set the torso's pivot point to halfway horizontally, and on the bottom vertically, --so we can rotate it around the bottom instead of the center. sanstorso.SetPivot(0.5, 0) --We set the torso's anchor point to the top center. Because the legs are pivoted on the bottom (so rescaling them only makes them move up), --we want the torso to move along upwards with them. sanstorso.SetAnchor(0.5, 1) sanslegs.SetPivot(0.5, 0) --Finally, we do some frame-by-frame animation just to show off the feature. You put in a list of sprites, --and the time you want a sprite change to take. In this case, it's 1/2 of a second. sanshead.SetAnimation({"sans/sanshead1", "sans/sanshead2", "sans/sanshead3"}, 1/2) function AnimateSans() sanslegs.Scale(1, 1+0.1*math.sin(Time.time*2)) sanshead.MoveTo(2*math.sin(Time.time), 40 + 2*math.cos(Time.time)) sanshead.rotation = 10*math.sin(Time.time + 1) sanstorso.rotation = 10*math.sin(Time.time + 2) end ================================================ FILE: Assets/Mods/Examples/Lua/Animations/sans_anim.lua.meta ================================================ fileFormatVersion: 2 guid: f2a5be29652680a43b5bbf8655d24b5a timeCreated: 1487174281 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Animations.meta ================================================ fileFormatVersion: 2 guid: 746745e86512796479f0ee353d39260e folderAsset: yes timeCreated: 1487174275 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Encounters/#00 - Basic Encounter Skeleton.lua ================================================ -- A basic encounter script skeleton you can copy and modify for your own creations. -- music = "shine_on_you_crazy_diamond" --Either OGG or WAV. Extension is added automatically. Uncomment for custom music. encountertext = "Poseur strikes a pose!" --Modify as necessary. It will only be read out in the action select screen. nextwaves = {"bullettest_chaserorb"} wavetimer = 4.0 arenasize = {155, 130} enemies = { "poseur" } enemypositions = { {0, 0} } -- A custom list with attacks to choose from. Actual selection happens in EnemyDialogueEnding(). Put here in case you want to use it. possible_attacks = {"bullettest_bouncy", "bullettest_chaserorb", "bullettest_touhou"} function EncounterStarting() -- If you want to change the game state immediately, this is the place. end function EnemyDialogueStarting() -- Good location for setting monster dialogue depending on how the battle is going. end function EnemyDialogueEnding() -- Good location to fill the 'nextwaves' table with the attacks you want to have simultaneously. nextwaves = { possible_attacks[math.random(#possible_attacks)] } end function DefenseEnding() --This built-in function fires after the defense round ends. encountertext = RandomEncounterText() --This built-in function gets a random encounter text from a random enemy. end function HandleSpare() State("ENEMYDIALOGUE") end function HandleItem(ItemID) BattleDialog({"Selected item " .. ItemID .. "."}) end ================================================ FILE: Assets/Mods/Examples/Lua/Encounters/#00 - Basic Encounter Skeleton.lua.meta ================================================ fileFormatVersion: 2 guid: 436289ad3070c604f896656e6ac84f83 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Encounters/#05 - New characters.lua ================================================ -- A basic encounter script skeleton you can copy and modify for your own creations. -- music = "shine_on_you_crazy_diamond" --Always OGG. Extension is added automatically. Remove the first two lines for custom music. encountertext = "New charas ! é.è" --Modify as necessary. It will only be read out in the action select screen. nextwaves = {"bullettest_chaserorb"} wavetimer = 4.0 arenasize = {155, 130} autolinebreak = true enemies = { "newCharactersPoseur" } enemypositions = { {0, 0} } -- A custom list with attacks to choose from. Actual selection happens in EnemyDialogueEnding(). Put here in case you want to use it. possible_attacks = {"bullettest_bouncy", "bullettest_chaserorb", "bullettest_touhou"} function EncounterStarting() -- If you want to change the game state immediately, this is the place. end function EnemyDialogueStarting() -- Good location for setting monster dialogue depending on how the battle is going. enemies[1].SetVar('currentdialogue', {"It's\nworking\nù-ù."}) end function EnemyDialogueEnding() -- Good location to fill the 'nextwaves' table with the attacks you want to have simultaneously. -- This example line below takes a random attack from 'possible_attacks'. nextwaves = { possible_attacks[math.random(#possible_attacks)] } end function DefenseEnding() --This built-in function fires after the defense round ends. encountertext = RandomEncounterText() --This built-in function gets a random encounter text from a random enemy. end function HandleSpare() State("ENEMYDIALOGUE") end function HandleItem(ItemID) BattleDialog({"Selected item " .. ItemID .. "."}) end ================================================ FILE: Assets/Mods/Examples/Lua/Encounters/#05 - New characters.lua.meta ================================================ fileFormatVersion: 2 guid: 40a2ca99efa64c74a82c91e72219701c timeCreated: 1487174277 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Encounters/#06 - Arena movements.lua ================================================ -- A basic encounter script skeleton you can copy and modify for your own creations. -- music = "shine_on_you_crazy_diamond" --Always OGG. Extension is added automatically. Remove the first two lines for custom music. encountertext = "Now you can move the Arena! Check it out!" --Modify as necessary. It will only be read out in the action select screen. nextwaves = {"bullettest_chaserorb"} wavetimer = 4.0 arenasize = {155, 130} autolinebreak = true enemies = { "poseur" } enemypositions = { {0, 0} } -- A custom list with attacks to choose from. Actual selection happens in EnemyDialogueEnding(). Put here in case you want to use it. possible_attacks = {"arenatest_move"} function EncounterStarting() -- If you want to change the game state immediately, this is the place. end function EnemyDialogueEnding() -- Good location to fill the 'nextwaves' table with the attacks you want to have simultaneously. -- This example line below takes a random attack from 'possible_attacks'. nextwaves = { possible_attacks[math.random(#possible_attacks)] } end function DefenseEnding() --This built-in function fires after the defense round ends. encountertext = RandomEncounterText() --This built-in function gets a random encounter text from a random enemy. end function HandleItem(ItemID) BattleDialog({"Selected item " .. ItemID .. "."}) end ================================================ FILE: Assets/Mods/Examples/Lua/Encounters/#06 - Arena movements.lua.meta ================================================ fileFormatVersion: 2 guid: 25b1f6933ac5e394fbdda4ca7b8e51fb DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Encounters/#07 - Many quins.lua ================================================ -- A basic encounter script skeleton you can copy and modify for your own creations. -- music = "shine_on_you_crazy_diamond" --Always OGG. Extension is added automatically. Remove the first two lines for custom music. encountertext = "The path is blocked by\rmany quins!" --Modify as necessary. It will only be read out in the action select screen. if not isCYF then error("You better use this mod on CYF!\nHere nothing will work.") end nextwaves = {"bullettest_chaserorb"} wavetimer = 4.0 arenasize = {155, 130} autolinebreak = true enemies = {"poseur", "poseur", "poseur", "poseur", "poseur", "poseur", "poseur", "poseur", "poseur"} enemypositions = {{-200, 10}, {-150, 7}, {-100, 5}, {-50, 2}, {0, 0}, {50, -2}, {100, -5}, {150, -7}, {200, -10}} -- A custom list with attacks to choose from. Actual selection happens in EnemyDialogueEnding(). Put here in case you want to use it. possible_attacks = {"bullettest_bouncy", "bullettest_chaserorb", "bullettest_touhou"} function EncounterStarting() -- If you want to change the game state immediately, this is the place. end function EnemyDialogueEnding() -- Good location to fill the 'nextwaves' table with the attacks you want to have simultaneously. -- This example line below takes a random attack from 'possible_attacks'. nextwaves = { possible_attacks[math.random(#possible_attacks)] } end function DefenseEnding() --This built-in function fires after the defense round ends. encountertext = RandomEncounterText() --This built-in function gets a random encounter text from a random enemy. end function HandleItem(ItemID) BattleDialog({"Selected item " .. ItemID .. "."}) end ================================================ FILE: Assets/Mods/Examples/Lua/Encounters/#07 - Many quins.lua.meta ================================================ fileFormatVersion: 2 guid: 927d33351fca74e428c7184991577cbd timeCreated: 1487174279 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Encounters/#08 - Intro + LaunchMusic.lua ================================================ -- A basic encounter script skeleton you can copy and modify for your own creations. -- music = "shine_on_you_crazy_diamond" --Either OGG or WAV. Extension is added automatically. Uncomment for custom music. encountertext = "Select ACT commands to see\rdifferent bullets in action." --Modify as necessary. It will only be read out in the action select screen. nextwaves = {"bullettest_chaserorb"} wavetimer = 4.0 arenasize = {155, 130} autolinebreak = true enemies = { "poseurIntroAndLaunchMusic" } enemypositions = { {0, 0} } -- A custom list with attacks to choose from. Actual selection happens in EnemyDialogueEnding(). Put here in case you want to use it. possible_attacks = {"bullettest_bouncy", "bullettest_chaserorb", "bullettest_touhou"} function EncounterStarting() -- If you want to change the game state immediately, this is the place. -- Pause the music to start it when you need to start it. Audio.Pause() -- Intro text! enemies[1]["currentdialogue"] = {"Hoo boy!", "Time for you to die!", "[noskip][func:LaunchMusic][func:State, ACTIONSELECT][next]"} -- Starts the battle with set text State("ENEMYDIALOGUE") end function EnemyDialogueStarting() -- Good location for setting monster dialogue depending on how the battle is going. end function EnemyDialogueEnding() -- Good location to fill the 'nextwaves' table with the attacks you want to have simultaneously. -- The wavetype is set in bullet_testing_poseur's act commands. nextwaves = { GetGlobal("wavetype") } end function DefenseEnding() --This built-in function fires after the defense round ends. encountertext = RandomEncounterText() --This built-in function gets a random encounter text from a random enemy. end function HandleSpare() State("ENEMYDIALOGUE") end function HandleItem(ItemID) BattleDialog({"Selected item " .. ItemID .. "."}) end ================================================ FILE: Assets/Mods/Examples/Lua/Encounters/#08 - Intro + LaunchMusic.lua.meta ================================================ fileFormatVersion: 2 guid: 07aae57439600ee4dbe4687754832512 timeCreated: 1487174276 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Encounters/#09 - Revive test.lua ================================================ -- A basic encounter script skeleton you can copy and modify for your own creations. -- music = "shine_on_you_crazy_diamond" --Either OGG or WAV. Extension is added automatically. Uncomment for custom music. encountertext = "Kill yourself and revive!" --Modify as necessary. It will only be read out in the action select screen. nextwaves = {"bullettest_chaserorb"} wavetimer = math.huge arenasize = {155, 130} autolinebreak = true -- Variable enabling the revive system revive = true enemies = { "poseur" } enemypositions = { {0, 0} } -- A custom list with attacks to choose from. Actual selection happens in EnemyDialogueEnding(). Put here in case you want to use it. possible_attacks = {"bullettest_bouncy", "bullettest_chaserorb", "bullettest_touhou"} function EncounterStarting() -- If you want to change the game state immediately, this is the place. end function EnemyDialogueStarting() -- Good location for setting monster dialogue depending on how the battle is going. end function EnemyDialogueEnding() -- Good location to fill the 'nextwaves' table with the attacks you want to have simultaneously. -- The wavetype is set in bullet_testing_poseur's act commands. -- nextwaves = { possible_attacks[math.random(#possible_attacks)] } end function DefenseEnding() --This built-in function fires after the defense round ends. encountertext = RandomEncounterText() --This built-in function gets a random encounter text from a random enemy. end function HandleSpare() State("ENEMYDIALOGUE") end function HandleItem(ItemID) BattleDialog({"Selected item " .. ItemID .. "."}) end ================================================ FILE: Assets/Mods/Examples/Lua/Encounters/#09 - Revive test.lua.meta ================================================ fileFormatVersion: 2 guid: ffb51caff41f1234b9c39c8e0531207e DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Encounters/#10 - timeScale test.lua ================================================ -- A basic encounter script skeleton you can copy and modify for your own creations. -- music = "shine_on_you_crazy_diamond" --Either OGG or WAV. Extension is added automatically. Uncomment for custom music. encountertext = "Poseur checks out the ACT menu!" --Modify as necessary. It will only be read out in the action select screen. nextwaves = {"bullettest_chaserorb_time"} wavetimer = 4.0 arenasize = {155, 130} enemies = { "timeScalePoseur" } enemypositions = { {0, 0} } -- A custom list with attacks to choose from. Actual selection happens in EnemyDialogueEnding(). Put here in case you want to use it. possible_attacks = {"bullettest_bouncy_time", "bullettest_chaserorb_time", "bullettest_touhou_time"} function EncounterStarting() -- If you want to change the game state immediately, this is the place. end function EnemyDialogueStarting() -- Good location for setting monster dialogue depending on how the battle is going. end function EnemyDialogueEnding() -- Good location to fill the 'nextwaves' table with the attacks you want to have simultaneously. nextwaves = { possible_attacks[math.random(#possible_attacks)] } end function DefenseEnding() --This built-in function fires after the defense round ends. encountertext = RandomEncounterText() --This built-in function gets a random encounter text from a random enemy. end function HandleSpare() State("ENEMYDIALOGUE") end function HandleItem(ItemID) BattleDialog({"Selected item " .. ItemID .. "."}) end ================================================ FILE: Assets/Mods/Examples/Lua/Encounters/#10 - timeScale test.lua.meta ================================================ fileFormatVersion: 2 guid: 92878a7f5f027403493c2b2874e1bbda DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Encounters/01 - Two monsters.lua ================================================ encountertext = "Your path is blocked by two mannequins!" --Modify as necessary. It will only be read out in the action select screen. wavetimer = 4 arenasize = {155, 130} nextwaves = {"bullettest_touhou"} autolinebreak = true enemies = {"twoMonstersPoseur", "twoMonstersPosette"} enemypositions = { {-180, 0}, {120, 0} } -- A custom list with attacks to choose from. Actual selection happens in EnemyDialogueEnding(). Put here in case you want to use it. possible_attacks = {"bullettest_bouncy", "bullettest_chaserorb", "bullettest_touhou"} function EncounterStarting() -- If you want to change the game state immediately, this is the place. end function EnemyDialogueStarting() -- Good location for setting monster dialogue depending on how the battle is going. end function EnemyDialogueEnding() -- Good location to fill the 'nextwaves' table with the attacks you want to have simultaneously. -- This example line below takes a random attack from 'possible_attacks'. nextwaves = { possible_attacks[math.random(#possible_attacks)] } end function DefenseEnding() --This built-in function fires after the defense round ends. encountertext = RandomEncounterText() --This built-in function gets a random encounter text from a random enemy. end function HandleSpare() State("ENEMYDIALOGUE") end function HandleItem(ItemID) BattleDialog({"Selected item " .. ItemID .. "."}) end ================================================ FILE: Assets/Mods/Examples/Lua/Encounters/01 - Two monsters.lua.meta ================================================ fileFormatVersion: 2 guid: 854d3525851d41349b5feb10f2830550 timeCreated: 1487174278 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Encounters/02 - Colored bullets.lua ================================================ -- A basic encounter script skeleton you can copy and modify for your own creations. -- music = "shine_on_you_crazy_diamond" --Either OGG or WAV. Extension is added automatically. Uncomment for custom music. encountertext = "Select ACT commands to see\rdifferent bullets in action." --Modify as necessary. It will only be read out in the action select screen. nextwaves = {"bullettest_chaserorb"} wavetimer = 4.0 arenasize = {155, 130} autolinebreak = true enemies = { "bulletTestingPoseur" } enemypositions = { {0, 0} } -- A custom list with attacks to choose from. Actual selection happens in EnemyDialogueEnding(). Put here in case you want to use it. possible_attacks = {"bullettest_bouncy", "bullettest_chaserorb", "bullettest_touhou"} function EncounterStarting() -- If you want to change the game state immediately, this is the place. end function EnemyDialogueStarting() -- Good location for setting monster dialogue depending on how the battle is going. end function EnemyDialogueEnding() -- Good location to fill the 'nextwaves' table with the attacks you want to have simultaneously. -- The wavetype is set in bullet_testing_poseur's act commands. nextwaves = { GetGlobal("wavetype") } end function DefenseEnding() --This built-in function fires after the defense round ends. encountertext = RandomEncounterText() --This built-in function gets a random encounter text from a random enemy. end function HandleSpare() State("ENEMYDIALOGUE") end function HandleItem(ItemID) BattleDialog({"Selected item " .. ItemID .. "."}) end ================================================ FILE: Assets/Mods/Examples/Lua/Encounters/02 - Colored bullets.lua.meta ================================================ fileFormatVersion: 2 guid: 94a9cb745a9fb9a47af30b5abdbfcf75 timeCreated: 1487174279 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Encounters/03 - Library Example.lua ================================================ -- An example of how to use libraries. -- First, let's include our library. voicer = require "randomvoice" -- Now, set some voices that are included in the default directory. voicer.setvoices({"v_sans", "v_fluffybuns", "v_papyrus", "v_flowey"}) -- We can now use the voicer.randomize() function on all our dialogue! See the EnemyDialogueStarting function below. encountertext = "A library example that randomizes\ra monster's voice per letter.\nCheck it out!" --Modify as necessary. It will only be read out in the action select screen. nextwaves = {"bullettest_chaserorb"} wavetimer = 4.0 arenasize = {155, 130} enemies = { "poseur" } enemypositions = { {0, 0} } -- A custom list with attacks to choose from. Actual selection happens in EnemyDialogueEnding(). Put here in case you want to use it. possible_attacks = {"bullettest_bouncy", "bullettest_chaserorb", "bullettest_touhou"} function EncounterStarting() -- If you want to change the game state immediately, this is the place. local randomdialogue = enemies[1].GetVar("randomdialogue") -- retrieve dialogue first, for readability enemies[1].SetVar("randomdialogue", voicer.randomizetable(randomdialogue)) -- Randomize voices with the library! end function EnemyDialogueStarting() -- Good location for setting monster dialogue depending on how the battle is going. -- Example: enemies[1].SetVar('currentdialogue', {"Check it\nout!"}) See documentation for details. local enemydialogue = enemies[1].GetVar("currentdialogue") -- retrieve dialogue first, for readability if enemydialogue ~= nil then -- Note that this can happen when a monster is having its random dialogue! enemies[1].SetVar('currentdialogue', voicer.randomizetable(enemydialogue)) -- Randomize voices with the library! end end function EnemyDialogueEnding() -- Good location to fill the 'nextwaves' table with the attacks you want to have simultaneously. -- This example line below takes a random attack from 'possible_attacks'. nextwaves = { possible_attacks[math.random(#possible_attacks)] } end function DefenseEnding() --This built-in function fires after the defense round ends. encountertext = RandomEncounterText() --This built-in function gets a random encounter text from a random enemy. end function HandleSpare() State("ENEMYDIALOGUE") --By default, pressing spare only spares the enemies but stays in the menu. Changing state happens here. end function HandleItem(ItemID) BattleDialog({"Selected item " .. ItemID .. "."}) end ================================================ FILE: Assets/Mods/Examples/Lua/Encounters/03 - Library Example.lua.meta ================================================ fileFormatVersion: 2 guid: 76fe30e2479be0b4bba12516e330f6e9 timeCreated: 1487174278 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Encounters/04 - Animation.lua ================================================ -- An animation demo with a rotating Sans head. -- music = "shine_on_you_crazy_diamond" --Always OGG. Extension is added automatically. Remove the first two lines for custom music. encountertext = "It's an animation!" --Modify as necessary. It will only be read out in the action select screen. nextwaves = {"bullettest_chaserorb"} wavetimer = 4.0 arenasize = {155, 130} autolinebreak = true enemies = { "sans" } enemypositions = { {0, 0} } -- A custom list with attacks to choose from. Actual selection happens in EnemyDialogueEnding(). Put here in case you want to use it. possible_attacks = {"bullettest_bouncy", "bullettest_chaserorb", "bullettest_touhou"} function EncounterStarting() --Include the animation Lua file. It's important you do this in EncounterStarting, because you can't create sprites before the game's done loading. --Be careful that you use different variable names as you have here, because the encounter's will be overwritten otherwise! --You can also use that to your benefit if you want to share a bunch of variables with multiple encounters. require "Animations/sans_anim" end function Update() --By calling the AnimateSans() function on the animation Lua file, we can create some movement! AnimateSans() end function EnemyDialogueEnding() -- Good location to fill the 'nextwaves' table with the attacks you want to have simultaneously. -- This example line below takes a random attack from 'possible_attacks'. nextwaves = { possible_attacks[math.random(#possible_attacks)] } end function DefenseEnding() --This built-in function fires after the defense round ends. encountertext = RandomEncounterText() --This built-in function gets a random encounter text from a random enemy. end function HandleSpare() State("ENEMYDIALOGUE") end function HandleItem(ItemID) BattleDialog({"Selected item " .. ItemID .. "."}) end ================================================ FILE: Assets/Mods/Examples/Lua/Encounters/04 - Animation.lua.meta ================================================ fileFormatVersion: 2 guid: fced69023dbbb974b94746b65b5d491a timeCreated: 1487174281 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Encounters.meta ================================================ fileFormatVersion: 2 guid: f48ea64bda00d9340aa8cad1e58c6712 folderAsset: yes timeCreated: 1487174276 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Events/BoxTest.lua ================================================ function EventPage1() General.SetChoice({"Yes", "No"}, "Use the box?") if lastChoice == 0 then Inventory.SpawnBoxMenu() end end ================================================ FILE: Assets/Mods/Examples/Lua/Events/BoxTest.lua.meta ================================================ fileFormatVersion: 2 guid: de746af2dcdb535418a46d9be90ea71a DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Events/Bpie.lua ================================================ function EventPage1() Inventory.AddItem("Butterscotch Pie") General.SetDialog({"You pickup the Butterscotch Pie."}, true) Event.SetPage(Event.GetName(), -1) -- Removes the event for this save file forever, even between maps end ================================================ FILE: Assets/Mods/Examples/Lua/Events/Bpie.lua.meta ================================================ fileFormatVersion: 2 guid: cef9faf390633fa4ab6264f2c6590659 timeCreated: 1487174280 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Events/CharacterSelector.lua ================================================ --Oh hi! Welcome to CYF's 0.6's secret, part 1 and 2! It's a good thing you can't discover the 3rd part like this, though. local currentChar = 1 local phase = 0 local background = nil local chars = {} local animationKeys = { "FriskUT", "CharaOW", "MonsterKidOW", "BoosterOW", "AsrielOW" } local AN1M4710NK3Y5 = { "FriskUT", "CharaOW", "MonsterKidOW", "BoosterOW", "AsrielOW", "Overworld/CharacterSelector/Mystery/mysteryman" } local positions = { {160, 160}, {320, 160}, {480, 160}, {240, 320}, {400, 320} } local P051710N5 = { {150, 200}, {320, 100}, {490, 200}, {240, 380}, {400, 380}, {320, 240} } local disabled = {} local animationCount = 0 local friskWait = 1 local lastInput = "" local b0015P3C141 = false local fadeCount = 1 local nextPhase = false local inProgress = false local count = 0 local vely = 2 local show = false local limit = 10 function EventPage0() if GetRealGlobal("CYFInternalCharacterSelected") then Event.Remove(Event.GetName()) else SetRealGlobal("CYFInternalCharacterSelected", true) Screen.SetTone(false, false, 0, 0, 0, 0) disabled = { GetRealGlobal("CYFInternalCross1"), GetRealGlobal("CYFInternalCross2"), GetRealGlobal("CYFInternalCross3"), GetRealGlobal("CYFInternalCross4"), GetRealGlobal("CYFInternalCross5") } disabled[6] = not (disabled[1] and disabled[2] and disabled[3] and disabled[4] and disabled[5]) if not disabled[6] then Audio.Stop() animationKeys = AN1M4710NK3Y5 positions = P051710N5 end while disabled[currentChar] do currentChar = currentChar + 1 end lastEnabled = currentChar NewAudio.CreateChannel("CharSelect") Screen.DispImg("px", 1, 320, 240, 0, 0, 0, 255) background = Event.GetSprite("Image1") background.Scale(640, 480) Screen.DispImg("px", 4 * #animationKeys + 2, 320, 240, 0, 0, 0, 255) foreground = Event.GetSprite("Image" .. (4 * #animationKeys + 2)) foreground.Scale(640, 480) local playerSprite = Event.GetSprite("Player") playerSprite.alpha = 1 end end function EventPage1() Player.CanMove(false) if phase == 0 then phase = 1 for i = 1, #animationKeys do Screen.DispImg("Overworld/CharacterSelector/window_border", i * 2, positions[i][1], positions[i][2], 255, 255, 255, 255) Screen.DispImg("Overworld/CharacterSelector/window_back", i * 2 + 1, positions[i][1], positions[i][2], 255, 255, 255, 255) Screen.DispImg(animationKeys[i] .. "/1", 2 * #animationKeys + i + 1, positions[i][1], positions[i][2], 255, 255, 255, 255) Screen.DispImg("Overworld/CharacterSelector/Mystery/cross" .. i, 3 * #animationKeys + i + 1, positions[i][1], positions[i][2], 255, 255, 255, 255) chars[i] = {} chars[i]["border"] = Event.GetSprite("Image" .. (i * 2)) chars[i]["back"] = Event.GetSprite("Image" .. (i * 2 + 1)) chars[i]["back"].SetParent(chars[i]["border"]) chars[i]["sprite"] = Event.GetSprite("Image" .. (#animationKeys * 2 + i + 1)) chars[i]["sprite"].SetParent(chars[i]["back"]) chars[i]["sprite"].loopmode = "ONESHOT" chars[i]["cross"] = Event.GetSprite("Image" .. (#animationKeys * 3 + i + 1)) chars[i]["cross"].alpha = disabled[i] and 1 or 0 chars[i]["cross"].SetParent(chars[i]["back"]) end foreground.MoveAbove(chars[#chars]["border"]) ChangeTarget(currentChar, false, true) elseif phase == 1 then foreground.alpha = fadeCount if fadeCount <= 0 then phase = 2 end elseif phase == 2 then local beginCurrentChar = currentChar HandleInput() -- Triggers the formula if beginCurrentChar ~= currentChar then limit = 10 while disabled[currentChar] do if limit == 0 then break end if lastInput == "Left" or lastInput == "Right" then HandleInput(lastInput) -- Triggers the formula with the same direction as before else HandleUpDownFail() break end limit = limit - 1 end end elseif phase == 3 then if currentChar == 1 then Event.SetAnimHeader("Player", "") chars[currentChar]["sprite"].StopAnimation() chars[currentChar]["sprite"].Set(animationKeys[currentChar] .. "/1") elseif currentChar == 2 then Event.SetAnimHeader("Player", "Chara") chars[currentChar]["sprite"].loopmode = "LOOP" chars[currentChar]["sprite"].SetAnimation({"CharaOW/l1", "CharaOW/l2", "CharaOW/l3" }, 1/8) NewAudio.PlaySound("CharSelect", "Laugh") elseif currentChar == 3 then Event.SetAnimHeader("Player", "MK") chars[currentChar]["sprite"].x = -10 chars[currentChar]["sprite"].SetAnimation({"MonsterKidOW/f0", "MonsterKidOW/f1", "MonsterKidOW/f2", "MonsterKidOW/f2", "MonsterKidOW/f2", "MonsterKidOW/f3", "MonsterKidOW/f4", "MonsterKidOW/f5", "MonsterKidOW/f5", "MonsterKidOW/f5", "MonsterKidOW/f5", "MonsterKidOW/f5", "MonsterKidOW/f5", "MonsterKidOW/f6", "MonsterKidOW/f7", "MonsterKidOW/f8", "MonsterKidOW/f9", "MonsterKidOW/f10", "MonsterKidOW/f11" }, 0.1) elseif currentChar == 4 then if count == 0 then inProgress = true Event.SetAnimHeader("Player", "Booster") chars[currentChar]["sprite"].StopAnimation() chars[currentChar]["sprite"].Set(animationKeys[currentChar] .. "/1") chars[currentChar]["cross"].Set("ut-heart") chars[currentChar]["cross"].y = chars[currentChar]["cross"].y - 8 chars[currentChar]["cross"].x = chars[currentChar]["cross"].x + 31 chars[currentChar]["cross"].color32 = {0, 60, 255} elseif (count - 30) % 12 == 0 and count < 60 and count >= 30 then if show then chars[currentChar]["cross"].alpha = 0 else chars[currentChar]["cross"].alpha = 1 NewAudio.PlaySound("CharSelect", "BeginBattle2") end show = not show elseif count >= 90 and count <= 150 then if count == 90 then chars[currentChar]["sprite"].Set(animationKeys[currentChar] .. "/j1") chars[currentChar]["sprite"].x = chars[currentChar]["sprite"].x + .5 --chars[currentChar]["cross"].x = chars[currentChar]["cross"].x + .5 end if count == 120 then chars[currentChar]["sprite"].Set(animationKeys[currentChar] .. "/j0") end chars[currentChar]["sprite"].y = chars[currentChar]["sprite"].y + vely --chars[currentChar]["cross"].y = chars[currentChar]["cross"].y + vely vely = vely - 1/15 if count == 150 then chars[currentChar]["sprite"].Set(animationKeys[currentChar] .. "/1") end elseif count == 165 then phase = 5 end count = count + 1 return elseif currentChar == 5 then Event.SetAnimHeader("Player", "Asriel") chars[currentChar]["sprite"].SetPivot(.5, 0) chars[currentChar]["sprite"].absy = chars[currentChar]["sprite"].absy - 28 chars[currentChar]["sprite"].SetAnimation({"AsrielOW/s0", "AsrielOW/s1", "AsrielOW/s2", "AsrielOW/s3", "AsrielOW/s4", "AsrielOW/s4", "AsrielOW/s5", "AsrielOW/s6", "AsrielOW/s7", "AsrielOW/s8", "AsrielOW/s9", "AsrielOW/s6", "AsrielOW/s7", "AsrielOW/s8", "AsrielOW/s9", "AsrielOW/s10-1", "AsrielOW/s10-2", "AsrielOW/s11", "AsrielOW/s12", "AsrielOW/s12", "AsrielOW/s13", "AsrielOW/s14", "AsrielOW/s15", "AsrielOW/s15", "AsrielOW/s15", "AsrielOW/s16", "AsrielOW/s17", "AsrielOW/s18" }, 0.2) end phase = 4 elseif phase == 4 then if currentChar == 1 then friskWait = friskWait - Time.dt if friskWait <= 0 then phase = 5 end elseif currentChar == 2 then if NewAudio.isStopped("CharSelect") then phase = 5 end elseif currentChar == 3 or currentChar == 5 then if chars[currentChar]["sprite"].animcomplete then phase = 5 end else if not b0015P3C141 then SetRealGlobal("CYFInternalCharacterSelected", false) SetRealGlobal("CYFInternalCross1", false) SetRealGlobal("CYFInternalCross2", false) SetRealGlobal("CYFInternalCross3", false) SetRealGlobal("CYFInternalCross4", false) SetRealGlobal("CYFInternalCross5", false) lastAlpha = 0 b0015P3C141 = true for i = 4, #animationKeys * 4 + 2 do Screen.SupprImg(i) end Screen.DispImg("Overworld/CharacterSelector/Mystery/mysteryman/1", 2, 320, 320, 255, 255, 255, 255) Screen.DispImg("Overworld/CharacterSelector/Mystery/mysteryman/2", 3, 320, 100, 255, 255, 255, 255) mysSpr = Event.GetSprite("Image2") mysTextSpr = Event.GetSprite("Image3") mysSpr.alpha = 0 mysSpr.Scale(2, 2) mysTextSpr.alpha = 0 fadeCount = 8 SetRealGlobal("1a6377e26b5119334e651552be9f17f8d92e83c9", true) General.Save(true) end if lastAlpha <= 0 and (-fadeCount + 4) / 4 > 0 then NewAudio.PlaySound("CharSelect", "Secret/sound") end mysSpr.alpha = (-fadeCount + 4) / 4 mysTextSpr.alpha = (-fadeCount + 4) / 4 lastAlpha = (-fadeCount + 4) / 4 end elseif phase == 5 then fadeCount = 3 phase = 6 elseif phase == 6 then for i = 1, #chars do if chars[i]["cross"].alpha ~= 0 then chars[i]["cross"].alpha = fadeCount - 2 end chars[i]["sprite"].alpha = fadeCount - 2 chars[i]["border"].alpha = fadeCount - 1 chars[i]["back"].alpha = fadeCount - 1 end background.alpha = fadeCount if fadeCount <= 0 then Exit() end end if phase > 0 and phase < 3 then if chars[currentChar]["sprite"].animcomplete then animationCount = (animationCount + 1) % 8 chars[currentChar]["sprite"].SetAnimation({ animationKeys[currentChar].."/"..math.floor(animationCount/2)*4, animationKeys[currentChar].."/"..math.floor(animationCount/2)*4+1, animationKeys[currentChar].."/"..math.floor(animationCount/2)*4+2, animationKeys[currentChar].."/"..math.floor(animationCount/2)*4+3 }, 0.25) end end if fadeCount > 0 then fadeCount = fadeCount - 4 * Time.dt end end function HandleUpDownFail() local leftBound = false local rightBound = false local left = false local index = 1 local curr = currentChar local y = positions[curr][2] repeat if not (rightBound and not left) and not (leftBound and left) then curr = left and currentChar - index or currentChar + index if curr > #positions then rightBound = true elseif curr < 1 then leftBound = true elseif positions[curr][2] ~= y then if curr < currentChar then leftBound = true else rightBound = true end end end if leftBound and rightBound then ChangeTarget(lastEnabled) return end if left then index = index + 1 end left = not left until not disabled[curr] and not (rightBound and left) and not (leftBound and not left) ChangeTarget(curr) end function HandleInput(forcedInput) if currentChar ~= 6 then if Input.Right == 1 or forcedInput == "Right" then lastInput = "Right" if currentChar < 4 then ChangeTarget(currentChar % 3 + 1) else ChangeTarget((currentChar - 3) % 2 + 1 + 3) end elseif Input.Left == 1 or forcedInput == "Left" then lastInput = "Left" local temp = (currentChar + 2) % 3 if currentChar < 4 then ChangeTarget(temp ~= 0 and temp or 3) else ChangeTarget((currentChar - 3) % 2 + 1 + 3) end elseif Input.Down == 1 or Input.Up == 1 or forcedInput == "Down" or forcedInput == "Up" then lastInput = Input.Down == 1 or forcedInput == "Down" and "Down" or "Up" local temp = (currentChar + (currentChar > 3 and 2 or 3)) % 5 ChangeTarget(currentChar ~= 3 and (temp ~= 0 and temp or 5) or 5) end end if Input.Confirm == 1 then chars[currentChar]["back"].color = {1, 1, 0} Audio.PlaySound("menuconfirm") phase = 3 end end function ChangeTarget(number, sound, forced) currentChar = number if not disabled[number] and currentChar ~= lastEnabled or forced then chars[lastEnabled]["sprite"].StopAnimation() chars[lastEnabled]["sprite"].Set(animationKeys[lastEnabled] .. "/1") chars[lastEnabled]["border"].color = {1, 1, 1} animationCount = 0 if sound then Audio.PlaySound("menumove") end lastEnabled = currentChar if currentChar ~= 6 then chars[currentChar]["sprite"].SetAnimation({ animationKeys[currentChar].."/"..math.floor(animationCount/2)*4, animationKeys[currentChar].."/"..math.floor(animationCount/2)*4+1, animationKeys[currentChar].."/"..math.floor(animationCount/2)*4+2, animationKeys[currentChar].."/"..math.floor(animationCount/2)*4+3 }, 0.25) end chars[currentChar]["border"].color = {1, 0, 0} end end function Exit() for i = 1, #animationKeys * 4 + 2 do Screen.SupprImg(i) end NewAudio.DestroyChannel("CharSelect") Player.CanMove(true) Event.Remove(Event.GetName()) end ================================================ FILE: Assets/Mods/Examples/Lua/Events/CharacterSelector.lua.meta ================================================ fileFormatVersion: 2 guid: 961ded7fdef147c44944ded78a21db7e timeCreated: 1493415402 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Events/EventTest.lua ================================================ function EventPage1() Event.MoveToPoint("Player", 430, 174, true) Event.SetDirection("Player", 6) local animHeader = Event.GetAnimHeader("Player") if animHeader == "" then Event.SetPage(Event.GetName(), 10) -- Frisk elseif animHeader == "Chara" then Event.SetPage(Event.GetName(), 14) -- Chara elseif animHeader == "MK" then Event.SetPage(Event.GetName(), 2) -- Monster Kid elseif animHeader == "Booster" then Event.SetPage(Event.GetName(), 368395) -- Booster elseif animHeader == "Asriel" then Event.SetPage(Event.GetName(), 69) -- Asriel end end endTexts = { "Oh,[w:5] I lost.[w:10] I'll have to try again.", "Ah,[w:5] looks like I wasn't cut out for it this time.", "Aw...[w:10]I thought I was there...", "He's not gone yet.[w:10]\nI must try again.", "I'm starting to lose my patience.", "What is this dog's problem?!", "Come on,[w:5] let me through now!", "MOVE.[w:10] NOW.", "My eyes.[w:10]\nThey hurt.[w:15]\nSend help." } endFaceSprites = { "glad", "normal", "sad", "frustrated", "serious", "angry", "mad", "fury", "woke" } function EventPage10() -- Stare at the dog --W 1: Pundy leaves the screen for a bit / If dead, jump to 3 --R 2: Come back to his spot with sunglasses --R 3: Dog bounces a couple of times then raises with long legs, tricking the player into thinking he's letting him past, then goes back to normal --W 4: MK comes from bottom, looks at player for some time, then goes up --W 5: Papyrus come from left, walks to Player, talks to him (standard Pap lines), then gets upset (stomp foot), "Music kept", backs out, then run to left and jump from cliff using window jump --R 6: Chara chasing Booster, run in circles, go down, come from top, go down, Chara coming back alone from top, laugh.wav, go left --W 7: Punderbolt & Asriel talk then play tag, then Asriel goes / Asriel enters room, look for something, sit & cry, then wipe tears & go --W 8: Chara creepily approaching the player from behind, music slowly fades out, (play anticipation slow mo like in genocide?), then when Chara close to player, hug General.SetDialog({ "There's a dog here and it's blocking the way.", "It doesn't look like it'll move any time soon...", "It's bound to go if I stay around for some time!" }, true, { "Frisk/normal", "Frisk/sad", "Frisk/happy" }) Event.SetPage("Stare", 2) Event.SetPage(Event.GetName(), 1) end -- Auto page used with EventPage10 function EventPage4() SetGlobal("CYFOWStareSetDialogActive", true) General.SetDialog(load("return " .. GetGlobal("CYFOWStareSetDialog1"))(), GetGlobal("CYFOWStareSetDialog2"), load("return " .. GetGlobal("CYFOWStareSetDialog3"))(), GetGlobal("CYFOWStareSetDialog4")) SetGlobal("CYFOWStareSetDialogActive", false) for i = 1, 4 do SetGlobal("CYFOWStareSetDialog" .. i, nil) end Event.SetPage(Event.GetName(), 1) end -- Auto page used with EventPage10 function EventPage5() local stareID = GetGlobal("CYFOWStare") General.SetDialog("[instant:stopall]" .. endTexts[stareID], true, "Frisk/" .. endFaceSprites[stareID]) Player.CanMove(true) Event.SetPage(Event.GetName(), 1) end function EventPage14() -- Slice + 3D rotation General.SetDialog({ "There's a dog here and it's blocking the way.", "It doesn't look like it'll move any time soon...", "But I know EXACTLY how to force it to!" }, true, { "Chara/normal", "Chara/sad", "Chara/creepy" }) -- Replace Player with a sprite version of themselves Event.GetSprite("Player").alpha = 0 local pla = CreateSprite("CharaOW/9") pla.ypivot = 0 pla.MoveToAbs(430, 174) pla.loopmode = "ONESHOT" -- Replace dog with a sprite version Event.GetSprite(Event.GetName()).alpha = 0 local dog = CreateSprite("Overworld/Dog") dog.ypivot = 0 dog.MoveToAbs(490, 170) -- Attack! General.Wait(20) local slice = function(speed, angle, x, y) Audio.PlaySound("slice") pla.SetAnimation({8, 9}, speed / 20, "CharaOW") local slice = CreateSprite("Overworld/Chara/bigslice/0") slice.rotation = angle slice.MoveToAbs(pla.absx + x, pla.absy + y) dog.SetParent(slice) slice.Mask("invertedstencil") slice.loopmode = "ONESHOT" slice.SetAnimation({0, 1, 2, 3, 4, 5}, speed/60, "Overworld/Chara/bigslice") local slice2 = CreateSprite("UI/Battle/spr_slice_o_0") slice2.rotation = angle slice2.MoveToAbs(pla.absx + x, pla.absy + y) slice2.loopmode = "ONESHOT" slice2.SetAnimation({"spr_slice_o_0", "spr_slice_o_1", "spr_slice_o_2", "spr_slice_o_3", "spr_slice_o_4", "spr_slice_o_5"}, speed/60, "UI/Battle") General.Wait(10) -- animate slice while not slice.animcomplete do General.Wait(1) end dog.layer = "Default" slice.Remove() slice2.Remove() end slice(14, 0, 60, 30) General.Wait(20) General.SetDialog({ "[noskip]what[w:20][next]" }, true, "Chara/angry") for i = 0, 19 do slice(5 - math.floor(i / 4), math.random() * 360, 60, 30) end -- Restore player General.Wait(40) pla.Remove() Event.GetSprite("Player").alpha = 1 -- Restore dog General.Wait(10) dog.Remove() Event.GetSprite(Event.GetName()).alpha = 1 -- End of event General.Wait(60) General.SetDialog({ "..." }, true, "Chara/angry") Event.SetPage(Event.GetName(), 1) end function EventPage2() -- Push + boing General.SetDialog({ "There's a dog here and it's blocking the way.", "It doesn't look like it'll m-[w:5]move any time soon...", "I should try pushing it away!" }, true, { "MK/normal", "MK/sad", "MK/determined" }) Event.MoveToPoint("Player", 350, 174, false) General.Wait(45) Event.SetDirection("Player", 6) General.Wait(45) Event.MoveToPoint("Player", 450, 174, true) Event.GetSprite("Player").alpha = 0 -- enter the dog local spr = CreateSprite("MonsterKidOW/9") spr.MoveTo(Event.GetPosition("Player")[1] - 10, Event.GetPosition("Player")[2]) spr.xscale = -1 spr.rotation = -90 spr.SetPivot(1, 0) spr.Move(16, -8) local dogSprite = Event.GetSprite(Event.GetName()) Event.MoveToPoint("Player", 398, 174, true, false) spr.Set("MonsterKidOW/f2") Audio.PlaySound("Surprised Bark", 1) dogSprite.Set("Overworld/DogBark") local startX = spr.x local finalX = spr.x + 16 local doggyX = dogSprite.x for i = 1, 60 do spr.x = lerp(spr.x, finalX, 0.1) dogSprite.xscale = 1 - (((spr.x - startX) - 6) / dogSprite.width) dogSprite.x = doggyX - 3 + ((spr.x - startX) / 2) if i == 20 then dogSprite.Set("Overworld/Dog") end General.Wait(1) end General.Wait(60) -- struggle spr.Set("MonsterKidOW/f3") General.Wait(30) spr.Set("MonsterKidOW/f4") General.Wait(30) spr.Set("MonsterKidOW/f5") General.Wait(10) -- come out pt1 for i = 1, 45 do spr.x = lerp(spr.x, finalX, -0.15) dogSprite.xscale = 1 - (((spr.x - startX) - 6) / dogSprite.width) dogSprite.x = doggyX - 3 + ((spr.x - startX) / 2) General.Wait(1) end spr.x = startX dogSprite.x = doggyX dogSprite.xscale = 1 -- come out pt2 spr.rotation = 0 spr.xpivot = 0.5 spr.y = spr.y + 8 spr.Set("MonsterKidOW/f6") spr.x = spr.x - 16 spr.x = spr.x - 7 Audio.PlaySound("Bump", 1) local startX = spr.x local finalX = spr.x - 32 -- doggy vibrates after the impact for i = 1, 60 do local scale = 1 + math.sin(i * math.pi * 2 / 15) * ((5 - math.ceil(i / 15)) / 40) dogSprite.Scale(scale, 1 / scale) General.Wait(1) spr.x = lerp(spr.x, finalX, 0.075) if i%20 == 0 then spr.Set("MonsterKidOW/f" .. (6 + (i/20))) end end dogSprite.Scale(1, 1) General.Wait(10) spr.Set("MonsterKidOW/f10") General.Wait(10) spr.Set("MonsterKidOW/f11") General.Wait(100) -- end event spr.Remove() dogSprite.xpivot = 0.5 Event.GetSprite("Player").alpha = 1 Event.SetDirection("Player", 4) General.Wait(20) General.SetDialog(({"Nope...", "Aww,[w:10] I thought I had it!", "M-[w:5]maybe I should try again?"})[math.random(3)], true, "MK/sad") Event.SetPage(Event.GetName(), 1) end function EventPage368395() -- Jump SM64 General.SetDialog({ "There's a dog here and it's blocking the way.", "It doesn't look like it'll move any time soon...", "I should try jumping over it!" }, true, { { "Booster/normalT", "Booster/normal", 0.2 }, { "Booster/sadT", "Booster/sad", 0.2 }, { "Booster/happyT", "Booster/happy", 0.2 } }) -- Replace Player with a sprite version of themselves local player = Event.GetSprite("Player") player.alpha = 0 local pla = CreateSprite("BoosterOW/9") pla.ypivot = 0 pla.MoveToAbs(430, 174) pla.z = -1 -- Replace Dog with a sprite version local dogSprite = Event.GetSprite(Event.GetName()) dogSprite.alpha = 0 -- Set up its 3 parts do dogButt = CreateSprite("Overworld/DogButt") dogButt.SetPivot(1, 0) dogButt.MoveTo(dogSprite.absx + dogSprite.width/2, dogSprite.absy) dogStretch = CreateSprite("Overworld/DogStretch") dogStretch.xpivot = 1 dogStretch.SetParent(dogButt) dogStretch.SetAnchor(0, 0.5) dogStretch.MoveTo(0, 0) dogStretch.xscale = 0 dogHead = CreateSprite("Overworld/DogHead") dogHead.xpivot = 1 dogHead.SetParent(dogStretch) dogHead.SetAnchor(0, 0.5) dogHead.MoveTo(12, 0) dogButt.Scale(-1, -1) dogButt.rotation = 180 pla.SendToTop() end General.Wait(40) -- walk left for i = 0, 188 do pla.x = pla.x - 0.75 -- change sprite if i % 16 == 0 then pla.Set("BoosterOW/" .. (8 + ((i % 64) / 16))) end -- play step sound if i % 32 == 0 then Audio.PlaySound("step-floor") end General.Wait(1) end -- jump one General.Wait(80) pla.Set("Overworld/Booster/j") Audio.PlaySound("step-floor") for i = 500, 553 do pla.x = i < 525 and pla.x or pla.x + 1.5 pla.y = 174 + (math.sin(math.rad((i - 500) / (26/90))) * 50) General.Wait(1) end pla.y = 174 pla.Set("BoosterOW/10") Audio.PlaySound("step-floor") -- jump two General.Wait(10) pla.Set("Overworld/Booster/j") Audio.PlaySound("step-floor") for i = 590, 643 do pla.x = pla.x + 1.5 pla.y = 174 + (math.sin(math.rad((i - 590) / (26/90))) * 110) if i > 643 - 25 then dogButt.x = lerp(dogButt.x, dogSprite.x - (dogSprite.width/3), 0.2) dogButt.rotation = lerp(dogButt.rotation, 90, 0.2) end General.Wait(1) end pla.y = 174 pla.Set("BoosterOW/10") Audio.PlaySound("step-floor") dogButt.x = dogSprite.x - (dogSprite.width/3) dogButt.rotation = 90 dogStretch.rotation = 270 -- jump three General.Wait(6) pla.Set("Overworld/Booster/j") Audio.PlaySound("step-floor") Audio.PlaySound("Jump") for i = 676, 698 do pla.x = pla.x + 1.5 pla.y = 174 + (math.sin(math.rad((i - 676) / (33/90))) * 150) pla.rotation = pla.rotation - 4.5 dogStretch.xscale = lerp(dogStretch.xscale, 150, 0.075) General.Wait(1) end pla.Set("Overworld/Booster/p") pla.rotation = 0 pla.Move(pla.height/2, -pla.height/3) Audio.PlaySound("sm64_impact") Audio.PlaySound("mario-pain") Misc.ShakeScreen(6, 30) if Player.GetHP() > 1 then Player.SetHP(math.max(Player.GetHP() - 2, 1)) end -- fall for i = 1, 52 do pla.Move(-1, -(i * 2)/25) pla.rotation = pla.rotation + 0.75 General.Wait(1) end General.Wait(44) for i = 1, 35 do pla.rotation = pla.rotation - 1 General.Wait(1) end -- end of event player.MoveToAbs(pla.absx, pla.absy) player.alpha = 1 pla.Remove() General.Wait(50) General.SetDialog({"Ooowwww..."}, true, {{"Booster/shockT", "Booster/shock", 0.2}}) -- move dog back for i = 1, 23 do dogStretch.xscale = lerp(dogStretch.xscale, 0, 0.1) General.Wait(1) end dogStretch.xscale = 0 for i = 1, 25 do dogButt.x = lerp(dogButt.x, dogSprite.absx + dogSprite.width/2, 0.2) dogButt.rotation = lerp(dogButt.rotation, 180, 0.2) General.Wait(1) end dogButt.Remove() dogSprite.alpha = 1 Event.SetPage(Event.GetName(), 1) end function EventPage69() -- Actually works + Super Paper Mario spin General.SetDialog({ "[voice:v_asriel]There's a dog here and it's blocking the way.", "[voice:v_asriel]It doesn't look like it'll move any time soon...", "[voice:v_asriel]Hmmm...[w:20]Maybe I could try being nice to it...?", "[voice:v_asriel]Mister doggy,[w:10] may you please let me through?" }, true, { { "Asriel/normalT", "Asriel/normal", 0.2 }, { "Asriel/sadT", "Asriel/sad", 0.2 }, { "Asriel/normalT", "Asriel/normal", 0.2 }, { "Asriel/happyT", "Asriel/happy" , 0.2 } }) General.Wait(160) -- create cursor sprite Audio.PlaySound("SE1_EVT_LINE_DRAW1") cursor = CreateSprite("Overworld/cursor") cursor.z = -1 cursor.SetPivot(0, 1) local dogSprite = Event.GetSprite(Event.GetName()) cursor.MoveToAbs(dogSprite.x - (dogSprite.width/2), dogSprite.y + dogSprite.height) cursor.alpha = 0 -- create box edges box = { CreateSprite("UI/sq_white"), -- top line CreateSprite("UI/sq_white"), -- left line CreateSprite("UI/sq_white"), -- right line CreateSprite("UI/sq_white") -- bottom line } for i = 1, #box do box[i].Scale(1/4, 1/4) box[i].SetPivot(0, 1) box[i].MoveTo(cursor.x, cursor.y) box[i].color = {0, 0, 0} end -- animaaate! for timer = 1, 120 do -- cursor if timer <= 10 then cursor.alpha = cursor.alpha + (1/10) elseif timer >= 40 and timer < 80 then cursor.alpha = cursor.alpha - (1/5) end -- move and draw box if timer > 10 and timer < 40 then -- move cursor cursor.x = lerp(cursor.x, dogSprite.absx + (dogSprite.width / 2), 1/6) cursor.y = lerp(cursor.y, dogSprite.absy , 1/6) -- draw box box[1].xscale = (cursor.absx - (dogSprite.absx - (dogSprite.width / 2))) / 4 box[2].yscale = (cursor.absy - (dogSprite.absy + dogSprite.height )) / -4 box[3].yscale = box[2].yscale box[3].absx = cursor.absx box[4].xscale = box[1].xscale box[4].absy = cursor.absy -- begin spinny animation elseif timer == 40 then Audio.PlaySound("SE1_EVT_LINE_TURN2") box[1].xpivot = 0.5 box[1].x = box[1].x + (box[1].width * box[1].xscale) / 2 box[4].SetParent(box[2]) box[4].xpivot = 0.5 box[4].x = box[4].x + (box[4].width * box[4].xscale) / 2 box[2].SetParent(box[1]) box[2].SetAnchor(0, 0.5) box[2].x = 0 box[3].SetParent(box[1]) box[3].SetAnchor(1, 0.5) box[3].x = 0 elseif timer > 40 and timer <= 80 then dogSprite.xscale = timer < 80 and math.cos((timer - 40) / 5) or 0 box[1].xscale = (cursor.absx - (dogSprite.absx - (dogSprite.width / 2))) / 4 box[1].xscale = box[1].xscale * dogSprite.xscale box[4].xscale = box[1].xscale elseif timer > 80 and timer < 120 then for _, box in pairs(box) do box.alpha = box.alpha - (1/20) end -- remove sprites and event elseif timer == 120 then cursor.Remove() cursor = nil for _, box in pairs(box) do box.Remove() end box = nil end General.Wait(1) end -- end of event General.Wait(160) General.SetDialog({"[noskip][voice:v_asriel][waitall:5]...[waitall:1][w:40][noskip:off][mugshot:{Asriel/happyT,Asriel/happy,0.2}]Oh!", "[voice:v_asriel]Thank you, mister doggy!"}, true, {"Asriel/what", {"Asriel/happyT", "Asriel/happy", 0.2}}) Event.SetPage(Event.GetName(), -1) end -- General math function used with EventPage2, EventPage69, and EventPage368395 function lerp(a, b, t) return a + ((b - a) * t) end ================================================ FILE: Assets/Mods/Examples/Lua/Events/EventTest.lua.meta ================================================ fileFormatVersion: 2 guid: 402ec3498013cf34e82b381c073b7530 timeCreated: 1487174277 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Events/PunderTest.lua ================================================ beforeMovement = math.random(60, 180) punderSprite = nil lastPosX = 0 lastPosY = 0 eventName = nil function EventPage0() -- First event function launched eventName = Event.GetName() -- Chara player choice has been locked if GetRealGlobal("CYFInternalCross2") then Event.Remove(eventName) else Event.SetPage(eventName, 2) punderSprite = Event.GetSprite(eventName) lastPosX = punderSprite.x lastPosY = punderSprite.y end end function EventPage1() -- Turn toward player dir = calcDir(Event.GetPosition(eventName), Event.GetPosition("Player")) Event.SetDirection(eventName, dir) local animHeader = Event.GetAnimHeader(eventName) local text = animHeader == "" and "Where am I???" or "I still don't know where I am,[w:10] but I found cool sunglasses!" local faceSprite = animHeader == "" and "Punder/intimidated" or "Punder/sun" General.SetDialog("[voice:punderbolt]" .. text, true, faceSprite) end function EventPage2() -- Coroutine if Event.GetPage(eventName) == 2 then Event.SetPage(eventName, 1) end if lastPosX == punderSprite.x and lastPosY == punderSprite.y then beforeMovement = beforeMovement - 1 if beforeMovement == 0 then beforeMovement = math.random(60, 180) x = math.random(-1, 1) y = math.random(-1, 1) local pos = Event.GetPosition(eventName) Event.MoveToPoint(eventName, math.min(math.max(pos[1] + 20 * x, 365), 455), math.min(math.max(pos[2] + 20 * y, 250), 340), false, false) end end lastPosX = punderSprite.x lastPosY = punderSprite.y end --The name is pretty straightforward function calcDir(vect1, vect2) local diff = { vect1[1] - vect2[1], vect1[2] - vect2[2] } local angle = (math.atan2(diff[1], diff[2]) + (math.pi*2)) % (math.pi*2) local dir = 2 if angle > math.pi/4 and angle <= 3*math.pi/4 then dir = 4 elseif angle > 3*math.pi/4 and angle <= 5*math.pi/4 then dir = 8 elseif angle > 5*math.pi/4 and angle <= 7*math.pi/4 then dir = 6 end return dir end ================================================ FILE: Assets/Mods/Examples/Lua/Events/PunderTest.lua.meta ================================================ fileFormatVersion: 2 guid: 4417508d73f7d9941a699022cb532680 timeCreated: 1503070277 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Events/SaveTest.lua ================================================ function EventPage0() -- First event function launched local spriteTest = Event.GetSprite(Event.GetName()) spriteTest.SetAnimation({"SavePoint/0", "SavePoint/1"}, 0.2) end function EventPage1() -- Chara player choice has been locked if GetRealGlobal("CYFInternalCross2") then local count = 5 for i = 1, 5 do if GetRealGlobal("CYFInternalCross" .. i) then count = count - 1 end end General.SetDialog({"[health:Max][color:ff0000]" .. count .. " left."}, true) else General.SetDialog({"[health:Max]Testing such a magnificent engine fills you with [color:ff0000]determination.", "HP restored."}, true) end General.Save() end ================================================ FILE: Assets/Mods/Examples/Lua/Events/SaveTest.lua.meta ================================================ fileFormatVersion: 2 guid: 1ed2fcfebbd2b434785a267c76798f0c timeCreated: 1487174276 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Events/StareTest.lua ================================================ function EventPage1() end stareFrame = 1800 stareShift = 0 eventFrequency = 3600 -- 1m currEventDone = false inputted = false maxStares = 8 displayTextOneFrameMovement = false function DisplayText(text, formatted, faceSprites, side) local textStr = "{" if type(text) == "table" then for i = 1, #text do textStr = textStr .. "'" .. tostring(text[i]):gsub("\n", "\\\\n"):gsub("'", "\\'") .. "'" .. (next(text, i) and ", " or "") end else textStr = textStr .. "'" .. tostring(text):gsub("\n", "\\\\n"):gsub("'", "\\'") .. "'" end textStr = textStr .. "}" local faceStr if type(faceSprites) == "table" then faceStr = "{" for i = 1, #faceSprites do if type(faceSprites[i]) == "table" then faceStr = faceStr .. "{" for j = 1, #faceSprites[i] do faceStr = faceStr .. (type(faceSprites[i][j]) == "string" and "'" or "") .. faceSprites[i][j] .. (type(faceSprites[i][j]) == "string" and "'" or "") .. (next(faceSprites[i], j) and ", " or "") end faceStr = faceStr .. "}" else faceStr = faceStr .. "'" .. faceSprites[i] .. "'" .. (next(faceSprites, i) and ", " or "") end end faceStr = faceStr .. "}" else faceStr = "'" .. faceSprites .. "'" end SetGlobal("CYFOWStareSetDialog1", textStr) SetGlobal("CYFOWStareSetDialog2", formatted) SetGlobal("CYFOWStareSetDialog3", faceStr) SetGlobal("CYFOWStareSetDialog4", side) Event.SetPage("Event1", 4) displayTextOneFrameMovement = true end function resetStareVars() stare1MovementUpDone = false stare2MovementDownDone = false stare2Ended = false stare3DogOpen = false stare3InputtedFrame = 0 stare3DogStartingY = 0 stare3DogLegsYScale = 0 stare3InputtedFirst = false stare3Count = 0 stare3DogSpeed = 0 stare4Count = 0 stare5Count = 0 stare5Phase = 0 stare5Velocity = 0 stare6Count = 0 stare6Sprites = nil stare6Speeds = nil Stare7 = Event.Exists("Punder") and Stare7Alive or Stare7Dead stare7Count = 0 stare7Phase = 0 stare8Count = 0 stare8Phase = 0 end punderSprite = nil function Stare1(frame) -- run once if frame == 0 and not inputted then Event.StopCoroutine("Punder") if punderSprite == nil then punderSprite = Event.GetSprite("Punder") end -- walk up-left to 320, 320 Event.MoveToPoint("Punder", 320, 320, true, false) end -- normal event behavior if not inputted then -- walk up to 320, 480 if not stare1MovementUpDone and punderSprite.absx == 320 and punderSprite.absy == 320 then stare1MovementUpDone = true Event.MoveToPoint("Punder", 320, 480, true, false) end else -- punder actually finished if punderSprite.absx == 320 and punderSprite.absy == 480 then stareFrame = eventFrequency * 2 inputted = false Stare2(0) Event.SetAnimHeader("Punder", "") inputted = true -- the player pressed a key early else -- punder has moved through the upwards portion already if stare1MovementUpDone then -- move down to 320, 320 first if punderSprite.absy > 320 then Event.MoveToPoint("Punder", 320, 320, true, false) -- then move down-right to 400, 260 elseif punderSprite.absx ~= 400 and punderSprite.absy ~= 260 then Event.MoveToPoint("Punder", 400, 260, true, false) -- end the event else Event.SetPage("Punder", 2) return true end -- punder has not reached 320, 320 by the time the player pressed a key else -- move straight to 400, 260 if punderSprite.absx ~= 400 and punderSprite.absy ~= 260 then Event.MoveToPoint("Punder", 400, 260, true, false) -- end the event else Event.SetPage("Punder", 2) return true end end end end return false end function Stare2(frame) if stare2Ended then return true elseif frame == 0 and not inputted then Event.Teleport("Punder", 320, 480) Event.SetAnimHeader("Punder", "Sun") Event.MoveToPoint("Punder", 320, 320, true, false) elseif not stare2MovementDownDone and punderSprite.absx == 320 and punderSprite.absy == 320 then stare2MovementDownDone = true Event.MoveToPoint("Punder", 400, 260, true, false) elseif punderSprite.absx == 400 and punderSprite.absy == 260 then Event.SetPage("Punder", 2) stare2Ended = true return true end return false end dogSprite = nil dogPawsSprite = nil dogLegsSprite = nil -- Handles the dog's barking animation function Stare3Bark(frame, maxFrame) if frame % 15 == 0 and frame < maxFrame then dogSprite.Set("Overworld/Dog" .. (stare3DogOpen and "" or "Bark")) stare3DogOpen = not stare3DogOpen if stare3DogOpen then Audio.PlaySound("Bark") end end end -- Handles the dog's (and his legs if handled) bouncing animation function Stare3Bounce(frame, handleLegs) if frame % 30 <= 15 then local scale = 1 + math.sin(frame * math.pi * 2 / 15) * .1 dogSprite.Scale(scale, 1 / scale) if handleLegs then dogSprite.absy = stare3DogStartingY - 3 * (1 / stare3DogLegsYScale - 1 / scale * stare3DogLegsYScale) dogLegsSprite.Scale(scale, 1 / scale * stare3DogLegsYScale) dogPawsSprite.Scale(scale, 1 / scale) end end end function Stare3(frame) -- Init: Get the dog's sprite and set some useful variables if frame == 0 and not inputted then dogSprite = Event.GetSprite("Event1") Event.SetSpeed("Event1", 1) stare3DogStartingY = dogSprite.absy end -- Part 1: Dog barks and bounces twice if frame <= 60 then -- Stops the stare event instantly if the player presses a key during this part if inputted then dogSprite.Set("Overworld/Dog") dogSprite.Scale(1, 1) return true end -- Barking animation, sound and bouncing Stare3Bark(frame, 60) Stare3Bounce(frame, false) -- Part 2: L E G S -- If the Player hasn't pressed any key yet elseif not inputted then if frame >= 90 and frame < 170 then -- Init: Creates the legs and paws sprites and move the dog up if frame == 90 then dogPawsSprite = CreateSprite("Overworld/DogPaws") dogPawsSprite.z = -1 dogPawsSprite.SetPivot(.5, 0) dogPawsSprite.MoveToAbs(dogSprite.absx, dogSprite.absy) dogLegsSprite = CreateSprite("Overworld/DogLegs") dogLegsSprite.z = -1 dogLegsSprite.SetPivot(.5, 0) dogLegsSprite.MoveToAbs(dogSprite.absx, dogSprite.absy + 6) Event.MoveToPoint("Event1", dogSprite.absx, dogSprite.absy + 80, true, false) end -- Scale the legs so that they seem attached to the dog dogLegsSprite.yscale = dogLegsSprite.yscale + 1/3 elseif frame == 170 then -- D O G S U C C E S S F U L L Y R A I S E D Audio.PlaySound("success") -- Wait for several seconds... elseif frame >= 450 and frame < 510 then -- Dog barks twice again and bounces, but this time the legs bounce too! -- Init: We store the dog's legs' scale if frame == 450 then stare3DogLegsYScale = dogLegsSprite.yscale end -- Barking animation, sound and bouncing Stare3Bark(frame - 450, 60) Stare3Bounce(frame, true) -- Lowers the dog back to normal elseif frame >= 510 and frame < 590 then if frame == 510 then Event.MoveToPoint("Event1", dogSprite.absx, stare3DogStartingY, true, false) end dogLegsSprite.yscale = dogLegsSprite.yscale - 1/3 -- Remove the paw sprites and call it a day elseif frame == 590 then dogLegsSprite.Remove() dogPawsSprite.Remove() return true elseif frame > 590 then return true end -- If the Player pressed a key else -- If the dog was bouncing with his long legs, reset it back as if he wasn't bouncing if frame >= 450 and frame <= 510 and stare3DogLegsYScale ~= 0 then dogSprite.absy = stare3DogStartingY + 80 dogSprite.Scale(1, 1) dogLegsSprite.Scale(1, stare3DogLegsYScale) dogPawsSprite.Scale(1, 1) stare3DogLegsYScale = 0 end -- As long as the leg sprites exist, shorten the legs and keep the dog in midair if dogLegsSprite.isactive then -- Stop the dog's movement, barking and prepare the legs to be scaled down if not stare3InputtedFirst then Event.MoveToPoint("Event1", dogSprite.absx, dogSprite.absy, true, false) dogSprite.Set("Overworld/Dog") stare3DogOpen = false dogLegsSprite.SetPivot(.5, 1) dogLegsSprite.MoveToAbs(dogSprite.absx, dogSprite.absy + 6) stare3InputtedFirst = true end -- Scale the legs down and raise the paws dogLegsSprite.yscale = dogLegsSprite.yscale - 2 dogPawsSprite.Move(0, 6) -- End condition: when the legs are no more, delete the sprites and prepare the dog to fall if dogLegsSprite.yscale <= 0 then dogLegsSprite.Remove() dogPawsSprite.Remove() Event.SetSpeed("Event1", 0) Event.MoveToPoint("Event1", dogSprite.absx, stare3DogStartingY, true, false) end -- While the dog is falling... elseif dogSprite.absy > stare3DogStartingY then -- ...increase his falling speed and rotate him to the side a little stare3DogSpeed = stare3DogSpeed + 0.05 Event.SetSpeed("Event1", stare3DogSpeed) dogSprite.rotation = dogSprite.rotation - (dogSprite.rotation < 10 and .5 or dogSprite.rotation < 15 and .25 or .1) -- When the dog is on the ground and still rotated, barking or bouncing elseif (stare3Count <= 15 or dogSprite.rotation ~= 0 or dogSprite.xscale ~= 1 or stare3DogSpeed > 0) then -- Reset the dog's rotation value to 0 over some frames if dogSprite.rotation ~= 0 then dogSprite.rotation = dogSprite.rotation - math.max(dogSprite.rotation, -2) end -- Make the dog bounce depending on his downward speed local scale = dogSprite.xscale + stare3DogSpeed / 50 dogSprite.Scale(scale, 1 / scale) stare3DogSpeed = (stare3DogSpeed < 0.25 and stare3DogSpeed > 0) and -stare3DogSpeed or (stare3DogSpeed - 0.25) if stare3DogSpeed < 0 and dogSprite.xscale < 1 then dogSprite.Scale(1, 1) end -- Make him bark one last time Stare3Bark(stare3Count, 16) stare3Count = stare3Count + 1 else return true end end return false end function Stare4(frame) -- requires at least 574 frames -- Create Monster Kid sprite if frame == 0 and not inputted then mk = CreateSprite("MonsterKidOW/13") mk.ypivot = 0 mk.MoveToAbs(320, -mk.height) mk.SetAnimation({"12", "13", "14", "15"}, 0.1875, "MonsterKidOW") end -- Event is over if stare4Count > 0 and not mk then return true -- Walk up elseif stare4Count < 126 then mk.absy = mk.absy + 2 -- Stop walking elseif stare4Count == 126 and not inputted then mk.StopAnimation() mk.Set("MonsterKidOW/13") -- Look at Player elseif stare4Count == 180 and not inputted then mk.Set("MonsterKidOW/9") -- Look up elseif stare4Count == 360 and not inputted then mk.Set("MonsterKidOW/13") -- Set animation before walking elseif stare4Count == 430 or (stare4Count < 430 and inputted) then stare4Count = 430 mk.SetAnimation({"12", "13", "14", "15"}, 0.1875, "MonsterKidOW") -- Walk up elseif stare4Count > 430 and mk.absy < 480 then mk.absy = mk.absy + 2 -- Offscreen, remove MK elseif stare4Count > 430 and mk.absy >= 480 then mk.Remove() mk = nil end stare4Count = mk and stare4Count + 1 or stare4Count end function Stare5(frame) -- Create Papyrus sprite if frame == 0 and not inputted then papy = CreateSprite("Overworld/Papyrus/0") papy.z = -1 papy.Scale(2, 2) papy.ypivot = 0 papy.MoveToAbs(-papy.width/2, 230) papy.SetAnimation({"0", "1", "0", "2"}, 0.1875, "Overworld/Papyrus") end if not inputted or (inputted and stare5Phase > 7) then -- Walk right #1 if stare5Phase == 0 and papy.x < 260 then papy.x = math.min(papy.x + 2, 260) if papy.x == 260 then papy.animationspeed = 0.2 stare5Phase = 1 end -- Walk right #2 (slower) elseif stare5Phase == 1 and papy.x < 372 then papy.x = math.min(papy.x + 1, 372) papy.y = papy.y - 0.5 if papy.x == 372 then papy.StopAnimation() papy.Set("Overworld/Papyrus/0") stare5Phase = 2 end -- Dialogue #1 elseif stare5Count == 310 then stare5Phase = 3 papy.SetAnimation({"6", "0"}, 0.2, "Overworld/Papyrus") DisplayText("[noskip][font:papyOW][voice:v_papyrus]HELLO,[w:5] HUMAN![w:10]\nI'VE COME TO SEE WHAT YOU'RE[waitall:5]...[waitall:1][w:20][next]", false, {{"Papyrus/normalT", "Papyrus/normal", 0.2}}) elseif stare5Count == 500 then papy.StopAnimation() papy.Set("Overworld/Papyrus/0") -- Dialogue #2 elseif stare5Count == 700 then stare5Phase = 4 papy.SetAnimation({"7", "3"}, 0.2, "Overworld/Papyrus") DisplayText("[noskip][font:papyOW][voice:v_papyrus]HEY!![w:10] ARE YOU LISTENING???[w:20][next]", false, {{"Papyrus/madT", "Papyrus/mad", 0.2}}) elseif stare5Count == 820 then papy.StopAnimation() papy.Set("Overworld/Papyrus/3") -- Dialogue #3 elseif stare5Count == 1000 then stare5Phase = 5 papy.SetAnimation({"8", "9", "10"}, 0.15, "Overworld/Papyrus") DisplayText("[noskip][font:papyOW][voice:v_papyrus]AAARRGH!!![w:20]\nSTOP IGNORING MEEE!!!!![w:20][next]", false, {{"Papyrus/madT", "Papyrus/mad", 0.2}}) elseif stare5Count == 1200 then papy.StopAnimation() papy.Set("Overworld/Papyrus/11") -- Dialogue #4 elseif stare5Count == 1400 then stare5Phase = 6 papy.SetAnimation({"11", "14"}, 0.2, "Overworld/Papyrus") DisplayText("[noskip][font:papyOW][voice:v_papyrus]Music kept = false\nErm[waitall:3]...[waitall:1][w:10] Why did you go here with your " .. Player.GetHP() .. " HP?[w:30][next]", false, {{"Papyrus/suspiciousT", "Papyrus/suspicious", 0.2}}) elseif stare5Count == 1660 then papy.StopAnimation() papy.Set("Overworld/Papyrus/11") -- Walk left elseif stare5Count == 1950 then stare5Phase = 7 papy.SetAnimation({"11", "12", "11", "13"}, 0.1875, "Overworld/Papyrus") elseif stare5Phase == 7 and papy.x > 170 then papy.x = math.max(papy.x - 1.5, 170) if papy.x == 170 then papy.StopAnimation() papy.Set("Overworld/Papyrus/11") stare5Phase = 8 end -- Jump off elseif stare5Count == 2160 then papy.Set("Overworld/Papyrus/18") stare5Phase = 9 stare5Velocity = 4 Audio.PlaySound("Jump") elseif stare5Phase == 9 and stare5Count <= 2360 then papy.x = papy.x - 0.25 papy.y = papy.y + stare5Velocity stare5Velocity = stare5Velocity - 0.2 papy.rotation = papy.rotation + 0.25 -- screm if stare5Count == 2210 then DisplayText("[noskip][font:papyOW][voice:v_papyrus][effect:shake,5]AAAAAAAA[w:10][next]", false, "Papyrus/papy he do a jump") elseif stare5Count == 2360 then papy.Remove() end elseif stare5Count > 2360 then return true end else -- Initial walks right - left half if stare5Phase == 0 or (stare5Phase == 1 and papy.x <= 320) then -- Walk to x=320, then straight up, then remove and end if papy.x < 320 then papy.x = math.min(papy.x + 2, 320) -- Begin walking up if papy.x == 320 then papy.SetAnimation({"15", "16", "15", "17"}, 0.1875, "Overworld/Papyrus") end elseif papy.y < 480 then papy.y = math.min(papy.y + 2, 480) -- Remove and end event if papy.y == 480 then papy.Remove() return true end end -- Initial walks right - right half elseif stare5Phase == 1 and papy.x > 320 then -- Run once if not papy["walkLeftBool"] then papy["walkLeftBool"] = true papy.SetAnimation({"11", "12", "11", "13"}, 0.1875, "Overworld/Papyrus") end papy.x = math.max(papy.x - 2, 320) -- As soon as he gets to x=320, the prevoius conditional block will take over and make him walk up if papy.x == 320 then papy.SetAnimation({"15", "16", "15", "17"}, 0.1875, "Overworld/Papyrus") end -- Interrupt speech and flee going South elseif stare5Phase > 1 and stare5Phase < 7 then -- Frame #1 if not papy["interrupt"] then papy["interrupt"] = true -- Stop dialogue if any is active if GetGlobal("CYFOWStareSetDialogActive") then General.EndDialog() end -- Frame #2 (2-frame wait is necessary just for starting the next dialogue) elseif not papy["startflee"] then papy["startflee"] = true papy.SetAnimation({"11", "12", "11", "13"}, 0.1, "Overworld/Papyrus") Audio.PlaySound("hitsound", 0.75) Misc.ShakeScreen(8, 8) DisplayText("[noskip][font:papyOW][voice:v_papyrus][speed:3][lettereffect:shake,3]I JUST REMEMBERED[lettereffect:none] I HAVE TO OF IN COLD BONE OF OUT DOG BONE EAT THE BONE[w:10][next]", false, "Papyrus/papy he do a jump") -- Frame #3 onwards else -- Run left if papy.x > 320 then papy.x = math.max(papy.x - 6, 320) if papy.x == 320 then papy.SetAnimation({"19", "20", "19", "21"}, 0.1, "Overworld/Papyrus") end -- Run down elseif (papy.y + (papy.yscale * papy.height)) > 0 or GetGlobal("CYFOWStareSetDialogActive") then papy.y = papy.y - 6 -- Remove and end event else Audio.PlaySound("runaway", 1) papy.Remove() return true end end -- Walking left elseif stare5Phase == 7 then -- Keep walking towards x=170 if papy.x > 170 then papy.x = math.max(papy.x - 1.5, 170) -- Walk off screen towards initial spawning position elseif papy.x ~= -papy.width or papy.y ~= 230 then papy.x = math.max(papy.x - 1.5, -papy.width) papy.y = math.min(papy.y + 1.5, 230) -- Remove and end event else papy.Remove() return true end -- Jumping off - at this point it's too late to stop him. So no condition here. RIP papy ;w; end end stare5Count = papy and stare5Count + 1 or stare5Count end boosterSprite = nil charaSprite = nil boosterTimestamps = { -- Common [0] = { speed = 6, isHorz = true }, -- From left to top right loop [70] = { speed = -6, isHorz = false }, -- From top right loop to bottom right loop [85] = { speed = -6, isHorz = true }, -- From bottom right loop to bottom left loop [110] = { speed = 6, isHorz = false }, -- From bottom left loop to top left loop [125] = { speed = 6, isHorz = true }, -- From top left loop to top right loop [150] = { speed = -6, isHorz = false }, -- From top right loop to bottom right loop [165] = { speed = -6, isHorz = true }, -- From bottom right loop to bottom left loop [190] = { speed = 6, isHorz = false }, -- From bottom left loop to top left loop [205] = { speed = 6, isHorz = true }, -- From top left loop to top loop [220] = { speed = 6, isHorz = false }, -- From top loop to top [260] = { speed = 0 }, -- Waiting... -- Booster-only [350] = { speed = 6, isHorz = true, instaTP = { x = -40, y = 240 } }, -- From bottom to center [410] = { speed = -6, isHorz = false }, -- From center to left [460] = { speed = 0 }, -- Waiting... [520] = { speed = -6, isHorz = false, instaTP = { x = 320, y = 480 } }, -- From top to bottom [610] = { speed = 0 }, -- Waiting... [700] = { speed = 6, isHorz = false, instaTP = { x = 320, y = -60 } }, -- From bottom to top behind Chara [790] = { speed = 0 }, -- Waiting... [830] = { speed = -6, isHorz = false, instaTP = { x = 320, y = 480 } }, -- From top to center [860] = { speed = 0, noSound = true, surprise = true }, -- Encounter bubble and wait [895] = { speed = 6, isHorz = false }, -- From center to top [935] = { speed = 0 }, -- Already dead } charaTimestamps = { -- Chara-only [420] = { speed = -6, isHorz = false, instaTP = { x = 320, y = 480 } }, -- From top to bottom [510] = { speed = 0 }, -- Waiting... [550] = { speed = 6, isHorz = true, instaTP = { x = -40, y = 240 } }, -- From left to center [610] = { speed = 6, isHorz = false }, -- From center to top [650] = { speed = 0 }, -- Waiting... [690] = { speed = 6, isHorz = false, instaTP = { x = 320, y = -60 } }, -- From bottom to top [780] = { speed = 0 }, -- Waiting... [820] = { speed = 6, isHorz = false, instaTP = { x = 320, y = -60 } }, -- From bottom to center [860] = { speed = 0, noSound = true, surprise = true }, -- Encounter bubble and wait [895] = { speed = 6, isHorz = false }, -- From center to top [945] = { speed = 0 }, -- Waiting... [1060] = { speed = -3, isHorz = false, instaTP = { x = 320, y = 480 } }, -- From top to center [1140] = { speed = 0, laugh = true }, -- Laughing animation [1310] = { speed = -3, isHorz = true }, -- From center to left [1440] = { speed = 0, noSound = true }, -- Never used } function Stare6(frame) -- Create sprites if frame == 0 and not inputted then boosterSprite = CreateSprite("BoosterOW/8") boosterSprite.ypivot = 0 boosterSprite.MoveToAbs(-40, 240) boosterSprite["path"] = "BoosterOW" boosterSprite["speed"] = 0 boosterSprite["isHorz"] = false boosterSprite.z = -1 charaSprite = CreateSprite("CharaOW/8") charaSprite.ypivot = 0 charaSprite.MoveToAbs(-40, 240) charaSprite["path"] = "CharaOW" charaSprite["speed"] = 0 charaSprite["isHorz"] = false charaSprite.z = -1 stare6Sprites = { boosterSprite, charaSprite } stare6Speeds = { boosterTimestamps, boosterTimestamps } end -- The sprites are only deleted when the animation is done if not charaSprite then return true end -- Handle movement for both sprites using the current count and their timestamp table for k, v in pairs({ stare6Count, stare6Count <= 270 and stare6Count - 10 or stare6Count }) do local sprite = stare6Sprites[k] local speedObject = stare6Speeds[k][v] -- If a timestamp has been found, then the sprite's behavior will change if speedObject then -- If the encounter bubble exists, delete it if sprite["surprise"] then sprite["surprise"].Remove() sprite["surprise"] = nil end -- Replace the sprite's speed and isHorz values with the new ones sprite["speed"] = speedObject.speed sprite["isHorz"] = speedObject.isHorz -- If there's a TP, teleport the sprite at the given coords if speedObject.instaTP then sprite.MoveToAbs(speedObject.instaTP.x, speedObject.instaTP.y) end -- Create encounter bubbles if needed if speedObject.surprise then -- Play the encounter bubble sound once if k == 2 then Audio.PlaySound("BeginBattle1") end local spritename = sprite.spritename:sub(sprite.spritename:find("[%/%\\][^%/%\\]*$") + 1) sprite.StopAnimation() sprite.Set(sprite["path"] .. "/" .. (math.floor(tonumber(spritename) / 4) * 4 + 1)) local surprise = CreateSprite("Overworld/EncounterBubble" .. (k == 2 and "Geno" or "")) surprise.SetParent(sprite) surprise.SetPivot(.5, 0) surprise.SetAnchor(.5, 1) surprise.MoveTo(0, 0) sprite["surprise"] = surprise end -- If the sprite doesn't move in this behavior if sprite["speed"] == 0 then sprite.StopAnimation() -- If the sprite needs a laughing animation, use it if speedObject.laugh then sprite.SetAnimation({ "l1", "l2", "l3" }, 1 / 8, sprite["path"]) NewAudio.CreateChannel("Stare") NewAudio.PlaySound("Stare", "Laugh") -- If the sprite doesn't move, it plays the runaway sound: if noSound is true, it doesn't play it elseif not speedObject.noSound then Audio.PlaySound("runaway") end else -- Delete the audio channel Stare if it exists if NewAudio.Exists("Stare") then NewAudio.DestroyChannel("Stare") end local start = sprite["speed"] > 0 and (sprite["isHorz"] and 8 or 12) or (sprite["isHorz"] and 4 or 0) local tab = { } for i = 0, 3 do table.insert(tab, start + i) end sprite.SetAnimation(tab, 3 / 5 / math.abs(sprite["speed"]), sprite["path"]) end end -- Move the sprite using its speed and isHorz values sprite.Move(sprite["isHorz"] and sprite["speed"] or 0, sprite["isHorz"] and 0 or sprite["speed"]) end local canInput = true for _, v in pairs(stare6Sprites) do if v["speed"] ~= 0 or NewAudio.Exists("Stare") or boosterSprite["surprise"] then canInput = false break end end -- If no sprite is moving, the audio channel Stare doesn't exist, no encounter bubble exists and player has pressed a key, stop the event -- Deletes all the sprites and clean the animation up when it's done if (inputted and canInput) or stare6Count == 1439 then boosterSprite.Remove(); boosterSprite = nil charaSprite.Remove(); charaSprite = nil stare6Sprites = nil; stare6Speeds = nil if NewAudio.Exists("Stare") then NewAudio.DestroyChannel("Stare") end -- If a key is pressed while the laughing animation is ongoing, stop it elseif NewAudio.Exists("Stare") and (inputted or NewAudio.IsStopped("Stare")) then stare6Count = 1309 -- Replace the chara sprite's timestamp table with his own when the common part is finished elseif stare6Count == 270 then stare6Speeds[2] = charaTimestamps -- Killing in progress elseif stare6Count == 1000 then Audio.PlaySound("hitSound") Misc.ShakeScreen(3) end stare6Count = stare6Count + 1 return false end punderSprite = nil function Stare7Alive(frame) -- Create Asriel sprite and move Punder if frame == 0 and not inputted then asriel = CreateSprite("AsrielOW/13") asriel.ypivot = 0 asriel.MoveToAbs(320, -56) asriel.SetAnimation({12, 13, 14, 15}, 0.15, "AsrielOW") asriel.z = -1 -- in front of Punder -- move Punder into place Event.StopCoroutine("Punder") punderSprite = Event.GetSprite("Punder") -- walk to start point Event.MoveToPoint("Punder", 400, 260, true, false) end if not inputted then -- Phase 0: Walk up if stare7Count < 120 then asriel.absy = math.min(asriel.absy + 3, 260) -- Phase 1: Look right and talk to Punder friend! elseif stare7Count == 120 then stare7Phase = 1 asriel.StopAnimation() asriel.Set("Overworld/Asriel/16") elseif stare7Count >= 154 and stare7Count%14 == 0 and stare7Count < 308 then asriel.Set("Overworld/Asriel/1" .. (stare7Count%28 == 14 and 6 or 7)) if stare7Count == 238 then Event.SetDirection("Punder", 4) end elseif stare7Count == 308 then asriel.Set("AsrielOW/9") elseif stare7Count == 340 then Event.SetAnimHeader("Punder", "SunMovingLeft") elseif stare7Count == 460 then Event.SetAnimHeader("Punder", "Sun") Event.SetDirection("Punder", 4) elseif stare7Count == 530 then asriel.Set("AsrielOW/5") -- Phase 2: Play tag! elseif stare7Count == 600 then stare7Phase = 2 Audio.PlaySound("runaway") asriel.SetAnimation({4, 5, 6, 5}, 0.15, "AsrielOW") punderSpeed = Event.GetSpeed("Punder") Event.SetSpeed("Punder", 3) Event.MoveToPoint("Punder", 215, 260, true, false) elseif stare7Count > 600 and stare7Count < 1220 then -- tag loop -- asriel do -- run left if asriel.absy == 260 and asriel.absx > 215 then asriel.absx = math.max(asriel.absx - 3, 215) -- go down next if asriel.absx == 215 then asriel.SetAnimation({0, 1, 2, 1}, 0.15, "AsrielOW") asriel.z = -1 end -- run down elseif asriel.absx == 215 and asriel.absy > 140 then asriel.absy = math.max(asriel.absy - 3, 140) -- go right next if asriel.absy == 140 then asriel.SetAnimation({8, 9, 10, 9}, 0.15, "AsrielOW") end -- run right elseif asriel.absy == 140 and asriel.absx < 400 then asriel.absx = math.min(asriel.absx + 3, 400) -- go up next if asriel.absx == 400 then asriel.SetAnimation({12, 13, 14, 13}, 0.15, "AsrielOW") asriel.z = 0 end -- run up elseif asriel.absx == 400 and asriel.absy < 260 then asriel.absy = math.min(asriel.absy + 3, 260) -- go left next if asriel.absy == 260 then asriel.SetAnimation({4, 5, 6, 5}, 0.15, "AsrielOW") end end end -- punder do -- run down next if punderSprite.absy == 260 and punderSprite.absx == 215 then Event.MoveToPoint("Punder", 215, 140, true, false) -- run right next elseif punderSprite.absx == 215 and punderSprite.absy == 140 then Event.MoveToPoint("Punder", 400, 140, true, false) -- run up next elseif punderSprite.absy == 140 and punderSprite.absx == 400 then Event.MoveToPoint("Punder", 400, 260, true, false) -- run left next elseif punderSprite.absx == 400 and punderSprite.absy == 260 then Event.MoveToPoint("Punder", 215, 260, true, false) end end elseif stare7Count == 1220 then asriel.Set("AsrielOW/5") asriel.StopAnimation() Event.MoveToPoint("Punder", asriel.absx + punderSprite.width/2, asriel.absy, true, false) -- Phase 3: Asriel got tagged! elseif stare7Count == 1238 then stare7Phase = 3 Audio.PlaySound("Bump") -- BeginBattle1 asriel.Set("Overworld/Asriel/16") asriel.xscale = -1 elseif stare7Count > 1238 and stare7Count <= 1238 + 15 then local i = stare7Count - 1238 local scale = 1 + math.sin(i * math.pi * 2 / 15) * 0.05 asriel.xscale = -1 / scale asriel.yscale = scale elseif stare7Count == 1254 then asriel.Scale(-1, 1) elseif stare7Count == 1320 then asriel.Set("AsrielOW/9") asriel.xscale = 1 elseif stare7Count == 1335 then Event.MoveToPoint("Punder", asriel.absx + 80, 260, true, false) -- Phase 4: Asriel's turn to chase! elseif stare7Count == 1380 then stare7Phase = 4 Audio.PlaySound("runaway") asriel.SetAnimation({8, 9, 10, 9}, 0.15, "AsrielOW") asriel.z = 0 Event.MoveToPoint("Punder", 400, 260, true, false) elseif stare7Count > 1380 and stare7Count < 1980 then -- tag loop -- asriel do -- run right if asriel.absy == 260 and asriel.absx < 400 then asriel.absx = math.min(asriel.absx + 3, 400) -- go down next if asriel.absx == 400 then asriel.SetAnimation({0, 1, 2, 1}, 0.15, "AsrielOW") end -- run down elseif asriel.absx == 400 and asriel.absy > 140 then asriel.absy = math.max(asriel.absy - 3, 140) -- go left next if asriel.absy == 140 then asriel.SetAnimation({4, 5, 6, 5}, 0.15, "AsrielOW") asriel.z = -1 end -- run left elseif asriel.absy == 140 and asriel.absx > 215 then asriel.absx = math.max(asriel.absx - 3, 215) -- go up next if asriel.absx == 215 then asriel.SetAnimation({12, 13, 14, 13}, 0.15, "AsrielOW") end -- run up elseif asriel.absx == 215 and asriel.absy < 260 then asriel.absy = math.min(asriel.absy + 3, 260) -- go right next if asriel.absy == 260 then asriel.SetAnimation({8, 9, 10, 9}, 0.15, "AsrielOW") asriel.z = 0 end end end -- punder do -- run down next if punderSprite.absx == 400 and punderSprite.absy == 260 then Event.MoveToPoint("Punder", 400, 140, true, false) -- run left next elseif punderSprite.absx == 400 and punderSprite.absy == 140 then Event.MoveToPoint("Punder", 215, 140, true, false) -- run up next elseif punderSprite.absx == 215 and punderSprite.absy == 140 then Event.MoveToPoint("Punder", 215, 260, true, false) -- run right next elseif punderSprite.absx == 215 and punderSprite.absy == 260 then Event.MoveToPoint("Punder", 400, 260, true, false) end end -- Phase 5: Punder got tagged! elseif stare7Count == 1980 then Event.MoveToPoint("Punder", punderSprite.absx, punderSprite.absy, true, false) stare7Phase = 5 elseif stare7Count > 1980 and stare7Count < 1998 then asriel.absx = asriel.absx + 3 elseif stare7Count == 1998 then Audio.PlaySound("Bump") asriel.StopAnimation() asriel.Set("Overworld/Asriel/16") elseif stare7Count > 1998 and stare7Count <= 1998 + 15 then local i = stare7Count - 1998 local scale = 1 + math.sin(i * math.pi * 2 / 15) * 0.05 punderSprite.xscale = 1 / scale punderSprite.yscale = scale elseif stare7Count == 2013 then punderSprite.Scale(1, 1) elseif stare7Count == 2060 then Event.SetDirection("Punder", 4) elseif stare7Count == 2120 then Event.SetAnimHeader("Punder", "SunMovingLeft") elseif stare7Count == 2220 then Event.SetAnimHeader("Punder", "Sun") Event.SetDirection("Punder", 4) elseif stare7Count >= 2300 and stare7Count%15 == 0 and stare7Count <= 2415 then asriel.Set("Overworld/Asriel/1" .. (stare7Count%30 == 0 and 7 or 6)) elseif stare7Count == 2500 then Event.SetSpeed("Punder", punderSpeed) Event.MoveToPoint("Punder", 400, 260, true, false) elseif stare7Count == 2540 then asriel.Set("AsrielOW/13") -- Phase 6: Bye-bye! elseif stare7Count == 2590 then stare7Phase = 6 asriel.SetAnimation({12, 13, 14, 15}, 0.1875, "AsrielOW") elseif stare7Count > 2590 and stare7Count < 2701 then asriel.absy = asriel.absy + 2 -- The end!! elseif stare7Count >= 2701 then if asriel then asriel.Remove() asriel = nil Event.SetSpeed("Punder", punderSpeed) Event.SetPage("Punder", 2) end return true end -- Player pressed a key else -- Asriel hasn't walked all the way up yet if stare7Phase == 0 then -- run once if stare7Count < 120 then stare7Count = 120 asriel.SetAnimation({0, 1, 2, 1}, 0.1875, "AsrielOW") elseif stare7Count > 120 and asriel.absy > -56 then asriel.absy = asriel.absy - 2 -- end of event elseif stare7Count > 120 and asriel.absy <= -56 then asriel.Remove() asriel = nil Event.SetPage("Punder", 2) return true end -- Talking to Punder elseif stare7Phase == 1 then -- run once if stare7Count < 600 then stare7Count = 600 asriel.SetAnimation({12, 13, 14, 13}, 0.1875, "AsrielOW") Event.SetAnimHeader("Punder", "Sun") Event.SetPage("Punder", 2) elseif stare7Count > 600 and asriel.absy < 480 then asriel.absy = asriel.absy + 2 -- end of event elseif stare7Count > 600 and asriel.absy >= 480 then asriel.Remove() asriel = nil return true end -- Tag game CCW elseif stare7Phase == 2 then -- asriel do -- run left if asriel.absy == 260 and asriel.absx > 215 then if asriel.absx >= 298 then asriel.absx = math.max(asriel.absx - 3, 298) -- run north off-screen if asriel.absx == 298 then asriel.absy = asriel.absy + 1 asriel.SetAnimation({12, 13, 14, 13}, 0.1875, "AsrielOW") asriel.z = 0 Event.MoveToPoint("Punder", punderSprite.absx, punderSprite.absy, true, false) Event.SetSpeed("Punder", punderSpeed) Event.SetPage("Punder", 2) end else asriel.absx = math.max(asriel.absx - 3, 215) -- go down next if asriel.absx == 215 then asriel.SetAnimation({0, 1, 2, 1}, 0.15, "AsrielOW") asriel.z = -1 end end -- run down elseif asriel.absx == 215 and asriel.absy > 140 then asriel.absy = math.max(asriel.absy - 3, 140) -- go right next if asriel.absy == 140 then asriel.SetAnimation({8, 9, 10, 9}, 0.15, "AsrielOW") end -- run right elseif asriel.absy == 140 and asriel.absx < 400 then asriel.absx = math.min(asriel.absx + 3, 400) -- go up next if asriel.absx == 400 then asriel.SetAnimation({12, 13, 14, 13}, 0.15, "AsrielOW") asriel.z = 0 end -- run up elseif asriel.absx == 400 and asriel.absy < 260 then asriel.absy = math.min(asriel.absy + 3, 260) -- go left next if asriel.absy == 260 then asriel.SetAnimation({4, 5, 6, 5}, 0.15, "AsrielOW") end -- run north off-screen elseif asriel.absx == 298 and asriel.absy < 480 then asriel.absy = asriel.absy + 2 -- end of event if asriel.absy >= 480 then asriel.Remove() asriel = nil Event.MoveToPoint("Punder", punderSprite.absx, punderSprite.absy, true, false) Event.SetPage("Punder", 2) return true end end end -- punder do -- run down next if punderSprite.absy == 260 and punderSprite.absx == 215 then Event.MoveToPoint("Punder", 215, 140, true, false) -- run right next elseif punderSprite.absx == 215 and punderSprite.absy == 140 then Event.MoveToPoint("Punder", 400, 140, true, false) -- run up next elseif punderSprite.absy == 140 and punderSprite.absx == 400 then Event.MoveToPoint("Punder", 400, 260, true, false) end end -- Asriel getting tagged elseif stare7Phase == 3 then -- run once if stare7Count < 1380 then stare7Count = 1380 asriel.SetAnimation({12, 13, 14, 13}, 0.1875, "AsrielOW") asriel.Scale(1, 1) Event.SetAnimHeader("Punder", "Sun") Event.SetPage("Punder", 2) Event.SetSpeed("Punder", punderSpeed) elseif stare7Count > 1380 and asriel.absy < 480 then asriel.absy = asriel.absy + 2 -- end of event elseif stare7Count > 1380 and asriel.absy >= 480 then asriel.Remove() asriel = nil return true end -- Tag game CW elseif stare7Phase == 4 then -- asriel do -- run right if asriel.absy == 260 and asriel.absx < 400 then asriel.absx = math.min(asriel.absx + 3, 400) -- go down next if asriel.absx == 400 then asriel.SetAnimation({0, 1, 2, 1}, 0.15, "AsrielOW") end -- run down elseif asriel.absx == 400 and asriel.absy > 140 then asriel.absy = math.max(asriel.absy - 3, 140) -- go left next if asriel.absy == 140 then asriel.SetAnimation({4, 5, 6, 5}, 0.15, "AsrielOW") asriel.z = -1 end -- run left elseif asriel.absy == 140 and asriel.absx > 215 then if asriel.absx > 320 then asriel.absx = math.max(asriel.absx - 3, 320) -- run south off-screen if asriel.absx == 320 then asriel.absy = asriel.absy - 1 asriel.SetAnimation({0, 1, 2, 1}, 0.1875, "AsrielOW") asriel.z = -1 Event.MoveToPoint("Punder", punderSprite.absx, punderSprite.absy, true, false) end else asriel.absx = math.max(asriel.absx - 3, 215) -- go up next if asriel.absx == 215 then asriel.SetAnimation({12, 13, 14, 13}, 0.15, "AsrielOW") end end -- run up elseif asriel.absx == 215 and asriel.absy < 260 then asriel.absy = math.min(asriel.absy + 3, 260) -- go right next if asriel.absy == 260 then asriel.SetAnimation({8, 9, 10, 9}, 0.15, "AsrielOW") asriel.z = 0 end -- run south off-screen elseif asriel.absx == 320 and asriel.absy < 140 and asriel.absy > -56 then asriel.absy = asriel.absy - 2 -- end of event if asriel.absy <= -56 then asriel.Remove() asriel = nil Event.SetSpeed("Punder", punderSpeed) Event.SetPage("Punder", 2) return true end end end -- punder do -- run down next if punderSprite.absx == 400 and punderSprite.absy == 260 then Event.MoveToPoint("Punder", 400, 140, true, false) -- run up next elseif punderSprite.absx == 215 and punderSprite.absy == 140 then Event.MoveToPoint("Punder", 215, 260, true, false) -- run right next elseif punderSprite.absx == 215 and punderSprite.absy == 260 then Event.MoveToPoint("Punder", 400, 260, true, false) -- run left next elseif punderSprite.absx == 400 and punderSprite.absy == 140 then Event.MoveToPoint("Punder", 320 - 78, 140, true, false) end end -- Punder is talking to Asriel elseif stare7Phase > 4 then -- run once if stare7Count < 2701 then stare7Count = 2701 asriel.SetAnimation({12, 13, 14, 15}, 0.1875, "AsrielOW") punderSprite.Scale(1, 1) Event.SetSpeed("Punder", punderSpeed) Event.SetPage("Punder", 2) elseif stare7Count > 2701 and asriel.absy < 480 then if asriel.absx ~= 320 then asriel.absx = asriel.absx + (math.min(math.abs(asriel.absx - 320), 1.5) * (asriel.absx > 320 and -1 or 1)) end asriel.absy = asriel.absy + 2 -- end of event elseif stare7Count > 2701 and asriel.absy >= 480 then asriel.Remove() asriel = nil return true end end end stare7Count = stare7Count + 1 end function Stare7Dead(frame) -- Create Asriel sprite if frame == 0 and not inputted then asriel = CreateSprite("AsrielOW/13") asriel.ypivot = 0 asriel.MoveToAbs(320, -56) asriel.SetAnimation({12, 13, 14, 15}, 0.15, "AsrielOW") end if not inputted then -- Phase 0: Walk up if stare7Phase == 0 and asriel and asriel.absy < 260 then asriel.absy = math.min(asriel.absy + 3, 260) -- Phase 1: Look right and talk to Punder...but he's not there... elseif stare7Count == 120 then stare7Phase = 1 asriel.StopAnimation() asriel.Set("Overworld/Asriel/16") elseif stare7Count >= 154 and stare7Count%14 == 0 and stare7Count <= 308 then asriel.Set("Overworld/Asriel/1" .. (stare7Count%28 == 14 and 6 or 7)) elseif stare7Count == 350 then asriel.Set("Overworld/Asriel/15") elseif stare7Count == 395 then Audio.PlaySound("Squeak") elseif stare7Count > 395 and stare7Count < 420 then local i = stare7Count - 395 local scale = 1 + math.sin(i * math.pi * 2 / 15) * 0.05 asriel.xscale = 1 / scale asriel.yscale = scale elseif stare7Count == 420 then asriel.Scale(1, 1) elseif stare7Count == 500 then asriel.Set("Overworld/Asriel/11") asriel.xscale = -1 -- Phase 2: Walk to where Punder used to be elseif stare7Count == 570 then stare7Phase = 2 asriel.SetAnimation({12, 11, 13, 11}, 0.2, "Overworld/Asriel") elseif stare7Count > 570 and stare7Count < 625 then asriel.x = math.min(asriel.x + 1.5, 400) elseif stare7Count == 625 then asriel.StopAnimation() asriel.Set("Overworld/Asriel/11") -- Phase 3: Look around frantically for lost friend... elseif stare7Count == 710 or stare7Count == 920 then asriel.Set("Overworld/Asriel/11") -- left asriel.xscale = 1 elseif stare7Count == 750 or stare7Count == 880 then asriel.Set("AsrielOW/13") -- up asriel.xscale = 1 elseif stare7Count == 840 then asriel.Set("Overworld/Asriel/11") -- right asriel.xscale = -1 elseif stare7Count == 790 or stare7Count == 960 then asriel.Set("Overworld/Asriel/2") -- down asriel.xscale = 1 elseif stare7Count == 1060 then asriel.Set("Overworld/Asriel/11") asriel.xscale = -1 elseif stare7Count == 1120 then asriel.Set("Overworld/Asriel/14") asriel.xscale = 1 -- Phase 4: Begin to cry :'( elseif stare7Count == 1250 then stare7Phase = 4 asriel.Set("Overworld/Asriel/2") elseif stare7Count == 1325 then asriel.Set("Overworld/Asriel/3") elseif stare7Count == 1400 then asriel.Set("Overworld/Asriel/4") elseif stare7Count == 1500 then asriel.Set("Overworld/Asriel/0") elseif stare7Count > 1550 and stare7Count%30 == 0 and stare7Count < 1800 then asriel.Set("Overworld/Asriel/" .. (stare7Count%60 == 0 and 0 or 1)) -- Phase 5: Stop crying... elseif stare7Count >= 1800 and stare7Count%20 == 0 and stare7Count < 2060 then stare7Phase = 5 asriel.Set("Overworld/Asriel/" .. (5 + ((stare7Count%80) / 20))) elseif stare7Count == 2120 then asriel.Set("Overworld/Asriel/9") elseif stare7Count == 2200 then asriel.Set("Overworld/Asriel/10") elseif stare7Count == 2275 then asriel.Set("Overworld/Asriel/2") -- Phase 6: Leave :c elseif stare7Count == 2400 then stare7Phase = 6 asriel.Set("Overworld/Asriel/11") elseif stare7Count == 2460 then asriel.SetAnimation({12, 11, 13, 11}, 0.25, "Overworld/Asriel") elseif stare7Count > 2460 and stare7Count < 2525 then asriel.x = math.max(asriel.x - 1.25, 320) elseif stare7Count == 2525 then asriel.StopAnimation() asriel.Set("Overworld/Asriel/11") elseif stare7Count == 2575 then asriel.SetAnimation({12, 13, 14, 13}, 0.25, "AsrielOW") elseif stare7Count > 2575 and stare7Count < 2630 then asriel.y = asriel.y + 1.5 elseif stare7Count == 2630 then asriel.y = math.floor(asriel.y) asriel.StopAnimation() asriel.Set("AsrielOW/13") elseif stare7Count == 2700 then asriel.Set("Overworld/Asriel/11") asriel.xscale = -1 elseif stare7Count == 2790 then asriel.Set("AsrielOW/13") asriel.xscale = 1 elseif stare7Count == 2830 then asriel.SetAnimation({12, 13, 14, 13}, 0.1875, "AsrielOW") elseif stare7Count >= 2830 and stare7Count < 2900 then asriel.absy = asriel.absy + 2 -- The end!! elseif stare7Count >= 2900 then if asriel then asriel.Remove() asriel = nil end return true end -- Player pressed a key else -- Asriel hasn't walked all the way up yet if stare7Phase == 0 then -- run once if stare7Count < 120 then stare7Count = 120 asriel.StopAnimation() asriel.Set("AsrielOW/13") asriel.xscale = 1 elseif stare7Count == 150 then asriel.Set("AsrielOW/5") elseif stare7Count == 180 then asriel.Set("AsrielOW/9") elseif stare7Count == 210 then asriel.Set("AsrielOW/1") elseif stare7Count == 270 then asriel.SetAnimation({0, 1, 2, 1}, 0.1875, "AsrielOW") asriel.absy = math.floor(asriel.absy + 0.5) elseif stare7Count > 270 and asriel.absy > -56 then asriel.absy = asriel.absy - 2 -- end of event elseif stare7Count > 270 and asriel.absy <= -56 then asriel.Remove() asriel = nil return true end -- Asriel is trying to talk to Punder elseif stare7Phase == 1 then -- run once if stare7Count < 570 then stare7Count = 570 asriel.StopAnimation() asriel.SetAnimation({12, 13, 14, 13}, 0.15, "AsrielOW") asriel.Scale(1, 1) elseif asriel.absy < 480 then asriel.absy = asriel.absy + 2.5 -- end of event elseif asriel.absy >= 480 then asriel.Remove() asriel = nil return true end -- any point after asriel starts walking right else -- run once if stare7Count < 2900 then stare7Count = 2900 asriel.StopAnimation() -- walk left or up if asriel.absx > 320 then asriel.SetAnimation({12, 11, 13, 11}, 0.1875, "Overworld/Asriel") else asriel.SetAnimation({12, 13, 14, 13}, 0.1875, "AsrielOW") end asriel.xscale = 1 elseif asriel.absx > 320 then asriel.absx = math.max(asriel.absx - 2, 320) -- start walking up if asriel.absx == 320 then asriel.SetAnimation({12, 13, 14, 13}, 0.1875, "AsrielOW") end elseif asriel.absy < 480 then asriel.absy = asriel.absy + 2 -- end of event elseif asriel.absy >= 480 then asriel.Remove() asriel = nil return true end end end stare7Count = asriel and stare7Count + 1 or stare7Count end function Stare8(frame) -- run once if frame == 0 and not inputted then chara = CreateSprite("Overworld/Chara/c0") chara.z = -1 chara.ypivot = 0 chara.MoveToAbs(-22, 230) vignette = CreateSprite("Overworld/Chara/vignette") vignette.alpha = 0 vignette.SetParent(chara) vignette.MoveTo(0, 0) NewAudio.CreateChannel("zzz") NewAudio.PlayMusic("zzz", "mus_zzz_c", true, 0) end -- standard operations if stare8Phase > -1 then if not inputted then -- Phase 0: Slowly walk right with pauses if stare8Phase == 0 and stare8Count < 330 then if stare8Count % 110 == 0 then chara.Set("Overworld/Chara/c0") elseif stare8Count % 110 == 45 then chara.Set("Overworld/Chara/c1") end if stare8Count % 110 < 45 then chara.x = chara.x + 0.5 end elseif stare8Phase == 0 and stare8Count == 370 then stare8Phase = 1 chara.SetAnimation({"c0", "c1"}, 0.3, "Overworld/Chara") -- Phase 1: Walk right normally but still slowly. then walk down elseif stare8Phase == 1 and stare8Count < 800 then chara.x = chara.x + 0.5 elseif stare8Phase == 1 and stare8Count >= 800 then if stare8Count == 800 then chara.animationspeed = chara.animationspeed * 2.5 end chara.x = chara.x + 0.25 chara.y = math.max(chara.y - 0.1875, 174) if chara.y == 174 then stare8Phase = 2 chara.animationspeed = 1 end -- Phase 2: Walk right just a bit slower elseif stare8Phase == 2 and stare8Count < 1300 then chara.x = chara.x + 0.2 elseif stare8Count == 1300 then chara.StopAnimation() chara.Set("Overworld/Chara/c1") stare8Phase = 3 -- Phase 3: Inch ever closer to Frisk elseif stare8Phase == 3 and stare8Count >= 1360 and stare8Count < 2710 then local timer = (stare8Count - 1360) % 140 if timer == 0 then chara.Set("Overworld/Chara/c0") elseif timer == 45 then chara.Set("Overworld/Chara/c1") end if timer < 45 then chara.x = math.min(chara.x + 0.1, 420) end elseif stare8Count == 2710 then stare8Phase = 4 -- Phase 4: Hug...? elseif stare8Count == 2830 then chara.Set("Overworld/Chara/c2") elseif stare8Count == 3000 then chara.Set("Overworld/Chara/c3") elseif stare8Count == 3060 then stare8Phase = 5 -- Phase 5: Fade out scary music elseif stare8Count == 3220 then chara.Set("Overworld/Chara/c4") elseif stare8Count == 3265 then chara.Set("Overworld/Chara/c5") elseif stare8Count == 3350 then chara.Set("CharaOW/9") elseif stare8Count == 3420 then stare8Phase = -1 stare8Count = 0 return false end -- vignette alpha if stare8Phase < 4 then vignette.alpha = chara.x/450 NewAudio.SetVolume("zzz", math.min((chara.x/420) * 0.75, 0.75)) Audio.Volume((1 - (chara.x/334)) * 0.75) elseif stare8Phase == 5 then NewAudio.SetVolume("zzz", NewAudio.GetVolume("zzz") - 0.003) vignette.alpha = vignette.alpha - 0.003 end -- Player has pressed a key else -- Initial walk right if stare8Phase == 0 then -- run once if chara.xscale == 1 then chara.xscale = -1 chara.Set("Overworld/Chara/c1") chara.SetAnimation({"c1", "c0"}, 0.1875, "Overworld/Chara") vignette.xscale = 1 else chara.x = math.max(chara.x - 2, -22) NewAudio.SetVolume("zzz", NewAudio.GetVolume("zzz") - 0.003) vignette.alpha = vignette.alpha - 0.003 if chara.x == -22 then NewAudio.SetVolume("src", math.min(NewAudio.GetVolume("src") + 0.01, 0.75)) if NewAudio.GetVolume("src") == 0.75 and vignette.alpha == 0 then chara.Remove() chara = nil vignette.Remove() NewAudio.DestroyChannel("zzz") return true end end end else stare8Phase = -1 stare8Count = -1 end end -- Make Chara run off else if stare8Count == 0 then charaY = chara.absy chara.Set("CharaOW/9") chara.StopAnimation() chara.ypivot = 0 chara.absy = charaY -- make bubble Audio.PlaySound("BeginBattle1") bubble = CreateSprite("Overworld/EncounterBubble") bubble.ypivot = 0 bubble.SetParent(chara) bubble.SetAnchor(0.5, 0) bubble.MoveTo(0, chara.height + 6) elseif stare8Count <= 11 then chara.y = chara.y + ( 6 - stare8Count) elseif stare8Count == 12 then chara.absy = charaY elseif stare8Count == 30 then bubble.Remove() Audio.PlaySound("runaway") chara.SetAnimation({4, 5, 6, 5}, 0.1, "CharaOW") elseif stare8Count > 30 then if chara then chara.x = math.max(chara.x - 4, -22) chara.y = math.min(chara.y + 2, 230) if chara.x == -22 then NewAudio.SetVolume("src", math.min(NewAudio.GetVolume("src") + 0.01, 0.75)) if NewAudio.GetVolume("src") == 0.75 and vignette.alpha == 0 then chara.Remove() chara = nil vignette.Remove() NewAudio.DestroyChannel("zzz") return true end end else return true end end NewAudio.SetVolume("zzz", NewAudio.GetVolume("zzz") - 0.003) vignette.alpha = vignette.alpha - 0.003 end stare8Count = chara and stare8Count + 1 or stare8Count end -- Auto function EventPage2() stareShift = (Event.Exists("Punder") and Event.GetAnimHeader("Punder") == "") and 0 or 2 stareFrame = 1800 inputted = false currEventDone = true resetStareVars() Event.SetPage(Event.GetName(), 3) Player.CanMove(false) Event.MoveToPoint("Player", 430, 174, true) Event.SetDirection("Player", 6) end -- Parallel process function EventPage3() local stareID = math.floor(stareFrame / eventFrequency) local realStareID = math.min(stareID + stareShift, maxStares) if stareID > 0 then currEventDone = _G["Stare" .. realStareID]((stareFrame + (stareShift * eventFrequency)) - realStareID * eventFrequency) end if not inputted then if Input.Left == 1 or Input.Right == 1 or Input.Up == 1 or Input.Down == 1 or Input.Confirm == 1 or Input.Cancel == 1 or Input.Menu == 1 then inputted = true end end if inputted and currEventDone then SetGlobal("CYFOWStare", math.min(realStareID, maxStares) + 1) Player.CanMove(true) Event.SetPage(Event.GetName(), 1) Event.SetPage("Event1", 5) Event.StopCoroutine() return end if not displayTextOneFrameMovement then Player.CanMove(false) else Player.CanMove(true) displayTextOneFrameMovement = false end if not inputted then stareFrame = stareFrame + 1 end end ================================================ FILE: Assets/Mods/Examples/Lua/Events/StareTest.lua.meta ================================================ fileFormatVersion: 2 guid: 515203a06e9b6a84082c8021d1ae5775 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Events.meta ================================================ fileFormatVersion: 2 guid: bff9acec73eb310409d57efe34ff8d67 folderAsset: yes timeCreated: 1487174276 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Libraries/randomvoice.lua ================================================ -- A library to add random voices to every letter in a dialogue. -- First, we make a new table for our random voices and our module. local voices = {} -- This will contain the voices we're going to use. Only accessible from within this library. local randomvoicer = {} -- The actual module. -- You can change your voices from your own scripts with this. See the actual encounter for usage. function randomvoicer.setvoices(table) voices = table end -- This randomizes all lines in a table. function randomvoicer.randomizetable(table) for i=1,#table do table[i] = randomvoicer.randomizeline(table[i]) end return table end -- This function will take care of inserting a random voice in front of every letter. function randomvoicer.randomizeline(text) local skipping = false -- We will use this variable to stop inserting voices when we find [ and continue when we find ], otherwise we'll screw up commands. -- First, we can just skip the whole thing if there aren't any voices. if #voices == 0 then return text end -- Now we can go over every letter in the text, and add a voice to it. local temptext = "" for i=1,#text do local nextletter = text:sub(i,i) -- Get the next letter. if nextletter == "[" then -- Start skipping text when we encounter a command. skipping = true elseif nextletter == "]" then -- We can stop skipping again when the command is over. skipping = false elseif skipping == false then -- If we aren't skipping, we can insert random voices. temptext = temptext .. randomvoicer.voice() -- Adds a random voice to the temporary string. end temptext = temptext .. nextletter -- In all cases, we should include the next letter of the string. end return temptext -- Don't forget to return the modified text. end -- This returns a random voice command depending on what voices you have set here. function randomvoicer.voice() if #voices == 0 then return "" end return "[voice:" .. voices[math.random(#voices)] .. "]" end return randomvoicer ================================================ FILE: Assets/Mods/Examples/Lua/Libraries/randomvoice.lua.meta ================================================ fileFormatVersion: 2 guid: c1fbe74fee6799440b1054a7ca054e77 timeCreated: 1487174280 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Libraries.meta ================================================ fileFormatVersion: 2 guid: 0bce4a4d764f2b946a13ab82fd2e62a9 folderAsset: yes timeCreated: 1487174274 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Monsters/bulletTestingPoseur.lua ================================================ comments = {"Smells like the work\rof an enemy stand.", "Poseur is posing like his\rlife depends on it.", "Poseur's limbs shouldn't be\rmoving in this way."} commands = {"Regular", "Cyan", "Orange", "Green", "Combined"} randomdialogue = {"Check\nit\nout."} sprite = "poseur" --Always PNG. Extension is added automatically. name = "Poseur" hp = 60 atk = 4 def = 1 check = "Do not insult its hair." dialogbubble = "right" -- See documentation for what bubbles you have available. canspare = false xp = 10 gold = 20 posecount = 0 -- Happens after the slash animation but before the animation. function HandleAttack(attackstatus) if attackstatus == -1 then -- player pressed fight but didn't press Z afterwards currentdialogue = {"Do\nno\nharm."} else -- player did actually attack if hp > 30 then currentdialogue = {"You're\nstrong!"} else currentdialogue = {"Too\nstrong\n..."} end end end -- This handles the commands; all-caps versions of the commands list you have above. function HandleCustomCommand(command) SetGlobal("wavetype", command) if command == "REGULAR" then BattleDialog({"The default bullettest_bouncy."}) elseif command == "CYAN" then BattleDialog({"Cyan bullets. Stand still\rto avoid getting hit."}) elseif command == "ORANGE" then BattleDialog({"Orange bullets. Move through\rto avoid getting hit."}) elseif command == "GREEN" then BattleDialog({"Green bullets.\rThey heal you for 1 HP."}) elseif command == "COMBINED" then BattleDialog({"All behaviours combined.\nAn example of how to\rachieve this."}) end end ================================================ FILE: Assets/Mods/Examples/Lua/Monsters/bulletTestingPoseur.lua.meta ================================================ fileFormatVersion: 2 guid: f60415f0b4a3be446bbe3f992f9a6b74 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Monsters/newCharactersPoseur.lua ================================================ comments = {"You should check the path\nExamples/Sprites/UI/Fonts !"} commands = {"Pose", "Stand", "Insult"} randomdialogue = {"Check\nit\nout\nù-ù"} sprite = "poseur" --Always PNG. Extension is added automatically. name = "Poseur" hp = 60 atk = 4 def = 1 check = "Do not insult its hair." dialogbubble = "right" -- See documentation for what bubbles you have available. canspare = false xp = 10 gold = 20 posecount = 0 -- Happens after the slash animation but before the animation. function HandleAttack(attackstatus) if attackstatus == -1 then -- player pressed fight but didn't press Z afterwards currentdialogue = {"Do\nno\nharm."} else -- player did actually attack if hp > 30 then currentdialogue = {"You're\nstrong!"} else currentdialogue = {"Too\nstrong\n..."} end end end -- This handles the commands; all-caps versions of the commands list you have above. function HandleCustomCommand(command) if command == "POSE" then if posecount == 0 then currentdialogue = {"Not\nbad."} BattleDialog({"You posed dramatically."}) elseif posecount == 1 then currentdialogue = {"Not\nbad\nat\nall...!"} BattleDialog({"You posed even more dramatically."}) else canspare = true table.insert(comments, "Poseur is impressed by your\rposing power.") currentdialogue = {"That's\nit...!"} BattleDialog({"You posed so dramatically,\ryour anatomy became\rincorrect."}) end posecount = posecount + 1 elseif command == "STAND" then currentdialogue = {"What's\nthe\nhold-up?"} BattleDialog({"You just kind of stand there."}) elseif command == "INSULT" then currentdialogue = {"But\nI don't\nhave\nhair."} BattleDialog({"You make a scathing remark about\rPoseur's hairstyle."}) end end ================================================ FILE: Assets/Mods/Examples/Lua/Monsters/newCharactersPoseur.lua.meta ================================================ fileFormatVersion: 2 guid: 6780d9f7012b40f478aad40ca5d4a8f6 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Monsters/poseur.lua ================================================ -- A basic monster script skeleton you can copy and modify for your own creations. comments = {"Smells like the work\rof an enemy stand.", "Poseur is posing like his\rlife depends on it.", "Poseur's limbs shouldn't be\rmoving in this way."} commands = {"Act 1", "Act 2", "Act 3"} randomdialogue = {"Check\nit\nout."} sprite = "poseur" --Always PNG. Extension is added automatically. name = "Poseur" hp = 60 atk = 4 def = 1 check = "Do not insult its hair." dialogbubble = "right" -- See documentation for what bubbles you have available. canspare = false cancheck = true xp = 10 gold = 20 -- Happens after the slash animation but before the animation. function HandleAttack(attackstatus) if attackstatus == -1 then -- player pressed fight but didn't press Z afterwards currentdialogue = {"Do\nno\nharm."} else -- player did actually attack if hp > 30 then currentdialogue = {"You're\nstrong!"} else currentdialogue = {"Too\nstrong\n..."} end end end -- This handles the commands; all-caps versions of the commands list you have above. function HandleCustomCommand(command) if command == "ACT 1" then currentdialogue = {"Selected\nAct 1."} elseif command == "ACT 2" then currentdialogue = {"Selected\nAct 2."} elseif command == "ACT 3" then currentdialogue = {"Selected\nAct 3."} end currentdialogue = {currentdialogue[1]} BattleDialog({"You selected " .. command .. "."}) end ================================================ FILE: Assets/Mods/Examples/Lua/Monsters/poseur.lua.meta ================================================ fileFormatVersion: 2 guid: 4fee04575df61934e8c1753859dc0f92 timeCreated: 1487174277 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Monsters/poseurIntroAndLaunchMusic.lua ================================================ comments = {"Smells like the work\rof an enemy stand.", "Poseur is posing like his\rlife depends on it.", "Poseur's limbs shouldn't be\rmoving in this way."} commands = {"Act 1", "Act 2", "Act 3"} randomdialogue = {"Check\nit\nout."} sprite = "poseur" --Always PNG. Extension is added automatically. name = "Poseur" hp = 60 atk = 4 def = 1 check = "Do not insult its hair." dialogbubble = "right" -- See documentation for what bubbles you have available. canspare = false xp = 10 gold = 20 posecount = 0 -- Function launched inside the intro when the music is resumed. function LaunchMusic() Audio.Unpause() end -- Happens after the slash animation but before the animation. function HandleAttack(attackstatus) if attackstatus == -1 then -- player pressed fight but didn't press Z afterwards currentdialogue = {"Do\nno\nharm."} else -- player did actually attack if hp > 30 then currentdialogue = {"You're\nstrong!"} else currentdialogue = {"Too\nstrong\n..."} end end end -- This handles the commands; all-caps versions of the commands list you have above. function HandleCustomCommand(command) if command == "ACT 1" then currentdialogue = {"Selected\nAct 1."} elseif command == "ACT 2" then currentdialogue = {"Selected\nAct 2."} elseif command == "ACT 3" then currentdialogue = {"Selected\nAct 3."} end BattleDialog({"You selected " .. command .. "."}) end ================================================ FILE: Assets/Mods/Examples/Lua/Monsters/poseurIntroAndLaunchMusic.lua.meta ================================================ fileFormatVersion: 2 guid: 71c490f826d54f043af088f6cada37f7 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Monsters/sans.lua ================================================ -- A basic monster script skeleton you can copy and modify for your own creations. comments = {"Smells like 'dog.", "Looking good.", "Is that ketchup?"} commands = {"Act 1", "Act 2", "Act 3"} randomdialogue = {"[font:sans]..."} sprite = "empty" --Always PNG. Extension is added automatically. name = "Skeleton" hp = 100 atk = 1 def = 1 check = "Check message goes here." dialogbubble = "rightwideminus" -- See documentation for what bubbles you have available. cancheck = true canspare = false xp = 30 gold = 40 -- Happens after the slash animation but before the animation. function HandleAttack(attackstatus) if attackstatus == -1 then -- player pressed fight but didn't press Z afterwards else -- player did actually attack end end -- This handles the commands; all-caps versions of the commands list you have above. function HandleCustomCommand(command) if command == "ACT 1" then currentdialogue = {"Selected\nAct 1."} elseif command == "ACT 2" then currentdialogue = {"Selected\nAct 2."} elseif command == "ACT 3" then currentdialogue = {"Selected\nAct 3."} end currentdialogue = {"[font:sans]" .. currentdialogue[1]} BattleDialog({"You selected " .. command .. "."}) end ================================================ FILE: Assets/Mods/Examples/Lua/Monsters/sans.lua.meta ================================================ fileFormatVersion: 2 guid: 0cbfe934838ebe941b1431dbd20785c9 timeCreated: 1487174276 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Monsters/timeScalePoseur.lua ================================================ -- A basic monster script skeleton you can copy and modify for your own creations. comments = {"Smells like the work\rof an enemy stand.", "Poseur is posing like his\rlife depends on it.", "Poseur's limbs shouldn't be\rmoving in this way."} commands = {"Za Warudo"} randomdialogue = {"Random\nDialogue\n1.", "Random\nDialogue\n2.", "Random\nDialogue\n3."} sprite = "poseur" --Always PNG. Extension is added automatically. name = "Poseur" hp = 100 atk = 1 def = 1 check = "Check message goes here." dialogbubble = "right" -- See documentation for what bubbles you have available. canspare = false -- Happens after the slash animation but before function HandleAttack(attackstatus) if attackstatus == -1 then -- player pressed fight but didn't press Z afterwards else -- player did actually attack end end -- This handles the commands; all-caps versions of the commands list you have above. function HandleCustomCommand(command) if command == "ZA WARUDO" then Time.timeScale = Time.timeScale / 2 currentdialogue = {"Time\nwill\ngo\nslower!"} BattleDialog({"You selected Za Warudo."}) end end ================================================ FILE: Assets/Mods/Examples/Lua/Monsters/timeScalePoseur.lua.meta ================================================ fileFormatVersion: 2 guid: 84d973ec364f34841b16d5e0c0037da3 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Monsters/twoMonstersPosette.lua ================================================ comments = {"Smells like stars and platinum.", "Posette is standing there quietly.", "Posette is flexing."} commands = {"Pose", "Stand", "Insult"} randomdialogue = {"Gimme a break.", "...", "Ora Ora Ora Ora"} sprite = "posette" --Always PNG. Extension is added automatically. name = "Posette" hp = 100 atk = 3 def = 0 check = "The next in a long line of respected mannequins." dialogbubble = "right" -- See documentation for what bubbles you have available. canspare = false xp = 30 gold = 40 this_must_be_the_work_of_an_enemy_stand = 0 -- Happens after the slash animation but before the animation. function HandleAttack(attackstatus) if attackstatus == -1 then -- player pressed fight but didn't press Z afterwards currentdialogue = {"Weak."} else -- player did actually attack if hp > 30 then currentdialogue = {"I felt that."} else currentdialogue = {"Now I'm angry."} end end end -- This handles the commands; all-caps versions of the commands list you have above. function HandleCustomCommand(command) if command == "POSE" then BattleDialog({"You struck your best pose,[w:7] but Posette remained unimpressed.[w:20][next]"}) elseif command == "STAND" then if this_must_be_the_work_of_an_enemy_stand == 0 then currentdialogue = {"Stand-\noff?\nAlright."} BattleDialog({"You just kind of stand there."}) elseif this_must_be_the_work_of_an_enemy_stand == 1 then currentdialogue = {"Agh..."} BattleDialog({"Your standing intensifies.[w:30][next]", "Posette won't hold on much longer."}) else canspare = true table.insert(comments, "There's still a faint rumbling.") currentdialogue = {"I\ngive\nup."} BattleDialog({"You stand there intently. You hear a faint rumbling."}) end this_must_be_the_work_of_an_enemy_stand = this_must_be_the_work_of_an_enemy_stand + 1 elseif command == "INSULT" then currentdialogue = {"Awful."} BattleDialog({"You make a scathing remark about Posette's pose."}) end end ================================================ FILE: Assets/Mods/Examples/Lua/Monsters/twoMonstersPosette.lua.meta ================================================ fileFormatVersion: 2 guid: 8df8e0e3bd70f0e49819e127d18bf7fd DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Monsters/twoMonstersPoseur.lua ================================================ comments = {"You should check the path\nExamples/Sprites/UI/Fonts !"} commands = {"Pose", "Stand", "Insult"} randomdialogue = {"Check\nit\nout"} sprite = "poseur" --Always PNG. Extension is added automatically. name = "Poseur" hp = 60 atk = 4 def = 1 check = "Do not insult its hair." dialogbubble = "right" -- See documentation for what bubbles you have available. canspare = false xp = 10 gold = 20 posecount = 0 -- Happens after the slash animation but before the animation. function HandleAttack(attackstatus) if attackstatus == -1 then -- player pressed fight but didn't press Z afterwards currentdialogue = {"Do\nno\nharm."} else -- player did actually attack if hp > 30 then currentdialogue = {"You're\nstrong!"} else currentdialogue = {"Too\nstrong\n..."} end end end -- This handles the commands; all-caps versions of the commands list you have above. function HandleCustomCommand(command) if command == "POSE" then if posecount == 0 then currentdialogue = {"Not\nbad."} BattleDialog({"You posed dramatically."}) elseif posecount == 1 then currentdialogue = {"Not\nbad\nat\nall...!"} BattleDialog({"You posed even more dramatically."}) else canspare = true table.insert(comments, "Poseur is impressed by your\rposing power.") currentdialogue = {"That's\nit...!"} BattleDialog({"You posed so dramatically,\ryour anatomy became\rincorrect."}) end posecount = posecount + 1 elseif command == "STAND" then currentdialogue = {"What's\nthe\nhold-up?"} BattleDialog({"You just kind of stand there."}) elseif command == "INSULT" then currentdialogue = {"But\nI don't\nhave\nhair."} BattleDialog({"You make a scathing remark about\rPoseur's hairstyle."}) end end ================================================ FILE: Assets/Mods/Examples/Lua/Monsters/twoMonstersPoseur.lua.meta ================================================ fileFormatVersion: 2 guid: e0adde6d9fcc4994488bb25f224683b1 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Monsters.meta ================================================ fileFormatVersion: 2 guid: ba7097798d573c740b67d272a56f5a2d folderAsset: yes timeCreated: 1487174275 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Waves/COMBINED.lua ================================================ -- The bouncing bullets attack from the documentation example. -- Sets a bullet's color as a string, then checks it in OnHit to achieve different types of bullet effects in one wave. spawntimer = 0 bullets = {} colors = {"regular", "cyan", "orange", "green"} function Update() spawntimer = spawntimer + 1 if spawntimer%20 == 0 then local posx = 30 - math.random(60) local posy = Arena.height/2 local bulletType = colors[math.random(#colors)] local bullet = CreateProjectile("bullet", posx, posy) if bulletType == "cyan" then bullet.sprite.color = {0/255, 162/255, 232/255} elseif bulletType == "orange" then bullet.sprite.color = {255/255, 154/255, 34/255} elseif bulletType == "green" then bullet.sprite.color = {64/255, 252/255, 64/255} end bullet.SetVar('color', bulletType) bullet.SetVar('velx', 1 - 2*math.random()) bullet.SetVar('vely', 0) table.insert(bullets, bullet) end for i=1,#bullets do local bullet = bullets[i] -- Note this new if check. We're going to remove bullets, and we can't move bullets that were removed. if bullet.isactive then local velx = bullet.GetVar('velx') local vely = bullet.GetVar('vely') local newposx = bullet.x + velx local newposy = bullet.y + vely if(bullet.x > -Arena.width/2 and bullet.x < Arena.width/2) then if(bullet.y < -Arena.height/2 + 8) then newposy = -Arena.height/2 + 8 vely = 4 end end vely = vely - 0.04 bullet.MoveTo(newposx, newposy) bullet.SetVar('vely', vely) end end end function OnHit(bullet) local color = bullet.GetVar("color") local damage = 5 if color == "regular" then Player.Hurt(damage) elseif color == "cyan" and Player.isMoving then Player.Hurt(damage) elseif color == "orange" and not Player.isMoving then Player.Hurt(damage) elseif color == "green" then Player.Heal(1) bullet.Remove() end end ================================================ FILE: Assets/Mods/Examples/Lua/Waves/COMBINED.lua.meta ================================================ fileFormatVersion: 2 guid: 43d51d862c5d71d489acc32d6cc5bcb7 timeCreated: 1487174277 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Waves/CYAN.lua ================================================ -- The bouncing bullets attack from the documentation example. -- Modified to replicate cyan bullet behaviour. spawntimer = 0 bullets = {} function Update() spawntimer = spawntimer + 1 if spawntimer%30 == 0 then local posx = 30 - math.random(60) local posy = Arena.height/2 local bullet = CreateProjectile('bullet', posx, posy) bullet.sprite.color = {0/255, 162/255, 232/255} bullet.SetVar('velx', 1 - 2*math.random()) bullet.SetVar('vely', 0) table.insert(bullets, bullet) end for i=1,#bullets do local bullet = bullets[i] local velx = bullet.GetVar('velx') local vely = bullet.GetVar('vely') local newposx = bullet.x + velx local newposy = bullet.y + vely if(bullet.x > -Arena.width/2 and bullet.x < Arena.width/2) then if(bullet.y < -Arena.height/2 + 8) then newposy = -Arena.height/2 + 8 vely = 4 end end vely = vely - 0.04 bullet.MoveTo(newposx, newposy) bullet.SetVar('vely', vely) end end function OnHit(bullet) if Player.isMoving then Player.Hurt(3) end end ================================================ FILE: Assets/Mods/Examples/Lua/Waves/CYAN.lua.meta ================================================ fileFormatVersion: 2 guid: cf87f37a2497ea0498b11142f7f0e93e timeCreated: 1487174280 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Waves/GREEN.lua ================================================ -- The bouncing bullets attack from the documentation example. -- Modified to replicate green bullet behaviour. spawntimer = 0 bullets = {} function Update() spawntimer = spawntimer + 1 if spawntimer%30 == 0 then local posx = 30 - math.random(60) local posy = Arena.height/2 local bullet = CreateProjectile('bullet', posx, posy) bullet.sprite.color = {64/255, 252/255, 64/255} bullet.SetVar('velx', 1 - 2*math.random()) bullet.SetVar('vely', 0) table.insert(bullets, bullet) end for i=1,#bullets do local bullet = bullets[i] -- Note this new if check. We're going to remove bullets, and we can't move bullets that were removed. if bullet.isactive then local velx = bullet.GetVar('velx') local vely = bullet.GetVar('vely') local newposx = bullet.x + velx local newposy = bullet.y + vely if(bullet.x > -Arena.width/2 and bullet.x < Arena.width/2) then if(bullet.y < -Arena.height/2 + 8) then newposy = -Arena.height/2 + 8 vely = 4 end end vely = vely - 0.04 bullet.MoveTo(newposx, newposy) bullet.SetVar('vely', vely) end end end function OnHit(bullet) Player.Heal(1) bullet.Remove() end ================================================ FILE: Assets/Mods/Examples/Lua/Waves/GREEN.lua.meta ================================================ fileFormatVersion: 2 guid: 9d4ab2075d6e61d40b61bc12df6b5e8c timeCreated: 1487174279 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Waves/ORANGE.lua ================================================ -- The bouncing bullets attack from the documentation example. -- Modified to replicate orange bullet behaviour. spawntimer = 0 bullets = {} function Update() spawntimer = spawntimer + 1 if spawntimer%30 == 0 then local posx = 30 - math.random(60) local posy = Arena.height/2 local bullet = CreateProjectile('bullet', posx, posy) bullet.sprite.color = {255/255, 154/255, 34/255} bullet.SetVar('velx', 1 - 2*math.random()) bullet.SetVar('vely', 0) table.insert(bullets, bullet) end for i=1,#bullets do local bullet = bullets[i] local velx = bullet.GetVar('velx') local vely = bullet.GetVar('vely') local newposx = bullet.x + velx local newposy = bullet.y + vely if(bullet.x > -Arena.width/2 and bullet.x < Arena.width/2) then if(bullet.y < -Arena.height/2 + 8) then newposy = -Arena.height/2 + 8 vely = 4 end end vely = vely - 0.04 bullet.MoveTo(newposx, newposy) bullet.SetVar('vely', vely) end end function OnHit(bullet) if not Player.isMoving then Player.Hurt(3) end end ================================================ FILE: Assets/Mods/Examples/Lua/Waves/ORANGE.lua.meta ================================================ fileFormatVersion: 2 guid: 2b3ea8fd25564204f86b96a0cc28c8ad timeCreated: 1487174277 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Waves/REGULAR.lua ================================================ -- The bouncing bullets attack from the documentation example. spawntimer = 0 bullets = {} function Update() spawntimer = spawntimer + 1 if spawntimer%30 == 0 then local posx = 30 - math.random(60) local posy = Arena.height/2 local bullet = CreateProjectile('bullet', posx, posy) bullet.SetVar('velx', 1 - 2*math.random()) bullet.SetVar('vely', 0) table.insert(bullets, bullet) end for i=1,#bullets do local bullet = bullets[i] local velx = bullet.GetVar('velx') local vely = bullet.GetVar('vely') local newposx = bullet.x + velx local newposy = bullet.y + vely if(bullet.x > -Arena.width/2 and bullet.x < Arena.width/2) then if(bullet.y < -Arena.height/2 + 8) then newposy = -Arena.height/2 + 8 vely = 4 end end vely = vely - 0.04 bullet.MoveTo(newposx, newposy) bullet.SetVar('vely', vely) end end ================================================ FILE: Assets/Mods/Examples/Lua/Waves/REGULAR.lua.meta ================================================ fileFormatVersion: 2 guid: f328fd1d43c0f5e4db049ddc9731036b timeCreated: 1487174281 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Waves/arenatest_move.lua ================================================ if not isCYF then error("This feature only works in CYF.") end bullet = CreateProjectile("bullet", Arena.width/2, 0) bullet.layer = "After" timer = 0 function Update() Arena.Move(1, 0, true, true) bullet.sprite.Scale(bullet.sprite.xscale + 0.02, bullet.sprite.xscale + 0.02) end ================================================ FILE: Assets/Mods/Examples/Lua/Waves/arenatest_move.lua.meta ================================================ fileFormatVersion: 2 guid: 785e62e415cc428479075bba86869e31 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Waves/bullettest_bouncy.lua ================================================ -- The bouncing bullets attack from the documentation example. spawntimer = 0 bullets = {} function Update() spawntimer = spawntimer + 1 if spawntimer%30 == 0 then local posx = 30 - math.random(60) local posy = Arena.height/2 local bullet = CreateProjectile('bullet', posx, posy) bullet.SetVar('velx', 1 - 2*math.random()) bullet.SetVar('vely', 0) table.insert(bullets, bullet) end for i=1,#bullets do local bullet = bullets[i] local velx = bullet.GetVar('velx') local vely = bullet.GetVar('vely') local newposx = bullet.x + velx local newposy = bullet.y + vely if(bullet.x > -Arena.width/2 and bullet.x < Arena.width/2) then if(bullet.y < -Arena.height/2 + 8) then newposy = -Arena.height/2 + 8 vely = 4 end end vely = vely - 0.04 bullet.MoveTo(newposx, newposy) bullet.SetVar('vely', vely) end end ================================================ FILE: Assets/Mods/Examples/Lua/Waves/bullettest_bouncy.lua.meta ================================================ fileFormatVersion: 2 guid: f8aab47ffb27c3d4cae0159337f93844 timeCreated: 1487174281 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Waves/bullettest_bouncy_time.lua ================================================ -- The bouncing bullets attack from the documentation example. spawntimer = 0 bullets = {} function Update() spawntimer = spawntimer + Time.dt if spawntimer >= 0.5 then spawntimer = 0 local posx = 30 - math.random(60) local posy = Arena.height/2 local bullet = CreateProjectile('bullet', posx, posy) bullet.SetVar('velx', 1 - 2*math.random()) bullet.SetVar('vely', 0) table.insert(bullets, bullet) end for i=1,#bullets do local bullet = bullets[i] local velx = bullet.GetVar('velx') local vely = bullet.GetVar('vely') local newposx = bullet.x + velx * Time.mult local newposy = bullet.y + vely * Time.mult if(bullet.x > -Arena.width/2 and bullet.x < Arena.width/2) then if(bullet.y < -Arena.height/2 + 8) then newposy = -Arena.height/2 + 8 vely = 4 end end vely = vely - 0.04 bullet.MoveTo(newposx, newposy) bullet.SetVar('vely', vely) end end ================================================ FILE: Assets/Mods/Examples/Lua/Waves/bullettest_bouncy_time.lua.meta ================================================ fileFormatVersion: 2 guid: 70c9d75f672544cd3aa8d377b234cc20 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Waves/bullettest_chaserorb.lua ================================================ -- The chasing attack from the documentation example. chasingbullet = CreateProjectile('bullet', Arena.width/2, Arena.height/2) chasingbullet.SetVar('xspeed', 0) chasingbullet.SetVar('yspeed', 0) function Update() local xdifference = Player.x - chasingbullet.x local ydifference = Player.y - chasingbullet.y local xspeed = chasingbullet.GetVar('xspeed') / 2 + xdifference / 100 local yspeed = chasingbullet.GetVar('yspeed') / 2 + ydifference / 100 chasingbullet.Move(xspeed, yspeed) chasingbullet.SetVar('xspeed', xspeed) chasingbullet.SetVar('yspeed', yspeed) end ================================================ FILE: Assets/Mods/Examples/Lua/Waves/bullettest_chaserorb.lua.meta ================================================ fileFormatVersion: 2 guid: 79332d0ee6cd9eb45abf7a2adb84e215 timeCreated: 1487174278 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Waves/bullettest_chaserorb_time.lua ================================================ -- The chasing attack from the documentation example. chasingbullet = CreateProjectile('bullet', Arena.width/2, Arena.height/2) chasingbullet.SetVar('xspeed', 0) chasingbullet.SetVar('yspeed', 0) function Update() local xdifference = Player.x - chasingbullet.x local ydifference = Player.y - chasingbullet.y local xspeed = chasingbullet.GetVar('xspeed') / 2 + xdifference / 100 * Time.mult local yspeed = chasingbullet.GetVar('yspeed') / 2 + ydifference / 100 * Time.mult chasingbullet.Move(xspeed, yspeed) chasingbullet.SetVar('xspeed', xspeed) chasingbullet.SetVar('yspeed', yspeed) end ================================================ FILE: Assets/Mods/Examples/Lua/Waves/bullettest_chaserorb_time.lua.meta ================================================ fileFormatVersion: 2 guid: 8d4777b3d66564056a48844fcbbda7b1 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Waves/bullettest_touhou.lua ================================================ -- You've seen this one in the trailer (if you've seen the trailer). spawntimer = 0 bullets = {} yOffset = 180 mult = 0.5 function Update() spawntimer = spawntimer + 1 if(spawntimer % 30 == 0) then local numbullets = 10 for i=1,numbullets+1 do local bullet = CreateProjectile('bullet', 0, yOffset) bullet.SetVar('timer', 0) bullet.SetVar('offset', math.pi * 2 * i / numbullets) bullet.SetVar('negmult', mult) bullet.SetVar('lerp', 0) table.insert(bullets, bullet) end mult = mult + 0.05 end for i=1,#bullets do local bullet = bullets[i] local timer = bullet.GetVar('timer') local offset = bullet.GetVar('offset') local lerp = bullet.GetVar('lerp') local neg = 1 local posx = (70*lerp)*math.sin(timer*bullet.GetVar('negmult') + offset) local posy = (70*lerp)*math.cos(timer + offset) + yOffset - lerp*50 bullet.MoveTo(posx, posy) bullet.SetVar('timer', timer + 1/40) lerp = lerp + 1 / 90 if lerp > 4.0 then lerp = 4.0 end bullet.SetVar('lerp', lerp) end end ================================================ FILE: Assets/Mods/Examples/Lua/Waves/bullettest_touhou.lua.meta ================================================ fileFormatVersion: 2 guid: efbc02889089cc043ac422c325bdeb6e timeCreated: 1487174281 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Waves/bullettest_touhou_time.lua ================================================ -- You've seen this one in the trailer (if you've seen the trailer). spawntimer = 0 bullets = {} yOffset = 180 mult = 0.5 function Update() spawntimer = spawntimer + Time.dt if(spawntimer >= 0.5) then spawntimer = 0 local numbullets = 10 for i=1,numbullets+1 do local bullet = CreateProjectile('bullet', 0, yOffset) bullet.SetVar('timer', 0) bullet.SetVar('offset', math.pi * 2 * i / numbullets) bullet.SetVar('negmult', mult) bullet.SetVar('lerp', 0) table.insert(bullets, bullet) end mult = mult + 0.05 end for i=1,#bullets do local bullet = bullets[i] local timer = bullet.GetVar('timer') local offset = bullet.GetVar('offset') local lerp = bullet.GetVar('lerp') local neg = 1 local posx = (70*lerp)*math.sin(timer*bullet.GetVar('negmult') + offset) local posy = (70*lerp)*math.cos(timer + offset) + yOffset - lerp*50 bullet.MoveTo(posx, posy) bullet.SetVar('timer', timer + Time.dt * 1.5) lerp = lerp + Time.dt / 1.5 if lerp > 4.0 then lerp = 4.0 end bullet.SetVar('lerp', lerp) end end ================================================ FILE: Assets/Mods/Examples/Lua/Waves/bullettest_touhou_time.lua.meta ================================================ fileFormatVersion: 2 guid: 224ca6ca29d6b48b49e75da21fd0ebe8 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua/Waves.meta ================================================ fileFormatVersion: 2 guid: 5e9221bda1eb0bb4c961394c0bb643f2 folderAsset: yes timeCreated: 1487174274 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Lua.meta ================================================ fileFormatVersion: 2 guid: a9c600e606e951c4aa45ac15f793a120 folderAsset: yes timeCreated: 1487174273 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sounds/Bark.wav.meta ================================================ fileFormatVersion: 2 guid: 0b296879583d19f40869076876a0a80c AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sounds/Bump.ogg.meta ================================================ fileFormatVersion: 2 guid: 4f12e8cf7bda4b74585aeabfa7f41f6c AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sounds/Credits.txt ================================================ These sound effects belong to Nintendo. Super Paper Mario: SE1_EVT_LINE_DRAW1 SE1_EVT_LINE_TURN2 Super Mario 64: mario-pain sm64_impact step-floor ================================================ FILE: Assets/Mods/Examples/Sounds/Credits.txt.meta ================================================ fileFormatVersion: 2 guid: 5f628234d0cbe68449c5a0ef2184a1b1 TextScriptImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sounds/Jump.wav.meta ================================================ fileFormatVersion: 2 guid: 8f6f67539d6cd9244bdd494acf5f401b AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sounds/Laugh.wav.meta ================================================ fileFormatVersion: 2 guid: e3668a3f3e942bb429ca001e7111a208 timeCreated: 1493432449 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sounds/SE1_EVT_LINE_DRAW1.wav.meta ================================================ fileFormatVersion: 2 guid: 91b2b582e35fbc249a6ae0c4aa481ad3 AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sounds/SE1_EVT_LINE_TURN2.wav.meta ================================================ fileFormatVersion: 2 guid: 37498c81976470940ab9080999e85a2d AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sounds/Secret/sound.wav.meta ================================================ fileFormatVersion: 2 guid: fcce39a746e1373499151a92ee89cf71 AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sounds/Secret.meta ================================================ fileFormatVersion: 2 guid: 7fdf543a8382d9c49a6f73cb2d79f5c8 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sounds/Squeak.wav.meta ================================================ fileFormatVersion: 2 guid: 9f9c320c048cb38449a445da106dbe32 AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sounds/Surprised Bark.ogg.meta ================================================ fileFormatVersion: 2 guid: 04af50ff8766b1f4ba77a5bbd9f6ee88 AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sounds/Voices/punderbolt.ogg.meta ================================================ fileFormatVersion: 2 guid: abe8d63481d341c46aca1437b2e10198 timeCreated: 1503110734 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sounds/Voices.meta ================================================ fileFormatVersion: 2 guid: b9131a6cf09a1b34cac1309ebb8cb541 folderAsset: yes timeCreated: 1487174275 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sounds/mario-pain.ogg.meta ================================================ fileFormatVersion: 2 guid: e0c5f6b28f3adf24b9b4baf0d66aac7f AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sounds/sm64_impact.wav.meta ================================================ fileFormatVersion: 2 guid: 815d2ab704bdcadc4b7b0703a0fe1f12 AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sounds/step-floor.ogg.meta ================================================ fileFormatVersion: 2 guid: 88dd0f4303fb9e14dabe4f4b8a60072c AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sounds.meta ================================================ fileFormatVersion: 2 guid: 9e87224596242e14caadb6c3d0e21f8a folderAsset: yes timeCreated: 1487174273 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Mugshots/Papyrus/mad.png.meta ================================================ fileFormatVersion: 2 guid: a2a5dbad21aa8134eafb9a9947a4938e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: ff73aafad97788e42b3323bd3deba447 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Mugshots/Papyrus/madT.png.meta ================================================ fileFormatVersion: 2 guid: 8138b5a2924198c47a13cf995e51101c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 18c6458660ac5a643888d550302df3bf vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Mugshots/Papyrus/normal.png.meta ================================================ fileFormatVersion: 2 guid: ffb6eef65b8050a4097ada08eadc84c4 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: ad4bcc4720decab4a9e68d9b2ab72604 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Mugshots/Papyrus/normalT.png.meta ================================================ fileFormatVersion: 2 guid: 02f328502ee4bc34d96a3b8be151f5c6 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e3b0f4f82058f2547bbd12b7a9ad7df9 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Mugshots/Papyrus/papy he do a jump.png.meta ================================================ fileFormatVersion: 2 guid: 0397948becf42004d8856abd217ea0b5 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 064a88e03f9238b48a7eefe6056e44cc vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Mugshots/Papyrus/suspicious.png.meta ================================================ fileFormatVersion: 2 guid: 0d619c2fcbcef3c4bac2849926fb4735 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: d6bf675c9b090924ca3a95d69ca70b0f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Mugshots/Papyrus/suspiciousT.png.meta ================================================ fileFormatVersion: 2 guid: 95d93ef5b806207449dd93a6934e3209 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 961589fced05ee74e8fbc7022b1e35d8 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Mugshots/Papyrus.meta ================================================ fileFormatVersion: 2 guid: ae8a5550baa74d1409c6e00bcd9b6e06 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Mugshots/Punder/sun.png.meta ================================================ fileFormatVersion: 2 guid: 47067513a1bf4714cbccc6e4569d610b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2eff84036f7dbc141813599796c26a30 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Mugshots/Punder.meta ================================================ fileFormatVersion: 2 guid: 721836fd628e60f4eade542746ffaf9f folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Mugshots.meta ================================================ fileFormatVersion: 2 guid: ddc80d811242b3842a41e7531af08cb7 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Asriel/0.png.meta ================================================ fileFormatVersion: 2 guid: 8bd5e975650011d4fba6fc1fa343d980 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 8d2c1f3a462a91e478e4672cc7ead3c9 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Asriel/1.png.meta ================================================ fileFormatVersion: 2 guid: 6a2069511be80e044be6962054a54618 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4dfdd0209e4eaec44a01a23f90c6fa3d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Asriel/10.png.meta ================================================ fileFormatVersion: 2 guid: d2e41c17cb0dde44085dad5c4720686e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: afd77ae4812bf6546a76ae3bcb963604 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Asriel/11.png.meta ================================================ fileFormatVersion: 2 guid: 0aaa5106f30b5cc48b0bc26aabca082d TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: d65d4ae3f504a8d4a854222f16395666 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Asriel/12.png.meta ================================================ fileFormatVersion: 2 guid: c5504f6578f477e448f1005b199f5d39 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 919bd520ada4d1545ab407babba6195f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Asriel/13.png.meta ================================================ fileFormatVersion: 2 guid: b9e2da8e33fd82d4db8b247e952ee8a2 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e9d5db607d22f7a41b0313ab05911ca9 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Asriel/14.png.meta ================================================ fileFormatVersion: 2 guid: c0efe3edca8566b42a01584b4cb3b106 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e9d5db607d22f7a41b0313ab05911ca9 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Asriel/15.png.meta ================================================ fileFormatVersion: 2 guid: d91c8074041e89745bc74d0cdaafd850 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: bda8b9a186233ee468675a91d528f16c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Asriel/16.png.meta ================================================ fileFormatVersion: 2 guid: f1e583d6e7e8c1e4da0efbe7b00c735e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 01dd800b8cb28454db3844dbef7e24e8 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Asriel/17.png.meta ================================================ fileFormatVersion: 2 guid: 749f3e57e2d2a0b408f891c9dbecd29c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 1e520775876b8bf48936fb9fe8bb9ef4 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Asriel/2.png.meta ================================================ fileFormatVersion: 2 guid: eba41fe4ec84c674aba9ce591321f04c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2096ea3fb236cd74bb5d1a2b78fac148 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Asriel/3.png.meta ================================================ fileFormatVersion: 2 guid: c406955a333101a42a2ed76fb93c956c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c80d7f104a7aa544bba91b69e6f09f74 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Asriel/4.png.meta ================================================ fileFormatVersion: 2 guid: 06389893fc1b0fd4a965a3ba13f656f8 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e5ba2a1ea204946498f5fce5d85722b7 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Asriel/5.png.meta ================================================ fileFormatVersion: 2 guid: 1dc9dd3111194e242851736696fbc7bd TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: f1f05677716423c4bb1c39645defae70 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Asriel/6.png.meta ================================================ fileFormatVersion: 2 guid: 4f3f1ebff96589c4c9c9a71dc00316a7 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: b5d357bf25259b44395cff7c07da8c26 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Asriel/7.png.meta ================================================ fileFormatVersion: 2 guid: 8459085b45bf2d2458c2d149b463d4b8 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 24646914b7422864889d57de8581d868 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Asriel/8.png.meta ================================================ fileFormatVersion: 2 guid: 144b0e8225205a14884fcd58c7d8bffa TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c3b03afffcb0ea0499ec3ae7a6429f8e vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Asriel/9.png.meta ================================================ fileFormatVersion: 2 guid: dba6c51a1517c694e94a5b393aabe242 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 9cf0f251867937c47a555a417cc0a7d9 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Asriel.meta ================================================ fileFormatVersion: 2 guid: 00326a36bc901d948a8a0c32740ba00f folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Booster/j.png.meta ================================================ fileFormatVersion: 2 guid: 82d165c483f0e77448d2bf169f60bf32 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 8ec5fb523a014f4459a9a445a7e1b898 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Booster/p.png.meta ================================================ fileFormatVersion: 2 guid: c5d2c2ca9532160458bd480af3d2beb6 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 41758d687ae76fb49979010b507f8cb0 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Booster.meta ================================================ fileFormatVersion: 2 guid: 4b65b09715fc76440ad281ec37e4102c folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Bpie.png.meta ================================================ fileFormatVersion: 2 guid: ef6b4cbe2b261634d9c5bd2811405b0d TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4dd5d56bc7915e14f95732367f1611d9 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Chara/bigslice/0.png.meta ================================================ fileFormatVersion: 2 guid: a5c12549ae355eb4595973c7770b0434 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 684c6ebbd271787489b0cd84307aed5e vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Chara/bigslice/1.png.meta ================================================ fileFormatVersion: 2 guid: dc83371e5467dc341b19e3d34e4b98e9 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: b8014ef9509c7c7469b7db180a73814c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Chara/bigslice/2.png.meta ================================================ fileFormatVersion: 2 guid: 1b44c757b4ee26144a6d7ffba83aa0ca TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 60abf5b2b1b1d1149a408bb59708321d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Chara/bigslice/3.png.meta ================================================ fileFormatVersion: 2 guid: 7f3db1aa55fbf3b43810fb8748740f55 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 6809478f15fefbe45be471d6fe4491e5 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Chara/bigslice/4.png.meta ================================================ fileFormatVersion: 2 guid: e384871e7bf611849905339ff25581ea TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 36e1081afe8a9a244b6a6aac04ed484d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Chara/bigslice/5.png.meta ================================================ fileFormatVersion: 2 guid: 3188057d245c06b4fadc15498d1a5ffb TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 962fe10c341e6d0479c7d948ed898984 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Chara/bigslice.meta ================================================ fileFormatVersion: 2 guid: e7a8b014af6e37946be4b3323eb768be folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Chara/c0.png.meta ================================================ fileFormatVersion: 2 guid: c25e74dae7e649a4e9e1c398c803b77c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 94cead77885f3684bb650a96a200ad40 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Chara/c1.png.meta ================================================ fileFormatVersion: 2 guid: 318053f921aff504ab962a69213ca190 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2c94543ebcf73f14a8521ab22eaa493a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Chara/c2.png.meta ================================================ fileFormatVersion: 2 guid: ece70855820e48844b0b57e8d35eb181 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 5270507abf44d404396f0affc8f7c8d5 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Chara/c3.png.meta ================================================ fileFormatVersion: 2 guid: f7ca2a2a719918342be0fbf5a9fa55ef TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 03949b90beef8474f908d97c87a5d966 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Chara/c4.png.meta ================================================ fileFormatVersion: 2 guid: bb198ab845521ac43b6aeb5e0e80afa1 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 15387239b509c4941bc463fa8c3f1375 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Chara/c5.png.meta ================================================ fileFormatVersion: 2 guid: cb480b3f3fa5bbd42a2727665609f827 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4daace64cc9187643aa16e387ac203f7 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Chara/vignette.png.meta ================================================ fileFormatVersion: 2 guid: e4a9f275b945a6d4b8fac1bd3f6f2ca7 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 14b9e36330efc884191adbcba55a7df5 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Chara.meta ================================================ fileFormatVersion: 2 guid: 00541b9009e748140995acccbf196259 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/CharacterSelector/Mystery/cross1.png.meta ================================================ fileFormatVersion: 2 guid: cbf4ad6811ca9c049bf225966b6deb71 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 8598a557d925bf140afc3bb69be47833 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/CharacterSelector/Mystery/cross2.png.meta ================================================ fileFormatVersion: 2 guid: 2bac46dfe11485b459afef2e7014d467 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 74f8b998dd0bf7d4dab531f5104817bd vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/CharacterSelector/Mystery/cross3.png.meta ================================================ fileFormatVersion: 2 guid: 5cc92b9c985d0c44984b6b59e62cf7d4 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e3890d5d86dcd3240a8f180b243df15a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/CharacterSelector/Mystery/cross4.png.meta ================================================ fileFormatVersion: 2 guid: 29b1ad1be5dc328459cbe0fb52b897d1 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 3426c80818ba2664c9cf813f24238b15 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/CharacterSelector/Mystery/cross5.png.meta ================================================ fileFormatVersion: 2 guid: 6a7190f37bfd6ed43b3019af04709898 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: f76e529737e52d64e9501f39aec890d3 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/CharacterSelector/Mystery/cross6.png.meta ================================================ fileFormatVersion: 2 guid: 3461c1b4462390743a247f2805fb6855 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 6d8d5b3efaeef854cb1b6c0e72889f97 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/CharacterSelector/Mystery/mysteryman/1.png.meta ================================================ fileFormatVersion: 2 guid: 49fc9f33fe1290845a0f9189f37dd3fb TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 1f0d5d9812ae5bd458480de60494701f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/CharacterSelector/Mystery/mysteryman/2.png.meta ================================================ fileFormatVersion: 2 guid: f5ae9b59b476b6e4fb11c2f9dbb18fe9 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 77b5a9719d22c894b802e8c6264eb821 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/CharacterSelector/Mystery/mysteryman.meta ================================================ fileFormatVersion: 2 guid: b9502b00fd56a3f438a04016096034f8 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/CharacterSelector/Mystery.meta ================================================ fileFormatVersion: 2 guid: 98d9c83f62576ce48b3aa2a160c766a5 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/CharacterSelector/window_back.png.meta ================================================ fileFormatVersion: 2 guid: 070872d0df1984f4b9baac89a4b88a0b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 9022a1cff7fcda246884877bab16aeb3 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/CharacterSelector/window_border.png.meta ================================================ fileFormatVersion: 2 guid: 383bcd0ab29424e4ea41d5643b2a58fd TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 5cd7c520e721d764c9048354812d6b4f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/CharacterSelector.meta ================================================ fileFormatVersion: 2 guid: 4d67896ef1ae1e84980abd51becdfe0e folderAsset: yes timeCreated: 1497657124 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Dog.png.meta ================================================ fileFormatVersion: 2 guid: 78086316886eefc40ad1bf4b05215ba0 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 3309f80243da48e4c83c16f3672987d6 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/DogBark.png.meta ================================================ fileFormatVersion: 2 guid: 2dd631e6af2f0e049ad6a90a0fed810d TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 603ec494493a71d4bbbc7b6cedb9ee95 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/DogButt.png.meta ================================================ fileFormatVersion: 2 guid: 387dee2fe4064a7499afe6ea01077239 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c00324e1b4069b440bf3eb8d7d93806d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/DogHead.png.meta ================================================ fileFormatVersion: 2 guid: 8f8ef9a9492ea6b4eac316502acd3ded TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 5f327a8b014dbc64ea241cc7a58ec1f3 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/DogLegs.png.meta ================================================ fileFormatVersion: 2 guid: 38a20647314b0504e84982bb98c3c084 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 6c0503ce4bdeaee4b85d7eef6ea2e64f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/DogPaws.png.meta ================================================ fileFormatVersion: 2 guid: 40b43eab3210fae4cbec169d5be1cd2c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: dd804e0a969c4814a949d960e3c1c0e0 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/DogStretch.png.meta ================================================ fileFormatVersion: 2 guid: b0ce23c80824d6c4a8f9a4caa230b24f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: da94e8a69da10ae4d8666d85129f66f7 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/EncounterBubble.png.meta ================================================ fileFormatVersion: 2 guid: d3a346d009261744e99f8421299f1d6c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 6d24e55ea7eecca4b97c66463cf794f9 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/EncounterBubbleGeno.png.meta ================================================ fileFormatVersion: 2 guid: 10878ec03d277a848ab023d52c0a5de2 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2c448c32d315df94ab9f98afcb85b134 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Papyrus/0.png.meta ================================================ fileFormatVersion: 2 guid: 2a12395e26676fd47958aa35b8fee0de TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: a1183fc1830081d49b14dca61670ae0c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Papyrus/1.png.meta ================================================ fileFormatVersion: 2 guid: a570b27916cdf374b8cf52b560fae6b9 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 755f96bc74ec21740af1aff497399b5e vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Papyrus/10.png.meta ================================================ fileFormatVersion: 2 guid: 26a29f5e4a2c23440a27acb973aba375 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: f6611e8cbce952842bb56f97c48e11e0 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Papyrus/11.png.meta ================================================ fileFormatVersion: 2 guid: 4d2319aa750ad5b409d9d73f535cad70 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 21567baf8c8286643b0c0a73c7a3ff43 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Papyrus/12.png.meta ================================================ fileFormatVersion: 2 guid: 4c7c52b41f57e5e4eb16fafa64a6c3ab TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 258b628dc991eee4391665c7c201d780 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Papyrus/13.png.meta ================================================ fileFormatVersion: 2 guid: a4838dd532db8a649b6d98538b855f32 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 52f6b764632d51a46931dcbd4cf17163 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Papyrus/14.png.meta ================================================ fileFormatVersion: 2 guid: 787d96c7e43af484887b7ba5f250f185 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 6be26eee22b0548468e53f6e29d949a8 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Papyrus/15.png.meta ================================================ fileFormatVersion: 2 guid: 97fa0ff0f6f079743972e07b539a0394 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 6be26eee22b0548468e53f6e29d949a8 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Papyrus/16.png.meta ================================================ fileFormatVersion: 2 guid: 60610a9f682a7ab449f041d0377de157 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 7ff91654b9e8c4a468c85a9d16fb6255 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Papyrus/17.png.meta ================================================ fileFormatVersion: 2 guid: 187f40022ddd6334f80a55f5432a298e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c77daa200d6530443825939a3ca7355f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Papyrus/18.png.meta ================================================ fileFormatVersion: 2 guid: 4abbb5841b209b54a8ced26664449926 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: a58a94eb70775e44391f908a9f5a7c82 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Papyrus/19.png.meta ================================================ fileFormatVersion: 2 guid: fadce123ac05c3d4d9c01b4d16b2650a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 359de6d9641526040ab55859d9dd54e2 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Papyrus/2.png.meta ================================================ fileFormatVersion: 2 guid: 838c6493a2fbceb46a73c444970f3203 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: f6b997b52910525438fbb78e1743b1a8 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Papyrus/20.png.meta ================================================ fileFormatVersion: 2 guid: 4ae629a6b3518fe48b6c737b7ddc55f4 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 863acd15608845244860f57fb6947644 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Papyrus/21.png.meta ================================================ fileFormatVersion: 2 guid: 0d0c18ad75e5b5d47ac52ce089bb2969 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 3d5774e27d4f3e1459315e3d301f00e1 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Papyrus/3.png.meta ================================================ fileFormatVersion: 2 guid: 4f1d8e4304a392b4594f985b2cc4d6c1 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 596711aeb67402f4d9fe6eb177ddcce8 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Papyrus/4.png.meta ================================================ fileFormatVersion: 2 guid: fc605e014909290438ef3e7e588b5101 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 3b3de07b6dd7e1a4fa8930b4c114c5cb vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Papyrus/5.png.meta ================================================ fileFormatVersion: 2 guid: bcf8448905b20dd4a99d2a3d25143f24 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: cd4f061de5efef444a583f2717cdbd5c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Papyrus/6.png.meta ================================================ fileFormatVersion: 2 guid: 1c094e4d602f6ae41929e5a35f036929 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 45ab0cb060be7d8408fa22e1b29eb98e vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Papyrus/7.png.meta ================================================ fileFormatVersion: 2 guid: 50ff8f947cc709748965dd420bcc22c2 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 030e0aad1e985c24681dbf6841a407a1 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Papyrus/8.png.meta ================================================ fileFormatVersion: 2 guid: 805cc6f7c5dec7f43a56c532a7f5ec0b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 575f79bbf70ea7f41ab4d74d40099bfd vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Papyrus/9.png.meta ================================================ fileFormatVersion: 2 guid: 1378b48f69fbf454a9668afe28bc5702 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 9b299ec8c2ca1da468cf52f9075c20fb vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Papyrus.meta ================================================ fileFormatVersion: 2 guid: 19fb3bd3a7303534cb463c7397d11f9d folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Punder/0.png.meta ================================================ fileFormatVersion: 2 guid: fbd97de7c9887b64bb683c4bafd9f59a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: fa55188e4f9ca8d4984efb9a880f8651 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Punder/1.png.meta ================================================ fileFormatVersion: 2 guid: 4a97061afdc7cd543839fbd13e1c5fce TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 3a159875345503543a5080e67198ee9e vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Punder/10.png.meta ================================================ fileFormatVersion: 2 guid: 204b56a4e0ab11e43b560c15d1a2fe55 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: d5873148a28cb7f47829090dbc254365 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Punder/11.png.meta ================================================ fileFormatVersion: 2 guid: 78907cb28cc9b9340b1d94e05b47432f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 539af2851960f9d4db7575ec9fc028c9 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Punder/12.png.meta ================================================ fileFormatVersion: 2 guid: f860cb2fc3281f14e80d63ac40b6e5a5 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 6711235ae447372488d5b5f97b74a2af vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Punder/13.png.meta ================================================ fileFormatVersion: 2 guid: 81d4e2a1f83fb8143b3345395119946b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 52f596ebf72f4014d9cf1fc4f00d5a9c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Punder/14.png.meta ================================================ fileFormatVersion: 2 guid: 67ad73b47f2fe5549a491beb65e16d64 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 0712ef77e5069224ca11550834d7ace7 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Punder/15.png.meta ================================================ fileFormatVersion: 2 guid: 2dc565048e6e9494d88160b473a321c9 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c54c279491d185f46b66bd121998868a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Punder/2.png.meta ================================================ fileFormatVersion: 2 guid: aa1ad522637811c40997de6b83fa212f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 472aed74064e08442ac510eca14983a9 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Punder/3.png.meta ================================================ fileFormatVersion: 2 guid: 6edb635592f331a4aa31e2ab2fea6735 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2bd6800131edb7148a26914839b4e752 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Punder/4.png.meta ================================================ fileFormatVersion: 2 guid: b5936b8bdc95df443b31c11a9e3c4c0d TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: b9ed68774f43e3243afadc7c070bc1d3 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Punder/5.png.meta ================================================ fileFormatVersion: 2 guid: 1e40f209d01f9ad4ca0b8ddad4b98cbc TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c1d94be523a6f114cbb3a5ed2e8ac241 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Punder/6.png.meta ================================================ fileFormatVersion: 2 guid: a3b37e34dd258b749944ededf220b757 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 6d4739d31fe6c7649b83eb6e6d4e9ade vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Punder/7.png.meta ================================================ fileFormatVersion: 2 guid: 65a4912c00119ca44a938f2ef5b18f6c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 9bb0e373dd31f0540b3f9fd6de4ebde2 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Punder/8.png.meta ================================================ fileFormatVersion: 2 guid: 7db1ce2849652e741a718d8d12b65c72 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 8679ab4c0f50c884ebc2730bd8ee4044 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Punder/9.png.meta ================================================ fileFormatVersion: 2 guid: dac7134ad94dfcc4b82eebca0e07de8c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 9863af4e44f65c14897763aa4c0ee1c1 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Punder/sun/0.png.meta ================================================ fileFormatVersion: 2 guid: 411e8fbf0b0aa1447b0e1d153d2d1b70 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 9702af8e5deb8e541891dc649cf697c2 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Punder/sun/1.png.meta ================================================ fileFormatVersion: 2 guid: 74907a2a25deb5e4d8b11f35a3f8a293 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 8526cae343a169f48982ff06db0fc4e8 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Punder/sun/10.png.meta ================================================ fileFormatVersion: 2 guid: 536afd2c241fe1c44b0a76f6be21620e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 88c05a91fc3b1af43b9e61e883d98a22 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Punder/sun/11.png.meta ================================================ fileFormatVersion: 2 guid: 3468839700cdb96439ff2ad58947336d TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 81d1cb3bf5467614a988b991ef03b79e vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Punder/sun/2.png.meta ================================================ fileFormatVersion: 2 guid: 99f51784c324a4e48aadd8aedcfeead7 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2ba2dcd97836ca443958ec58242b4ebb vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Punder/sun/3.png.meta ================================================ fileFormatVersion: 2 guid: 3513125d95ee1d44abda83e8513328c3 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 58e2637e56195cb42bdb375c717b036b vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Punder/sun/4.png.meta ================================================ fileFormatVersion: 2 guid: 3fb887caf4d09d24288a4b8889fc3a8b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: b1bb271422f0e4d409308f41fff0960f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Punder/sun/5.png.meta ================================================ fileFormatVersion: 2 guid: 64b60af7d9ec9ee4ba946a3c99d5630a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: dd07839627adde54d9bb887c0ace36e4 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Punder/sun/6.png.meta ================================================ fileFormatVersion: 2 guid: f305ef861b154c04eb54b429d63fa8ad TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: edccebbcdc6fe514b9aea3792bcd81b4 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Punder/sun/7.png.meta ================================================ fileFormatVersion: 2 guid: 7efcd47b2fb1f2145933284f98c6c67b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: acc6eb0b730bc014fa50c7d4333f94ed vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Punder/sun/8.png.meta ================================================ fileFormatVersion: 2 guid: dea0513b73ba6df428eafaa0efd7aae7 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: f23a7f2a171574947afbae6f3483ec7f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Punder/sun/9.png.meta ================================================ fileFormatVersion: 2 guid: 0d2162b8b17acd149b42f810e6fd51e0 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 0a838fe23ab1a5e40a0be16bd6bd2130 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Punder/sun.meta ================================================ fileFormatVersion: 2 guid: 2fb5d2c3363a2a949aa4450763e8e85a folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/Punder.meta ================================================ fileFormatVersion: 2 guid: 75f13e3671401b54dbb389e3097bb10f folderAsset: yes timeCreated: 1503071295 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld/cursor.png.meta ================================================ fileFormatVersion: 2 guid: 2970e262f39a7cf4abfb3deb3620cf60 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 46540ac4dc1996c4ab89d8ca8ea2605f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/Overworld.meta ================================================ fileFormatVersion: 2 guid: d158ee6509013e34ea5294b98caf400c folderAsset: yes timeCreated: 1487189828 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/UI/Fonts/HPFont.png.meta ================================================ fileFormatVersion: 2 guid: 04948f209331a49419b826c8ec25f123 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 5d036f52bdaaa594c923c93ec223b197 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/UI/Fonts/HPFont.xml.meta ================================================ fileFormatVersion: 2 guid: 4d4a5df461a343c48b73d863682d1837 timeCreated: 1499812392 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/UI/Fonts/monster.png.meta ================================================ fileFormatVersion: 2 guid: 970187dee055a5e40a01072611fb399d TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: b6ceddbd616123248ba659bf3487f169 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/UI/Fonts/monster.xml ================================================ monsterfont 000000 2 18 ================================================ FILE: Assets/Mods/Examples/Sprites/UI/Fonts/monster.xml.meta ================================================ fileFormatVersion: 2 guid: ddfcb7899abb27045ad575a9d269eaa4 timeCreated: 1487174578 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/UI/Fonts/papyOW.png.meta ================================================ fileFormatVersion: 2 guid: 8aa39eb1b8fb01e4c8a5910eaad361f8 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: fe9c7037858d31f4ba89a6dbac9e6f51 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/UI/Fonts/papyOW.xml ================================================ v_papyrus ffffff 33.0 ================================================ FILE: Assets/Mods/Examples/Sprites/UI/Fonts/papyOW.xml.meta ================================================ fileFormatVersion: 2 guid: eb300a9320d2086498efe0793360d38e TextScriptImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/UI/Fonts/tumblr_static_im-confus.jpg.meta ================================================ fileFormatVersion: 2 guid: 7d1a4a781f4daf6489c27c8746ab2def TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 54a0eaec6a289fe47bab6a30202015b0 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/UI/Fonts/uidialog.png.meta ================================================ fileFormatVersion: 2 guid: 3118917ca354ad848b2ec6b5126932d5 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 92ecbd0cb9a3fbe42b620a927a2bed24 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/UI/Fonts/uidialog.xml ================================================  uifont 30 ================================================ FILE: Assets/Mods/Examples/Sprites/UI/Fonts/uidialog.xml.meta ================================================ fileFormatVersion: 2 guid: f879f0592d4de8047af43177be46736e timeCreated: 1487174598 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/UI/Fonts.meta ================================================ fileFormatVersion: 2 guid: 4f6637a13c3c2c1448d2c389ab0ad09a folderAsset: yes timeCreated: 1487174277 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/UI/SpeechBubbles/leftwideminus.png.meta ================================================ fileFormatVersion: 2 guid: 660dd8d7548ed4c44b0f1aafd4b7f612 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 543d451ae614b384f83dc13af0bb0407 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/UI/SpeechBubbles/leftwideminus.xml ================================================ 144 ================================================ FILE: Assets/Mods/Examples/Sprites/UI/SpeechBubbles/leftwideminus.xml.meta ================================================ fileFormatVersion: 2 guid: bc93161ccfc1ce9488d5f7bb9df311fb timeCreated: 1487174565 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/UI/SpeechBubbles/rightwideminus.png.meta ================================================ fileFormatVersion: 2 guid: 38fc6fe4d3074e340838df9765578e13 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 8e8566065dacf704081945838afca4cb vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/UI/SpeechBubbles/rightwideminus.xml ================================================ 146 ================================================ FILE: Assets/Mods/Examples/Sprites/UI/SpeechBubbles/rightwideminus.xml.meta ================================================ fileFormatVersion: 2 guid: 2bdf793a01c1525439ec33d076d05774 timeCreated: 1487174351 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/UI/SpeechBubbles.meta ================================================ fileFormatVersion: 2 guid: 25dd86bc8c7701245bedf2267e7ce3d0 folderAsset: yes timeCreated: 1487174276 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/UI.meta ================================================ fileFormatVersion: 2 guid: 5791af654d454224094b8c52e32e7c10 folderAsset: yes timeCreated: 1487174274 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/bg.png.meta ================================================ fileFormatVersion: 2 guid: a7237c8237f7e73438f2a66cbe0b9ae5 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 84db6351a8f32514e8f4a3f4794eaf16 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/bullet.png.meta ================================================ fileFormatVersion: 2 guid: 0f934bb4836004244a8f6ccdc8ffff93 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 620e5479b5e6ce5468266fbcb417394c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/empty.png.meta ================================================ fileFormatVersion: 2 guid: bf979bd5d7948534aa8e2ce385ac2c6a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 546f4cea73aab524ca7d090682c2480f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/overworld example.png.meta ================================================ fileFormatVersion: 2 guid: c3ad58fda775ce54b9976acfec17c105 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 705d0542faeae0f4186c4b0d275ad91e vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/posette.png.meta ================================================ fileFormatVersion: 2 guid: 74768b33065a2f4459891408cccaf0a4 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 9f14ffa7a49839e41a439df2d7fbf683 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/poseur.png.meta ================================================ fileFormatVersion: 2 guid: 88bf8ad506e17364487ace71b79bf6fe TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c0f2035f41a32cf47abeb39ea0d1671b vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/preview.png.meta ================================================ fileFormatVersion: 2 guid: 8a30536e9eb788f44bae1234562ef262 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: cb3118493662ba541af0ddb19557dd12 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/sans/sanshead1.png.meta ================================================ fileFormatVersion: 2 guid: c20a5e28eff0a8c4eb8bad56d8ee3c39 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4891ff0dd7e880046853a3195f611868 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/sans/sanshead2.png.meta ================================================ fileFormatVersion: 2 guid: b955c27b9cc50334db0c9712d5047cc5 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: ea1010aac1e837c4989520d3904008eb vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/sans/sanshead3.png.meta ================================================ fileFormatVersion: 2 guid: 7915f3a675cc6f84281f1e360ca15af5 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 5201fa083d5d68944bbaaa1fd7f46c2f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/sans/sanslegs.png.meta ================================================ fileFormatVersion: 2 guid: c5ed47768a325bc4b82b0517b6c16606 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c943e4e5757cb054e94d17d534f1751a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/sans/sanstorso.png.meta ================================================ fileFormatVersion: 2 guid: be56f532c2fc34641bf73657121a57fe TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: db353105595a733418010254046d8654 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites/sans.meta ================================================ fileFormatVersion: 2 guid: bf231a319a6015841aa5f551cf33596d folderAsset: yes timeCreated: 1487174275 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples/Sprites.meta ================================================ fileFormatVersion: 2 guid: b1298160be0d4434c971254b01079a13 folderAsset: yes timeCreated: 1487174273 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Audio/mus_shop.ogg.meta ================================================ fileFormatVersion: 2 guid: b9ae8f0bc01abb94598672b068bb72ff timeCreated: 1497101226 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Audio/mus_snowy.ogg.meta ================================================ fileFormatVersion: 2 guid: ccf31d98cd6366d47a07923e459e5c78 timeCreated: 1487174577 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Audio/put your music here, ogg or wav only ================================================ ================================================ FILE: Assets/Mods/Examples 2/Audio/put your music here, ogg or wav only.meta ================================================ fileFormatVersion: 2 guid: 58e96cd393771504ba713619cfa415fa timeCreated: 1487174274 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Audio.meta ================================================ fileFormatVersion: 2 guid: 02c6edd2fa66e844d9773beb36779a1e folderAsset: yes timeCreated: 1487174273 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Animations/sans_anim.lua ================================================ --For usage, check out the encounter Lua's EncounterStarting() and Update() functions. -- First, we can create the torso, legs and head. sanstorso = CreateSprite("sans/sanstorso") sanslegs = CreateSprite("sans/sanslegs") sanshead = CreateSprite("sans/sanshead1") --We parent the torso to the legs, so when you move the legs, the torso moves too. --We do the same for attaching the head to the torso. sanstorso.SetParent(sanslegs) sanshead.SetParent(sanstorso) --Now we adjust the height for the individual parts so they look more like a skeleton and less like a pile of bones. sanslegs.y = 240 sanslegs.x = 320 sanstorso.y = -5 --The torso's height is relative to the legs they're parented to. sanshead.y = 40 --The head's height is relative to the torso it's parented to. --We set the torso's pivot point to halfway horizontally, and on the bottom vertically, --so we can rotate it around the bottom instead of the center. sanstorso.SetPivot(0.5, 0) --We set the torso's anchor point to the top center. Because the legs are pivoted on the bottom (so rescaling them only makes them move up), --we want the torso to move along upwards with them. sanstorso.SetAnchor(0.5, 1) sanslegs.SetPivot(0.5, 0) --Finally, we do some frame-by-frame animation just to show off the feature. You put in a list of sprites, --and the time you want a sprite change to take. In this case, it's 1/2 of a second. sanshead.SetAnimation({"sans/sanshead1", "sans/sanshead2", "sans/sanshead3"}, 1/2) function AnimateSans() sanslegs.Scale(1, 1+0.1*math.sin(Time.time*2)) sanshead.MoveTo(2*math.sin(Time.time), 40 + 2*math.cos(Time.time)) sanshead.rotation = 10*math.sin(Time.time + 1) sanstorso.rotation = 10*math.sin(Time.time + 2) end ================================================ FILE: Assets/Mods/Examples 2/Lua/Animations/sans_anim.lua.meta ================================================ fileFormatVersion: 2 guid: 3b733b7e0355b7444976f05297c19638 timeCreated: 1487174277 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Animations.meta ================================================ fileFormatVersion: 2 guid: bb5ff3f49be0e1042a77b04067ccc886 folderAsset: yes timeCreated: 1487174275 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Encounters/01 - Two monsters.lua ================================================ encountertext = "Your path is blocked by\rtwo mannequins!" --Modify as necessary. It will only be read out in the action select screen. wavetimer = 4.0 arenasize = {155, 130} nextwaves = {"bullettest_touhou"} enemies = { "poseur", "posette" } enemypositions = { {-180, 0}, {120, 0} } -- A custom list with attacks to choose from. Actual selection happens in EnemyDialogueEnding(). Put here in case you want to use it. possible_attacks = {"bullettest_bouncy", "bullettest_chaserorb", "bullettest_touhou"} function EncounterStarting() -- If you want to change the game state immediately, this is the place. end function EnemyDialogueStarting() -- Good location for setting monster dialogue depending on how the battle is going. end function EnemyDialogueEnding() -- Good location to fill the 'nextwaves' table with the attacks you want to have simultaneously. -- This example line below takes a random attack from 'possible_attacks'. nextwaves = { possible_attacks[math.random(#possible_attacks)] } end function DefenseEnding() --This built-in function fires after the defense round ends. encountertext = RandomEncounterText() --This built-in function gets a random encounter text from a random enemy. end function HandleSpare() State("ENEMYDIALOGUE") end function HandleItem(ItemID) BattleDialog({"Selected item " .. ItemID .. "."}) end ================================================ FILE: Assets/Mods/Examples 2/Lua/Encounters/01 - Two monsters.lua.meta ================================================ fileFormatVersion: 2 guid: e2d0723f913bd6a42882c606a2b73966 timeCreated: 1487174280 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Encounters/02 - Colored bullets.lua ================================================ -- A basic encounter script skeleton you can copy and modify for your own creations. -- music = "shine_on_you_crazy_diamond" --Either OGG or WAV. Extension is added automatically. Uncomment for custom music. encountertext = "Select ACT commands to see\rdifferent bullets in action." --Modify as necessary. It will only be read out in the action select screen. nextwaves = {"bullettest_chaserorb"} wavetimer = 4.0 arenasize = {155, 130} enemies = { "bullet_testing_poseur" } enemypositions = { {0, 0} } -- A custom list with attacks to choose from. Actual selection happens in EnemyDialogueEnding(). Put here in case you want to use it. possible_attacks = {"bullettest_bouncy", "bullettest_chaserorb", "bullettest_touhou"} function EncounterStarting() -- If you want to change the game state immediately, this is the place. end function EnemyDialogueStarting() -- Good location for setting monster dialogue depending on how the battle is going. end function EnemyDialogueEnding() -- Good location to fill the 'nextwaves' table with the attacks you want to have simultaneously. -- The wavetype is set in bullet_testing_poseur's act commands. nextwaves = { GetGlobal("wavetype") } end function DefenseEnding() --This built-in function fires after the defense round ends. encountertext = RandomEncounterText() --This built-in function gets a random encounter text from a random enemy. end function HandleSpare() State("ENEMYDIALOGUE") end function HandleItem(ItemID) BattleDialog({"Selected item " .. ItemID .. "."}) end ================================================ FILE: Assets/Mods/Examples 2/Lua/Encounters/02 - Colored bullets.lua.meta ================================================ fileFormatVersion: 2 guid: 2e253a76e6ff4eb44a9dc3794983ae90 timeCreated: 1487174277 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Encounters/03 - Library Example.lua ================================================ -- An example of how to use libraries. -- First, let's include our library. voicer = require "randomvoice" -- Now, set some voices that are included in the default directory. voicer.setvoices({"v_sans", "v_fluffybuns", "v_papyrus", "v_flowey"}) -- We can now use the voicer.randomize() function on all our dialogue! See the EnemyDialogueStarting function below. encountertext = "A library example that randomizes\ra monster's voice per letter.\nCheck it out!" --Modify as necessary. It will only be read out in the action select screen. nextwaves = {"bullettest_chaserorb"} wavetimer = 4.0 arenasize = {155, 130} enemies = { "poseur" } enemypositions = { {0, 0} } -- A custom list with attacks to choose from. Actual selection happens in EnemyDialogueEnding(). Put here in case you want to use it. possible_attacks = {"bullettest_bouncy", "bullettest_chaserorb", "bullettest_touhou"} function EncounterStarting() -- If you want to change the game state immediately, this is the place. local randomdialogue = enemies[1].GetVar("randomdialogue") -- retrieve dialogue first, for readability enemies[1].SetVar("randomdialogue", voicer.randomizetable(randomdialogue)) -- Randomize voices with the library! end function EnemyDialogueStarting() -- Good location for setting monster dialogue depending on how the battle is going. -- Example: enemies[1].SetVar('currentdialogue', {"Check it\nout!"}) See documentation for details. local enemydialogue = enemies[1].GetVar("currentdialogue") -- retrieve dialogue first, for readability if enemydialogue ~= nil then -- Note that this can happen when a monster is having its random dialogue! enemies[1].SetVar('currentdialogue', voicer.randomizetable(enemydialogue)) -- Randomize voices with the library! end end function EnemyDialogueEnding() -- Good location to fill the 'nextwaves' table with the attacks you want to have simultaneously. -- This example line below takes a random attack from 'possible_attacks'. nextwaves = { possible_attacks[math.random(#possible_attacks)] } end function DefenseEnding() --This built-in function fires after the defense round ends. encountertext = RandomEncounterText() --This built-in function gets a random encounter text from a random enemy. end function HandleSpare() State("ENEMYDIALOGUE") --By default, pressing spare only spares the enemies but stays in the menu. Changing state happens here. end function HandleItem(ItemID) BattleDialog({"Selected item " .. ItemID .. "."}) end ================================================ FILE: Assets/Mods/Examples 2/Lua/Encounters/03 - Library Example.lua.meta ================================================ fileFormatVersion: 2 guid: 145cfecf4a8c3e44c9a05cb5d9435c94 timeCreated: 1487174276 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Encounters/04 - Animation.lua ================================================ -- An animation demo with a rotating Sans head. -- music = "shine_on_you_crazy_diamond" --Always OGG. Extension is added automatically. Remove the first two lines for custom music. encountertext = "It's an animation!" --Modify as necessary. It will only be read out in the action select screen. nextwaves = {"bullettest_chaserorb"} wavetimer = 4.0 arenasize = {155, 130} autolinebreak = true enemies = { "sans" } enemypositions = { {0, 0} } -- A custom list with attacks to choose from. Actual selection happens in EnemyDialogueEnding(). Put here in case you want to use it. possible_attacks = {"bullettest_bouncy", "bullettest_chaserorb", "bullettest_touhou"} function EncounterStarting() --Include the animation Lua file. It's important you do this in EncounterStarting, because you can't create sprites before the game's done loading. --Be careful that you use different variable names as you have here, because the encounter's will be overwritten otherwise! --You can also use that to your benefit if you want to share a bunch of variables with multiple encounters. require "Animations/sans_anim" end function Update() --By calling the AnimateSans() function on the animation Lua file, we can create some movement! AnimateSans() end function EnemyDialogueEnding() -- Good location to fill the 'nextwaves' table with the attacks you want to have simultaneously. -- This example line below takes a random attack from 'possible_attacks'. nextwaves = { possible_attacks[math.random(#possible_attacks)] } end function DefenseEnding() --This built-in function fires after the defense round ends. encountertext = RandomEncounterText() --This built-in function gets a random encounter text from a random enemy. end function HandleSpare() State("ENEMYDIALOGUE") end function HandleItem(ItemID) BattleDialog({"Selected item " .. ItemID .. "."}) end ================================================ FILE: Assets/Mods/Examples 2/Lua/Encounters/04 - Animation.lua.meta ================================================ fileFormatVersion: 2 guid: 84c901786bd29f1499a1d59bba6fe496 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Encounters.meta ================================================ fileFormatVersion: 2 guid: 885b4fa5de94eff46a95fb22ecee83d6 folderAsset: yes timeCreated: 1487174275 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Events/Ladder.lua ================================================ function EventPage1() local speed = Event.GetSpeed("Player") Event.MoveToPoint("Player", 350, 769, false) Event.SetSpeed("Player", 1.5) Event.MoveToPoint("Player", 350, 630, true, false) Event.SetDirection("Player", 8) Screen.SetTone(true, false, 0, 0, 0, 255) local pos = Event.GetPosition("Player") while pos[2] > 630 do Misc.cameraY = 537 General.Wait(1) NewAudio.SetVolume("src", 0.75 * ((pos[2] - 630) / 139)) pos = Event.GetPosition("Player") end NewAudio.SetVolume("src", 0.75) Event.SetSpeed("Player", speed) Screen.SetTone(false, false, 0, 0, 0, 0) General.EnterShop("Dummy", true) end ================================================ FILE: Assets/Mods/Examples 2/Lua/Events/Ladder.lua.meta ================================================ fileFormatVersion: 2 guid: 67b581ddae1e9a14e9e6d5b19cc20449 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Events/SaveTest.lua ================================================ function EventPage0() local spriteTest = Event.GetSprite(Event.GetName()) spriteTest.SetAnimation({"SavePoint/0", "SavePoint/1"}, .2) end function EventPage1() General.SetDialog({"[health:Max]This large stretch of snow is so beautiful to the eye...", "[waitall:5]...[waitall:1][w:40]Seeing that the background is finally here fills you with determination."}, true) General.Save() end ================================================ FILE: Assets/Mods/Examples 2/Lua/Events/SaveTest.lua.meta ================================================ fileFormatVersion: 2 guid: 8405f5461a3d2a14abd5882c9f2e7b22 timeCreated: 1490005789 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Events/Secret/68302eae.lua ================================================ function EventPage0() if Event.GetAnimHeader("Player") ~= "Asriel" then Event.Remove(Event.GetName() .. " (1)") Event.Remove(Event.GetName()) end end function EventPage1() local playerSprite = Event.GetSprite("Player") local friskSprite = Event.GetSprite(Event.GetName()) local blackSprite = Event.GetSprite(Event.GetName() .. " (1)") Event.MoveToPoint("Player", 440, 201, true) Event.SetDirection("Player", 4) Event.SetDirection(Event.GetName(), 6) General.SetDialog({"[voice:v_asriel](There's a human here, [w:15]all alone...)", "[voice:v_asriel]Howdy! [w:25]Do you need any help?", "..."}, true, {"Asriel/normal", {"Asriel/happyT", "Asriel/happy", 0.2}, "Frisk/sad"}) General.SetChoice({"Help", "Don't help"}) if lastChoice == 0 then NewAudio.CreateChannel("Appear") Event.IgnoreCollision(Event.GetName(), true) friskSprite.loopmode = "ONESHOT" Event.MoveToPoint("Player", 409, 200.4, true) General.Wait(30) playerSprite.alpha = 0 Event.SetAnimHeader(Event.GetName(), "Huggu1") Event.Teleport(Event.GetName(), 403, 200) General.Wait(1) while not friskSprite.animcomplete do General.Wait(1) end General.Wait(30) friskSprite.loopmode = "LOOP" Event.SetAnimHeader(Event.GetName(), "Huggu2") General.Wait(30) General.SetDialog({"[voice:v_asriel]Don't worry, [w:15]everything is going to be okay..."}, true, {{"Asriel/sadT", "Asriel/sad", 0.2}}) General.Wait(90) local playerPos = Event.GetPosition("Player") Event.Teleport(Event.GetName() .. " (1)", playerPos[1] < 320 and 320 or playerPos[1], playerPos[2] < 240 and 0 or playerPos[2] - 240) friskSprite.loopmode = "ONESHOT" Event.SetAnimHeader(Event.GetName(), "Huggu3") local appeared = false Audio.Stop() friskSprite.z = -1 blackSprite.z = -0.5 blackSprite.Set("black") for i = 1, 5 do if not appeared then blackSprite.alpha = 1 NewAudio.PlaySound("Appear", "BeginBattle2") else blackSprite.alpha = 0 end appeared = not appeared General.Wait(12) end General.Wait(18) Screen.SetTone(true, true, 0, 0, 0, 255) General.Wait(30) Event.IgnoreCollision(Event.GetName(), false) Event.SetAnimHeader(Event.GetName(), "") SetRealGlobal("CYFInternalCross5", true) SetRealGlobal("CYFInternalCharacterSelected", false) Player.Teleport("test2", 320, 200, 2, false) else General.SetDialog({"[noskip][voice:v_asriel](I hope he'll be fine...)"}, true, {"Asriel/verySad"}) Event.SetDirection(Event.GetName(), 4) end end ================================================ FILE: Assets/Mods/Examples 2/Lua/Events/Secret/68302eae.lua.meta ================================================ fileFormatVersion: 2 guid: ec3fa3ffc7858d746ab0c5ace844914f DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Events/Secret/bee6bcfc.lua ================================================ --From normal to knockout: X + 56, Y + 5, Rot.Z = 90 --From event to image: Pivot = 0.75, ImageX = 168.5, ImageY = -47, Rotation = -90 --> -45 --From knockout to fall: Pivot = 0.5, ImageX = 1060+176, ImageY = 707-89, Rot.Z = -60 --> -15 --Final destination: ImageY = -300 --Camera: 1060, 707 function EventPage0() local punderSprite = Event.GetSprite(Event.GetName()) if GetRealGlobal("CYFInternalCross2") then Event.Remove(Event.GetName() .. " (1)") Event.Remove(Event.GetName()) elseif Event.GetAnimHeader("Player") ~= "Chara" then Event.SetPage(Event.GetName(), 1) if Event.Exists(Event.GetName() .. " (1)") then Event.Remove(Event.GetName() .. " (1)") end else Event.SetPage(Event.GetName(), 2) end end function EventPage2() local playerSprite = Event.GetSprite("Player") local punderSprite = Event.GetSprite(Event.GetName()) local maskSprite = Event.GetSprite(Event.GetName() .. " (1)") maskSprite.loopmode = "ONESHOT" NewAudio.CreateChannel("temp") Event.IgnoreCollision(Event.GetName(), true) Event.IgnoreCollision(Event.GetName() .. " (1)", true) Event.MoveToPoint("Player", 1020, 680, true) Event.SetDirection("Player", 6) Event.SetDirection(Event.GetName(), 4) General.Wait(30) General.SetDialog({"[noskip][voice:punderbolt]Hello th[mugshot:Punder/intimidated][waitall:2]ere... [w:25][waitall:1]May I help you?"}, true, {"Punder/normal"}) for i = 1, 30 do Audio.Volume((30 - i) / 30) General.Wait(1) end Audio.Stop() Audio.Volume(1) Event.MoveToPoint("Player", 1060, 680, true, false) General.Wait(3) Event.MoveToPoint(Event.GetName(), 1120, 680, true, false) Event.SetDirection(Event.GetName(), 4) General.SetDialog({"[noskip][voice:punderbolt]Hey! [w:25]Back off!", "[noskip][voice:punderbolt]What are you doing?!"}, true, {"Punder/angryIntimidated", "Punder/shocked"}) playerSpeed = Event.GetSpeed("Player") Event.SetSpeed("Player", 6) General.Wait(60) Event.MoveToPoint("Player", 1120, 680, true, false) General.Wait(5) NewAudio.PlaySound("temp", "Secret/punch") Event.SetAnimHeader(Event.GetName(), "Knockout") punderSprite.Set("Overworld/Punder/Secret/knockout") punderSprite.rotation = 90 Event.Teleport(Event.GetName(), 1176, 723) for i = 1, 60 do punderSprite.rotation = punderSprite.rotation - 3 General.Wait(1) end Event.MoveToPoint(Event.GetName(), 1176, 660, true) -- Event.SetDirection(Event.GetName(), 4) Screen.DispImg("Overworld/Punder/Secret/knockout", 1, -500, -500) local imgSprite = Event.GetSprite("Image1") imgSprite.rotation = -90 imgSprite.SetPivot(.5, .75) Event.Teleport("Image1", 1230.5, 664) Event.SetAnimHeader(Event.GetName(), "NoAnim") Event.MoveToPoint("Image1", 1238.5, 616, true, false) General.Wait(1) for i = 1, 15 do imgSprite.rotation = imgSprite.rotation + 3 General.Wait(1) end imgSprite.Set("Overworld/Punder/Secret/fall") imgSprite.SetPivot(.5, .5) imgSprite.rotation = -60 Event.Teleport("Image1", 1230, 619) Event.MoveToPoint("Image1", 1230, 400, true, false) for i = 1, 15 do imgSprite.rotation = imgSprite.rotation + 3 General.Wait(1) end local imgPos repeat imgPos = Event.GetPosition("Image1") General.Wait(1) until imgPos[2] == 400 General.Wait(60) Event.SetDirection("Player", 2) General.Wait(60) local playerPos = Event.GetPosition("Player") playerSprite.alpha = 0 Event.Teleport(Event.GetName() .. " (1)", playerPos[1], playerPos[2]) Event.SetAnimHeader(Event.GetName() .. " (1)", "Glitch") NewAudio.PlaySound("temp", "Secret/noise") General.Wait(1) while not maskSprite.animcomplete do General.Wait(1) end maskSprite.Set("FriskUT/1") General.Wait(120) maskSprite.Set("FriskUT/Glitch/gg") General.Wait(120) Screen.SetTone(true, true, 0, 0, 0, 255) Event.Remove("Image1") General.Wait(30) Event.IgnoreCollision(Event.GetName(), false) Event.SetAnimHeader(Event.GetName(), "") SetRealGlobal("CYFInternalCross2", true) SetRealGlobal("CYFInternalCharacterSelected", false) NewAudio.DestroyChannel("temp") Event.SetSpeed("Player", playerSpeed) Player.Teleport("test2", 320, 200, 2, false) end function EventPage1() --General.TitleScreen() local spriteTest = Event.GetSprite(Event.GetName()) local playerpos = Event.GetPosition("Player") local eventpos = Event.GetPosition(Event.GetName()) local dir local diff dir, diff = calcDirAndDiff(eventpos, playerpos) local text = "" local mugshot = "Punder/normal" if Event.GetAnimHeader("Player") == "MK" then text = "Hello there little buddy!" mugshot = "Punder/veryHappy" elseif Event.GetAnimHeader("Player") == "Chara" then --Impossible to reach local tempPunderX = Event.GetPosition(Event.GetName())[1] Event.MoveToPoint(Event.GetName(), diff[1] > 0 and eventpos[1] + 60 or eventpos[1] - 60, eventpos[2]) eventpos = Event.GetPosition(Event.GetName()) if tempPunderX == eventpos[1] then text = "What are you doing? [w:25]\nBack off!" else text = "Hey...[w:25]you look kinda menacing...[w:25]\nBe good, [w:15]alright?" end mugshot = "Punder/intimidated" elseif Event.GetAnimHeader("Player") == "Asriel" then text = "Oh hi kid! [w:25]You're cute, [w:15]you know that?" mugshot = "Punder/veryHappy" else text = "Hey, [w:15]how's it going?" end dir, diff = calcDirAndDiff(Event.GetPosition(Event.GetName()), Event.GetPosition("Player")) Event.SetDirection(Event.GetName(), dir) General.SetDialog({"[voice:punderbolt]" .. text}, true, {mugshot}) end function calcDirAndDiff(vect1, vect2) local diff = { vect1[1] - vect2[1], vect1[2] - vect2[2] } local angle = (math.atan2(diff[1], diff[2]) + (math.pi*2)) % (math.pi*2) local dir = 2 if angle > math.pi/4 and angle <= 3*math.pi/4 then dir = 4 elseif angle > 3*math.pi/4 and angle <= 5*math.pi/4 then dir = 8 elseif angle > 5*math.pi/4 and angle <= 7*math.pi/4 then dir = 6 end return dir, diff end ================================================ FILE: Assets/Mods/Examples 2/Lua/Events/Secret/bee6bcfc.lua.meta ================================================ fileFormatVersion: 2 guid: 915d145ee68bb4e41964f21c54823d53 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Events/Secret/caf144b2.lua ================================================ function EventPage0() if Event.GetAnimHeader("Player") ~= "Booster" then Event.Remove(Event.GetName() .. " (2)") Event.Remove(Event.GetName() .. " (1)") Event.Remove(Event.GetName()) end end function EventPage1() local playerSprite = Event.GetSprite("Player") local charaSprite = Event.GetSprite("caf144b2 (1)") local playerMaskSprite = Event.GetSprite("caf144b2 (2)") local playerPos = Event.GetPosition("Player") local charaPos = Event.GetPosition("caf144b2 (1)") Event.SetDirection("Player", 4) Event.SetAnimHeader("caf144b2 (1)", "") Event.SetDirection("caf144b2 (1)", 6) Event.Teleport("caf144b2 (1)", charaPos[1], playerPos[2]) General.SetDialog({"[noskip]Heeeeeeey!"}, true) Event.MoveToPoint("caf144b2 (1)", 900, playerPos[2], true) General.SetDialog({"[noskip]I was looking for you, [w:10]you know!", "[noskip]ahem[next]", "[noskip]You're a human, [w:10]right?"}, true, {"Chara/angry", "Chara/ahem", "Chara/badsmile"}) General.SetChoice({"Yes", "No"}) if lastChoice == 0 then NewAudio.CreateChannel("temp") General.SetDialog({"[noskip]Oh, [w:10]cool!", "[noskip]You know,[mugshot:Chara/normal] [w:10]I came by not long ago too.", "[noskip]I know the place a bit now, [w:10][mugshot:Chara/smile]would you like me to show you around?", "[noskip]No? [w:20]Excellent, [w:10]follow me!"}, true, {"Chara/smile", "Chara/thinking", "Chara/normal", "Chara/smile"}) Event.SetAnimHeader("caf144b2 (2)", "") Event.Teleport("caf144b2 (2)", playerPos[1], playerPos[2]) Event.Teleport("caf144b2 (2)", playerPos[1], playerPos[2]) playerSprite.alpha = 0 Event.MoveToPoint("caf144b2 (2)", 600, playerPos[2], true, false) else General.SetDialog({"[noskip]Oh alright, [w:10]carry on then."}, true, {"Chara/sad"}) end Event.MoveToPoint("caf144b2 (1)", 600, playerPos[2], true, lastChoice ~= 0) if lastChoice == 0 then General.Wait(80) Screen.SetTone(true, true, 0, 0, 0, 255) General.StopBGM(60) General.Wait(120) Screen.Flash(30, 255, 0, 0, 255) NewAudio.PlaySound("temp", "Secret/laugh") while not NewAudio.isStopped("temp") do General.Wait(1) end General.Wait(30) Event.Remove(Event.GetName()) SetRealGlobal("CYFInternalCross4", true) SetRealGlobal("CYFInternalCharacterSelected", false) Event.SetAnimHeader("caf144b2 (1)", "StopDown") Event.SetAnimHeader("caf144b2 (2)", "StopDown") NewAudio.DestroyChannel("temp") Player.Teleport("test2", 320, 200, 2, false) end Event.SetAnimHeader("caf144b2 (1)", "StopDown") Event.SetAnimHeader("caf144b2 (2)", "StopDown") Event.Remove(Event.GetName()) Event.Remove(Event.GetName() .. " (1)") Event.Remove(Event.GetName() .. " (2)") end ================================================ FILE: Assets/Mods/Examples 2/Lua/Events/Secret/caf144b2.lua.meta ================================================ fileFormatVersion: 2 guid: 6d1648431e8ec4b4bb88c1115d29e5bc DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Events/Secret/dac97760.lua ================================================ function EventPage0() if Event.GetAnimHeader("Player") ~= "" then Event.Remove(Event.GetName() .. " (1)") Event.Remove(Event.GetName()) end end function EventPage1() local playerSprite = Event.GetSprite("Player") local maskSprite = Event.GetSprite("dac97760 (1)") local coeff = Event.GetDirection("Player") == 4 and 1 or -1 local playerPos = Event.GetPosition("Player") Screen.DispImg("empty", 1, 320, 240) local imgSprite = Event.GetSprite("Image1") maskSprite.loopmode = "ONESHOT" maskSprite.xscale = coeff NewAudio.CreateChannel("temp") General.Wait(60) Event.SetAnimHeader("dac97760 (1)", "Fall") Event.Teleport("dac97760 (1)", playerPos[1] - 29 * coeff, playerPos[2]) General.Wait(1) playerSprite.alpha = 0 while not maskSprite.animcomplete do General.Wait(1) end for i = 1, 30 do Audio.Volume((30 - i) / 30) General.Wait(1) end Audio.Stop() Audio.Volume(1) maskSprite.Set("FriskUT/Fall/f2") local maskPos = Event.GetPosition("dac97760 (1)") for i = 1, 12 do Event.Teleport("dac97760 (1)", maskPos[1] + coeff, maskPos[2]) coeff = -coeff General.Wait(10) end Event.Teleport("dac97760 (1)", maskPos[1], maskPos[2]) General.Wait(120) Event.SetAnimHeader("dac97760 (1)", "Reveal") Event.Teleport("Image1", maskPos[1] - 17 * coeff, maskPos[2] + 11) General.Wait(10) imgSprite.loopmode = "ONESHOTEMPTY" imgSprite.SetAnimation({"FriskUT/Fall/ef0", "FriskUT/Fall/ef1", "FriskUT/Fall/ef2", "FriskUT/Fall/ef3", "FriskUT/Fall/ef4"}, 1/5) NewAudio.PlaySound("temp", "Secret/boing") General.Wait(1) while not NewAudio.isStopped("temp") do General.Wait(1) end General.Wait(60) Screen.SetTone(false, true, 0, 0, 0, 255) NewAudio.PlaySound("temp", "Secret/laugh") while not NewAudio.isStopped("temp") do General.Wait(1) end Event.Remove("Image1") General.Wait(30) SetRealGlobal("CYFInternalCross1", true) SetRealGlobal("CYFInternalCharacterSelected", false) Event.SetAnimHeader("dac97760 (1)", "StopDown") NewAudio.DestroyChannel("temp") Player.Teleport("test2", 320, 200, 2, false) end ================================================ FILE: Assets/Mods/Examples 2/Lua/Events/Secret/dac97760.lua.meta ================================================ fileFormatVersion: 2 guid: 2c7c48067a0a9274b83974c36bf68053 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Events/Secret/nothing.lua ================================================ function EventPage0() end function EventPage1() end --This is quite literally nothing. --Nothing important here. --However, if you keep looking at hidden files, I have one message for you: --[[ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##;;,,`` ``,,;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##;;,,`` ``,,;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++:: ```````` ++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++:: ```````` ++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;;`` ``,,;;++##@@@@##########@@##'',,`` ..++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;;`` ``,,;;++##@@@@##########@@##'',,`` ..++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##,, ..''##@@@@''::..`` ``..;;++++.. ::@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##,, ..''##@@@@''::..`` ``..;;++++.. ::@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,, ``##@@@@++.. '''' ;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,, ``##@@@@++.. '''' ;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.. ``++@@@@,, ,,.. ::@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.. ``++@@@@,, ,,.. ::@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'' ``++@@''.. ''`` ``..''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'' ``++@@''.. ''`` ``..''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;; ;;@@''`` `` ;;++##++'',,``++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;; ;;@@''`` `` ;;++##++'',,``++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;; @@@@.. .. ,,@@ ##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;;++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;; @@@@.. .. ,,@@ ##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;;++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++ ++@@.. ```````` :: ,,;;```` ++ ;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##..@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++``++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++ ++@@.. ```````` :: ,,;;```` ++ ;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##..@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++``++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@## ;;@@`` ..`` ````,,,,,,`` ,,;;,,,,,,..++ ;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@::,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,, ++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@## ;;@@`` ..`` ````,,,,,,`` ,,;;,,,,,,..++ ;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@::,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,, ++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@`` ,,@@:: ``.. ##++'',,,,,,@@ ''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;;..@@@@@@@@@@@@++;;''''##@@@@@@@@@@@@@@@@@@@@@@@@@@@@##'';;;;''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++ @@@@;;''++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@`` ,,@@:: ``.. ##++'',,,,,,@@ ''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;;..@@@@@@@@@@@@++;;''''##@@@@@@@@@@@@@@@@@@@@@@@@@@@@##'';;;;''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++ @@@@;;''++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:: ``@@'',, ,,`` ,,`` ..'' ..@@@@@@@@,,..## ;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##``@@@@@@@@@@@@'' ..##@@@@@@@@@@@@@@@@:: ```` ;;@@@@@@;;``@@@@@@@@@@## ''## @@`` ..,,```` ##@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:: ``@@'',, ,,`` ,,`` ..'' ..@@@@@@@@,,..## ;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##``@@@@@@@@@@@@'' ..##@@@@@@@@@@@@@@@@:: ```` ;;@@@@@@;;``@@@@@@@@@@## ''## @@`` ..,,```` ##@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@## ##@@,,,, .. ''..;;,,``@@@@@@@@@@''..:: ::@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@..''@@@@@@@@@@@@## ####;;.. ..++@@@@@@@@##`` ;;@@@@@@@@''`` ;;@@## ;;@@@@@@@@++ ;;## @@;;''++''''`` ,,,,....;;@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@## ##@@,,,, .. ''..;;,,``@@@@@@@@@@''..:: ::@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@..''@@@@@@@@@@@@## ####;;.. ..++@@@@@@@@##`` ;;@@@@@@@@''`` ;;@@## ;;@@@@@@@@++ ;;## @@;;''++''''`` ,,,,....;;@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.. ,,@@::,,.. ``..,,,,,,..,,,,::++::::::@@@@@@@@@@@@##..,, ,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;;..@@@@@@@@@@@@@@@@ @@@@@@@@@@++,, ``##@@@@``..@@@@@@@@@@@@@@@@`` ;;@@ ##@@@@@@@@ ''##..@@@@@@@@@@@@`` @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.. ,,@@::,,.. ``..,,,,,,..,,,,::++::::::@@@@@@@@@@@@##..,, ,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;;..@@@@@@@@@@@@@@@@ @@@@@@@@@@++,, ``##@@@@``..@@@@@@@@@@@@@@@@`` ;;@@ ##@@@@@@@@ ''##..@@@@@@@@@@@@`` @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@## ##++,,,,`` ``;;##@@@@@@@@@@@@@@@@##::,,,,;;@@@@@@@@@@@@@@,,++ ..@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ++@@@@@@@@@@@@@@@@````@@@@@@@@@@@@@@## ::@@``..@@@@@@@@@@@@@@@@@@@@ ..@@``.. ,,@@@@@@@@ ;;@@@@@@@@@@@@@@@@.. @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@## ##++,,,,`` ``;;##@@@@@@@@@@@@@@@@##::,,,,;;@@@@@@@@@@@@@@,,++ ..@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ++@@@@@@@@@@@@@@@@````@@@@@@@@@@@@@@## ::@@``..@@@@@@@@@@@@@@@@@@@@ ..@@``.. ,,@@@@@@@@ ;;@@@@@@@@@@@@@@@@.. @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,, ``@@::,,,, ..''##@@@@@@@@@@@@@@@@@@@@;;,,,,::@@@@@@@@@@@@@@,,''`` ##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'' @@@@@@@@@@@@@@@@@@.. @@@@@@@@@@@@@@@@;; ..,, ++@@@@@@@@@@@@@@@@@@@@,, ##``::'' ##@@@@@@ ;;@@@@@@@@@@@@@@@@:: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,, ``@@::,,,, ..''##@@@@@@@@@@@@@@@@@@@@;;,,,,::@@@@@@@@@@@@@@,,''`` ##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'' @@@@@@@@@@@@@@@@@@.. @@@@@@@@@@@@@@@@;; ..,, ++@@@@@@@@@@@@@@@@@@@@,, ##``::'' ##@@@@@@ ;;@@@@@@@@@@@@@@@@:: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ::@@,,,,,, ,,,,`` ,,::++@@@@@@@@@@@@@@@@@@@@@@++,,,,,,++@@@@@@@@@@##.. ## ,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@..''@@@@@@@@@@@@@@@@@@.. @@@@@@@@@@@@@@@@;; `` @@@@@@@@@@@@@@@@@@@@@@`` ''``::@@.. @@@@@@ ''@@@@@@@@@@@@@@@@:: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ::@@,,,,,, ,,,,`` ,,::++@@@@@@@@@@@@@@@@@@@@@@++,,,,,,++@@@@@@@@@@##.. ## ,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@..''@@@@@@@@@@@@@@@@@@.. @@@@@@@@@@@@@@@@;; `` @@@@@@@@@@@@@@@@@@@@@@`` ''``::@@.. @@@@@@ ''@@@@@@@@@@@@@@@@:: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++ ++++,,,,,, ``::`` ..,,::@@@@@@@@@@@@@@@@@@@@@@@@##,,,,,,..''@@@@@@@@;;`` ..;; ''@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@,, ##@@@@@@@@@@@@@@.. ;; @@@@@@@@@@@@@@@@@@@@@@.. ++``;;@@@@````@@@@ ''@@@@@@@@@@@@@@@@,, @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++ ++++,,,,,, ``::`` ..,,::@@@@@@@@@@@@@@@@@@@@@@@@##,,,,,,..''@@@@@@@@;;`` ..;; ''@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@,, ##@@@@@@@@@@@@@@.. ;; @@@@@@@@@@@@@@@@@@@@@@.. ++``;;@@@@````@@@@ ''@@@@@@@@@@@@@@@@,, @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:: @@;;,,,,,,`` `` ;; ..,,,,;;@@@@@@@@@@@@@@@@@@@@@@@@++,,.. ;;;;::;;.. ,,++ ::@@@@@@@@@@@@@@@@@@@@@@@@## @@@@@@@@@@@@@@@@@@@@.. ##@@@@@@@@@@@@;; ``## ##@@@@@@@@@@@@@@@@@@@@ ##..::@@@@## ,,@@ ++@@@@@@@@@@@@@@@@;; @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:: @@;;,,,,,,`` `` ;; ..,,,,;;@@@@@@@@@@@@@@@@@@@@@@@@++,,.. ;;;;::;;.. ,,++ ::@@@@@@@@@@@@@@@@@@@@@@@@## @@@@@@@@@@@@@@@@@@@@.. ##@@@@@@@@@@@@;; ``## ##@@@@@@@@@@@@@@@@@@@@ ##..::@@@@## ,,@@ ++@@@@@@@@@@@@@@@@;; @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.. ``@@::,,,,,,.. ```` ......,,,,;;@@@@@@@@@@@@@@@@@@@@@@@@++,, ;;:: ``..`` ,,## ;;@@@@@@@@@@@@@@@@@@@@@@##..@@@@@@@@@@@@@@@@@@@@,, @@@@@@@@@@@@++ @@@@ ..@@@@@@@@@@@@@@@@@@@@ ``@@``::@@@@@@:: ## ''@@@@@@@@@@@@@@@@:: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.. ``@@::,,,,,,.. ```` ......,,,,;;@@@@@@@@@@@@@@@@@@@@@@@@++,, ;;:: ``..`` ,,## ;;@@@@@@@@@@@@@@@@@@@@@@##..@@@@@@@@@@@@@@@@@@@@,, @@@@@@@@@@@@++ @@@@ ..@@@@@@@@@@@@@@@@@@@@ ``@@``::@@@@@@:: ## ''@@@@@@@@@@@@@@@@:: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@`` ``@@,,,,,,,,,,``,, ;;,,,,,,::@@@@@@@@@@@@@@@@@@@@@@##'' ,,@@'' ,,++ ##@@@@@@@@@@@@@@@@@@@@++``@@@@@@@@@@@@@@@@@@@@.. @@@@@@@@@@;; ,,@@@@@@##`` ``++@@@@@@@@@@@@@@`` ++@@ ,,@@@@@@@@.. ''@@@@@@@@@@@@@@@@,, @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@`` ``@@,,,,,,,,,,``,, ;;,,,,,,::@@@@@@@@@@@@@@@@@@@@@@##'' ,,@@'' ,,++ ##@@@@@@@@@@@@@@@@@@@@++``@@@@@@@@@@@@@@@@@@@@.. @@@@@@@@@@;; ,,@@@@@@##`` ``++@@@@@@@@@@@@@@`` ++@@ ,,@@@@@@@@.. ''@@@@@@@@@@@@@@@@,, @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@`` ..@@,,,,,,,,,,,,;; ::,,,,,,,,++@@@@@@@@@@@@@@@@@@@@;;,, ``@@@@;; @@``++@@@@@@@@@@@@@@@@@@@@## @@@@@@@@@@@@@@@@@@@@`` ++++'',, ..++@@@@@@@@@@##`` ``;;''++++;;````''@@@@ ,,@@@@@@@@++ ++@@@@@@@@@@@@@@@@,, @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@`` ..@@,,,,,,,,,,,,;; ::,,,,,,,,++@@@@@@@@@@@@@@@@@@@@;;,, ``@@@@;; @@``++@@@@@@@@@@@@@@@@@@@@## @@@@@@@@@@@@@@@@@@@@`` ++++'',, ..++@@@@@@@@@@##`` ``;;''++++;;````''@@@@ ,,@@@@@@@@++ ++@@@@@@@@@@@@@@@@,, @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@`` ..@@,,,,,,,,,,::`` ..,,,,,,,,,,;;@@@@@@@@@@@@@@@@++;; @@@@@@,, ``::@@``##@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@,, ``;;++@@@@@@@@@@@@@@@@@@##''::`````` ``''@@@@@@@@ ++@@@@@@@@@@''``@@@@@@@@@@@@@@@@@@,, @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@`` ..@@,,,,,,,,,,::`` ..,,,,,,,,,,;;@@@@@@@@@@@@@@@@++;; @@@@@@,, ``::@@``##@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@,, ``;;++@@@@@@@@@@@@@@@@@@##''::`````` ``''@@@@@@@@ ++@@@@@@@@@@''``@@@@@@@@@@@@@@@@@@,, @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.. ..@@,,,,,,,,,,;; ,,,,..,,,,,,,,::''##@@##++'''',,,,,, @@@@@@@@ ..''++ ::@@@@@@@@@@@@@@@@@@@@@@@@..;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.. ..@@,,,,,,,,,,;; ,,,,..,,,,,,,,::''##@@##++'''',,,,,, @@@@@@@@ ..''++ ::@@@@@@@@@@@@@@@@@@@@@@@@..;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,, ``@@,,,,,,,,,,,,,, ,,,, ``..,,,,,,,,,,::;;;;,,..;;,, @@##..##;; ````'',, ''@@@@@@@@@@@@@@@@@@@@@@@@@@'' @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,, ``@@,,,,,,,,,,,,,, ,,,, ``..,,,,,,,,,,::;;;;,,..;;,, @@##..##;; ````'',, ''@@@@@@@@@@@@@@@@@@@@@@@@@@'' @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:: @@::,,,,,,,,,,,,.. ::.. ````........,,``,,`` @@'' `` ``::++ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@..,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:: @@::,,,,,,,,,,,,.. ::.. ````........,,``,,`` @@'' `` ``::++ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@..,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@## ##'',,,,,,,,,,,,,,.. ``;; ``.. ''`` ``'' ..@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ::@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@## ##'',,,,,,,,,,,,,,.. ``;; ``.. ''`` ``'' ..@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ::@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ''##,,,,,,,,,,,,,,,,.. .. ,,`` ++ ++@@@@@@@@@@@@@@@@@@@@@@@@@@''..``,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ''##,,,,,,,,,,,,,,,,.. .. ,,`` ++ ++@@@@@@@@@@@@@@@@@@@@@@@@@@''..``,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@`` ,,@@,,,,,,,,,,,,,,,,,,.. ++ ```` ..''..@@@@@@@@@@@@@@@@@@@@@@@@;;``####..``''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@`` ,,@@,,,,,,,,,,,,,,,,,,.. ++ ```` ..''..@@@@@@@@@@@@@@@@@@@@@@@@;;``####..``''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##++++##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:: ``@@;;,,,,,,,,,,,,,,,,,,.. ''`` ,,::::..;;..##@@@@@@@@@@@@@@@@##''....##@@@@@@''````''##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##++++##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:: ``@@;;,,,,,,,,,,,,,,,,,,.. ''`` ,,::::..;;..##@@@@@@@@@@@@@@@@##''....##@@@@@@''````''##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@''.. ``,,##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ++@@,,,,,,,,,,,,,,,,,,,,,,`` ;;,, .. ````,,,,:: ::,,''++@@@@@@@@''..`` ,,++@@@@@@@@@@@@@@++.. ``,,++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@''.. ``,,##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ++@@,,,,,,,,,,,,,,,,,,,,,,`` ;;,, .. ````,,,,:: ::,,''++@@@@@@@@''..`` ,,++@@@@@@@@@@@@@@++.. ``,,++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;; ````.... ``##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,, ..@@;;,,,,,,,,,,,,,,,,,,,,,,.. ;;:: ``;;''..``.. ,,'';;:: ::++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@''.. `````````` ``;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;; ````.... ``##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,, ..@@;;,,,,,,,,,,,,,,,,,,,,,,.. ;;:: ``;;''..``.. ,,'';;:: ::++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@''.. `````````` ``;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++`` ``''@@##++++++####:: ##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ##@@,,,,,,,,,,,,,,,,,,,,,,,,,,..``;;::``..::++++''##@@;;::.. ;;;;;; ````,,++:: :: ::''##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##++++++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++`` ``''@@##++++++####:: ##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ##@@,,,,,,,,,,,,,,,,,,,,,,,,,,..``;;::``..::++++''##@@;;::.. ;;;;;; ````,,++:: :: ::''##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##++++++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:: ``++##''''''''''''''''++'' ..@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;; ``@@++,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;''####::::::@@@@..`` ``;;;; ,,;;''++````.. ..,,..''::''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:: ``++##''''''''''''''''++'' ..@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;; ``@@++,,,,,,,,,,,,,,,,,,,,,,,,,,,,;;;;''####::::::@@@@..`` ``;;;; ,,;;''++````.. ..,,..''::''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.. ;;##'''''''''''';;;;''''''++.. @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ,,@@;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,''::,,++,,,,,,@@@@++ ..::++ ``..++;;.. .. ++..:: ;;``@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.. ;;##'''''''''''';;;;''''''++.. @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ,,@@;;,,,,,,,,,,,,,,,,,,,,,,,,,,,,''::,,++,,,,,,@@@@++ ..::++ ``..++;;.. .. ++..:: ;;``@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@`` ++'''''''';;;;;;;;;;;;;;;;;;'',, @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:: ''@@::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,++,,,,,,''@@@@@@`` ,, ::``##'' ,, ::::`` ,,,,::@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@`` ++'''''''';;;;;;;;;;;;;;;;;;'',, @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:: ''@@::,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,++,,,,,,''@@@@@@`` ,, ::``##'' ,, ::::`` ,,,,::@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,, ++++++'''';;;;;;;;;;;;;;;;;;;;;;,, @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@`` ++@@'',,,,,,,,,,,,,,,,,,;;''''''++++,,,,,,@@@@@@@@::..,,,,'':: '' ::::,, ..,,`` ## @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,, ++++++'''';;;;;;;;;;;;;;;;;;;;;;,, @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@`` ++@@'',,,,,,,,,,,,,,,,,,;;''''''++++,,,,,,@@@@@@@@::..,,,,'':: '' ::::,, ..,,`` ## @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@'' ++##'''';;;;;;;;;;;;;;;;;;;;;;;;''.. @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,, ;;@@##::,,,,,,,,,,,,,,,,;;::,,::,,,,,,,,@@@@@@@@@@``++.. ;; ,,,,::`` `````` ::..,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@'' ++##'''';;;;;;;;;;;;;;;;;;;;;;;;''.. @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,, ;;@@##::,,,,,,,,,,,,,,,,;;::,,::,,,,,,,,@@@@@@@@@@``++.. ;; ,,,,::`` `````` ::..,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@`` ++##'';;;;;;;;;;;;;;;;;;;;;;;;;;;;++````@@@@@@@@@@'',,,,::..``::@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;; ``##@@##'';;::;;;;''++::''::,,,,,,,,::@@@@@@@@@@## :: ::``'' ## @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@`` ++##'';;;;;;;;;;;;;;;;;;;;;;;;;;;;++````@@@@@@@@@@'',,,,::..``::@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;; ``##@@##'';;::;;;;''++::''::,,,,,,,,::@@@@@@@@@@## :: ::``'' ## @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@++ ;;##'''';;;;;;;;;;;;;;;;;;;;;;;;;;;;++ ``@@@@@@;; '',, ,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:: ::@@@@@@@@@@@@::,,,,,,##,,,,,,,,,,@@@@@@@@@@##``''::.. @@ ++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@++ ;;##'''';;;;;;;;;;;;;;;;;;;;;;;;;;;;++ ``@@@@@@;; '',, ,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:: ::@@@@@@@@@@@@::,,,,,,##,,,,,,,,,,@@@@@@@@@@##``''::.. @@ ++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@````##'''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;++ ;;..##``,,##``::@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@''`` ``````,,::,,,,,,,,,,##,,,,,,,,,,;;;;::`` ..`` ``;;++'' ++ ''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@````##'''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;++ ;;..##``,,##``::@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@''`` ``````,,::,,,,,,,,,,##,,,,,,,,,,;;;;::`` ..`` ``;;++'' ++ ''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@## ''++'';;;;++####++'''''';;;;;;;;;;;;;;'' ..````;;##..''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;; ,,;;,,,,,,,,,,++++,,,,,,,,,,,,..``..,,::`` ,,##'';;,,:: ::..''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@## ''++'';;;;++####++'''''';;;;;;;;;;;;;;'' ..````;;##..''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;; ,,;;,,,,,,,,,,++++,,,,,,,,,,,,..``..,,::`` ,,##'';;,,:: ::..''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@,,``##''::++####'''''''''';;;;;;;;;;;;;;;;'' ++ ;;'''' @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++,,`` ..++,,,,::##,,++::,,,,,,,,,,,,,,.. ++..,,;;,,::,, ++``++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@,,``##''::++####'''''''''';;;;;;;;;;;;;;;;'' ++ ;;'''' @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++,,`` ..++,,,,::##,,++::,,,,,,,,,,,,,,.. ++..,,;;,,::,, ++``++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ ,,##;;@@::##'''''''''';;;;;;;;;;;;;;;;;;''..++ ++++.. @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'' ..::,,##,,,,,,##,,,,,,,,,,,,.. ''.. '',,++ ..++ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ ,,##;;@@::##'''''''''';;;;;;;;;;;;;;;;;;''..++ ++++.. @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'' ..::,,##,,,,,,##,,,,,,,,,,,,.. ''.. '',,++ ..++ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ ;;++++``##'''';;'''';;;;;;;;;;;;;;;;;;;;;;''++,,''##`` ##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@## ::;;##,,,,,,,,'';;,,,,,,,,,,.. ''.. '',,`` ,,++ ''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##++''''::,,..,,::;;''++##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ ;;++++``##'''';;'''';;;;;;;;;;;;;;;;;;;;;;''++,,''##`` ##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@## ::;;##,,,,,,,,'';;,,,,,,,,,,.. ''.. '',,`` ,,++ ''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##++''''::,,..,,::;;''++##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@++ ,,++,,++++'''''''''';;;;;;;;;;;;;;;;;;;;;;++++;;''''`` ``..;;++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,, ++::,,,,,,,,,,##,,,,,,,,,,,, ##``..## ::::.. ::'' ,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'',,..`` ``,,''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@++ ,,++,,++++'''''''''';;;;;;;;;;;;;;;;;;;;;;++++;;''''`` ``..;;++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,, ++::,,,,,,,,,,##,,,,,,,,,,,, ##``..## ::::.. ::'' ,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'',,..`` ``,,''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@++ ..++``@@'''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;''##'';;@@`` ,,++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@## ``++::,,,,,,##::@@##;;::::,,.. ## ..@@++ ++....@@,, ,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:: ``;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@++ ..++``@@'''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;''##'';;@@`` ,,++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@## ``++::,,,,,,##::@@##;;::::,,.. ## ..@@++ ++....@@,, ,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:: ``;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@##@@## ..::,,++'''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;'';;'';;++@@@@@@@@@@@@++,, ``@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,, '',,++'',,,,,,,,;;++@@@@''`` ##````@@@@..,,''@@++ ``;;++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'' ``::''++######++;;::`` ::##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@##@@## ..::,,++'''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;'';;'';;++@@@@@@@@@@@@++,, ``@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,, '',,++'',,,,,,,,;;++@@@@''`` ##````@@@@..,,''@@++ ``;;++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'' ``::''++######++;;::`` ::##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@##;;@@@@@@ ....;;'''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'';;;;;;;;;;;;;;;;;;''##,, ++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##`` ''''::,,,,,,,,,,,,,,,,,,;;##:: ::++ ```` .. ;;@@@@@@@@@@@@@@@@@@@@@@@@''`` ,,''####++;;::,,,,,,,,::;;++##@@##'',,`` ..++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@##;;@@@@@@ ....;;'''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'';;;;;;;;;;;;;;;;;;''##,, ++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##`` ''''::,,,,,,,,,,,,,,,,,,;;##:: ::++ ```` .. ;;@@@@@@@@@@@@@@@@@@@@@@@@''`` ,,''####++;;::,,,,,,,,::;;++##@@##'',,`` ..++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@++``@@@@##@@ ``..'''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;++````@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@## ``'',,,,,,,,,,,,,,,,,,,,;;''''##++##.. ,,''++##++::..`` ``..,,;;;;.. ''@@@@@@@@@@@@@@@@@@##.. ``''##'',,............................,,;;++@@++,, ..##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@++``@@@@##@@ ``..'''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;++````@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@## ``'',,,,,,,,,,,,,,,,,,,,;;''''##++##.. ,,''++##++::..`` ``..,,;;;;.. ''@@@@@@@@@@@@@@@@@@##.. ``''##'',,............................,,;;++@@++,, ..##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@;;..++::``@@@@;;``..,,++'''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ++,,,,,,,,,,,,,,::##'',,,,,,,,,,'';;##;;;;;;;;;;;;''++####++++'';;;;##,,``@@@@@@@@@@@@@@@@:: ``##++,,..........................................;;@@@@:: ..##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@;;..++::``@@@@;;``..,,++'''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ++,,,,,,,,,,,,,,::##'',,,,,,,,,,'';;##;;;;;;;;;;;;''++####++++'';;;;##,,``@@@@@@@@@@@@@@@@:: ``##++,,..........................................;;@@@@:: ..##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@''::``::,,++@@@@@@ ..``@@'''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++::..```` `` ``##,,,,,,,,,,##;;,,,,,,,,,,,,``,,'';;;;;;;;;;;;;;;;'''';;;;;;;;;;;;;;++ ,,;;''##@@@@@@,, ,,@@,,..................................................::@@@@.. ``##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@''::``::,,++@@@@@@ ..``@@'''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++::..```` `` ``##,,,,,,,,,,##;;,,,,,,,,,,,,``,,'';;;;;;;;;;;;;;;;'''';;;;;;;;;;;;;;++ ,,;;''##@@@@@@,, ,,@@,,..................................................::@@@@.. ``##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@##,,'' ;; @@@@@@@@'' ''..@@'''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;''.. ''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'',,`` ``,,::;;;;++######;;,,::++;;,,,,,,,,..`` ..,,::++;;;;;;;;''++####++;;;;;;;;;;;;;;++ `` ++;;..........................................................::@@++`` ,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@##,,'' ;; @@@@@@@@'' ''..@@'''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;''.. ''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'',,`` ``,,::;;;;++######;;,,::++;;,,,,,,,,..`` ..,,::++;;;;;;;;''++####++;;;;;;;;;;;;;;++ `` ++;;..........................................................::@@++`` ,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@``##..::..,,@@@@@@@@@@,,@@,,,,##'''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;## ++@@@@@@@@@@@@@@@@@@@@@@@@''.. ``::++@@@@##++''''''''''''++;;++,,,,,,,,,,,,`` ..,,::''''''''''++####'';;;;;;;;;;;;;;;;;;;;++ ``++..................................................................''@@:: ``##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@``##..::..,,@@@@@@@@@@,,@@,,,,##'''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;## ++@@@@@@@@@@@@@@@@@@@@@@@@''.. ``::++@@@@##++''''''''''''++;;++,,,,,,,,,,,,`` ..,,::''''''''''++####'';;;;;;;;;;;;;;;;;;;;++ ``++..................................................................''@@:: ``##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@++::## ##``;;@@@@@@@@@@@@@@@@ ''++'''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:: @@@@@@@@@@@@@@@@@@@@@@''`` ,,@@@@##'';;;;;;;;;;''''''''''''++,,,,,,,,,,,,,,,,,,''##::,,,,;;####;;;;;;;;;;;;;;;;''++####@@@@@@@@@@@@@@++'',,..`` ''......................................................................,,@@## ``##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@++::## ##``;;@@@@@@@@@@@@@@@@ ''++'''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:: @@@@@@@@@@@@@@@@@@@@@@''`` ,,@@@@##'';;;;;;;;;;''''''''''''++,,,,,,,,,,,,,,,,,,''##::,,,,;;####;;;;;;;;;;;;;;;;''++####@@@@@@@@@@@@@@++'',,..`` ''......................................................................,,@@## ``##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@::''## @@``..@@@@@@@@@@@@@@@@;;``@@'''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;++`` ``@@@@@@@@@@@@@@@@@@;;`` ..@@@@'';;;;;;;;;;;;;;;;;;''''''''''##::,,,,,,,,,,,,;;++::,,,,,,##@@;;;;;;;;;;''++##@@@@@@##++;;::::::::::::;;''##@@@@@@@@##++,,........................................................................@@++ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@::''## @@``..@@@@@@@@@@@@@@@@;;``@@'''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;++`` ``@@@@@@@@@@@@@@@@@@;;`` ..@@@@'';;;;;;;;;;;;;;;;;;''''''''''##::,,,,,,,,,,,,;;++::,,,,,,##@@;;;;;;;;;;''++##@@@@@@##++;;::::::::::::;;''##@@@@@@@@##++,,........................................................................@@++ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@``++## ##.. @@@@@@@@@@@@@@@@## ''++'''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;++ ..@@@@@@##++''::`` ,,####;;;;;;;;;;;;;;;;;;;;;;;;''''''''''''++,,,,,,,,'''',,,,,,;;##++;;;;;;''######++;;,,......................................,,;;++@@@@++::,,................................................................++##`` ``##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@``++## ##.. @@@@@@@@@@@@@@@@## ''++'''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;++ ..@@@@@@##++''::`` ,,####;;;;;;;;;;;;;;;;;;;;;;;;''''''''''''++,,,,,,,,'''',,,,,,;;##++;;;;;;''######++;;,,......................................,,;;++@@@@++::,,................................................................++##`` ``##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@``++++``++'' ..@@@@@@@@@@@@@@@@ ..##'''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;++`` `` ::##++;;;;;;;;;;;;;;;;;;;;;;;;;;;;''''''''''''##,,,,::'',,,,,,++@@++;;;;''##@@++::..........................................................::++@@##'',,............................................................++@@ ``##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@``++++``++'' ..@@@@@@@@@@@@@@@@ ..##'''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;++`` `` ::##++;;;;;;;;;;;;;;;;;;;;;;;;;;;;''''''''''''##,,,,::'',,,,,,++@@++;;;;''##@@++::..........................................................::++@@##'',,............................................................++@@ ``##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@``##'';;++@@`` ;;@@@@@@@@@@@@## ..++'''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;++ ;;@@##;;;;;;;;;;;;;;;;;;;;;;;;;;''''''''''''''''''++##,,;;,,,,::@@++;;;;++@@@@;;``....................................................................,,++@@@@::..........................................................#### ..@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@``##'';;++@@`` ;;@@@@@@@@@@@@## ..++'''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;++ ;;@@##;;;;;;;;;;;;;;;;;;;;;;;;;;''''''''''''''''''++##,,;;,,,,::@@++;;;;++@@@@;;``....................................................................,,++@@@@::..........................................................#### ..@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@``##''++++''@@`` ''@@@@@@@@@@## ++'''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;@@''::,,,,::''####++;;;;;;;;;;;;;;;;;;;;;;;;;;''''''''''''''''''''''''''@@,,,,''@@'';;++@@##::............................................................................``..;;@@@@;;........................................................@@'' ++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@``##''++++''@@`` ''@@@@@@@@@@## ++'''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;@@''::,,,,::''####++;;;;;;;;;;;;;;;;;;;;;;;;;;''''''''''''''''''''''''''@@,,,,''@@'';;++@@##::............................................................................``..;;@@@@;;........................................................@@'' ++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@``##''''''''''##::````,,::;;....++++'''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;''''''''''++++''''''''''''''''##;;##++;;++@@'',,........................................................................................++@@@@''......................................................@@,, ``@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@``##''''''''''##::````,,::;;....++++'''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;'''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;''''''''''++++''''''''''''''''##;;##++;;++@@'',,........................................................................................++@@@@''......................................................@@,, ``@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@:: ++''''''''''''++####++''++####'''''''''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;++++''''''##++''''''''''''''''''''####''''@@''........................................................................................,,##@@@@@@@@++@@;;..................................................::@@ ;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@:: ++''''''''''''++####++''++####'''''''''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;++++''''''##++''''''''''''''''''''####''''@@''........................................................................................,,##@@@@@@@@++@@;;..................................................::@@ ;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@````::'''''''''''''''''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;@@''''''''##''''''''''''''''''''++@@''''##@@,,........................................................................................;;@@@@@@@@,,....,,@@@@;;................................................##'' ``@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@````::'''''''''''''''''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;@@''''''''##''''''''''''''''''''++@@''''##@@,,........................................................................................;;@@@@@@@@,,....,,@@@@;;................................................##'' ``@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@ ::``++'''''''''''''''''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;@@''''''''##''''''''''''''''''''####''''##++,,........................................................................................''@@@@@@;;....,,++@@@@@@@@++..............................................,,@@`` ++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@ ::``++'''''''''''''''''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;@@''''''''##''''''''''''''''''''####''''##++,,........................................................................................''@@@@@@;;....,,++@@@@@@@@++..............................................,,@@`` ++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@ ++..;;'''''''''''''''''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;@@''''''++''''''''''''''''++##++''''####;;::::......................................................................................##@@@@##....,,''..####;;....''@@''............................................++++ ..@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@ ++..;;'''''''''''''''''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;@@''''''++''''''''''''''''++##++''''####;;::::......................................................................................##@@@@##....,,''..####;;....''@@''............................................++++ ..@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@ ::++::'''''''''''''''''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;''##@@####++++++++##@@##++;;;;;;''##++::::::::,,....................................................................................@@@@++....##@@@@##..............++##,,..........................................@@`` ##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@ ::++::'''''''''''''''''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;''##@@####++++++++##@@##++;;;;;;''##++::::::::,,....................................................................................@@@@++....##@@@@##..............++##,,..........................................@@`` ##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@:: ##''++++'''''''''''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;''''@@''::::::::::::....................................................................................@@##..;;@@@@@@''....,,####........;;@@;;``......................................##;; ;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@:: ##''++++'''''''''''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;''''@@''::::::::::::....................................................................................@@##..;;@@@@@@''....,,####........;;@@;;``......................................##;; ;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@``..##'''''''''''''''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;''''''@@;;::::::::::::::........................................................................................''@@@@@@,,....''@@@@''....``....::@@++......................................::## ::@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@``..##'''''''''''''''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;''''''@@;;::::::::::::::........................................................................................''@@@@@@,,....''@@@@''....``....::@@++......................................::## ::@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@##``..##'''''''''''''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;''''''''''''##;;::::::::::::::::,,....................................................................................++@@@@##....''@@@@##,,................++##......................................@@`` ``@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@##``..##'''''''''''''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;''''''''''''##;;::::::::::::::::,,....................................................................................++@@@@##....''@@@@##,,................++##......................................@@`` ``@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@## ``++++'''''''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;''''''''''''''''''''''''''''@@::::::::::::::::::::::..................................................................................++@@@@''....##@@@@''......................;;@@,,..................................++:: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@## ``++++'''''''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;''''''''''''''''''''''''''''@@::::::::::::::::::::::..................................................................................++@@@@''....##@@@@''......................;;@@,,..................................++:: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@++ ,,@@##'''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;''''''''''++################++''''''++;;::::::::::::::::::::::,,..............................................................................;;@@@@++......##@@++..........................''@@,,................................;;## ##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@++ ,,@@##'''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;''''''''''++################++''''''++;;::::::::::::::::::::::,,..............................................................................;;@@@@++......##@@++..........................''@@,,................................;;## ##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@::`` ``::####++'''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;''''''++++@@@@@@@@@@@@########@@@@@@@@@@@@##;;::::::::::::::::::::::::..............................................................................##@@##............``............................;;@@,,..............................,,@@ ++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@::`` ``::####++'''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;''''''++++@@@@@@@@@@@@########@@@@@@@@@@@@##;;::::::::::::::::::::::::..............................................................................##@@##............``............................;;@@,,..............................,,@@ ++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@'';;,,`` ..''++'''''''''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;''''''''##@@@@@@##'';;::::::::::::::::....,,;;++##@@##'';;::::::::::::::::::::..............................................................................++..............................................::@@,,..............................@@`` ::@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@'';;,,`` ..''++'''''''''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;''''''''##@@@@@@##'';;::::::::::::::::....,,;;++##@@##'';;::::::::::::::::::::..............................................................................++..............................................::@@,,..............................@@`` ::@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@##`` ::'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;''''''''##@@@@##;;::::::::::::::::::::::..............,,''@@@@++::::::::::::::::::,,..............................................................................................................................;;@@..............................##.. ::@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@##`` ::'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''';;;;;;;;;;;;;;''''''''##@@@@##;;::::::::::::::::::::::..............,,''@@@@++::::::::::::::::::,,..............................................................................................................................;;@@..............................##.. ::@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@## ##''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''++@@@@++::::::::::::::::::::::::::,,....................;;@@@@''::::::::::::::::................................................................................................................................####............................##:: ,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@## ##''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''++@@@@++::::::::::::::::::::::::::,,....................;;@@@@''::::::::::::::::................................................................................................................................####............................##:: ,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@## @@''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''##@@##;;::::::::::::::::::::::::::::..........................;;@@##::::::::::::::::................................................................................................................................@@;;..........................'''' ,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@## @@''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''##@@##;;::::::::::::::::::::::::::::..........................;;@@##::::::::::::::::................................................................................................................................@@;;..........................'''' ,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@.. ++''''''''''''''++########++''''''''''''''''''''''''''''''''''''''''''''''''''''''++@@@@''::::::::::::::::::::::::::::::................................++@@;;::::::::::::::..............................................................................................................................,,@@,,........................;;## ::@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@.. ++''''''''''''''++########++''''''''''''''''''''''''''''''''''''''''''''''''''''''++@@@@''::::::::::::::::::::::::::::::................................++@@;;::::::::::::::..............................................................................................................................,,@@,,........................;;## ::@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@ ..##''''''''''++##.. ``::@@''''''''''''''''''''''''''''''''''''''''''''''''''++@@@@::::::::::::::::::::::::::::::::,,..................................;;@@++::::::::::::,,..............................................................................................................................''++........................''## ,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@ ..##''''''''''++##.. ``::@@''''''''''''''''''''''''''''''''''''''''''''''''''++@@@@::::::::::::::::::::::::::::::::,,..................................;;@@++::::::::::::,,..............................................................................................................................''++........................''## ,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@;; ''''''''++++++;; ``@@++''''''''''''''''''''''''''''''''''''''''''''++@@##::::::::::::::::::::::::::::::::::......................................::@@''::::::::::::::..............................................................................................................................@@,,..................,,::''## ,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@;; ''''''''++++++;; ``@@++''''''''''''''''''''''''''''''''''''''''''''++@@##::::::::::::::::::::::::::::::::::......................................::@@''::::::::::::::..............................................................................................................................@@,,..................,,::''## ,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@;; ++''''##++'''' ,,##@@##.. ..@@''''''''''''''''''''''''''''''''''''''''''''@@@@::::::::::::::::::::::::::::::::::::..........................................@@''::::::::::::::............................................................................................................................''++,,,,..........,,::::::''@@ ,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@;; ++''''##++'''' ,,##@@##.. ..@@''''''''''''''''''''''''''''''''''''''''''''@@@@::::::::::::::::::::::::::::::::::::..........................................@@''::::::::::::::............................................................................................................................''++,,,,..........,,::::::''@@ ,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@## ++''++,,++##`` ;;@@@@@@@@@@''`` ::@@''''''''''''''''''''''''''''''''''''''''@@@@::::::::::::::::::::::::::::::::::::::..........................................,,##''::::::::::::,,..........................................................................................................................,,@@::::::::::::::::::::::''## ,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@## ++''++,,++##`` ;;@@@@@@@@@@''`` ::@@''''''''''''''''''''''''''''''''''''''''@@@@::::::::::::::::::::::::::::::::::::::..........................................,,##''::::::::::::,,..........................................................................................................................,,@@::::::::::::::::::::::''## ,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@``,,++++ #### ``@@@@@@@@@@@@## ;;@@++''''''''''''''''''''''''''''''''''##@@::::::::::::::::::::::::::::::::::::::::............................................,,@@;;::::::::::::::..........................................................................................................................##;;::::::::::::::::::::''++ ,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@``,,++++ #### ``@@@@@@@@@@@@## ;;@@++''''''''''''''''''''''''''''''''''##@@::::::::::::::::::::::::::::::::::::::::............................................,,@@;;::::::::::::::..........................................................................................................................##;;::::::::::::::::::::''++ ,,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@++ ##'' ..::``,,@@@@@@@@@@@@@@@@`` ;;@@##''''''''''''''''''''''''''''''''@@''::::::::::::::::::::::::::::::::::::::::..............................................;;@@::::::::::::::::,,......................................................................................................................++''::::::::::::::::::::++'' ;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@++ ##'' ..::``,,@@@@@@@@@@@@@@@@`` ;;@@##''''''''''''''''''''''''''''''''@@''::::::::::::::::::::::::::::::::::::::::..............................................;;@@::::::::::::::::,,......................................................................................................................++''::::::::::::::::::::++'' ;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@;;``,,;;..``::##@@@@@@@@@@@@@@@@@@@@:: ..##@@##''''''''''''''''''''''''''@@##::::::::::::::::::::::::::::::::::::::::::................................................++''::::::::::::::::,,....................................................................................................................;;@@::::::::::::::::::::##:: ''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@;;``,,;;..``::##@@@@@@@@@@@@@@@@@@@@:: ..##@@##''''''''''''''''''''''''''@@##::::::::::::::::::::::::::::::::::::::::::................................................++''::::::::::::::::,,....................................................................................................................;;@@::::::::::::::::::::##:: ''@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@####++@@@@@@@@@@@@@@@@@@@@@@@@@@@@'' ..++@@@@##++''''''''''''''''++@@''::::::::::::::::::::::::::::::::::::::::::::................................................@@::::::::::::::::::::,,................................................................................................................,,@@::::::::::::::::::::@@.. ##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@####++@@@@@@@@@@@@@@@@@@@@@@@@@@@@'' ..++@@@@##++''''''''''''''''++@@''::::::::::::::::::::::::::::::::::::::::::::................................................@@::::::::::::::::::::,,................................................................................................................,,@@::::::::::::::::::::@@.. ##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++ ,,##@@@@@@##++''''''''@@@@::::::::::::::::::::::::::::::::::::::::::::::................................................;;''::::::::::::::::::::::................................................................................................................@@::::::::::::::::::;;@@ ``@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++ ,,##@@@@@@##++''''''''@@@@::::::::::::::::::::::::::::::::::::::::::::::................................................;;''::::::::::::::::::::::................................................................................................................@@::::::::::::::::::;;@@ ``@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;;`` ,,''##@@@@@@@@@@@@''::::::::::::::::::::::::::::::::::::::::::::::::................................................##::::::::::::::::::::::::,,............................................................................................................@@::::::::::::::::::''## ..@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;;`` ,,''##@@@@@@@@@@@@''::::::::::::::::::::::::::::::::::::::::::::::::................................................##::::::::::::::::::::::::,,............................................................................................................@@::::::::::::::::::''## ..@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++::`` ````::@@::::::::::::::::::::::::::::::::::::::::::::::::::,,..............................................'';;::::::::::::::::::::::::::::....................................................................................................,,::@@::::::::::::::::::##,, ;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++::`` ````::@@::::::::::::::::::::::::::::::::::::::::::::::::::,,..............................................'';;::::::::::::::::::::::::::::....................................................................................................,,::@@::::::::::::::::::##,, ;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++;;,,.. ''@@::::::::::::::::::::::::::::::::::::::::::::::::::::..............................................,,++::::::::::::::::::::::::::::::::::,,......................................................................................,,::::::::@@::::::::::::::::;;## ##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++;;,,.. ''@@::::::::::::::::::::::::::::::::::::::::::::::::::::..............................................,,++::::::::::::::::::::::::::::::::::,,......................................................................................,,::::::::@@::::::::::::::::;;## ##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.. ##++::::::::::::::::::::::::::::::::::::::::::::::::::::::,,............................................@@::::::::::::::::::::::::::::::::::::::::::::,,,,..................................................................,,::::::::::::::::@@::::::::::::::::##;; ::@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.. ##++::::::::::::::::::::::::::::::::::::::::::::::::::::::,,............................................@@::::::::::::::::::::::::::::::::::::::::::::,,,,..................................................................,,::::::::::::::::@@::::::::::::::::##;; ::@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ]] ================================================ FILE: Assets/Mods/Examples 2/Lua/Events/Secret/nothing.lua.meta ================================================ fileFormatVersion: 2 guid: ffedc9db802602747a1d14e142f224e2 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Events/Secret.meta ================================================ fileFormatVersion: 2 guid: 9b244755816c8304daba520724512413 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Events/punderTest1.lua ================================================ function EventPage0() if GetRealGlobal("CYFInternalCross2") then Event.Remove(Event.GetName()) end end function EventPage1() local spriteTest = Event.GetSprite(Event.GetName()) local playerpos = Event.GetPosition("Player") local eventpos = Event.GetPosition(Event.GetName()) local dir local diff dir, diff = calcDirAndDiff(eventpos, playerpos) local text = "" local mugshot = "Punder/normal" if Event.GetAnimHeader("Player") == "MK" then text = "Hello there little buddy!" mugshot = "Punder/veryHappy" elseif Event.GetAnimHeader("Player") == "Chara" then local tempPunderX = Event.GetPosition(Event.GetName())[1] Event.MoveToPoint(Event.GetName(), diff[1] > 0 and eventpos[1] + 60 or eventpos[1] - 60, eventpos[2]) eventpos = Event.GetPosition(Event.GetName()) if tempPunderX == eventpos[1] then text = "What are you doing? [w:25]\nBack off!" else text = "Hey...[w:25]you look kinda menacing...[w:25]\nBe good, [w:15]alright?" end mugshot = "Punder/intimidated" elseif Event.GetAnimHeader("Player") == "Asriel" then text = "Oh hi kid! [w:25]You're cute, [w:15]you know that?" mugshot = "Punder/veryHappy" else text = "Hey, [w:15]how's it going?" end dir, diff = calcDirAndDiff(Event.GetPosition(Event.GetName()), Event.GetPosition("Player")) Event.SetDirection(Event.GetName(), dir) General.SetDialog({"[voice:punderbolt]" .. text}, true, {mugshot}) end function calcDirAndDiff(vect1, vect2) local diff = { vect1[1] - vect2[1], vect1[2] - vect2[2] } local angle = (math.atan2(diff[1], diff[2]) + (math.pi*2)) % (math.pi*2) local dir = 2 if angle > math.pi/4 and angle <= 3*math.pi/4 then dir = 4 elseif angle > 3*math.pi/4 and angle <= 5*math.pi/4 then dir = 8 elseif angle > 5*math.pi/4 and angle <= 7*math.pi/4 then dir = 6 end return dir, diff end ================================================ FILE: Assets/Mods/Examples 2/Lua/Events/punderTest1.lua.meta ================================================ fileFormatVersion: 2 guid: 2a213a61c71996a44b69620bad335b76 timeCreated: 1494972091 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Events.meta ================================================ fileFormatVersion: 2 guid: 08eb698274edd2f48a546b16cab8c2f1 folderAsset: yes timeCreated: 1489288473 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Libraries/randomvoice.lua ================================================ -- A library to add random voices to every letter in a dialogue. -- First, we make a new table for our random voices and our module. local voices = {} -- This will contain the voices we're going to use. Only accessible from within this library. local randomvoicer = {} -- The actual module. -- You can change your voices from your own scripts with this. See the actual encounter for usage. function randomvoicer.setvoices(table) voices = table end -- This randomizes all lines in a table. function randomvoicer.randomizetable(table) for i=1,#table do table[i] = randomvoicer.randomizeline(table[i]) end return table end -- This function will take care of inserting a random voice in front of every letter. function randomvoicer.randomizeline(text) local skipping = false -- We will use this variable to stop inserting voices when we find [ and continue when we find ], otherwise we'll screw up commands. -- First, we can just skip the whole thing if there aren't any voices. if #voices == 0 then return text end -- Now we can go over every letter in the text, and add a voice to it. local temptext = "" for i=1,#text do local nextletter = text:sub(i,i) -- Get the next letter. if nextletter == "[" then -- Start skipping text when we encounter a command. skipping = true elseif nextletter == "]" then -- We can stop skipping again when the command is over. skipping = false elseif skipping == false then -- If we aren't skipping, we can insert random voices. temptext = temptext .. randomvoicer.voice() -- Adds a random voice to the temporary string. end temptext = temptext .. nextletter -- In all cases, we should include the next letter of the string. end return temptext -- Don't forget to return the modified text. end -- This returns a random voice command depending on what voices you have set here. function randomvoicer.voice() if #voices == 0 then return "" end return "[voice:" .. voices[math.random(#voices)] .. "]" end return randomvoicer ================================================ FILE: Assets/Mods/Examples 2/Lua/Libraries/randomvoice.lua.meta ================================================ fileFormatVersion: 2 guid: add04bca1030f0b439ea2702a7d9d7dd timeCreated: 1487174279 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Libraries.meta ================================================ fileFormatVersion: 2 guid: a4ae152e8161688478d956b440dd23d7 folderAsset: yes timeCreated: 1487174275 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Monsters/bullet_testing_poseur.lua ================================================ comments = {"Smells like the work\rof an enemy stand.", "Poseur is posing like his\rlife depends on it.", "Poseur's limbs shouldn't be\rmoving in this way."} commands = {"Regular", "Cyan", "Orange", "Green", "Combined"} randomdialogue = {"Check\nit\nout."} sprite = "poseur" --Always PNG. Extension is added automatically. name = "Poseur" hp = 60 atk = 4 def = 1 check = "Do not insult its hair." dialogbubble = "right" -- See documentation for what bubbles you have available. canspare = false xp = 10 gold = 20 posecount = 0 function HandleAttack(attackstatus) if attackstatus == -1 then currentdialogue = {"Do\nno\nharm."} else if hp > 30 then currentdialogue = {"You're\nstrong!"} else currentdialogue = {"Too\nstrong\n..."} end end end function HandleCustomCommand(command) SetGlobal("wavetype", command) if command == "REGULAR" then BattleDialog({"The default bullettest_bouncy."}) elseif command == "CYAN" then BattleDialog({"Cyan bullets. Stand still\rto avoid getting hit."}) elseif command == "ORANGE" then BattleDialog({"Orange bullets. Move through\rto avoid getting hit."}) elseif command == "GREEN" then BattleDialog({"Green bullets.\rThey heal you for 1 HP."}) elseif command == "COMBINED" then BattleDialog({"All behaviours combined.\nAn example of how to\rachieve this."}) end end ================================================ FILE: Assets/Mods/Examples 2/Lua/Monsters/bullet_testing_poseur.lua.meta ================================================ fileFormatVersion: 2 guid: 9790980c6dc2852438817c73b7e7aa2e timeCreated: 1487174279 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Monsters/posette.lua ================================================ comments = {"Smells like stars and platinum.", "Posette is standing there quietly.", "Posette is flexing."} commands = {"Pose", "Stand", "Insult"} randomdialogue = {"Gimme\na\nbreak.", "...", "Ora\nOra\nOra\nOra"} sprite = "posette" --Always PNG. Extension is added automatically. name = "Posette" hp = 60 atk = 4 def = 2 check = "The next in a long line of\rrespected mannequins." dialogbubble = "right" -- See documentation for what bubbles you have available. xp = 90 gold = 100 this_must_be_the_work_of_an_enemy_stand = 0 -- Happens after the slash animation but before function HandleAttack(attackstatus) if attackstatus == -1 then currentdialogue = {"Weak."} else if hp > 30 then currentdialogue = {"I felt\nthat."} else currentdialogue = {"Now\nI'm\nangry."} end end end -- This handles the commands; all-caps versions of the commands list you have above. function HandleCustomCommand(command) if command == "POSE" then currentdialogue = {"It's\nalright."} BattleDialog({"You struck your best pose,[w:7]\rbut Posette remained unimpressed."}) elseif command == "STAND" then if this_must_be_the_work_of_an_enemy_stand == 0 then currentdialogue = {"Stand-\noff?\nAlright."} BattleDialog({"You just kind of stand there."}) elseif this_must_be_the_work_of_an_enemy_stand == 1 then currentdialogue = {"Agh..."} BattleDialog({"Your standing intensifies."}) else canspare = true table.insert(comments, "There's still a faint rumbling.") currentdialogue = {"I give\nup."} BattleDialog({"You stand there intently.\nYou hear a faint rumbling."}) end this_must_be_the_work_of_an_enemy_stand = this_must_be_the_work_of_an_enemy_stand + 1 elseif command == "INSULT" then currentdialogue = {"Awful."} BattleDialog({"You make a scathing remark about\rPosette's pose."}) end end ================================================ FILE: Assets/Mods/Examples 2/Lua/Monsters/posette.lua.meta ================================================ fileFormatVersion: 2 guid: 43a8be65b170aa5449c399e1315299d8 timeCreated: 1487174277 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Monsters/poseur.lua ================================================ -- A basic monster script skeleton you can copy and modify for your own creations. comments = {"Smells like the work\rof an enemy stand.", "Poseur is posing like his\rlife depends on it.", "Poseur's limbs shouldn't be\rmoving in this way."} commands = {"Pose", "Stand", "Insult"} randomdialogue = {"Check\nit\nout."} sprite = "poseur" --Always PNG. Extension is added automatically. name = "Poseur" hp = 60 atk = 4 def = 1 check = "Do not insult its hair." dialogbubble = "right" -- See documentation for what bubbles you have available. canspare = false xp = 70 gold = 80 posecount = 0 function HandleAttack(attackstatus) if attackstatus == -1 then currentdialogue = {"Do\nno\nharm."} else if hp > 30 then currentdialogue = {"You're\nstrong!"} else currentdialogue = {"Too\nstrong\n..."} end end end function HandleCustomCommand(command) if command == "POSE" then if posecount == 0 then currentdialogue = {"Not\nbad."} BattleDialog({"You posed dramatically."}) elseif posecount == 1 then currentdialogue = {"Not\nbad\nat\nall...!"} BattleDialog({"You posed even more dramatically."}) else canspare = true table.insert(comments, "Poseur is impressed by your\rposing power.") currentdialogue = {"That's\nit...!"} BattleDialog({"You posed so dramatically,\ryour anatomy became\rincorrect."}) end posecount = posecount + 1 elseif command == "STAND" then currentdialogue = {"What's\nthe\nhold-up?"} BattleDialog({"You just kind of stand there."}) elseif command == "INSULT" then currentdialogue = {"But\nI don't\nhave\nhair."} BattleDialog({"You make a scathing remark about\rPoseur's hairstyle."}) end end ================================================ FILE: Assets/Mods/Examples 2/Lua/Monsters/poseur.lua.meta ================================================ fileFormatVersion: 2 guid: cd15ef84912db3e49957f749495bbbe5 timeCreated: 1487174280 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Monsters/poseur2.lua ================================================ -- A basic monster script skeleton you can copy and modify for your own creations. comments = {"You should check the path\nExamples/Sprites/UI/Fonts !"} commands = {"Pose", "Stand", "Insult"} randomdialogue = {"Check\nit\nout\nù-ù"} sprite = "poseur" --Always PNG. Extension is added automatically. name = "Poseur" hp = 60 atk = 4 def = 1 check = "Do not insult its hair." dialogbubble = "right" -- See documentation for what bubbles you have available. canspare = false xp = 50 gold = 60 posecount = 0 function HandleAttack(attackstatus) if attackstatus == -1 then currentdialogue = {"Do\nno\nharm."} else if hp > 30 then currentdialogue = {"You're\nstrong!"} else currentdialogue = {"Too\nstrong\n..."} end end end function HandleCustomCommand(command) if command == "POSE" then if posecount == 0 then currentdialogue = {"Not\nbad."} BattleDialog({"You posed dramatically."}) elseif posecount == 1 then currentdialogue = {"Not\nbad\nat\nall...!"} BattleDialog({"You posed even more dramatically."}) else canspare = true table.insert(comments, "Poseur is impressed by your\rposing power.") currentdialogue = {"That's\nit...!"} BattleDialog({"You posed so dramatically,\ryour anatomy became\rincorrect."}) end posecount = posecount + 1 elseif command == "STAND" then currentdialogue = {"What's\nthe\nhold-up?"} BattleDialog({"You just kind of stand there."}) elseif command == "INSULT" then currentdialogue = {"But\nI don't\nhave\nhair."} BattleDialog({"You make a scathing remark about\rPoseur's hairstyle."}) end end ================================================ FILE: Assets/Mods/Examples 2/Lua/Monsters/poseur2.lua.meta ================================================ fileFormatVersion: 2 guid: c6d2afdc0a8d5d4409a801c34111f1ab timeCreated: 1487174280 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Monsters/sans.lua ================================================ -- A basic monster script skeleton you can copy and modify for your own creations. comments = {"Smells like 'dog.", "Looking good.", "Is that ketchup?"} commands = {"Act 1", "Act 2", "Act 3"} randomdialogue = {"[font:sans]..."} sprite = "empty" --Always PNG. Extension is added automatically. name = "Skeleton" hp = 100 atk = 1 def = 1 check = "Check message goes here." dialogbubble = "rightwideminus" -- See documentation for what bubbles you have available. cancheck = true canspare = false xp = 30 gold = 40 -- Happens after the slash animation but before function HandleAttack(attackstatus) if attackstatus == -1 then -- player pressed fight but didn't press Z afterwards else -- player did actually attack end end -- This handles the commands; all-caps versions of the commands list you have above. function HandleCustomCommand(command) if command == "ACT 1" then currentdialogue = {"Selected\nAct 1."} elseif command == "ACT 2" then currentdialogue = {"Selected\nAct 2."} elseif command == "ACT 3" then currentdialogue = {"Selected\nAct 3."} end currentdialogue = {"[font:sans]" .. currentdialogue[1]} BattleDialog({"You selected " .. command .. "."}) end ================================================ FILE: Assets/Mods/Examples 2/Lua/Monsters/sans.lua.meta ================================================ fileFormatVersion: 2 guid: f3b65a4092257864fb172af6160b3b7a timeCreated: 1487174281 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Monsters.meta ================================================ fileFormatVersion: 2 guid: 10ffcd9944759964ab9cebb079be474b folderAsset: yes timeCreated: 1487174274 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Shops/Dummy.lua ================================================ returnscene = "test" returnpos = {347, 769} returndir = 2 music = "mus_shop" buylist = { { "Starfait", "Testing Dog", "Empty Gun", "Cowboy Hat" }, { "Delicious!", "Barks a lot.", "It's empty,\nbut still\npacks a\npunch!", "Gives off\nfar west\nvibes." }, { -1, 50, 100, 100 } } if GetRealGlobal("OWShopDogBought") then buylist[3][2] = 0 end if GetRealGlobal("OWShopGunBought") then buylist[3][3] = 0 end if GetRealGlobal("OWShopHatBought") then buylist[3][4] = 0 end talklist = { { "Job", "Hobbies", "Threaten", "Sell?" }, { { "Me?", "I'm just a shopkeeper." }, "Just a shopkeeper.", { "Threats? I'm not impressed, I'm just a shopkeeper." }, { "So you have items to sell?", "I guess some of them could be useful to me...", "Alright, I'll see what you have next time you want to sell something to me!" } } } maintalk = "Hello there![w:10]\nGlad to meet you,[w:5] I'm just a shopkeeper who lives out of bounds." buytalk = "Want to look\nat my wares?\nI'm just a\nshopkeeper." selltalk = { "Sorry, but we're not a pawn shop here, I'm just a shopkeeper.", "If you want to sell items you can go to the Temmie Village, Temmies love to collect items.", "Where is it you say?", "[waitall:5]...[waitall:1]I don't know!" } selltalk2 = { "Get out with your junk!" } talktalk = "So you want\nto talk? Ok,\nI'm just a\nshopkeeper." exittalk = { "Have a good day, I'm a shopkeeper." } frame = 0 sellTried = false sold = false canSell = false acted = false function Start() background.Set("Overworld/DummyBackground") end function EnterBuy() if not acted then buytalk = "Want to look\nat my wares?\nI'm just a\nshopkeeper." else acted = false end end function EnterSell() if not canSell then if not sellTried then Interrupt(selltalk, "MENU") sellTried = true else Interrupt(selltalk2, "MENU") end end end function EnterTalk() end function EnterMenu() end function EnterExit() end function OnInterrupt(nextState) end function SuccessBuy(item) acted = true sold = true buytalk = "Thanks for\nthe purchase!\nI'm just a\nshopkeeper." if item == "Testing Dog" then buylist[3][2] = 0 SetRealGlobal("OWShopDogBought", true) elseif item == "Empty Gun" then buylist[3][3] = 0 SetRealGlobal("OWShopGunBought", true) elseif item == "Cowboy Hat" then buylist[3][4] = 0 SetRealGlobal("OWShopHatBought", true) end end function FailBuy(buyerror) acted = true if buyerror == "full" then buytalk = "You can't\ncarry any\nmore items..." elseif buyerror == "gold" then buytalk = "You don't\nhave enough\nmoney to\nbuy this!" end end function ReturnBuy() if sold then maintalk = "Thanks again for\rthe purchase! I'm\rjust a shopkeeper." else maintalk = "What else? I'm\rjust a shopkeeper." end end function SuccessSell(item) end function ReturnSell() end function SuccessTalk(action) if action == "Job" then talklist[1][1] = "Shopkeeper" talklist[2][1] = {"[noskip]What is a shopkeeper?[w:15] It's my job,[w:10] the best job in the world![w:30][next]", "[noskip]It's all about charisma,[w:10] it's very complicated.[w:30][next]", "[noskip]Only a few people can become a shopkeeper,[w:10] you know?[w:15] I was lucky enough to be one of them![w:30][next]", "[noskip]I think that you too can make it,[w:10] if you want to![w:30][next]", "[noskip]I'll teach you the basics on how to become a shopkeeper![w:30][next]", "[noskip]First of all,[w:10] you need to know about our currency,[w:10] G.[w:30][next]", "[noskip]Gold is the Und[func:Drowsy]erground's main currency![w:15] It's made of 89% Gold,[w:10] 5% aluminium,[w:10] 5% zinc[w:10] and 1% tin.[w:30][next]", "[noskip]It can't be made of 100% Gold,[w:10] otherwise it couldn't take the shape [novoice]of a coin...[w:120][next]", "[noskip][func:Undrowsy]And so I sold this mop to that kid, and now everyone calls[novoice] him \"Mop Kid\"! He was pretty happy about it...[w:120][next]", "[noskip][func:Undrowsy2]And that's all for the basics![w:15] If you want to, I can teach you how to make profit![w:30][next]", "[noskip]No?[w:15] Very well then, ask me if you want to learn how to be a shopkeeper later![w:30][next]"} elseif action == "Shopkeeper" then talklist[2][1] = "[novoice](NEVER AGAIN)" elseif action == "Sell?" then talklist[1][4] = nil talklist[2][4] = nil canSell = true end end function Drowsy() eyeLidTop = CreateSprite("px", "Top") eyeLidTop.color = { 0, 0, 0 } eyeLidTop.absx = 320 eyeLidTop.absy = 600 eyeLidTop.Scale(640, 240) eyeLidBottom = CreateSprite("px", "Top") eyeLidBottom.color = { 0, 0, 0 } eyeLidBottom.absx = 320 eyeLidBottom.absy = -120 eyeLidBottom.Scale(640, 240) eyeLidEffect = CreateSprite("px", "Top") eyeLidEffect.color = { 0, 0, 0 } eyeLidEffect.absx = 320 eyeLidEffect.absy = 240 eyeLidEffect.Scale(640, 480) eyeLidEffect.alpha = 0 maintext = CreateText({"[font:uidialoglilspace][novoice][noskip][waitall:2]You're feeling drowsy..."}, {340, 440}, 320, "Top", 100) maintext.progressmode = "auto" maintext.SetAutoWaitTimeBetweenTexts(80) maintext.SetEffect("none", -1) maintext.HideBubble() maintext.alpha = 0.5 end function Undrowsy() frame = 2000 end function Undrowsy2() frame = 4000 end function Update() if maintext and maintext.allLinesComplete then if frame < 160 then eyeLidEffect.alpha = math.abs(.5 * math.sin(frame * math.pi / 80)) elseif frame < 240 then eyeLidBottom.absy = eyeLidBottom.absy + 1.75 elseif frame < 320 then eyeLidBottom.absy = eyeLidBottom.absy + 1.75 * math.cos((frame - 240) * math.pi / 80) elseif frame < 400 then eyeLidBottom.absy = eyeLidBottom.absy - 1.75 * math.cos((frame - 320) * math.pi / 80) elseif frame >= 520 and frame < 760 then eyeLidBottom.absy = eyeLidBottom.absy + (120 - eyeLidBottom.absy) * 0.02 elseif frame == 760 then eyeLidBottom.absy = 120 Audio.Pause() elseif frame >= 2000 and frame < 2010 then eyeLidBottom.absy = eyeLidBottom.absy - 15 if frame == 2000 then NewAudio.SetVolume("src", 0.75) Audio.Unpause() end elseif frame >= 2120 and frame < 4000 and eyeLidBottom.absy < 120 then eyeLidBottom.absy = eyeLidBottom.absy + 2 elseif frame >= 2120 and frame < 4000 and Audio.IsPlaying then Audio.Pause() elseif frame >= 4000 and eyeLidBottom.absy > -120 then eyeLidBottom.absy = eyeLidBottom.absy - 15 if frame == 4000 then NewAudio.SetVolume("src", 0.75) Audio.Unpause() elseif eyeLidBottom.absy <= -120 then maintext = nil end end if frame >= 160 then eyeLidTop.absy = 480 - eyeLidBottom.absy eyeLidEffect.alpha = eyeLidBottom.absy / 180 NewAudio.SetVolume("src", math.min(0.75, 0.75 - ((600 - eyeLidTop.absy) / 330))) end frame = frame + 1 end end ================================================ FILE: Assets/Mods/Examples 2/Lua/Shops/Dummy.lua.meta ================================================ fileFormatVersion: 2 guid: 42fc4d1fd169ea14faa2129f1cd8d804 timeCreated: 1495396679 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Shops.meta ================================================ fileFormatVersion: 2 guid: 69ccfcd0bf5358741a471e668f3afe16 folderAsset: yes timeCreated: 1495396679 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Waves/COMBINED.lua ================================================ -- The bouncing bullets attack from the documentation example. -- Sets a bullet's color as a string, then checks it in OnHit to achieve different types of bullet effects in one wave. spawntimer = 0 bullets = {} colors = {"regular", "cyan", "orange", "green"} function Update() spawntimer = spawntimer + 1 if spawntimer%20 == 0 then local posx = 30 - math.random(60) local posy = Arena.height/2 local bulletType = colors[math.random(#colors)] local bullet = CreateProjectile("bullet", posx, posy) if bulletType == "cyan" then bullet.sprite.color = {0/255, 162/255, 232/255} elseif bulletType == "orange" then bullet.sprite.color = {255/255, 154/255, 34/255} elseif bulletType == "green" then bullet.sprite.color = {64/255, 252/255, 64/255} end bullet.SetVar('color', bulletType) bullet.SetVar('velx', 1 - 2*math.random()) bullet.SetVar('vely', 0) table.insert(bullets, bullet) end for i=1,#bullets do local bullet = bullets[i] -- Note this new if check. We're going to remove bullets, and we can't move bullets that were removed. if bullet.isactive then local velx = bullet.GetVar('velx') local vely = bullet.GetVar('vely') local newposx = bullet.x + velx local newposy = bullet.y + vely if(bullet.x > -Arena.width/2 and bullet.x < Arena.width/2) then if(bullet.y < -Arena.height/2 + 8) then newposy = -Arena.height/2 + 8 vely = 4 end end vely = vely - 0.04 bullet.MoveTo(newposx, newposy) bullet.SetVar('vely', vely) end end end function OnHit(bullet) local color = bullet.GetVar("color") local damage = 5 if color == "regular" then Player.Hurt(damage) elseif color == "cyan" and Player.isMoving then Player.Hurt(damage) elseif color == "orange" and not Player.isMoving then Player.Hurt(damage) elseif color == "green" then Player.Heal(1) bullet.Remove() end end ================================================ FILE: Assets/Mods/Examples 2/Lua/Waves/COMBINED.lua.meta ================================================ fileFormatVersion: 2 guid: 42fa6c48deee9e7458178c557db053e4 timeCreated: 1487174277 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Waves/CYAN.lua ================================================ -- The bouncing bullets attack from the documentation example. -- Modified to replicate cyan bullet behaviour. spawntimer = 0 bullets = {} function Update() spawntimer = spawntimer + 1 if spawntimer%30 == 0 then local posx = 30 - math.random(60) local posy = Arena.height/2 local bullet = CreateProjectile('bullet', posx, posy) bullet.sprite.color = {0/255, 162/255, 232/255} bullet.SetVar('velx', 1 - 2*math.random()) bullet.SetVar('vely', 0) table.insert(bullets, bullet) end for i=1,#bullets do local bullet = bullets[i] local velx = bullet.GetVar('velx') local vely = bullet.GetVar('vely') local newposx = bullet.x + velx local newposy = bullet.y + vely if(bullet.x > -Arena.width/2 and bullet.x < Arena.width/2) then if(bullet.y < -Arena.height/2 + 8) then newposy = -Arena.height/2 + 8 vely = 4 end end vely = vely - 0.04 bullet.MoveTo(newposx, newposy) bullet.SetVar('vely', vely) end end function OnHit(bullet) if Player.isMoving then Player.Hurt(3) end end ================================================ FILE: Assets/Mods/Examples 2/Lua/Waves/CYAN.lua.meta ================================================ fileFormatVersion: 2 guid: 7f34c27619d2fec4eaa9453f9e07434c timeCreated: 1487174278 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Waves/GREEN.lua ================================================ -- The bouncing bullets attack from the documentation example. -- Modified to replicate green bullet behaviour. spawntimer = 0 bullets = {} function Update() spawntimer = spawntimer + 1 if spawntimer%30 == 0 then local posx = 30 - math.random(60) local posy = Arena.height/2 local bullet = CreateProjectile('bullet', posx, posy) bullet.sprite.color = {64/255, 252/255, 64/255} bullet.SetVar('velx', 1 - 2*math.random()) bullet.SetVar('vely', 0) table.insert(bullets, bullet) end for i=1,#bullets do local bullet = bullets[i] -- Note this new if check. We're going to remove bullets, and we can't move bullets that were removed. if bullet.isactive then local velx = bullet.GetVar('velx') local vely = bullet.GetVar('vely') local newposx = bullet.x + velx local newposy = bullet.y + vely if(bullet.x > -Arena.width/2 and bullet.x < Arena.width/2) then if(bullet.y < -Arena.height/2 + 8) then newposy = -Arena.height/2 + 8 vely = 4 end end vely = vely - 0.04 bullet.MoveTo(newposx, newposy) bullet.SetVar('vely', vely) end end end function OnHit(bullet) Player.Heal(1) bullet.Remove() end ================================================ FILE: Assets/Mods/Examples 2/Lua/Waves/GREEN.lua.meta ================================================ fileFormatVersion: 2 guid: b4f13df33c3037c428daad61e8520dc3 timeCreated: 1487174279 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Waves/ORANGE.lua ================================================ -- The bouncing bullets attack from the documentation example. -- Modified to replicate orange bullet behaviour. spawntimer = 0 bullets = {} function Update() spawntimer = spawntimer + 1 if spawntimer%30 == 0 then local posx = 30 - math.random(60) local posy = Arena.height/2 local bullet = CreateProjectile('bullet', posx, posy) bullet.sprite.color = {255/255, 154/255, 34/255} bullet.SetVar('velx', 1 - 2*math.random()) bullet.SetVar('vely', 0) table.insert(bullets, bullet) end for i=1,#bullets do local bullet = bullets[i] local velx = bullet.GetVar('velx') local vely = bullet.GetVar('vely') local newposx = bullet.x + velx local newposy = bullet.y + vely if(bullet.x > -Arena.width/2 and bullet.x < Arena.width/2) then if(bullet.y < -Arena.height/2 + 8) then newposy = -Arena.height/2 + 8 vely = 4 end end vely = vely - 0.04 bullet.MoveTo(newposx, newposy) bullet.SetVar('vely', vely) end end function OnHit(bullet) if not Player.isMoving then Player.Hurt(3) end end ================================================ FILE: Assets/Mods/Examples 2/Lua/Waves/ORANGE.lua.meta ================================================ fileFormatVersion: 2 guid: 7afb7dd1e80df4c4f97de2620d1449b4 timeCreated: 1487174278 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Waves/REGULAR.lua ================================================ -- The bouncing bullets attack from the documentation example. spawntimer = 0 bullets = {} function Update() spawntimer = spawntimer + 1 if spawntimer%30 == 0 then local posx = 30 - math.random(60) local posy = Arena.height/2 local bullet = CreateProjectile('bullet', posx, posy) bullet.SetVar('velx', 1 - 2*math.random()) bullet.SetVar('vely', 0) table.insert(bullets, bullet) end for i=1,#bullets do local bullet = bullets[i] local velx = bullet.GetVar('velx') local vely = bullet.GetVar('vely') local newposx = bullet.x + velx local newposy = bullet.y + vely if(bullet.x > -Arena.width/2 and bullet.x < Arena.width/2) then if(bullet.y < -Arena.height/2 + 8) then newposy = -Arena.height/2 + 8 vely = 4 end end vely = vely - 0.04 bullet.MoveTo(newposx, newposy) bullet.SetVar('vely', vely) end end ================================================ FILE: Assets/Mods/Examples 2/Lua/Waves/REGULAR.lua.meta ================================================ fileFormatVersion: 2 guid: a3d6eddb40622cf488a13c30af9b5ac8 timeCreated: 1487174279 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Waves/bullettest_bouncy.lua ================================================ -- The bouncing bullets attack from the documentation example. spawntimer = 0 bullets = {} function Update() spawntimer = spawntimer + 1 if spawntimer%30 == 0 then local posx = 30 - math.random(60) local posy = Arena.height/2 local bullet = CreateProjectile('bullet', posx, posy) bullet.SetVar('velx', 1 - 2*math.random()) bullet.SetVar('vely', 0) table.insert(bullets, bullet) end for i=1,#bullets do local bullet = bullets[i] local velx = bullet.GetVar('velx') local vely = bullet.GetVar('vely') local newposx = bullet.x + velx local newposy = bullet.y + vely if(bullet.x > -Arena.width/2 and bullet.x < Arena.width/2) then if(bullet.y < -Arena.height/2 + 8) then newposy = -Arena.height/2 + 8 vely = 4 end end vely = vely - 0.04 bullet.MoveTo(newposx, newposy) bullet.SetVar('vely', vely) end end ================================================ FILE: Assets/Mods/Examples 2/Lua/Waves/bullettest_bouncy.lua.meta ================================================ fileFormatVersion: 2 guid: 43957beb4e2b7c349b39fb2d8e02c2c9 timeCreated: 1487174277 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Waves/bullettest_chaserorb.lua ================================================ -- The chasing attack from the documentation example. chasingbullet = CreateProjectile('bullet', Arena.width/2, Arena.height/2) chasingbullet.SetVar('xspeed', 0) chasingbullet.SetVar('yspeed', 0) function Update() local xdifference = Player.x - chasingbullet.x local ydifference = Player.y - chasingbullet.y local xspeed = chasingbullet.GetVar('xspeed') / 2 + xdifference / 100 local yspeed = chasingbullet.GetVar('yspeed') / 2 + ydifference / 100 chasingbullet.Move(xspeed, yspeed) chasingbullet.SetVar('xspeed', xspeed) chasingbullet.SetVar('yspeed', yspeed) end ================================================ FILE: Assets/Mods/Examples 2/Lua/Waves/bullettest_chaserorb.lua.meta ================================================ fileFormatVersion: 2 guid: 8b9b7b876c76903479eb78f81a428804 timeCreated: 1487174278 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Waves/bullettest_touhou.lua ================================================ -- You've seen this one in the trailer (if you've seen the trailer). spawntimer = 0 bullets = {} yOffset = 180 mult = 0.5 function Update() spawntimer = spawntimer + 1 if(spawntimer % 30 == 0) then local numbullets = 10 for i=1,numbullets+1 do local bullet = CreateProjectile('bullet', 0, yOffset) bullet.SetVar('timer', 0) bullet.SetVar('offset', math.pi * 2 * i / numbullets) bullet.SetVar('negmult', mult) bullet.SetVar('lerp', 0) table.insert(bullets, bullet) end mult = mult + 0.05 end for i=1,#bullets do local bullet = bullets[i] local timer = bullet.GetVar('timer') local offset = bullet.GetVar('offset') local lerp = bullet.GetVar('lerp') local neg = 1 local posx = (70*lerp)*math.sin(timer*bullet.GetVar('negmult') + offset) local posy = (70*lerp)*math.cos(timer + offset) + yOffset - lerp*50 bullet.MoveTo(posx, posy) bullet.SetVar('timer', timer + 1/40) lerp = lerp + 1 / 90 if lerp > 4.0 then lerp = 4.0 end bullet.SetVar('lerp', lerp) end end ================================================ FILE: Assets/Mods/Examples 2/Lua/Waves/bullettest_touhou.lua.meta ================================================ fileFormatVersion: 2 guid: 735835398d2a6a745bc01c31c3c6bdd6 timeCreated: 1487174278 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua/Waves.meta ================================================ fileFormatVersion: 2 guid: 1571aac1fff0afb43a79ad50269a42b3 folderAsset: yes timeCreated: 1487174274 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Lua.meta ================================================ fileFormatVersion: 2 guid: 1b917198ee579f84b867b5da0037678b folderAsset: yes timeCreated: 1487174273 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sounds/Secret/boing.wav.meta ================================================ fileFormatVersion: 2 guid: 89d5b82cf9fc09d4b8d106c95d35ba21 AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sounds/Secret/laugh.wav.meta ================================================ fileFormatVersion: 2 guid: 2f27f0ffd38ebe1488114195739cffcb AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sounds/Secret/noise.wav.meta ================================================ fileFormatVersion: 2 guid: 73ea00e29b7746c479ae4c2744be2401 AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sounds/Secret/punch.wav.meta ================================================ fileFormatVersion: 2 guid: b838dcf6dd5934f4db20a006b1e98819 AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sounds/Secret.meta ================================================ fileFormatVersion: 2 guid: a67dfe081d692094797f03c40fb24507 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sounds/Voices/punderbolt.ogg.meta ================================================ fileFormatVersion: 2 guid: 1df0ac0da1f84ab46a6dcc14ccf8c1d9 timeCreated: 1494972192 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sounds/Voices.meta ================================================ fileFormatVersion: 2 guid: 699cba449f1a2924394606dc44bbc324 folderAsset: yes timeCreated: 1487174275 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sounds.meta ================================================ fileFormatVersion: 2 guid: 478f28fd1f6308b4fab4917c0b320dc9 folderAsset: yes timeCreated: 1487174273 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/Overworld/DummyBackground.png.meta ================================================ fileFormatVersion: 2 guid: f0becbec76b5d04499c64f45015876c8 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 3014909ff7a7a1a41bfac003d0e4ec51 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/Overworld/Punder/0.png.meta ================================================ fileFormatVersion: 2 guid: 797f42b6d9bf28145a99a9370b824ebc TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4a000049948690b4991aa6b10a8b2880 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/Overworld/Punder/1.png.meta ================================================ fileFormatVersion: 2 guid: aa445937c50f03946b0a19d4716f59de TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 02d771481c018834ba9be226223ac8c8 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/Overworld/Punder/10.png.meta ================================================ fileFormatVersion: 2 guid: 259fc8be7995de544ac3bdff66d6da45 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2b5f57915cf6d1849a1eb096c88fb65e vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/Overworld/Punder/11.png.meta ================================================ fileFormatVersion: 2 guid: 1d12179ec0307fa48af8ebfdc31ac87b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: d0fdd1313bf24fd42bc66f78504fe9d0 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/Overworld/Punder/12.png.meta ================================================ fileFormatVersion: 2 guid: af3165670cde37b49a88c30e7bed44f1 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 51e58302b33c91f4ca888945efc1bf09 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/Overworld/Punder/13.png.meta ================================================ fileFormatVersion: 2 guid: b4d21d89636ef04489c11b37b6379913 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 97b8254c48d680b458fc9bdf3c5a1dc1 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/Overworld/Punder/14.png.meta ================================================ fileFormatVersion: 2 guid: 363c26c804c3d434eba370b0abb4e1b7 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4043721d47a06314694847a12e95dd0e vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/Overworld/Punder/15.png.meta ================================================ fileFormatVersion: 2 guid: bf07074f0ed247e47bbb112f032eb724 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4bef06ad49c5bc74188c3e552910ac42 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/Overworld/Punder/2.png.meta ================================================ fileFormatVersion: 2 guid: 4511a78c5dab0b94ba183046d5485e61 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 038b6a5ebad4c04459319399fc09c8ab vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/Overworld/Punder/3.png.meta ================================================ fileFormatVersion: 2 guid: deaeb621ca3a0bc43bd8eaf1c769b339 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: be920dc57f66996418c17e9c0fc2ce69 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/Overworld/Punder/4.png.meta ================================================ fileFormatVersion: 2 guid: 49fae039f6c12eb498a134a5f6e03a29 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 1085f592429562c42be84bd19208ded4 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/Overworld/Punder/5.png.meta ================================================ fileFormatVersion: 2 guid: 328706ac82764dd479db84a56faa7f0f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: a5d46ee4fdd19bc49916e012c298b72d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/Overworld/Punder/6.png.meta ================================================ fileFormatVersion: 2 guid: 52bd9fa0f7c3a17408acb170ff78906e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4d4204692a063294692dcb0231e4dfcc vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/Overworld/Punder/7.png.meta ================================================ fileFormatVersion: 2 guid: 8a646c615e49f6a468945b7234a0977f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: d096b6cacad2f974285e38ddd2b785af vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/Overworld/Punder/8.png.meta ================================================ fileFormatVersion: 2 guid: 4aa247da2ab4ba6449a019436c4e59b3 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 9ef6178ca8a46dc48a430b21cef1a41a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/Overworld/Punder/9.png.meta ================================================ fileFormatVersion: 2 guid: a63cf13cb5ff43c41bcfaea8fe57182f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 3c97a85449127cf4f84edf7dce9c76c5 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/Overworld/Punder/Secret/fall.png.meta ================================================ fileFormatVersion: 2 guid: bf3f4e8b5a40ac449a7c978f5b211361 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: eda9fe817b96e34419c22af724fd3554 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/Overworld/Punder/Secret/knockout.png.meta ================================================ fileFormatVersion: 2 guid: 1f3d5340bc56f1d4b8360d547ff29e10 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: a20ddc3b1f6277f409f0aee5a8cf5155 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/Overworld/Punder/Secret.meta ================================================ fileFormatVersion: 2 guid: d0d3ac4b45e3b6543a37abf9a69f7e58 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/Overworld/Punder.meta ================================================ fileFormatVersion: 2 guid: 5f8e8d9079744ca45a37f7db9e47a4bf folderAsset: yes timeCreated: 1493458827 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/Overworld/Rope.png.meta ================================================ fileFormatVersion: 2 guid: fef3242f55fcdcf4e87d7c7c749ebf91 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 263e8bd445e185e40a022e82cbec98ac vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/Overworld/Snow 2-2.png.meta ================================================ fileFormatVersion: 2 guid: 1a2b8a18cc98a4e4a93a05ba9a838727 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2fbb08b62f298f84d8a1703251c542e6 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/Overworld/Snow 2.png.meta ================================================ fileFormatVersion: 2 guid: 0996476ab00fe2c46babfe4c374acb51 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 4096 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 4096 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: a127e5890fe19f541bac29b27107e80c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/Overworld/Snow tree.png.meta ================================================ fileFormatVersion: 2 guid: e262c95b4713ba547ae661365d99795b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: cf58b57d1ec9de143b04da7bee0649a2 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/Overworld/Snow.png.meta ================================================ fileFormatVersion: 2 guid: 1349755d19b4ea14db229a36b82e13f0 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: afa85d282fc5c9244804b827dad90c57 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/Overworld.meta ================================================ fileFormatVersion: 2 guid: 0c379f6ab5dcdec4d93d81a055d6f248 folderAsset: yes timeCreated: 1491213921 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/UI/Fonts/monster.png.meta ================================================ fileFormatVersion: 2 guid: 30b50cca5300ce14ca53090706b73dd4 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 21aaace4486a14c479e49e4d2a394c9f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/UI/Fonts/monster.xml ================================================ monsterfont 000000 18 ================================================ FILE: Assets/Mods/Examples 2/Sprites/UI/Fonts/monster.xml.meta ================================================ fileFormatVersion: 2 guid: d8ef5d572681f024ea5606ff4eebba55 timeCreated: 1487174578 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/UI/Fonts/uidialog.png.meta ================================================ fileFormatVersion: 2 guid: 375f10cd33173024890b67ca852a36e7 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: a172f1263391f4b42b8871a51721f022 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/UI/Fonts/uidialog.xml ================================================ uifont 30 ================================================ FILE: Assets/Mods/Examples 2/Sprites/UI/Fonts/uidialog.xml.meta ================================================ fileFormatVersion: 2 guid: 60237f97c245d8046aae1ff154d56566 timeCreated: 1487174394 licenseType: Free TextScriptImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/UI/Fonts.meta ================================================ fileFormatVersion: 2 guid: cea272c5d89c6424daafc0ca62289656 folderAsset: yes timeCreated: 1487174280 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/UI.meta ================================================ fileFormatVersion: 2 guid: f9d5993a18c71fb45b1e810705b070ea folderAsset: yes timeCreated: 1487174276 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/bg.png.meta ================================================ fileFormatVersion: 2 guid: cadc428bbda4bee40ba857d1591d84da TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 1654b2349b650914cad2b45af661a4e9 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/bullet.png.meta ================================================ fileFormatVersion: 2 guid: ac2bc7076e5afc64b84f119ecfe7955c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: fa581a5b38d18c344bb3375fa86d8a75 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/empty.png.meta ================================================ fileFormatVersion: 2 guid: bcf316876dc18024288e6817c69a8cf1 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 412030e44481fd149af3427e8498c1ec vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/posette.png.meta ================================================ fileFormatVersion: 2 guid: b1456ade803005c48b8eb33f214ee482 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 555aa39510f5bad43a38564723f1555a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/poseur.png.meta ================================================ fileFormatVersion: 2 guid: f41f1cd347ea93641ae2122725108ba1 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c4a714a7f342a5049b0650f2169c1b8c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/preview.png.meta ================================================ fileFormatVersion: 2 guid: 46af2134c6592ab4db68322597bc5de0 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: fda0b1e88a3f87845a31d52698594aed vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/sans/sanshead1.png.meta ================================================ fileFormatVersion: 2 guid: 964e2a3e786774f4ea388b1254cbdb9b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 062c48d2b3a79bb4fb89ded902296d56 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/sans/sanshead2.png.meta ================================================ fileFormatVersion: 2 guid: 5d13eb568fd9ff340a05ef2ca04c42bd TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 280102d9af8f4c449a82ecbfadcc1480 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/sans/sanshead3.png.meta ================================================ fileFormatVersion: 2 guid: b1ad877862b0fae4985dcc2883b53f98 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 3ef5515ef52667749a07486ac7707503 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/sans/sanslegs.png.meta ================================================ fileFormatVersion: 2 guid: b29653a1aa235bb44a15a9cde5394a3e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 732bf50102183434ea317aa9446b91f1 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/sans/sanstorso.png.meta ================================================ fileFormatVersion: 2 guid: 9e3ecee56ec712443936bf3aaa075ece TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c8bc3100dd0a14e4c84b216c7caabed2 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites/sans.meta ================================================ fileFormatVersion: 2 guid: 0418fc640c7cc6746a256ef9f09dbd22 folderAsset: yes timeCreated: 1487174273 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2/Sprites.meta ================================================ fileFormatVersion: 2 guid: 8aaf9e23b6ac20f46ac61b4238d99eae folderAsset: yes timeCreated: 1487174273 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples 2.meta ================================================ fileFormatVersion: 2 guid: 99127cfb16193f84e8469f85d21bff4c folderAsset: yes timeCreated: 1487174273 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/Examples.meta ================================================ fileFormatVersion: 2 guid: 149f45f46d2956c4397ddf0e2b108018 folderAsset: yes timeCreated: 1487174273 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Audio/Anticipation_Amplified.ogg.meta ================================================ fileFormatVersion: 2 guid: ad6b0983cfee96748be02f5be10834d0 timeCreated: 1509372990 licenseType: Free AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Audio/charafuntroncated.ogg.meta ================================================ fileFormatVersion: 2 guid: 4e566206983114e4796f806053484587 timeCreated: 1509372987 licenseType: Free AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Audio/mus_st_him.ogg.meta ================================================ fileFormatVersion: 2 guid: 82ee06b8776aa4a4da6f1635a8ec8e5d timeCreated: 1509372988 licenseType: Free AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Audio/put your music here, ogg or wav only ================================================ ================================================ FILE: Assets/Mods/RTLGeno/Audio/put your music here, ogg or wav only.meta ================================================ fileFormatVersion: 2 guid: d1ecd56e00c7a1b43a118c7abbf295c7 timeCreated: 1509372960 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Audio.meta ================================================ fileFormatVersion: 2 guid: 42cda80078523744e9ae8958f5dc23fd folderAsset: yes timeCreated: 1509372960 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Lua/Animations/Lukark_anim.lua ================================================ return function() local self = { hair = CreateSprite("Lukark/hair/1"), head = CreateSprite("Lukark/headnormal"), legs = CreateSprite("Lukark/legs"), torso = CreateSprite("Lukark/torso"), arms = CreateSprite("Lukark/arms/1"), isHurt = false, hitAnimCount = 0, animPhaseCut = Time.time, stopped = false, armAnimations = { normal = { "Lukark/arms/1", "Lukark/arms/1", "Lukark/arms/1", "Lukark/arms/1", "Lukark/arms/1", "Lukark/arms/2", "Lukark/arms/2", "Lukark/arms/2", "Lukark/arms/2", "Lukark/arms/2", "Lukark/arms/3", "Lukark/arms/3", "Lukark/arms/4", "Lukark/arms/4", "Lukark/arms/3", "Lukark/arms/3", "Lukark/arms/4", "Lukark/arms/4", "Lukark/arms/3", "Lukark/arms/3", "Lukark/arms/2", "Lukark/arms/2", "Lukark/arms/2", "Lukark/arms/2", "Lukark/arms/2", time = 0.04, loop = true }, waveballbegin = { "Lukark/arms/ballmove1", "Lukark/arms/ballmove2", "Lukark/arms/ballmove3", "Lukark/arms/ball1-1" }, waveballend = { "Lukark/arms/ballmove3", "Lukark/arms/ballmove2", "Lukark/arms/ballmove1", "Lukark/arms/1" }, ["waveball1-1to2"] = { "Lukark/arms/ballmove1-4", "Lukark/arms/ballmove1-5", "Lukark/arms/ball1-2" }, ["waveball1-2to1"] = { "Lukark/arms/ballmove1-5", "Lukark/arms/ballmove1-4", "Lukark/arms/ball1-1" }, ["waveball2-1to2"] = { "Lukark/arms/ballmove2-4", "Lukark/arms/ballmove2-5", "Lukark/arms/ball2-2" }, ["waveball2-2to1"] = { "Lukark/arms/ballmove2-5", "Lukark/arms/ballmove2-4", "Lukark/arms/ball2-1" }, ["waveball1to2-1"] = { "Lukark/arms/ballmove4-1", "Lukark/arms/ballmove5-1", "Lukark/arms/ball2-1" }, ["waveball1to2-2"] = { "Lukark/arms/ballmove4-2", "Lukark/arms/ballmove5-2", "Lukark/arms/ball2-2" }, ["waveball2to1-1"] = { "Lukark/arms/ballmove5-1", "Lukark/arms/ballmove4-1", "Lukark/arms/ball1-1" }, ["waveball2to1-2"] = { "Lukark/arms/ballmove5-2", "Lukark/arms/ballmove4-2", "Lukark/arms/ball1-2" }, ["waveball1to2-1to2"] = { "Lukark/arms/ballmove4-4", "Lukark/arms/ballmove5-5", "Lukark/arms/ball2-2" }, ["waveball1to2-2to1"] = { "Lukark/arms/ballmove4-5", "Lukark/arms/ballmove5-4", "Lukark/arms/ball2-1" }, ["waveball2to1-1to2"] = { "Lukark/arms/ballmove5-4", "Lukark/arms/ballmove4-5", "Lukark/arms/ball1-2" }, ["waveball2to1-2to1"] = { "Lukark/arms/ballmove5-5", "Lukark/arms/ballmove4-4", "Lukark/arms/ball1-1" } } } self.arms.SetAnimation(self.armAnimations.normal, 0.04) self.hair.SetAnimation({ "Lukark/x1/hair/1", "Lukark/x1/hair/2", "Lukark/x1/hair/3", "Lukark/x1/hair/4", "Lukark/x1/hair/3", "Lukark/x1/hair/2" }, 0.2) self.hair.Scale(2, 2) self.hair.SetParent(enemies[2]["monstersprite"]) self.head.SetParent(self.hair) self.legs.SetParent(enemies[2]["monstersprite"]) self.torso.SetParent(self.legs) self.arms.SetParent(self.torso) self.legs.MoveToAbs(320, 340) self.arms.MoveToAbs(320, 340) self.hair.MoveToAbs(320, 334) self.head.MoveToAbs(321, 335) self.torso.MoveToAbs(320, 340) self.legs.SetPivot(0.5, 0) self.legs.SetAnchor(0.5, 0) self.torso.SetPivot(0.5, 1) self.torso.SetAnchor(0.5, 1) self.hair.SetPivot(0.5, 1) self.legs.MoveTo(0, 0) self.torso.MoveTo(0, 0) self.SetFace = function(face) self.head.Set("Lukark/head" .. face) self.isHurt = face == "hurt" end self.ShowAnimation = function() self.head.alpha = 1 self.torso.alpha = 1 self.legs.alpha = 1 self.arms.alpha = 1 self.hair.alpha = 1 end self.HideAnimation = function(isKilled) self.torso.alpha = 0 self.legs.alpha = 0 self.arms.alpha = 0 self.hair.alpha = 0 self.head.alpha = 0 if isKilled then enemies[2]["monstersprite"].alpha = 1 end end self.SetArmAnim = function(anim) if self.armAnimations[anim] then self.arms.SetAnimation(self.armAnimations[anim], self.armAnimations[anim].time or 0.1) self.arms.loopmode = self.armAnimations[anim].loop and "LOOP" or "ONESHOT" else self.arms.StopAnimation() self.arms.Set("Lukark/arms/" .. anim) end self.currentAnimation = anim end self.Animate = function() if not self.stopped then local timeCount = (Time.time - self.animPhaseCut) * 2 self.legs.Scale(1, 1 + 0.05 * math.sin(timeCount)) self.torso.y = -5 * math.sin(timeCount) self.hair.absy = self.torso.absy if self.isHurt then self.hitAnimCount = self.hitAnimCount + 1 if self.hitAnimCount == 40 then self.hitAnimCount = 0 self.isHurt = false end end end end return self end ================================================ FILE: Assets/Mods/RTLGeno/Lua/Animations/Lukark_anim.lua.meta ================================================ fileFormatVersion: 2 guid: 727e1b09350cbdb42957567ad3dff932 timeCreated: 1509372961 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Lua/Animations/RTL_anim.lua ================================================ return function() local self = { legs = CreateSprite("RTL/legsnormal"), torso = CreateSprite("RTL/torso"), head = CreateSprite("RTL/headnormal"), isHurt = false, inTransformation = false, hitAnimCount = 0, dilateProgress = 0, animPhaseCut = Time.time, stopped = false } self.legs.SetParent(enemies[1]["monstersprite"]) self.torso.SetParent(self.legs) self.head.SetParent(self.torso) self.legs.MoveToAbs(320, 240) self.torso.MoveTo(1, 0) self.head.MoveTo(-1, 0) self.legs.SetPivot(0.5, 0) self.torso.SetPivot(0.5, 0.5) self.head.SetPivot(0.5, 0.22) self.blank = CreateSprite("blank", "Top") self.blank.alpha = 0 self.blank.MoveToAbs(320, 240) self.SetAnimation = function(anim) if anim == "hurt" then self.legs.Set("RTL/legshurt") elseif anim == "spared" then self.legs.Set("RTL/legsspared") self.torso.Set("RTL/torsospared") end self.isHurt = anim == "hurt" self.head.Set("RTL/head" .. anim) end self.HideAnimation = function(isSpared) self.head.alpha = 0 self.torso.alpha = 0 self.legs.alpha = 0 enemies[1]["monstersprite"].alpha = isSpared and 1 or 0 end self.Animate = function() -- Transformation animation if self.inTransformation == true then if self.dilateProgress < 100 then self.head.Scale(1 + 0.04 * self.dilateProgress, 1) self.torso.Scale(1 + 0.04 * self.dilateProgress, 1) self.legs.Scale(1 + 0.04 * self.dilateProgress, 1) self.blank.alpha = 0.02 * self.dilateProgress elseif self.dilateProgress == 100 then self.head.Scale(1, 1) self.torso.Scale(1, 1) self.legs.Scale(1, 1) self.HideAnimation() LukarkAnim.ShowAnimation() self.stopped = true SwitchEnemies() else self.blank.alpha = 0.05 * (180 - self.dilateProgress) end self.dilateProgress = self.dilateProgress + 1 if self.dilateProgress == 180 then self.dilateProgress = 0 self.blank.alpha = 0 self.inTransformation = false end end -- Normal animation if not self.stopped then local timeCount = 5 * (Time.time - self.animPhaseCut) self.torso.y = math.sin(timeCount) self.head.y = 2 * math.sin(timeCount) if self.isHurt then self.hitAnimCount = self.hitAnimCount + 1 if self.hitAnimCount == 40 then self.hitAnimCount = 0 self.isHurt = false end end end end return self end ================================================ FILE: Assets/Mods/RTLGeno/Lua/Animations/RTL_anim.lua.meta ================================================ fileFormatVersion: 2 guid: 63fd2a5045a88db44a0ab4977a995459 timeCreated: 1509372961 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Lua/Animations.meta ================================================ fileFormatVersion: 2 guid: 9868b19559650ce4dbe6bfd9f9c3703f folderAsset: yes timeCreated: 1509372960 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Lua/Encounters/RTLGeno.lua ================================================ music = "Anticipation_Amplified" encountertext = "It's time to kick his ass." nextwaves = { } wavetimer = 0 arenasize = { 130, 130 } enemies = { "RTL", "Lukark" } enemypositions = { { 0, 10 }, { 0, 0 } } autolinebreak = true -- A custom list with attacks to choose from. Actual selection happens in EnemyDialogueEnding(). Put here in case you want to use it. possible_attacks = { "BallArms" } function EncounterStarting() RTLAnim = (require "Animations/RTL_anim")() LukarkAnim = (require "Animations/Lukark_anim")() HPPulse = (require "Libraries/HeartPulse")() Player.lv = 12 Player.hp = 64 Audio.Pitch(0.2) LukarkAnim.HideAnimation() LukarkAnim.Animate() RTLAnim.SetAnimation("close") RTLAnim.Animate() enemies[1]["monstersprite"].alpha = 0 enemies[2]["monstersprite"].alpha = 0 end function SwitchEnemies() enemies[2].Call("Activate") enemies[1].Call("Deactivate") enemies[1].Call("SetBubbleOffset", { 29, 56.5 }) encountertext = "The true battle begins now." wavetimer = 10 end function Update() RTLAnim.Animate() LukarkAnim.Animate() if HPPulse then HPPulse.PulseByHP() end end function EnemyDialogueEnding() if enemies[2]["isactive"] then if enemies[2]["hp"] <= 200 then encountertext = "You notice Lukark seems quite beat up." end nextwaves = { possible_attacks[math.random(#possible_attacks)] } end encountertext = RandomEncounterText() RTLAnim.SetAnimation("close") LukarkAnim.SetFace("normal") end function DefenseEnding() LukarkAnim.SetFace("normal") end function HandleSpare() State("ENEMYDIALOGUE") end function SetLukarkArmAnim(anim) LukarkAnim.SetArmAnim(anim) end function SetLukarkFace(anim) LukarkAnim.SetFace(anim) end function LukarkHideAnimation(isKilled) LukarkAnim.HideAnimation(isKilled) end function SetRTLAnimation(anim) RTLAnim.SetAnimation(anim) end function RTLHideAnimation(isSpared) RTLAnim.HideAnimation(isSpared) end ================================================ FILE: Assets/Mods/RTLGeno/Lua/Encounters/RTLGeno.lua.meta ================================================ fileFormatVersion: 2 guid: 0fab7c918ea05394fa99e371fae9e58d timeCreated: 1509372960 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Lua/Encounters.meta ================================================ fileFormatVersion: 2 guid: eb3fb16d97450e6429a9b5ae8ce75c37 folderAsset: yes timeCreated: 1509372960 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Lua/Events/EventHidden.lua ================================================ function EventPage1() General.SetDialog({ "Wow[waitall:3]...[waitall:1] [w:10]How did you find this place?", "This must be a bug, [w:5]you have to call the main developer.", "By the way[waitall:3]...[waitall:1][w:10]\nIn case you played my encounter,[w:5] [mugshot:rtlukark_determined]I have to tell you I'm not a good modder."}, true, { "rtlukark_surprised", "rtlukark_=3", "rtlukark_normal" }) end ================================================ FILE: Assets/Mods/RTLGeno/Lua/Events/EventHidden.lua.meta ================================================ fileFormatVersion: 2 guid: 0dad2db6bdfb0554d8870960ea7d0b67 timeCreated: 1509372960 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Lua/Events.meta ================================================ fileFormatVersion: 2 guid: 8150811858058334599ba3d08cf23db4 folderAsset: yes timeCreated: 1509372960 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Lua/Libraries/HeartPulse.lua ================================================ return function() local self = { hpPulseCoeffs = { { percent = .05, value = 1.3 }, { percent = .1, value = 0.7 }, { percent = .15, value = 1.15 }, { percent = .2, value = 1 }, { percent = 1, value = 1 }, }, playerHPPulseCycleTime = 40, frameCount = 0 } self.GetCoeffFromPercent = function(percent) local lowPercent = nil local highPercent = 0 local lowValue = nil local highValue = 1 local id = 1 repeat lowPercent = highPercent lowValue = highValue highPercent = self.hpPulseCoeffs[id].percent highValue = self.hpPulseCoeffs[id].value id = id + 1 until highPercent >= percent highPercent = highPercent - lowPercent percent = percent - lowPercent return highValue * (percent / highPercent) + lowValue * (1 - (percent / highPercent)) end self.PulseByHP = function() if self.frameCount < self.playerHPPulseCycleTime then local scale = self.GetCoeffFromPercent(self.frameCount / self.playerHPPulseCycleTime) Player.sprite.Scale(scale, scale) self.frameCount = self.frameCount + 1 else self.playerHPPulseCycleTime = 40 + (1 - (Player.hp / Player.maxhp)) * 140 self.frameCount = 0 end end return self end ================================================ FILE: Assets/Mods/RTLGeno/Lua/Libraries/HeartPulse.lua.meta ================================================ fileFormatVersion: 2 guid: 85514115353adeb418e856f237b26644 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Lua/Libraries.meta ================================================ fileFormatVersion: 2 guid: 9b0759039aadb7043ba6457d3beaa8c8 folderAsset: yes timeCreated: 1509372960 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Lua/Monsters/Lukark.lua ================================================ -- A basic monster script skeleton you can copy and modify for your own creations. comments = { "Lukark is vengeful.", "Lukark prepares his next move.", "Lukark frowns at you.", "Lukark brushes his hair as dust gets into it.", "Lukark gazes at you with intensity.", "The dust staining your clothes only fuels Lukark's rage." } commands = { "Pardon" } randomdialogue = { "[effect:none][func:SetFace,angry]Come back here!", "[effect:none][func:SetFace,angry]You can't escape me now!", "[effect:none][func:SetFace,angry]I'll get you no matter what!", "[effect:none][func:SetFace,angry]Take this!" } sprite = "Lukark/full" --Always PNG. Extension is added automatically. name = "Lukark" hp = 1000 atk = 5 def = 1 gold = math.random(35, 105) xp = math.random(125, 375) check = "The Overworld Creator.[w:15]\rDestroy him if you dare." dialogbubble = "rightwideminus" -- See documentation for what bubbles you have available. cancheck = true canspare = false pardonCount = 0 attackprogression = 0 anim = "normal" SetActive(false) effect = "none" -- Happens after the slash animation but before function HandleAttack(attackstatus) if attackstatus > 0 then SetFace("hurt") end end -- This handles the commands; all-caps versions of the commands list you have above. function HandleCustomCommand(command) if command == "PARDON" then if pardonCount == 0 then BattleDialog({ "You tell Lukark you'll stop your killing frenzy.", "It doesn't seem to calm him down one bit." }) currentdialogue = { "[effect:none][func:SetFace,angry]Hah! As if someone like you could feel remorse!", "[next]" } elseif pardonCount == 1 then BattleDialog({ "Your voice crackles as you mutter an apology to Lukark." }) currentdialogue = {"[effect:none]...[w:20][noskip][func:SetFace,smiling][noskip:off]I still don't believe you, you killer.", "[next]" } elseif pardonCount == 2 then BattleDialog({ "A tear roll down your cheek as you bow in front of Lukark, pleading him to stop this nonsense." }) currentdialogue = { "[effect:none]......[noskip][w:20][func:SetFace,happy][noskip:off]Please stop. We both know this has gone too far by now.", "[next]" } else BattleDialog({ "You ask for Lukark's forgiveness once more, but he ignores you." }) end pardonCount = pardonCount + 1 end end function OnDeath() hp = 1 Audio.Pause() currentdialogue = { "[noskip][effect:none]Gah, [w:20]I knew it...[w:20][next]", "[noskip][effect:none]I should have been more careful...[w:20][next]", "[noskip][effect:none][func:SetFace,happy]What a joke...[w:20][func:FadeKill][func:Kill][next]" } end -- Starts the death fade anim function FadeKill() Encounter.Call("LukarkHideAnimation", true) end -- Changes Lukark's animation function SetFace(anim) Encounter.Call("SetLukarkFace", anim) end function Pause() Audio.Pause() end function Unpause() Audio.Unpause() end -- Plays a given sound function PlaySE(filename) Audio.PlaySound(filename) end -- Enables this enemy function Activate() SetActive(true) end ================================================ FILE: Assets/Mods/RTLGeno/Lua/Monsters/Lukark.lua.meta ================================================ fileFormatVersion: 2 guid: 12c66551a2e76304daf0506a80694035 timeCreated: 1509372960 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Lua/Monsters/RTL.lua ================================================ -- A basic monster script skeleton you can copy and modify for your own creations. comments = { "RTL seems nervous." } commands = { "Check", "Threaten", "Insult" } randomdialogue = { "H-Hello there..." } sprite = "RTL/full" --Always PNG. Extension is added automatically. name = "RTL" hp = 100 atk = 1 def = -999 check = "Just free EXP.\rYou know the drill by now." dialogbubble = "rightwideminus" -- See documentation for what bubbles you have available. cancheck = false canspare = true sprite_placing = -1 SetBubbleOffset(10, 24) function BeforeDamageCalculation() Encounter.Call("SetRTLAnimation", "attacked") end -- Happens after the slash animation but before function HandleAttack(attackstatus) if attackstatus == -1 then -- player pressed fight but didn't press Z afterwards Encounter.Call("SetRTLAnimation", "close") currentdialogue = { "That was close..." } else -- player did actually attack Encounter.Call("SetRTLAnimation", "hurt") end end -- This handles the commands; all-caps versions of the commands list you have above. function HandleCustomCommand(command) if command == "CHECK" then BattleDialog({ "RTL - 1 ATK 1 DEF\n" .. check }) elseif command == "THREATEN" then BattleDialog({ "You threaten RTL.\nHe seems scared." }) currentdialogue = {"[func:SetAnimRTL,attacked]Leave me alone! You're weird!"} elseif command == "INSULT" then BattleDialog({ "You insult RTL." }) currentdialogue = {"[func:SetAnimRTL,angry]Hey, what was that for? I did nothing wrong to you!"} end end function OnDeath() SetAlMightyGlobal("RTLGenoIntro", false) hp = 30 def = 1 Audio.Pause() if not GetAlMightyGlobal("RTLGenoIntro") then SetAlMightyGlobal("RTLGenoIntro", true) currentdialogue = { "[noskip][effect:none]Heh... [w:15][func:SetAnimRTL,happy]Hahahaha![w:20][next]", "[noskip][effect:none][func:SetAnimRTL,angry]You're pathetic. [w:15]Did you REALLY think I would just keel over and die like that?[w:20][next]", "[noskip][effect:none][func:SetAnimRTL,angryhurt]Well you're [effect:shake][voice:v_floweymad][waitall:2]wrong,[waitall:1] [voice:monsterfont][effect:none][w:20]buckaroo.[w:20][next]", "[noskip][effect:none]Now, I'll send you right where you belong, [w:10]and I'll do it by force if I have to![w:20][next]", "[noskip][func:PlaySE,Asriel TF][func:StartTransformation][w:80][next]", "[noskip][effect:shake][voice:v_floweymad][func:SetLukarkFace,mad]Your rampage will stop right now![w:20][func:SetLukark][func:State,ACTIONSELECT]" } --"[noskip][effect:none][func:SetAnimRTL,happy][func:PlaySE,mus_dogsong_tf]" .. "What were you expecting, seriously?\n[w:20]Well there's nothing here, I'll just die and that's it.[w:20][func:Unpause][func:Kill][next]"} else shouts = { "Your rampage will stop right now!", "This time you'll pay for your sins!", "I will only stop when everyone will be avenged!", "I won't let you go this time!", "Retribution time!", "I guess last time wasn't enough for you!" } sillyShouts = { "Oh $#!?, [w:10]here we go again!", "Oh lawd he comin!", "Hey am I like at least 20% Sans if I can remember stuff? [w:15]Neat...?" } currentdialogue = { "[effect:none]Bah, what's the point. [w:15]Let's just get it over with already.", "[noskip][func:PlaySE,Asriel TF][func:StartTransformation][w:80][next]", "[noskip][effect:shake][voice:v_floweymad][func:SetLukarkFace,mad]" .. (math.random() < 0.04 and sillyShouts[math.random(#sillyShouts)] or shouts[math.random(#shouts)]) .. "[w:20][func:SetLukark][func:State,ACTIONSELECT]" } end end function OnSpare() Encounter.Call("RTLHideAnimation", true) Encounter["RTLAnim"].stopped = true Spare() end -- hanges the current animation function SetAnimRTL(anim) Encounter.Call("SetRTLAnimation", anim) end -- Changes Lukark's animation function SetLukarkFace(anim) Encounter.Call("SetLukarkFace", anim) end -- Starts the "transformation" animation function StartTransformation() Encounter["RTLAnim"].inTransformation = true end function Unpause() Audio.Unpause() end -- Plays a given sound function PlaySE(filename) Audio.PlaySound(filename) end -- Starts the battle with Lukark function SetLukark() Audio.Pitch(1) Audio.LoadFile("charafuntroncated") SetLukarkFace("normal") end -- Disables this enemy function Deactivate() SetActive(false) end ================================================ FILE: Assets/Mods/RTLGeno/Lua/Monsters/RTL.lua.meta ================================================ fileFormatVersion: 2 guid: 5423c5f03a152c0438deb829d34cc783 timeCreated: 1509372960 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Lua/Monsters.meta ================================================ fileFormatVersion: 2 guid: f7453a557710edd4fb6603c3f8b3f71f folderAsset: yes timeCreated: 1509372960 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Lua/Waves/3LargeChaserOrbs.lua ================================================ -- The chasing attack from the documentation example. testedge = {false,false,false,false} xtemp = -Arena.width/2 ytemp = -Arena.width/2 temp = math.floor(math.random(100) / 25) while testedge[temp] == true do temp = math.floor(math.random(100) / 25) end if temp == 0 or temp == 2 then xtemp = Arena.width/2 end if temp == 0 or temp == 1 then ytemp = Arena.width/2 end testedge[temp] = true chasingbullet1 = CreateProjectile('largeball', xtemp, ytemp) chasingbullet1.SetVar('xspeed', 0) chasingbullet1.SetVar('yspeed', 0) xtemp = -Arena.width/2 ytemp = -Arena.width/2 temp = math.floor(math.random(100) / 25) while testedge[temp] == true do temp = math.floor(math.random(100) / 25) end if temp == 0 or temp == 2 then xtemp = Arena.width/2 end if temp == 0 or temp == 1 then ytemp = Arena.width/2 end testedge[temp] = true chasingbullet2 = CreateProjectile('largeball', xtemp, ytemp) chasingbullet2.SetVar('xspeed', 0) chasingbullet2.SetVar('yspeed', 0) xtemp = -Arena.width/2 ytemp = -Arena.width/2 temp = math.floor(math.random(100) / 25) while testedge[temp] == true do temp = math.floor(math.random(100) / 25) end if temp == 0 or temp == 2 then xtemp = Arena.width/2 end if temp == 0 or temp == 1 then ytemp = Arena.width/2 end testedge[temp] = true chasingbullet3 = CreateProjectile('largeball', xtemp, ytemp) chasingbullet3.SetVar('xspeed', 0) chasingbullet3.SetVar('yspeed', 0) rotation = 0 function Update() local xdifference1 = Player.x - chasingbullet1.x local ydifference1 = Player.y - chasingbullet1.y local xspeed1 = chasingbullet1.GetVar('xspeed') / 2 + xdifference1 / 100 local yspeed1 = chasingbullet1.GetVar('yspeed') / 2 + ydifference1 / 100 chasingbullet1.Move(xspeed1, yspeed1) chasingbullet1.SetVar('xspeed', xspeed1) chasingbullet1.SetVar('yspeed', yspeed1) chasingbullet1.sprite.rotation = rotation local xdifference2 = Player.x - chasingbullet2.x local ydifference2 = Player.y - chasingbullet2.y local xspeed2 = chasingbullet2.GetVar('xspeed') / 2 + xdifference2 / 100 local yspeed2 = chasingbullet2.GetVar('yspeed') / 2 + ydifference2 / 100 chasingbullet2.Move(xspeed2, yspeed2) chasingbullet2.SetVar('xspeed', xspeed2) chasingbullet2.SetVar('yspeed', yspeed2) chasingbullet2.sprite.rotation = rotation local xdifference3 = Player.x - chasingbullet3.x local ydifference3 = Player.y - chasingbullet3.y local xspeed3 = chasingbullet3.GetVar('xspeed') / 2 + xdifference3 / 100 local yspeed3 = chasingbullet3.GetVar('yspeed') / 2 + ydifference3 / 100 chasingbullet3.Move(xspeed3, yspeed3) chasingbullet3.SetVar('xspeed', xspeed3) chasingbullet3.SetVar('yspeed', yspeed3) chasingbullet3.sprite.rotation = rotation rotation = rotation + 10 end ================================================ FILE: Assets/Mods/RTLGeno/Lua/Waves/3LargeChaserOrbs.lua.meta ================================================ fileFormatVersion: 2 guid: ce4e9cd6621d40f44a63e2202213a1d0 timeCreated: 1509372961 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Lua/Waves/BallArms.lua ================================================ -- Updates in 0.2s : +-12 -- Arms pos x : 43, 11 local wavetimer = 10 -- Coordonates of the bullets -- 1, 3, 5, 7, 9 = x values | 2, 4, 6, 8, 10 y values movetable = {43,152, 35,150, 27,150, 19,152, 11,156} -- The wave's starting time balisebegin = Time.time -- "Lukark" is a variable that animates the enemy Encounter.Call("SetLukarkArmAnim", "waveballbegin") -- Last positions of arms lastposleft = 1 lastposright = 1 -- Did we just change the position? changesideright = false changesideleft = false -- We've already chosen our way, kiddo chosen = false bullets = {} -- This'll help with getting the original Y value of bullets last_temp_anims = {} -- Two switches used for bullet movement tempanimchangestop1 = false tempanimchangestop2 = false -- Bullet coordinates tempx1 = 0 tempy1 = 0 tempx2 = 0 tempy2 = 0 -- We'll use this to don't check the bullet's speed lots of times didit = 0 -- Used to make sure the direction is chosen once per anim updates = 0 -- I'll use this for some purpose arraylength = 0 -- From future me who has to fix this almost 6yo crap: what the hell past me. function Update() -- Tip : My anim repeats itself every 0.5s -- Get the time of the wave timesincebegin = Time.time - balisebegin -- It'll help later, for bullets anim indice = math.floor((timesincebegin / 0.5) - 0.6)* 2 + 1 -- If we're near the end of the wave if wavetimer - timesincebegin < 0.3 and chosen == false then Encounter.Call("SetLukarkArmAnim", "waveballend") chosen = true -- If we're at 3/5 of the timer and that we didn't went here before elseif (timesincebegin % 0.5) > 0.3 and chosen == false then local posx1 = 0 local posy1 = 0 if lastposleft == 1 then posx1 = -43 posy1 = 152 else posx1 = -11 posy1 = 156 end -- Left bullet local bullet1 = CreateProjectile('largeball', posx1, posy1) table.insert(bullets, bullet1) arraylength = arraylength + 1 table.insert(last_temp_anims, 0) local posx2 = 0 local posy2 = 0 if lastposright == 1 then posx2 = 43 posy2 = 152 else posx2 = 11 posy2 = 156 end -- Right bullet local bullet2 = CreateProjectile('largeball', posx2, posy2) table.insert(bullets, bullet2) arraylength = arraylength + 1 table.insert(last_temp_anims, 0) -- It chooses how the enemy (and the bullets) will move ! temporarychoose = math.random(0, 4) if temporarychoose >= 3 then changesideright = true changesideleft = true elseif temporarychoose >= 2 then changesideleft = true elseif temporarychoose >= 1 then changesideright = true end -- Are we near the end of the wave ? Put the arms on the pos 1 if yes if wavetimer - timesincebegin < 1 then if lastposleft == 2 then changesideleft = true end if lastposright == 2 then changesideright = true end end -- Here we are ! Here are all my arms' movement ! -- If we didn't changed our pos if changesideleft == false and changesideright == false then Encounter.Call("SetLukarkArmAnim", "ball" .. lastposleft .. "-" .. lastposright) -- If we changed our pos on the right elseif changesideleft == false and changesideright == true then if lastposright == 1 then Encounter.Call("SetLukarkArmAnim", "waveball" .. lastposleft .."-1to2") lastposright = 2 else Encounter.Call("SetLukarkArmAnim", "waveball" .. lastposleft .."-2to1") lastposright = 1 end -- If we changed our pos on the left elseif changesideleft == true and changesideright == false then if lastposleft == 1 then Encounter.Call("SetLukarkArmAnim", "waveball1to2-" .. lastposright) lastposleft = 2 else Encounter.Call("SetLukarkArmAnim", "waveball2to1-" .. lastposright) lastposleft = 1 end -- If we changed our pos on both sides else if lastposleft == 1 and lastposright == 1 then Encounter.Call("SetLukarkArmAnim", "waveball1to2-1to2") lastposleft = 2 lastposright = 2 elseif lastposleft == 1 and lastposright == 2 then Encounter.Call("SetLukarkArmAnim", "waveball1to2-2to1") lastposleft = 2 lastposright = 1 elseif lastposleft == 2 and lastposright == 1 then Encounter.Call("SetLukarkArmAnim", "waveball2to1-1to2") lastposleft = 1 lastposright = 2 else Encounter.Call("SetLukarkArmAnim", "waveball2to1-2to1") lastposleft = 1 lastposright = 1 end end -- We've already chosen our way ! chosen = true -- Time to go for a new direction ! ^^ elseif (timesincebegin % 0.5) <= 0.2 and updates < indice / 2 then chosen = false updates = updates + 1 end -- Here are my bullet's moves -- If we're at 9/10 of the animation and we've not moved the bullet yet if wavetimer - timesincebegin < 0.3 then --Here goes nothing elseif (timesincebegin % 0.5) > 0.45 and tempanimchangestop1 == false then --and (changesideleft == true or changesideright == true) then if lastposright == 1 and changesideright == true then tempx1 = movetable[3] tempy1 = movetable[4] elseif lastposright == 2 and changesideright == true then tempx1 = movetable[7] tempy1 = movetable[8] elseif lastposright == 1 and changesideright == false then tempx1 = movetable[1] tempy1 = movetable[2] else tempx1 = movetable[9] tempy1 = movetable[10] end if lastposleft == 1 and changesideleft == true then tempx2 = -movetable[3] tempy2 = movetable[4] elseif lastposleft == 2 and changesideleft == true then tempx2 = -movetable[7] tempy2 = movetable[8] elseif lastposleft == 1 and changesideleft == false then tempx2 = -movetable[1] tempy2 = movetable[2] else tempx2 = -movetable[9] tempy2 = movetable[10] end tempanimchangestop1 = true tempanimchangestop2 = false -- If we're at 8/10 of the animation and we've not moved the bullet yet elseif (timesincebegin % 0.5) > 0.4 and tempanimchangestop2 == false then --and (changesideleft == true or changesideright == true) then if changesideright == true then tempx1 = movetable[5] tempy1 = movetable[6] elseif lastposright == 1 then tempx1 = movetable[1] tempy1 = movetable[2] else tempx1 = movetable[9] tempy1 = movetable[10] end if changesideleft == true then tempx2 = -movetable[5] tempy2 = movetable[6] elseif lastposleft == 1 then tempx2 = -movetable[1] tempy2 = movetable[2] else tempx2 = -movetable[9] tempy2 = movetable[10] end tempanimchangestop1 = false tempanimchangestop2 = true -- If we're at 7/10 of the animation and we've not moved the bullet yet elseif (timesincebegin % 0.5) > 0.35 and tempanimchangestop1 == false then --and (changesideleft == true or changesideright == true) then if lastposright == 1 and changesideright == true then tempx1 = movetable[7] tempy1 = movetable[8] elseif lastposright == 2 and changesideright == true then tempx1 = movetable[3] tempy1 = movetable[4] elseif lastposright == 1 and changesideright == false then tempx1 = movetable[1] tempy1 = movetable[2] else tempx1 = movetable[9] tempy1 = movetable[10] end if lastposleft == 1 and changesideleft == true then tempx2 = -movetable[7] tempy2 = movetable[8] elseif lastposleft == 2 and changesideleft == true then tempx2 = -movetable[3] tempy2 = movetable[4] elseif lastposleft == 1 and changesideleft == false then tempx2 = -movetable[1] tempy2 = movetable[2] else tempx2 = -movetable[9] tempy2 = movetable[10] end tempanimchangestop1 = true tempanimchangestop2 = false -- If we're at the beginning of the animation and we've not moved the -- bullet yet elseif (timesincebegin % 0.5) < 0.2 and tempanimchangestop2 == false and timesincebegin > 0.5 then --and (changesideleft == true or changesideright == true) if lastposright == 1 then tempx1 = movetable[1] tempy1 = movetable[2] elseif lastposright == 2 then tempx1 = movetable[9] tempy1 = movetable[10] end if lastposleft == 1 then tempx2 = -movetable[1] tempy2 = movetable[2] elseif lastposleft == 2 then tempx2 = -movetable[9] tempy2 = movetable[10] end tempanimchangestop1 = false tempanimchangestop2 = true end -- Here are the bullet's move, in accordance to the enemy's moves -- temp_anim is the position variable that I used to move the enemy temp_anim = Time.time - Encounter["LukarkAnim"].animPhaseCut -- Our shift, for y animshift = 5.15*math.sin(temp_anim*2) i = arraylength-7 if i < 1 then i = 1 end while i= indice then if tempx1 ~= 0 then bullet.MoveTo(tempx1, tempy1 + animshift) tempx1 = 0 tempy1 = 0 elseif tempx2 ~= 0 then bullet.MoveTo(tempx2, tempy2 + animshift) tempx2 = 0 tempy2 = 0 else -- The movement itself, very complicated. Can't explain why bullet.MoveTo(bullet.x, bullet.y - 5.15*math.sin(last_temp_anims[i]*2) + animshift) end end end if i >= indice - 2 and didit < 4 then didit = didit + 1 bullet.SetVar('xspeed', 0) bullet.SetVar('yspeed', -4) end if i < indice then local xspeed = bullet.GetVar('xspeed') local yspeed = bullet.GetVar('yspeed') bullet.Move(xspeed, yspeed) bullet.sprite.rotation = bullet.sprite.rotation + 10 end -- Don't forget to store the new last shift! last_temp_anims[i] = temp_anim i = i + 1 end -- We don't know if we've changed sides, do we? if (timesincebegin % 0.5) < 0.3 and (timesincebegin % 0.5) >= 0.2 then changesideright = false changesideleft = false tempanimchangestop = false tempanimchangestop2 = false didit = 0 end end function OnHit(bullet) Player.Hurt(8) end ================================================ FILE: Assets/Mods/RTLGeno/Lua/Waves/BallArms.lua.meta ================================================ fileFormatVersion: 2 guid: c5b95435d2fb7984aae9deec6c2f3e61 timeCreated: 1509372961 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Lua/Waves/bullettest_bouncy.lua ================================================ -- The bouncing bullets attack from the documentation example. spawntimer = 0 bullets = {} function Update() spawntimer = spawntimer + 1 if spawntimer%30 == 0 then local posx = 30 - math.random(60) local posy = Arena.height/2 local bullet = CreateProjectile('bullet', posx, posy) bullet.SetVar('velx', 1 - 2*math.random()) bullet.SetVar('vely', 0) table.insert(bullets, bullet) end for i=1,#bullets do local bullet = bullets[i] local velx = bullet.GetVar('velx') local vely = bullet.GetVar('vely') local newposx = bullet.x + velx local newposy = bullet.y + vely if(bullet.x > -Arena.width/2 and bullet.x < Arena.width/2) then if(bullet.y < -Arena.height/2 + 8) then newposy = -Arena.height/2 + 8 vely = 4 end end vely = vely - 0.04 bullet.MoveTo(newposx, newposy) bullet.SetVar('vely', vely) end end ================================================ FILE: Assets/Mods/RTLGeno/Lua/Waves/bullettest_bouncy.lua.meta ================================================ fileFormatVersion: 2 guid: ed1047ea02adc8c40b88b9f0893b6661 timeCreated: 1509372961 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Lua/Waves/bullettest_chaserorb.lua ================================================ -- The chasing attack from the documentation example. chasingbullet = CreateProjectile('bullet', Arena.width/2, Arena.height/2) chasingbullet.SetVar('xspeed', 0) chasingbullet.SetVar('yspeed', 0) function Update() local xdifference = Player.x - chasingbullet.x local ydifference = Player.y - chasingbullet.y local xspeed = chasingbullet.GetVar('xspeed') / 2 + xdifference / 100 local yspeed = chasingbullet.GetVar('yspeed') / 2 + ydifference / 100 chasingbullet.Move(xspeed, yspeed) chasingbullet.SetVar('xspeed', xspeed) chasingbullet.SetVar('yspeed', yspeed) end ================================================ FILE: Assets/Mods/RTLGeno/Lua/Waves/bullettest_chaserorb.lua.meta ================================================ fileFormatVersion: 2 guid: 5d91be3f217af3441814165f7c05cc30 timeCreated: 1509372960 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Lua/Waves/bullettest_touhou.lua ================================================ -- You've seen this one in the trailer (if you've seen the trailer). spawntimer = 0 bullets = {} yOffset = 180 mult = 0.5 function Update() spawntimer = spawntimer + 1 if(spawntimer % 30 == 0) then local numbullets = 10 for i=1,numbullets+1 do local bullet = CreateProjectile('bullet', 0, yOffset) bullet.SetVar('timer', 0) bullet.SetVar('offset', math.pi * 2 * i / numbullets) bullet.SetVar('negmult', mult) bullet.SetVar('lerp', 0) table.insert(bullets, bullet) end mult = mult + 0.05 end for i=1,#bullets do local bullet = bullets[i] local timer = bullet.GetVar('timer') local offset = bullet.GetVar('offset') local lerp = bullet.GetVar('lerp') local neg = 1 local posx = (70*lerp)*math.sin(timer*bullet.GetVar('negmult') + offset) local posy = (70*lerp)*math.cos(timer + offset) + yOffset - lerp*50 bullet.MoveTo(posx, posy) bullet.SetVar('timer', timer + 1/40) lerp = lerp + 1 / 90 if lerp > 4.0 then lerp = 4.0 end bullet.SetVar('lerp', lerp) end end ================================================ FILE: Assets/Mods/RTLGeno/Lua/Waves/bullettest_touhou.lua.meta ================================================ fileFormatVersion: 2 guid: 9fb7554fc69f1e244a52354c4464ea58 timeCreated: 1509372961 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Lua/Waves.meta ================================================ fileFormatVersion: 2 guid: 4eea135e02d1bb84db9561418e4c6437 folderAsset: yes timeCreated: 1509372960 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Lua.meta ================================================ fileFormatVersion: 2 guid: 40de79d5c26c4f243b682914912e5882 folderAsset: yes timeCreated: 1509372960 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Oh you nosy little thing ================================================ ================================================ FILE: Assets/Mods/RTLGeno/Oh you nosy little thing.meta ================================================ fileFormatVersion: 2 guid: bbd1625b4cf19ea4492181b9374e87f7 timeCreated: 1509372960 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sounds/Asriel TF.wav.meta ================================================ fileFormatVersion: 2 guid: ad6d4998c9ef82a44a75782071f64491 timeCreated: 1509372991 licenseType: Free AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sounds/mus_dogsong_tf.wav.meta ================================================ fileFormatVersion: 2 guid: 424f349e047faaf4b93ab1f3c48cc388 timeCreated: 1509372984 licenseType: Free AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sounds.meta ================================================ fileFormatVersion: 2 guid: 7c90dbf8a0bf95547a3a722d8484cee1 folderAsset: yes timeCreated: 1509372960 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/arms/1.png.meta ================================================ fileFormatVersion: 2 guid: ae1cee9d469ae32438db0f5ed7a4396f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 9bfde72799759224b8f271a2320ecb3b vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/arms/2.png.meta ================================================ fileFormatVersion: 2 guid: 9cb779ab2dff43d488e205329104540d TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 33a2f922ffbd9cc4eacce687a67b36b6 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/arms/3.png.meta ================================================ fileFormatVersion: 2 guid: b82e4f17d182b3a47943ef2e86e3e497 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4d435ad663040404c8d1e47c6ac04fb9 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/arms/4.png.meta ================================================ fileFormatVersion: 2 guid: f2b3c088ec7e49143b2baa1b573909d3 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 076b39f6f099d1842920e1f2a3dc941d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/arms/ball1-1.png.meta ================================================ fileFormatVersion: 2 guid: e157da724cbc6fe4caf961e4022d9bc1 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 49d4c3d2ba7fa4b4e846743e88bc13fd vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/arms/ball1-2.png.meta ================================================ fileFormatVersion: 2 guid: c3bba2b2c074c0f47ab73ec7eaa31c5c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 793f731125cdc4d4285caeb7cdadca82 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/arms/ball2-1.png.meta ================================================ fileFormatVersion: 2 guid: 6d0bf5dac4370b640924861a873f360a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: a4f02f909675f3b498a3075d3c961044 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/arms/ball2-2.png.meta ================================================ fileFormatVersion: 2 guid: edf2393c74059a24e93d291aa05ccb09 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: fe23ed8d8cfbe8a4b9ccaa8f57f51a28 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/arms/ballmove1-4.png.meta ================================================ fileFormatVersion: 2 guid: 5c899f1eda582ff4db7ec4afd219a699 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: a7f0e0d58c2da2542b1ae66b1a453b86 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/arms/ballmove1-5.png.meta ================================================ fileFormatVersion: 2 guid: 41c3507ee2dd4ac4ea60c598a0bde1f8 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: fd9592b1dd0261a4fa15c11c8a571e3d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/arms/ballmove1.png.meta ================================================ fileFormatVersion: 2 guid: 5b040694defd12744a10e1b94023adde TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 431135ae1461904418409ab4018c42fa vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/arms/ballmove2-4.png.meta ================================================ fileFormatVersion: 2 guid: b426ecf0f4418bd43aabe35b09018cba TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 0f50d6f3c882a9b4c891016c8f8706d6 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/arms/ballmove2-5.png.meta ================================================ fileFormatVersion: 2 guid: 018bf8cc6c93f4f4481600f9f77fd12e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2430f9cf630a74d449e98da365817e73 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/arms/ballmove2.png.meta ================================================ fileFormatVersion: 2 guid: 77d9b696ca7529c44b9102fb2f22be05 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: ad8ff5cbf30d63248acfb6350b29c579 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/arms/ballmove3.png.meta ================================================ fileFormatVersion: 2 guid: f4a6fc0a9def2934296db212ea996983 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: d8bb532dec8770b429f220cf9c61d7b0 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/arms/ballmove4-1.png.meta ================================================ fileFormatVersion: 2 guid: 9e72378ba42c3c441b740fb47d9624dc TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 6e0989627b960ca45ae771b8309304cc vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/arms/ballmove4-2.png.meta ================================================ fileFormatVersion: 2 guid: 68ee3c23caabd414685a7a2680b6c90f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 761c74ed54ffedc47840c7b613fd1daa vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/arms/ballmove4-4.png.meta ================================================ fileFormatVersion: 2 guid: 1edb8e22835d83a4b87b09cd82bb529d TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: dca48dbb562d99449bc59b7ed6ece2b4 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/arms/ballmove4-5.png.meta ================================================ fileFormatVersion: 2 guid: a29d1d7350839b54fb5c1ae57aa85fa2 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e62f09408c9926d4fb2b614977eeb0bb vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/arms/ballmove5-1.png.meta ================================================ fileFormatVersion: 2 guid: 0cd65c0e7d52acf4b9101c58f719a0e1 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 752aa7c66f641d44a9ca66e028ccfab8 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/arms/ballmove5-2.png.meta ================================================ fileFormatVersion: 2 guid: 19fa56fc2f9c2044d96628490a84474e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4c1344577b4818f44a5b28ea568c96cd vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/arms/ballmove5-4.png.meta ================================================ fileFormatVersion: 2 guid: 10daab6588543974c833bd618873049c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: a190c7fbdce8db54a8edc00d127b5055 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/arms/ballmove5-5.png.meta ================================================ fileFormatVersion: 2 guid: da3f479e401311d45b0da569bffc77cc TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: d1087015aab3dd943bd19b5abd2bb548 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/arms.meta ================================================ fileFormatVersion: 2 guid: 5894ccc4a7402a648809a11347bd9d93 folderAsset: yes timeCreated: 1509372960 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/armstry/1.png.meta ================================================ fileFormatVersion: 2 guid: cb4e33e0abe496d4fadf4844aa4102f4 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: b5e9925e1e2f51548922284966709404 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/armstry/2.png.meta ================================================ fileFormatVersion: 2 guid: c7ead94a6992b814a8a8aa156c25af90 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 6c2947d85ec5ae044b6685d5df79c578 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/armstry/3.png.meta ================================================ fileFormatVersion: 2 guid: c9d44d8e98644b546940764c6f9588d1 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 1b5460f9dfe35b042bc2e451fc920478 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/armstry/4.png.meta ================================================ fileFormatVersion: 2 guid: 31634734040586849a4a8e614424c4c8 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 1f43f96b79ed7da4ca2aca7fcb9f3c5f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/armstry.meta ================================================ fileFormatVersion: 2 guid: 3575fe3edefb67f41a87fb7d56503280 folderAsset: yes timeCreated: 1509372960 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/full.png.meta ================================================ fileFormatVersion: 2 guid: 79f85c6802269a94f8344e29209c5010 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: b54e72f3a87694a43acd2edeeb1361fc vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/hair/1.png.meta ================================================ fileFormatVersion: 2 guid: 81bf510071f274a4597c5304cd0bf69f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: db4ec033f469cd04bac4291a87ae6787 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/hair/2.png.meta ================================================ fileFormatVersion: 2 guid: 495c2d9636285dd40bb13adb702aa869 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4ee7d381e838d7c4593f1da903efc28e vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/hair/3.png.meta ================================================ fileFormatVersion: 2 guid: cba333187021a594c836a58a3bd408c4 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e997ccad788fd7d44924060f5fb52299 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/hair/4.png.meta ================================================ fileFormatVersion: 2 guid: f8467901f10221f4eb8d00070d9758ae TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 9c9f2fa72d2b06f459ce7442b16c0783 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/hair.meta ================================================ fileFormatVersion: 2 guid: 1b2bc5e3c1adc2742af973c1aeec196b folderAsset: yes timeCreated: 1509372960 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/headangry.png.meta ================================================ fileFormatVersion: 2 guid: ad05e463ce707e640b70bb932cf143a2 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: eaf698549ca24a34a82575623649cf05 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/headhappy.png.meta ================================================ fileFormatVersion: 2 guid: 4ee3a2cb8473d8446899035e9b91e287 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: de5a8ce98c510c841aa26f99c4d12d3d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/headhurt.png.meta ================================================ fileFormatVersion: 2 guid: dbfbd41bf70e95a439062b7f9418cd88 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4a4f658b1876e4d4881fa1ecfa6e5bf2 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/headmad.png.meta ================================================ fileFormatVersion: 2 guid: d7619b73171b49e408f51bc48a2ec7d7 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: f48647af3def6c34998d936ef1d268d0 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/headnormal.png.meta ================================================ fileFormatVersion: 2 guid: 429bbb618ade84a40bf4991c5ec37604 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 28f124b835a2dac4bad0ff87026717b7 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/headsmiling.png.meta ================================================ fileFormatVersion: 2 guid: 6c16af15ed5160642be11d3e04549e0c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: a9b9cb53231b1234fa08a19259c972d8 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/legs.png.meta ================================================ fileFormatVersion: 2 guid: 576e975d39e89ec44ac32c3183011aa6 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: bab526baa74dba645b3c5f02bae56646 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/torso.png.meta ================================================ fileFormatVersion: 2 guid: b1d07313658fd694983cfd835040814c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: b5a6358e897200f478279043454c6ecd vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/torsotry.png.meta ================================================ fileFormatVersion: 2 guid: 983e1ad530febc74c83dd398ef7d482d TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 1b121eafb7b11ad4186c3ba52f950ba2 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/x1/arms/1.png.meta ================================================ fileFormatVersion: 2 guid: 272b7ac516533af45a5dde89623fe134 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c262a7aec0a8c5e4ba0c17436d74fb4f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/x1/arms/2.png.meta ================================================ fileFormatVersion: 2 guid: af0320105fcbd004dae7a207332940b0 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 6313fd739065a434abd990ec99ef2983 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/x1/arms/3.png.meta ================================================ fileFormatVersion: 2 guid: 79f436283e8421b4a859ac2fdd8d801f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 12006028e79579f449c7cd1a26529ff5 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/x1/arms/4.png.meta ================================================ fileFormatVersion: 2 guid: 27a4cefd52e408842a018df92c8b2796 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 8f050e4e5e6a5994aabf6fd1c5045c83 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/x1/arms.meta ================================================ fileFormatVersion: 2 guid: 886767bb737866640a710921ada4dac5 folderAsset: yes timeCreated: 1509372961 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/x1/hair/1.png.meta ================================================ fileFormatVersion: 2 guid: 72a844ac7e92168449b62dcceaa22734 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 739458380d4457145936e2b257de07ec vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/x1/hair/2.png.meta ================================================ fileFormatVersion: 2 guid: 82715e00b4974174a8b1962b3b96fe1b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 49835233de4fec246bc3bae43a630922 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/x1/hair/3.png.meta ================================================ fileFormatVersion: 2 guid: 9215cc2e5630a1949bb79c5f3cc5d2fb TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c6d1102977ac5f3409c1567e2cc9b276 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/x1/hair/4.png.meta ================================================ fileFormatVersion: 2 guid: 3b10f8e5aebae3b47b484e1b1c08e961 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 855dc9df47785a7498941b3da32193d1 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/x1/hair.meta ================================================ fileFormatVersion: 2 guid: 63a42317c70be8f45ae6b303b99d3397 folderAsset: yes timeCreated: 1509372961 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/x1/legs.png.meta ================================================ fileFormatVersion: 2 guid: e50149d1bc35f8344895fcc490d06ba7 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 8a999a9ed0c2ee34fb30fb9f075309da vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/x1/torso.png.meta ================================================ fileFormatVersion: 2 guid: a7c523101a16d674ea8bd1c5f4f69532 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 0d9b7c2385aa98b4899388591a2df92e vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/x1.meta ================================================ fileFormatVersion: 2 guid: 433bdc3470cb4ee4181407d19fe14513 folderAsset: yes timeCreated: 1509372960 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/x2/anim1 x2.png.meta ================================================ fileFormatVersion: 2 guid: 9c353d3552382da479513348faeffa38 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: bfa4f6da3886f95449a277df14f72794 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/x2/anim2 x2.png.meta ================================================ fileFormatVersion: 2 guid: aba6d57cd569c004f9dbf906c011baef TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 7fbc9dabd3be24f4c8d2bd2967b06cf4 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/x2/anim3 x2.png.meta ================================================ fileFormatVersion: 2 guid: 1143a727544a27a41a8643fca67063f8 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 01a33ce30bc786a448cc93d76c568a68 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/x2/anim4 x2.png.meta ================================================ fileFormatVersion: 2 guid: a1eb12da4b7519346bbcdd361297018f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 9ff08ecea46ed4f43b5050c9e75d24d9 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/x2/anim5 x2.png.meta ================================================ fileFormatVersion: 2 guid: d5ed81735b02e5b408ddbf98ccc7aa43 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4ef80d323ff50124c85fff0727b54d68 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/x2/anim6 x2.png.meta ================================================ fileFormatVersion: 2 guid: d35f1f39d572a9c4486e74eaea70674c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 586edad1f838338418bdd2d142642f09 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark/x2.meta ================================================ fileFormatVersion: 2 guid: b328940e6dd9cc14c964b6289dcdd948 folderAsset: yes timeCreated: 1509372961 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Lukark.meta ================================================ fileFormatVersion: 2 guid: d8779a35a9fa60a48858228a4e3cf8ef folderAsset: yes timeCreated: 1509372960 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Mugshots/RTL/happy.png.meta ================================================ fileFormatVersion: 2 guid: 2069554815ad4bc46bbab268a78a9f6a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: a58c31f236728eb499017df7b4da56fe vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Mugshots/RTL.meta ================================================ fileFormatVersion: 2 guid: 8eb0fc8238fe3d34fa5cfc856dd7c899 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/Mugshots.meta ================================================ fileFormatVersion: 2 guid: 4f3ce22857b2efc4ab558e26093073f3 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/RTL/full.png.meta ================================================ fileFormatVersion: 2 guid: f7d30c91a20b1d742a850b7a65892ede TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 0348bf4f81495894085c9e53d1c5cf59 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/RTL/headangry.png.meta ================================================ fileFormatVersion: 2 guid: 2c6173fa3301909479898a585e215ce6 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 86fdedc618a30234698966cb5b953572 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/RTL/headangryhurt.png.meta ================================================ fileFormatVersion: 2 guid: 5d3cb4d89116a68479eb92d98f3e0b64 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 59408b6f1293202498ee14db9e433b98 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/RTL/headattacked.png.meta ================================================ fileFormatVersion: 2 guid: efe5d30cad29bb44986658cd07c8698f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 0377ec873aa94084a8739f7cf1cd46b1 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/RTL/headclose.png.meta ================================================ fileFormatVersion: 2 guid: cfe68dc4364a7f94c8d60c133db987da TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: ef835a79649e33c4784497818e9981ce vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/RTL/headhappy.png.meta ================================================ fileFormatVersion: 2 guid: d9be9b91f481ddf4e805a8c99363ae9a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: ebd63de53f3a28147a604984ebc04661 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/RTL/headhurt.png.meta ================================================ fileFormatVersion: 2 guid: afe33add293269546acdf501e8ed713f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 21cccd4a9a1d4de43b385570bcfca222 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/RTL/headnormal.png.meta ================================================ fileFormatVersion: 2 guid: b5ef370611ce22f43bb2c7eb9e05a058 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 611f103cfafecea4d90a0022019303f9 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/RTL/headspared.png.meta ================================================ fileFormatVersion: 2 guid: 2378edccb64a66249ae3a761a3459069 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 8337476bb1e818e478f2da42725de885 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/RTL/legshurt.png.meta ================================================ fileFormatVersion: 2 guid: 09d055ba56ccd6a4da03a7fa409ca58f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 94884afba4851984ab492c48c9c7a434 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/RTL/legsnormal.png.meta ================================================ fileFormatVersion: 2 guid: 8100e4644473a6341bca6e9a770ed166 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 7c2c67f47a5d4dd458cae2c93592d7c0 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/RTL/legsspared.png.meta ================================================ fileFormatVersion: 2 guid: 51af7d6409bd67b428e6628364c3e568 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 792067f634a8bfa40add459f48d5f763 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/RTL/torso.png.meta ================================================ fileFormatVersion: 2 guid: 128d3504fe0781549bed42df30ab1883 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c9df77275b4ad0c47b8b006524ec0f35 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/RTL/torsospared.png.meta ================================================ fileFormatVersion: 2 guid: ac35f68a2b375374a83bc176da17b7c8 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: bbf607ac53bd5f54384a69645f37d8d9 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/RTL.meta ================================================ fileFormatVersion: 2 guid: 402fa4f00708ae34eb6b99701d9e0dfc folderAsset: yes timeCreated: 1509372960 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/UI/Fonts/monster.png.meta ================================================ fileFormatVersion: 2 guid: b5faaf7723094aa448ab99bc52a72a4d TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 1b537d46a0dace04097b2b8e803d222a vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/UI/Fonts/monster.xml ================================================ monsterfont 000000 18 ================================================ FILE: Assets/Mods/RTLGeno/Sprites/UI/Fonts/monster.xml.meta ================================================ fileFormatVersion: 2 guid: d9c00b18e4ed7024ab64f65488020618 timeCreated: 1509372991 licenseType: Free TextScriptImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/UI/Fonts/uidialog.png.meta ================================================ fileFormatVersion: 2 guid: 48f5c006623987e4d9406260d845f7c6 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e63afd227df8dbb409aa42b452f399e3 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/UI/Fonts/uidialog.xml ================================================ uifont 30 ================================================ FILE: Assets/Mods/RTLGeno/Sprites/UI/Fonts/uidialog.xml.meta ================================================ fileFormatVersion: 2 guid: 6753d962512852846918886d1f7643cf timeCreated: 1509372987 licenseType: Free TextScriptImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/UI/Fonts.meta ================================================ fileFormatVersion: 2 guid: df451133c01d31947b7240c718b080bc folderAsset: yes timeCreated: 1509372961 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/UI/SpeechBubbles/leftlargeminus.png.meta ================================================ fileFormatVersion: 2 guid: 3d98e50082303f949839a6c0081ee63c TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 0b9f8a4bbd30722449dc63ec4e4bfa31 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/UI/SpeechBubbles/leftlargeminus.xml ================================================ 150 ================================================ FILE: Assets/Mods/RTLGeno/Sprites/UI/SpeechBubbles/leftlargeminus.xml.meta ================================================ fileFormatVersion: 2 guid: 19bcdcec75d97df4e90b0cf29fa9921b timeCreated: 1509372983 licenseType: Free TextScriptImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/UI/SpeechBubbles/leftwideminus.png.meta ================================================ fileFormatVersion: 2 guid: f038209716229bc40b7c6a653c993c1e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: b867b4714901b454a89c6e4fb5f7966b vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/UI/SpeechBubbles/leftwideminus.xml ================================================ 150 ================================================ FILE: Assets/Mods/RTLGeno/Sprites/UI/SpeechBubbles/leftwideminus.xml.meta ================================================ fileFormatVersion: 2 guid: b69b858f9ddbdd64ab1763e8fedba13f timeCreated: 1509372991 licenseType: Free TextScriptImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/UI/SpeechBubbles/rightlargeminus.png.meta ================================================ fileFormatVersion: 2 guid: 5c5bda679ef92a141a1808becb3624eb TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 1c01f3692f9f9334d8d0c7ac1010b062 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/UI/SpeechBubbles/rightlargeminus.xml ================================================ 150 ================================================ FILE: Assets/Mods/RTLGeno/Sprites/UI/SpeechBubbles/rightlargeminus.xml.meta ================================================ fileFormatVersion: 2 guid: 87c2fd9cffc2cf04ba9d778583f39b61 timeCreated: 1509372988 licenseType: Free TextScriptImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/UI/SpeechBubbles/rightwideminus.png.meta ================================================ fileFormatVersion: 2 guid: 3a433f97209997142a22c2374c4cd36a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 8cf6f4a1c112719408c717d15765b31c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/UI/SpeechBubbles/rightwideminus.xml ================================================ 150 ================================================ FILE: Assets/Mods/RTLGeno/Sprites/UI/SpeechBubbles/rightwideminus.xml.meta ================================================ fileFormatVersion: 2 guid: 3b264fba2d8093941b505f1dd01903a7 timeCreated: 1509372983 licenseType: Free TextScriptImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/UI/SpeechBubbles.meta ================================================ fileFormatVersion: 2 guid: c3480df4bf121b54a944f123c683cff9 folderAsset: yes timeCreated: 1509372961 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/UI.meta ================================================ fileFormatVersion: 2 guid: 90fd9ed8febefbb4999322e7175fb4cf folderAsset: yes timeCreated: 1509372960 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/bg.png.meta ================================================ fileFormatVersion: 2 guid: 37b0ef82741af8b4792cccfeafaa4dca TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 484def3633b9c284fbce6bbaaeb9f8ea vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/blank.png.meta ================================================ fileFormatVersion: 2 guid: a93e78b645ff1c84d864a4fcb3bac338 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2f8f2bfbaecc10742bdd15cab7e2cdbe vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/bullet.png.meta ================================================ fileFormatVersion: 2 guid: ba408848259596948a21c8d2b8172297 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 94efe1caff342384f817405aeba21bce vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/empty.png.meta ================================================ fileFormatVersion: 2 guid: be4ddd6e39ec9fd4f90c9da6ae6a4cf6 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 81e5cb585d41e65489e94a006b50f537 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/largeball.png.meta ================================================ fileFormatVersion: 2 guid: 3d0c71837fd089243a3439722e7f6fcb TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 91831ada41b2fa94e970ed6fd588e3a0 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites/preview.png.meta ================================================ fileFormatVersion: 2 guid: b53a962b830bcec4eb16fb8e276bc33e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: a4d11f8bbfb619a428291c04b3949196 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno/Sprites.meta ================================================ fileFormatVersion: 2 guid: 214c83c70a5fc3d409aafba91f833d93 folderAsset: yes timeCreated: 1509372960 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods/RTLGeno.meta ================================================ fileFormatVersion: 2 guid: 869a61f682422db4d875fcdc715932de folderAsset: yes timeCreated: 1502900053 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Mods.meta ================================================ fileFormatVersion: 2 guid: 28c63f45b889de144bb9d70974cb3406 folderAsset: yes timeCreated: 1487368923 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/DiscordSDK/ActivityManager.cs ================================================ using System; namespace Discord { public partial class ActivityManager { public void RegisterCommand() { RegisterCommand(null); } } } ================================================ FILE: Assets/Plugins/DiscordSDK/ActivityManager.cs.meta ================================================ fileFormatVersion: 2 guid: c206e52dea586f14f97228eb4e734a79 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/DiscordSDK/Constants.cs ================================================ using System; namespace Discord { static class Constants { public const string DllName = "discord_game_sdk"; } } ================================================ FILE: Assets/Plugins/DiscordSDK/Constants.cs.meta ================================================ fileFormatVersion: 2 guid: d2ef8d8c5a46b21429abee41edc5905d MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/DiscordSDK/Core.cs ================================================ using System; using System.Runtime.InteropServices; using System.Text; namespace Discord { public enum Result { Ok = 0, ServiceUnavailable = 1, InvalidVersion = 2, LockFailed = 3, InternalError = 4, InvalidPayload = 5, InvalidCommand = 6, InvalidPermissions = 7, NotFetched = 8, NotFound = 9, Conflict = 10, InvalidSecret = 11, InvalidJoinSecret = 12, NoEligibleActivity = 13, InvalidInvite = 14, NotAuthenticated = 15, InvalidAccessToken = 16, ApplicationMismatch = 17, InvalidDataUrl = 18, InvalidBase64 = 19, NotFiltered = 20, LobbyFull = 21, InvalidLobbySecret = 22, InvalidFilename = 23, InvalidFileSize = 24, InvalidEntitlement = 25, NotInstalled = 26, NotRunning = 27, InsufficientBuffer = 28, PurchaseCanceled = 29, InvalidGuild = 30, InvalidEvent = 31, InvalidChannel = 32, InvalidOrigin = 33, RateLimited = 34, OAuth2Error = 35, SelectChannelTimeout = 36, GetGuildTimeout = 37, SelectVoiceForceRequired = 38, CaptureShortcutAlreadyListening = 39, UnauthorizedForAchievement = 40, InvalidGiftCode = 41, PurchaseError = 42, TransactionAborted = 43, DrawingInitFailed = 44, } public enum CreateFlags { Default = 0, NoRequireDiscord = 1, } public enum LogLevel { Error = 1, Warn, Info, Debug, } public enum UserFlag { Partner = 2, HypeSquadEvents = 4, HypeSquadHouse1 = 64, HypeSquadHouse2 = 128, HypeSquadHouse3 = 256, } public enum PremiumType { None = 0, Tier1 = 1, Tier2 = 2, } public enum ImageType { User, } public enum ActivityPartyPrivacy { Private = 0, Public = 1, } public enum ActivityType { Playing, Streaming, Listening, Watching, } public enum ActivityActionType { Join = 1, Spectate, } public enum ActivitySupportedPlatformFlags { Desktop = 1, Android = 2, iOS = 4, } public enum ActivityJoinRequestReply { No, Yes, Ignore, } public enum Status { Offline = 0, Online = 1, Idle = 2, DoNotDisturb = 3, } public enum RelationshipType { None, Friend, Blocked, PendingIncoming, PendingOutgoing, Implicit, } public enum LobbyType { Private = 1, Public, } public enum LobbySearchComparison { LessThanOrEqual = -2, LessThan, Equal, GreaterThan, GreaterThanOrEqual, NotEqual, } public enum LobbySearchCast { String = 1, Number, } public enum LobbySearchDistance { Local, Default, Extended, Global, } public enum KeyVariant { Normal, Right, Left, } public enum MouseButton { Left, Middle, Right, } public enum EntitlementType { Purchase = 1, PremiumSubscription, DeveloperGift, TestModePurchase, FreePurchase, UserGift, PremiumPurchase, } public enum SkuType { Application = 1, DLC, Consumable, Bundle, } public enum InputModeType { VoiceActivity = 0, PushToTalk, } [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] public partial struct User { public Int64 Id; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 256)] public string Username; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 8)] public string Discriminator; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 128)] public string Avatar; public bool Bot; } [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] public partial struct OAuth2Token { [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 128)] public string AccessToken; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 1024)] public string Scopes; public Int64 Expires; } [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] public partial struct ImageHandle { public ImageType Type; public Int64 Id; public UInt32 Size; } [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] public partial struct ImageDimensions { public UInt32 Width; public UInt32 Height; } [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] public partial struct ActivityTimestamps { public Int64 Start; public Int64 End; } [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] public partial struct ActivityAssets { [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 128)] public string LargeImage; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 128)] public string LargeText; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 128)] public string SmallImage; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 128)] public string SmallText; } [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] public partial struct PartySize { public Int32 CurrentSize; public Int32 MaxSize; } [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] public partial struct ActivityParty { [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 128)] public string Id; public PartySize Size; public ActivityPartyPrivacy Privacy; } [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] public partial struct ActivitySecrets { [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 128)] public string Match; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 128)] public string Join; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 128)] public string Spectate; } [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] public partial struct Activity { public ActivityType Type; public Int64 ApplicationId; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 128)] public string Name; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 128)] public string State; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 128)] public string Details; public ActivityTimestamps Timestamps; public ActivityAssets Assets; public ActivityParty Party; public ActivitySecrets Secrets; public bool Instance; public UInt32 SupportedPlatforms; } [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] public partial struct Presence { public Status Status; public Activity Activity; } [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] public partial struct Relationship { public RelationshipType Type; public User User; public Presence Presence; } [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] public partial struct Lobby { public Int64 Id; public LobbyType Type; public Int64 OwnerId; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 128)] public string Secret; public UInt32 Capacity; public bool Locked; } [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] public partial struct ImeUnderline { public Int32 From; public Int32 To; public UInt32 Color; public UInt32 BackgroundColor; public bool Thick; } [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] public partial struct Rect { public Int32 Left; public Int32 Top; public Int32 Right; public Int32 Bottom; } [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] public partial struct FileStat { [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 260)] public string Filename; public UInt64 Size; public UInt64 LastModified; } [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] public partial struct Entitlement { public Int64 Id; public EntitlementType Type; public Int64 SkuId; } [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] public partial struct SkuPrice { public UInt32 Amount; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 16)] public string Currency; } [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] public partial struct Sku { public Int64 Id; public SkuType Type; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 256)] public string Name; public SkuPrice Price; } [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] public partial struct InputMode { public InputModeType Type; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 256)] public string Shortcut; } [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] public partial struct UserAchievement { public Int64 UserId; public Int64 AchievementId; public byte PercentComplete; [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 64)] public string UnlockedAt; } [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] public partial struct LobbyTransaction { [StructLayout(LayoutKind.Sequential)] internal partial struct FFIMethods { [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result SetTypeMethod(IntPtr methodsPtr, LobbyType type); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result SetOwnerMethod(IntPtr methodsPtr, Int64 ownerId); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result SetCapacityMethod(IntPtr methodsPtr, UInt32 capacity); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result SetMetadataMethod(IntPtr methodsPtr, [MarshalAs(UnmanagedType.LPStr)]string key, [MarshalAs(UnmanagedType.LPStr)]string value); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result DeleteMetadataMethod(IntPtr methodsPtr, [MarshalAs(UnmanagedType.LPStr)]string key); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result SetLockedMethod(IntPtr methodsPtr, bool locked); internal SetTypeMethod SetType; internal SetOwnerMethod SetOwner; internal SetCapacityMethod SetCapacity; internal SetMetadataMethod SetMetadata; internal DeleteMetadataMethod DeleteMetadata; internal SetLockedMethod SetLocked; } internal IntPtr MethodsPtr; internal Object MethodsStructure; private FFIMethods Methods { get { if (MethodsStructure == null) { MethodsStructure = Marshal.PtrToStructure(MethodsPtr, typeof(FFIMethods)); } return (FFIMethods)MethodsStructure; } } public void SetType(LobbyType type) { if (MethodsPtr != IntPtr.Zero) { var res = Methods.SetType(MethodsPtr, type); if (res != Result.Ok) { throw new ResultException(res); } } } public void SetOwner(Int64 ownerId) { if (MethodsPtr != IntPtr.Zero) { var res = Methods.SetOwner(MethodsPtr, ownerId); if (res != Result.Ok) { throw new ResultException(res); } } } public void SetCapacity(UInt32 capacity) { if (MethodsPtr != IntPtr.Zero) { var res = Methods.SetCapacity(MethodsPtr, capacity); if (res != Result.Ok) { throw new ResultException(res); } } } public void SetMetadata(string key, string value) { if (MethodsPtr != IntPtr.Zero) { var res = Methods.SetMetadata(MethodsPtr, key, value); if (res != Result.Ok) { throw new ResultException(res); } } } public void DeleteMetadata(string key) { if (MethodsPtr != IntPtr.Zero) { var res = Methods.DeleteMetadata(MethodsPtr, key); if (res != Result.Ok) { throw new ResultException(res); } } } public void SetLocked(bool locked) { if (MethodsPtr != IntPtr.Zero) { var res = Methods.SetLocked(MethodsPtr, locked); if (res != Result.Ok) { throw new ResultException(res); } } } } [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] public partial struct LobbyMemberTransaction { [StructLayout(LayoutKind.Sequential)] internal partial struct FFIMethods { [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result SetMetadataMethod(IntPtr methodsPtr, [MarshalAs(UnmanagedType.LPStr)]string key, [MarshalAs(UnmanagedType.LPStr)]string value); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result DeleteMetadataMethod(IntPtr methodsPtr, [MarshalAs(UnmanagedType.LPStr)]string key); internal SetMetadataMethod SetMetadata; internal DeleteMetadataMethod DeleteMetadata; } internal IntPtr MethodsPtr; internal Object MethodsStructure; private FFIMethods Methods { get { if (MethodsStructure == null) { MethodsStructure = Marshal.PtrToStructure(MethodsPtr, typeof(FFIMethods)); } return (FFIMethods)MethodsStructure; } } public void SetMetadata(string key, string value) { if (MethodsPtr != IntPtr.Zero) { var res = Methods.SetMetadata(MethodsPtr, key, value); if (res != Result.Ok) { throw new ResultException(res); } } } public void DeleteMetadata(string key) { if (MethodsPtr != IntPtr.Zero) { var res = Methods.DeleteMetadata(MethodsPtr, key); if (res != Result.Ok) { throw new ResultException(res); } } } } [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)] public partial struct LobbySearchQuery { [StructLayout(LayoutKind.Sequential)] internal partial struct FFIMethods { [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result FilterMethod(IntPtr methodsPtr, [MarshalAs(UnmanagedType.LPStr)]string key, LobbySearchComparison comparison, LobbySearchCast cast, [MarshalAs(UnmanagedType.LPStr)]string value); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result SortMethod(IntPtr methodsPtr, [MarshalAs(UnmanagedType.LPStr)]string key, LobbySearchCast cast, [MarshalAs(UnmanagedType.LPStr)]string value); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result LimitMethod(IntPtr methodsPtr, UInt32 limit); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result DistanceMethod(IntPtr methodsPtr, LobbySearchDistance distance); internal FilterMethod Filter; internal SortMethod Sort; internal LimitMethod Limit; internal DistanceMethod Distance; } internal IntPtr MethodsPtr; internal Object MethodsStructure; private FFIMethods Methods { get { if (MethodsStructure == null) { MethodsStructure = Marshal.PtrToStructure(MethodsPtr, typeof(FFIMethods)); } return (FFIMethods)MethodsStructure; } } public void Filter(string key, LobbySearchComparison comparison, LobbySearchCast cast, string value) { if (MethodsPtr != IntPtr.Zero) { var res = Methods.Filter(MethodsPtr, key, comparison, cast, value); if (res != Result.Ok) { throw new ResultException(res); } } } public void Sort(string key, LobbySearchCast cast, string value) { if (MethodsPtr != IntPtr.Zero) { var res = Methods.Sort(MethodsPtr, key, cast, value); if (res != Result.Ok) { throw new ResultException(res); } } } public void Limit(UInt32 limit) { if (MethodsPtr != IntPtr.Zero) { var res = Methods.Limit(MethodsPtr, limit); if (res != Result.Ok) { throw new ResultException(res); } } } public void Distance(LobbySearchDistance distance) { if (MethodsPtr != IntPtr.Zero) { var res = Methods.Distance(MethodsPtr, distance); if (res != Result.Ok) { throw new ResultException(res); } } } } public partial class ResultException : Exception { public readonly Result Result; public ResultException(Result result) : base(result.ToString()) { } } public partial class Discord : IDisposable { [StructLayout(LayoutKind.Sequential)] internal partial struct FFIEvents { } [StructLayout(LayoutKind.Sequential)] internal partial struct FFIMethods { [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void DestroyHandler(IntPtr MethodsPtr); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result RunCallbacksMethod(IntPtr methodsPtr); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void SetLogHookCallback(IntPtr ptr, LogLevel level, [MarshalAs(UnmanagedType.LPStr)]string message); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void SetLogHookMethod(IntPtr methodsPtr, LogLevel minLevel, IntPtr callbackData, SetLogHookCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate IntPtr GetApplicationManagerMethod(IntPtr discordPtr); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate IntPtr GetUserManagerMethod(IntPtr discordPtr); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate IntPtr GetImageManagerMethod(IntPtr discordPtr); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate IntPtr GetActivityManagerMethod(IntPtr discordPtr); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate IntPtr GetRelationshipManagerMethod(IntPtr discordPtr); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate IntPtr GetLobbyManagerMethod(IntPtr discordPtr); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate IntPtr GetNetworkManagerMethod(IntPtr discordPtr); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate IntPtr GetOverlayManagerMethod(IntPtr discordPtr); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate IntPtr GetStorageManagerMethod(IntPtr discordPtr); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate IntPtr GetStoreManagerMethod(IntPtr discordPtr); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate IntPtr GetVoiceManagerMethod(IntPtr discordPtr); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate IntPtr GetAchievementManagerMethod(IntPtr discordPtr); internal DestroyHandler Destroy; internal RunCallbacksMethod RunCallbacks; internal SetLogHookMethod SetLogHook; internal GetApplicationManagerMethod GetApplicationManager; internal GetUserManagerMethod GetUserManager; internal GetImageManagerMethod GetImageManager; internal GetActivityManagerMethod GetActivityManager; internal GetRelationshipManagerMethod GetRelationshipManager; internal GetLobbyManagerMethod GetLobbyManager; internal GetNetworkManagerMethod GetNetworkManager; internal GetOverlayManagerMethod GetOverlayManager; internal GetStorageManagerMethod GetStorageManager; internal GetStoreManagerMethod GetStoreManager; internal GetVoiceManagerMethod GetVoiceManager; internal GetAchievementManagerMethod GetAchievementManager; } [StructLayout(LayoutKind.Sequential)] internal partial struct FFICreateParams { internal Int64 ClientId; internal UInt64 Flags; internal IntPtr Events; internal IntPtr EventData; internal IntPtr ApplicationEvents; internal UInt32 ApplicationVersion; internal IntPtr UserEvents; internal UInt32 UserVersion; internal IntPtr ImageEvents; internal UInt32 ImageVersion; internal IntPtr ActivityEvents; internal UInt32 ActivityVersion; internal IntPtr RelationshipEvents; internal UInt32 RelationshipVersion; internal IntPtr LobbyEvents; internal UInt32 LobbyVersion; internal IntPtr NetworkEvents; internal UInt32 NetworkVersion; internal IntPtr OverlayEvents; internal UInt32 OverlayVersion; internal IntPtr StorageEvents; internal UInt32 StorageVersion; internal IntPtr StoreEvents; internal UInt32 StoreVersion; internal IntPtr VoiceEvents; internal UInt32 VoiceVersion; internal IntPtr AchievementEvents; internal UInt32 AchievementVersion; } [DllImport(Constants.DllName, ExactSpelling = true, CallingConvention = CallingConvention.Winapi)] private static extern Result DiscordCreate(UInt32 version, ref FFICreateParams createParams, out IntPtr manager); public delegate void SetLogHookHandler(LogLevel level, string message); private GCHandle SelfHandle; private IntPtr EventsPtr; private FFIEvents Events; private IntPtr ApplicationEventsPtr; private ApplicationManager.FFIEvents ApplicationEvents; internal ApplicationManager ApplicationManagerInstance; private IntPtr UserEventsPtr; private UserManager.FFIEvents UserEvents; internal UserManager UserManagerInstance; private IntPtr ImageEventsPtr; private ImageManager.FFIEvents ImageEvents; internal ImageManager ImageManagerInstance; private IntPtr ActivityEventsPtr; private ActivityManager.FFIEvents ActivityEvents; internal ActivityManager ActivityManagerInstance; private IntPtr RelationshipEventsPtr; private RelationshipManager.FFIEvents RelationshipEvents; internal RelationshipManager RelationshipManagerInstance; private IntPtr LobbyEventsPtr; private LobbyManager.FFIEvents LobbyEvents; internal LobbyManager LobbyManagerInstance; private IntPtr NetworkEventsPtr; private NetworkManager.FFIEvents NetworkEvents; internal NetworkManager NetworkManagerInstance; private IntPtr OverlayEventsPtr; private OverlayManager.FFIEvents OverlayEvents; internal OverlayManager OverlayManagerInstance; private IntPtr StorageEventsPtr; private StorageManager.FFIEvents StorageEvents; internal StorageManager StorageManagerInstance; private IntPtr StoreEventsPtr; private StoreManager.FFIEvents StoreEvents; internal StoreManager StoreManagerInstance; private IntPtr VoiceEventsPtr; private VoiceManager.FFIEvents VoiceEvents; internal VoiceManager VoiceManagerInstance; private IntPtr AchievementEventsPtr; private AchievementManager.FFIEvents AchievementEvents; internal AchievementManager AchievementManagerInstance; private IntPtr MethodsPtr; private Object MethodsStructure; private FFIMethods Methods { get { if (MethodsStructure == null) { MethodsStructure = Marshal.PtrToStructure(MethodsPtr, typeof(FFIMethods)); } return (FFIMethods)MethodsStructure; } } private GCHandle? setLogHook; public Discord(Int64 clientId, UInt64 flags) { FFICreateParams createParams; createParams.ClientId = clientId; createParams.Flags = flags; Events = new FFIEvents(); EventsPtr = Marshal.AllocHGlobal(Marshal.SizeOf(Events)); createParams.Events = EventsPtr; SelfHandle = GCHandle.Alloc(this); createParams.EventData = GCHandle.ToIntPtr(SelfHandle); ApplicationEvents = new ApplicationManager.FFIEvents(); ApplicationEventsPtr = Marshal.AllocHGlobal(Marshal.SizeOf(ApplicationEvents)); createParams.ApplicationEvents = ApplicationEventsPtr; createParams.ApplicationVersion = 1; UserEvents = new UserManager.FFIEvents(); UserEventsPtr = Marshal.AllocHGlobal(Marshal.SizeOf(UserEvents)); createParams.UserEvents = UserEventsPtr; createParams.UserVersion = 1; ImageEvents = new ImageManager.FFIEvents(); ImageEventsPtr = Marshal.AllocHGlobal(Marshal.SizeOf(ImageEvents)); createParams.ImageEvents = ImageEventsPtr; createParams.ImageVersion = 1; ActivityEvents = new ActivityManager.FFIEvents(); ActivityEventsPtr = Marshal.AllocHGlobal(Marshal.SizeOf(ActivityEvents)); createParams.ActivityEvents = ActivityEventsPtr; createParams.ActivityVersion = 1; RelationshipEvents = new RelationshipManager.FFIEvents(); RelationshipEventsPtr = Marshal.AllocHGlobal(Marshal.SizeOf(RelationshipEvents)); createParams.RelationshipEvents = RelationshipEventsPtr; createParams.RelationshipVersion = 1; LobbyEvents = new LobbyManager.FFIEvents(); LobbyEventsPtr = Marshal.AllocHGlobal(Marshal.SizeOf(LobbyEvents)); createParams.LobbyEvents = LobbyEventsPtr; createParams.LobbyVersion = 1; NetworkEvents = new NetworkManager.FFIEvents(); NetworkEventsPtr = Marshal.AllocHGlobal(Marshal.SizeOf(NetworkEvents)); createParams.NetworkEvents = NetworkEventsPtr; createParams.NetworkVersion = 1; OverlayEvents = new OverlayManager.FFIEvents(); OverlayEventsPtr = Marshal.AllocHGlobal(Marshal.SizeOf(OverlayEvents)); createParams.OverlayEvents = OverlayEventsPtr; createParams.OverlayVersion = 2; StorageEvents = new StorageManager.FFIEvents(); StorageEventsPtr = Marshal.AllocHGlobal(Marshal.SizeOf(StorageEvents)); createParams.StorageEvents = StorageEventsPtr; createParams.StorageVersion = 1; StoreEvents = new StoreManager.FFIEvents(); StoreEventsPtr = Marshal.AllocHGlobal(Marshal.SizeOf(StoreEvents)); createParams.StoreEvents = StoreEventsPtr; createParams.StoreVersion = 1; VoiceEvents = new VoiceManager.FFIEvents(); VoiceEventsPtr = Marshal.AllocHGlobal(Marshal.SizeOf(VoiceEvents)); createParams.VoiceEvents = VoiceEventsPtr; createParams.VoiceVersion = 1; AchievementEvents = new AchievementManager.FFIEvents(); AchievementEventsPtr = Marshal.AllocHGlobal(Marshal.SizeOf(AchievementEvents)); createParams.AchievementEvents = AchievementEventsPtr; createParams.AchievementVersion = 1; InitEvents(EventsPtr, ref Events); var result = DiscordCreate(3, ref createParams, out MethodsPtr); if (result != Result.Ok) { Dispose(); throw new ResultException(result); } } private void InitEvents(IntPtr eventsPtr, ref FFIEvents events) { Marshal.StructureToPtr(events, eventsPtr, false); } public void Dispose() { if (MethodsPtr != IntPtr.Zero) { Methods.Destroy(MethodsPtr); } SelfHandle.Free(); Marshal.FreeHGlobal(EventsPtr); Marshal.FreeHGlobal(ApplicationEventsPtr); Marshal.FreeHGlobal(UserEventsPtr); Marshal.FreeHGlobal(ImageEventsPtr); Marshal.FreeHGlobal(ActivityEventsPtr); Marshal.FreeHGlobal(RelationshipEventsPtr); Marshal.FreeHGlobal(LobbyEventsPtr); Marshal.FreeHGlobal(NetworkEventsPtr); Marshal.FreeHGlobal(OverlayEventsPtr); Marshal.FreeHGlobal(StorageEventsPtr); Marshal.FreeHGlobal(StoreEventsPtr); Marshal.FreeHGlobal(VoiceEventsPtr); Marshal.FreeHGlobal(AchievementEventsPtr); if (setLogHook.HasValue) { setLogHook.Value.Free(); } } public void RunCallbacks() { var res = Methods.RunCallbacks(MethodsPtr); if (res != Result.Ok) { throw new ResultException(res); } } [MonoPInvokeCallback] private static void SetLogHookCallbackImpl(IntPtr ptr, LogLevel level, string message) { GCHandle h = GCHandle.FromIntPtr(ptr); SetLogHookHandler callback = (SetLogHookHandler)h.Target; callback(level, message); } public void SetLogHook(LogLevel minLevel, SetLogHookHandler callback) { if (setLogHook.HasValue) { setLogHook.Value.Free(); } setLogHook = GCHandle.Alloc(callback); Methods.SetLogHook(MethodsPtr, minLevel, GCHandle.ToIntPtr(setLogHook.Value), SetLogHookCallbackImpl); } public ApplicationManager GetApplicationManager() { if (ApplicationManagerInstance == null) { ApplicationManagerInstance = new ApplicationManager( Methods.GetApplicationManager(MethodsPtr), ApplicationEventsPtr, ref ApplicationEvents ); } return ApplicationManagerInstance; } public UserManager GetUserManager() { if (UserManagerInstance == null) { UserManagerInstance = new UserManager( Methods.GetUserManager(MethodsPtr), UserEventsPtr, ref UserEvents ); } return UserManagerInstance; } public ImageManager GetImageManager() { if (ImageManagerInstance == null) { ImageManagerInstance = new ImageManager( Methods.GetImageManager(MethodsPtr), ImageEventsPtr, ref ImageEvents ); } return ImageManagerInstance; } public ActivityManager GetActivityManager() { if (ActivityManagerInstance == null) { ActivityManagerInstance = new ActivityManager( Methods.GetActivityManager(MethodsPtr), ActivityEventsPtr, ref ActivityEvents ); } return ActivityManagerInstance; } public RelationshipManager GetRelationshipManager() { if (RelationshipManagerInstance == null) { RelationshipManagerInstance = new RelationshipManager( Methods.GetRelationshipManager(MethodsPtr), RelationshipEventsPtr, ref RelationshipEvents ); } return RelationshipManagerInstance; } public LobbyManager GetLobbyManager() { if (LobbyManagerInstance == null) { LobbyManagerInstance = new LobbyManager( Methods.GetLobbyManager(MethodsPtr), LobbyEventsPtr, ref LobbyEvents ); } return LobbyManagerInstance; } public NetworkManager GetNetworkManager() { if (NetworkManagerInstance == null) { NetworkManagerInstance = new NetworkManager( Methods.GetNetworkManager(MethodsPtr), NetworkEventsPtr, ref NetworkEvents ); } return NetworkManagerInstance; } public OverlayManager GetOverlayManager() { if (OverlayManagerInstance == null) { OverlayManagerInstance = new OverlayManager( Methods.GetOverlayManager(MethodsPtr), OverlayEventsPtr, ref OverlayEvents ); } return OverlayManagerInstance; } public StorageManager GetStorageManager() { if (StorageManagerInstance == null) { StorageManagerInstance = new StorageManager( Methods.GetStorageManager(MethodsPtr), StorageEventsPtr, ref StorageEvents ); } return StorageManagerInstance; } public StoreManager GetStoreManager() { if (StoreManagerInstance == null) { StoreManagerInstance = new StoreManager( Methods.GetStoreManager(MethodsPtr), StoreEventsPtr, ref StoreEvents ); } return StoreManagerInstance; } public VoiceManager GetVoiceManager() { if (VoiceManagerInstance == null) { VoiceManagerInstance = new VoiceManager( Methods.GetVoiceManager(MethodsPtr), VoiceEventsPtr, ref VoiceEvents ); } return VoiceManagerInstance; } public AchievementManager GetAchievementManager() { if (AchievementManagerInstance == null) { AchievementManagerInstance = new AchievementManager( Methods.GetAchievementManager(MethodsPtr), AchievementEventsPtr, ref AchievementEvents ); } return AchievementManagerInstance; } } internal partial class MonoPInvokeCallbackAttribute : Attribute { } public partial class ApplicationManager { [StructLayout(LayoutKind.Sequential)] internal partial struct FFIEvents { } [StructLayout(LayoutKind.Sequential)] internal partial struct FFIMethods { [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void ValidateOrExitCallback(IntPtr ptr, Result result); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void ValidateOrExitMethod(IntPtr methodsPtr, IntPtr callbackData, ValidateOrExitCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void GetCurrentLocaleMethod(IntPtr methodsPtr, StringBuilder locale); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void GetCurrentBranchMethod(IntPtr methodsPtr, StringBuilder branch); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void GetOAuth2TokenCallback(IntPtr ptr, Result result, ref OAuth2Token oauth2Token); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void GetOAuth2TokenMethod(IntPtr methodsPtr, IntPtr callbackData, GetOAuth2TokenCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void GetTicketCallback(IntPtr ptr, Result result, [MarshalAs(UnmanagedType.LPStr)]ref string data); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void GetTicketMethod(IntPtr methodsPtr, IntPtr callbackData, GetTicketCallback callback); internal ValidateOrExitMethod ValidateOrExit; internal GetCurrentLocaleMethod GetCurrentLocale; internal GetCurrentBranchMethod GetCurrentBranch; internal GetOAuth2TokenMethod GetOAuth2Token; internal GetTicketMethod GetTicket; } public delegate void ValidateOrExitHandler(Result result); public delegate void GetOAuth2TokenHandler(Result result, ref OAuth2Token oauth2Token); public delegate void GetTicketHandler(Result result, ref string data); private IntPtr MethodsPtr; private Object MethodsStructure; private FFIMethods Methods { get { if (MethodsStructure == null) { MethodsStructure = Marshal.PtrToStructure(MethodsPtr, typeof(FFIMethods)); } return (FFIMethods)MethodsStructure; } } internal ApplicationManager(IntPtr ptr, IntPtr eventsPtr, ref FFIEvents events) { if (eventsPtr == IntPtr.Zero) { throw new ResultException(Result.InternalError); } InitEvents(eventsPtr, ref events); MethodsPtr = ptr; if (MethodsPtr == IntPtr.Zero) { throw new ResultException(Result.InternalError); } } private void InitEvents(IntPtr eventsPtr, ref FFIEvents events) { Marshal.StructureToPtr(events, eventsPtr, false); } [MonoPInvokeCallback] private static void ValidateOrExitCallbackImpl(IntPtr ptr, Result result) { GCHandle h = GCHandle.FromIntPtr(ptr); ValidateOrExitHandler callback = (ValidateOrExitHandler)h.Target; h.Free(); callback(result); } public void ValidateOrExit(ValidateOrExitHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.ValidateOrExit(MethodsPtr, GCHandle.ToIntPtr(wrapped), ValidateOrExitCallbackImpl); } public string GetCurrentLocale() { var ret = new StringBuilder(128); Methods.GetCurrentLocale(MethodsPtr, ret); return ret.ToString(); } public string GetCurrentBranch() { var ret = new StringBuilder(4096); Methods.GetCurrentBranch(MethodsPtr, ret); return ret.ToString(); } [MonoPInvokeCallback] private static void GetOAuth2TokenCallbackImpl(IntPtr ptr, Result result, ref OAuth2Token oauth2Token) { GCHandle h = GCHandle.FromIntPtr(ptr); GetOAuth2TokenHandler callback = (GetOAuth2TokenHandler)h.Target; h.Free(); callback(result, ref oauth2Token); } public void GetOAuth2Token(GetOAuth2TokenHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.GetOAuth2Token(MethodsPtr, GCHandle.ToIntPtr(wrapped), GetOAuth2TokenCallbackImpl); } [MonoPInvokeCallback] private static void GetTicketCallbackImpl(IntPtr ptr, Result result, ref string data) { GCHandle h = GCHandle.FromIntPtr(ptr); GetTicketHandler callback = (GetTicketHandler)h.Target; h.Free(); callback(result, ref data); } public void GetTicket(GetTicketHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.GetTicket(MethodsPtr, GCHandle.ToIntPtr(wrapped), GetTicketCallbackImpl); } } public partial class UserManager { [StructLayout(LayoutKind.Sequential)] internal partial struct FFIEvents { [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void CurrentUserUpdateHandler(IntPtr ptr); internal CurrentUserUpdateHandler OnCurrentUserUpdate; } [StructLayout(LayoutKind.Sequential)] internal partial struct FFIMethods { [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result GetCurrentUserMethod(IntPtr methodsPtr, ref User currentUser); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void GetUserCallback(IntPtr ptr, Result result, ref User user); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void GetUserMethod(IntPtr methodsPtr, Int64 userId, IntPtr callbackData, GetUserCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result GetCurrentUserPremiumTypeMethod(IntPtr methodsPtr, ref PremiumType premiumType); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result CurrentUserHasFlagMethod(IntPtr methodsPtr, UserFlag flag, ref bool hasFlag); internal GetCurrentUserMethod GetCurrentUser; internal GetUserMethod GetUser; internal GetCurrentUserPremiumTypeMethod GetCurrentUserPremiumType; internal CurrentUserHasFlagMethod CurrentUserHasFlag; } public delegate void GetUserHandler(Result result, ref User user); public delegate void CurrentUserUpdateHandler(); private IntPtr MethodsPtr; private Object MethodsStructure; private FFIMethods Methods { get { if (MethodsStructure == null) { MethodsStructure = Marshal.PtrToStructure(MethodsPtr, typeof(FFIMethods)); } return (FFIMethods)MethodsStructure; } } public event CurrentUserUpdateHandler OnCurrentUserUpdate; internal UserManager(IntPtr ptr, IntPtr eventsPtr, ref FFIEvents events) { if (eventsPtr == IntPtr.Zero) { throw new ResultException(Result.InternalError); } InitEvents(eventsPtr, ref events); MethodsPtr = ptr; if (MethodsPtr == IntPtr.Zero) { throw new ResultException(Result.InternalError); } } private void InitEvents(IntPtr eventsPtr, ref FFIEvents events) { events.OnCurrentUserUpdate = OnCurrentUserUpdateImpl; Marshal.StructureToPtr(events, eventsPtr, false); } public User GetCurrentUser() { var ret = new User(); var res = Methods.GetCurrentUser(MethodsPtr, ref ret); if (res != Result.Ok) { throw new ResultException(res); } return ret; } [MonoPInvokeCallback] private static void GetUserCallbackImpl(IntPtr ptr, Result result, ref User user) { GCHandle h = GCHandle.FromIntPtr(ptr); GetUserHandler callback = (GetUserHandler)h.Target; h.Free(); callback(result, ref user); } public void GetUser(Int64 userId, GetUserHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.GetUser(MethodsPtr, userId, GCHandle.ToIntPtr(wrapped), GetUserCallbackImpl); } public PremiumType GetCurrentUserPremiumType() { var ret = new PremiumType(); var res = Methods.GetCurrentUserPremiumType(MethodsPtr, ref ret); if (res != Result.Ok) { throw new ResultException(res); } return ret; } public bool CurrentUserHasFlag(UserFlag flag) { var ret = new bool(); var res = Methods.CurrentUserHasFlag(MethodsPtr, flag, ref ret); if (res != Result.Ok) { throw new ResultException(res); } return ret; } [MonoPInvokeCallback] private static void OnCurrentUserUpdateImpl(IntPtr ptr) { GCHandle h = GCHandle.FromIntPtr(ptr); Discord d = (Discord)h.Target; if (d.UserManagerInstance.OnCurrentUserUpdate != null) { d.UserManagerInstance.OnCurrentUserUpdate.Invoke(); } } } public partial class ImageManager { [StructLayout(LayoutKind.Sequential)] internal partial struct FFIEvents { } [StructLayout(LayoutKind.Sequential)] internal partial struct FFIMethods { [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void FetchCallback(IntPtr ptr, Result result, ImageHandle handleResult); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void FetchMethod(IntPtr methodsPtr, ImageHandle handle, bool refresh, IntPtr callbackData, FetchCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result GetDimensionsMethod(IntPtr methodsPtr, ImageHandle handle, ref ImageDimensions dimensions); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result GetDataMethod(IntPtr methodsPtr, ImageHandle handle, byte[] data, Int32 dataLen); internal FetchMethod Fetch; internal GetDimensionsMethod GetDimensions; internal GetDataMethod GetData; } public delegate void FetchHandler(Result result, ImageHandle handleResult); private IntPtr MethodsPtr; private Object MethodsStructure; private FFIMethods Methods { get { if (MethodsStructure == null) { MethodsStructure = Marshal.PtrToStructure(MethodsPtr, typeof(FFIMethods)); } return (FFIMethods)MethodsStructure; } } internal ImageManager(IntPtr ptr, IntPtr eventsPtr, ref FFIEvents events) { if (eventsPtr == IntPtr.Zero) { throw new ResultException(Result.InternalError); } InitEvents(eventsPtr, ref events); MethodsPtr = ptr; if (MethodsPtr == IntPtr.Zero) { throw new ResultException(Result.InternalError); } } private void InitEvents(IntPtr eventsPtr, ref FFIEvents events) { Marshal.StructureToPtr(events, eventsPtr, false); } [MonoPInvokeCallback] private static void FetchCallbackImpl(IntPtr ptr, Result result, ImageHandle handleResult) { GCHandle h = GCHandle.FromIntPtr(ptr); FetchHandler callback = (FetchHandler)h.Target; h.Free(); callback(result, handleResult); } public void Fetch(ImageHandle handle, bool refresh, FetchHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.Fetch(MethodsPtr, handle, refresh, GCHandle.ToIntPtr(wrapped), FetchCallbackImpl); } public ImageDimensions GetDimensions(ImageHandle handle) { var ret = new ImageDimensions(); var res = Methods.GetDimensions(MethodsPtr, handle, ref ret); if (res != Result.Ok) { throw new ResultException(res); } return ret; } public void GetData(ImageHandle handle, byte[] data) { var res = Methods.GetData(MethodsPtr, handle, data, data.Length); if (res != Result.Ok) { throw new ResultException(res); } } } public partial class ActivityManager { [StructLayout(LayoutKind.Sequential)] internal partial struct FFIEvents { [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void ActivityJoinHandler(IntPtr ptr, [MarshalAs(UnmanagedType.LPStr)]string secret); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void ActivitySpectateHandler(IntPtr ptr, [MarshalAs(UnmanagedType.LPStr)]string secret); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void ActivityJoinRequestHandler(IntPtr ptr, ref User user); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void ActivityInviteHandler(IntPtr ptr, ActivityActionType type, ref User user, ref Activity activity); internal ActivityJoinHandler OnActivityJoin; internal ActivitySpectateHandler OnActivitySpectate; internal ActivityJoinRequestHandler OnActivityJoinRequest; internal ActivityInviteHandler OnActivityInvite; } [StructLayout(LayoutKind.Sequential)] internal partial struct FFIMethods { [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result RegisterCommandMethod(IntPtr methodsPtr, [MarshalAs(UnmanagedType.LPStr)]string command); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result RegisterSteamMethod(IntPtr methodsPtr, UInt32 steamId); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void UpdateActivityCallback(IntPtr ptr, Result result); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void UpdateActivityMethod(IntPtr methodsPtr, ref Activity activity, IntPtr callbackData, UpdateActivityCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void ClearActivityCallback(IntPtr ptr, Result result); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void ClearActivityMethod(IntPtr methodsPtr, IntPtr callbackData, ClearActivityCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void SendRequestReplyCallback(IntPtr ptr, Result result); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void SendRequestReplyMethod(IntPtr methodsPtr, Int64 userId, ActivityJoinRequestReply reply, IntPtr callbackData, SendRequestReplyCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void SendInviteCallback(IntPtr ptr, Result result); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void SendInviteMethod(IntPtr methodsPtr, Int64 userId, ActivityActionType type, [MarshalAs(UnmanagedType.LPStr)]string content, IntPtr callbackData, SendInviteCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void AcceptInviteCallback(IntPtr ptr, Result result); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void AcceptInviteMethod(IntPtr methodsPtr, Int64 userId, IntPtr callbackData, AcceptInviteCallback callback); internal RegisterCommandMethod RegisterCommand; internal RegisterSteamMethod RegisterSteam; internal UpdateActivityMethod UpdateActivity; internal ClearActivityMethod ClearActivity; internal SendRequestReplyMethod SendRequestReply; internal SendInviteMethod SendInvite; internal AcceptInviteMethod AcceptInvite; } public delegate void UpdateActivityHandler(Result result); public delegate void ClearActivityHandler(Result result); public delegate void SendRequestReplyHandler(Result result); public delegate void SendInviteHandler(Result result); public delegate void AcceptInviteHandler(Result result); public delegate void ActivityJoinHandler(string secret); public delegate void ActivitySpectateHandler(string secret); public delegate void ActivityJoinRequestHandler(ref User user); public delegate void ActivityInviteHandler(ActivityActionType type, ref User user, ref Activity activity); private IntPtr MethodsPtr; private Object MethodsStructure; private FFIMethods Methods { get { if (MethodsStructure == null) { MethodsStructure = Marshal.PtrToStructure(MethodsPtr, typeof(FFIMethods)); } return (FFIMethods)MethodsStructure; } } public event ActivityJoinHandler OnActivityJoin; public event ActivitySpectateHandler OnActivitySpectate; public event ActivityJoinRequestHandler OnActivityJoinRequest; public event ActivityInviteHandler OnActivityInvite; internal ActivityManager(IntPtr ptr, IntPtr eventsPtr, ref FFIEvents events) { if (eventsPtr == IntPtr.Zero) { throw new ResultException(Result.InternalError); } InitEvents(eventsPtr, ref events); MethodsPtr = ptr; if (MethodsPtr == IntPtr.Zero) { throw new ResultException(Result.InternalError); } } private void InitEvents(IntPtr eventsPtr, ref FFIEvents events) { events.OnActivityJoin = OnActivityJoinImpl; events.OnActivitySpectate = OnActivitySpectateImpl; events.OnActivityJoinRequest = OnActivityJoinRequestImpl; events.OnActivityInvite = OnActivityInviteImpl; Marshal.StructureToPtr(events, eventsPtr, false); } public void RegisterCommand(string command) { var res = Methods.RegisterCommand(MethodsPtr, command); if (res != Result.Ok) { throw new ResultException(res); } } public void RegisterSteam(UInt32 steamId) { var res = Methods.RegisterSteam(MethodsPtr, steamId); if (res != Result.Ok) { throw new ResultException(res); } } [MonoPInvokeCallback] private static void UpdateActivityCallbackImpl(IntPtr ptr, Result result) { GCHandle h = GCHandle.FromIntPtr(ptr); UpdateActivityHandler callback = (UpdateActivityHandler)h.Target; h.Free(); callback(result); } public void UpdateActivity(Activity activity, UpdateActivityHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.UpdateActivity(MethodsPtr, ref activity, GCHandle.ToIntPtr(wrapped), UpdateActivityCallbackImpl); } [MonoPInvokeCallback] private static void ClearActivityCallbackImpl(IntPtr ptr, Result result) { GCHandle h = GCHandle.FromIntPtr(ptr); ClearActivityHandler callback = (ClearActivityHandler)h.Target; h.Free(); callback(result); } public void ClearActivity(ClearActivityHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.ClearActivity(MethodsPtr, GCHandle.ToIntPtr(wrapped), ClearActivityCallbackImpl); } [MonoPInvokeCallback] private static void SendRequestReplyCallbackImpl(IntPtr ptr, Result result) { GCHandle h = GCHandle.FromIntPtr(ptr); SendRequestReplyHandler callback = (SendRequestReplyHandler)h.Target; h.Free(); callback(result); } public void SendRequestReply(Int64 userId, ActivityJoinRequestReply reply, SendRequestReplyHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.SendRequestReply(MethodsPtr, userId, reply, GCHandle.ToIntPtr(wrapped), SendRequestReplyCallbackImpl); } [MonoPInvokeCallback] private static void SendInviteCallbackImpl(IntPtr ptr, Result result) { GCHandle h = GCHandle.FromIntPtr(ptr); SendInviteHandler callback = (SendInviteHandler)h.Target; h.Free(); callback(result); } public void SendInvite(Int64 userId, ActivityActionType type, string content, SendInviteHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.SendInvite(MethodsPtr, userId, type, content, GCHandle.ToIntPtr(wrapped), SendInviteCallbackImpl); } [MonoPInvokeCallback] private static void AcceptInviteCallbackImpl(IntPtr ptr, Result result) { GCHandle h = GCHandle.FromIntPtr(ptr); AcceptInviteHandler callback = (AcceptInviteHandler)h.Target; h.Free(); callback(result); } public void AcceptInvite(Int64 userId, AcceptInviteHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.AcceptInvite(MethodsPtr, userId, GCHandle.ToIntPtr(wrapped), AcceptInviteCallbackImpl); } [MonoPInvokeCallback] private static void OnActivityJoinImpl(IntPtr ptr, string secret) { GCHandle h = GCHandle.FromIntPtr(ptr); Discord d = (Discord)h.Target; if (d.ActivityManagerInstance.OnActivityJoin != null) { d.ActivityManagerInstance.OnActivityJoin.Invoke(secret); } } [MonoPInvokeCallback] private static void OnActivitySpectateImpl(IntPtr ptr, string secret) { GCHandle h = GCHandle.FromIntPtr(ptr); Discord d = (Discord)h.Target; if (d.ActivityManagerInstance.OnActivitySpectate != null) { d.ActivityManagerInstance.OnActivitySpectate.Invoke(secret); } } [MonoPInvokeCallback] private static void OnActivityJoinRequestImpl(IntPtr ptr, ref User user) { GCHandle h = GCHandle.FromIntPtr(ptr); Discord d = (Discord)h.Target; if (d.ActivityManagerInstance.OnActivityJoinRequest != null) { d.ActivityManagerInstance.OnActivityJoinRequest.Invoke(ref user); } } [MonoPInvokeCallback] private static void OnActivityInviteImpl(IntPtr ptr, ActivityActionType type, ref User user, ref Activity activity) { GCHandle h = GCHandle.FromIntPtr(ptr); Discord d = (Discord)h.Target; if (d.ActivityManagerInstance.OnActivityInvite != null) { d.ActivityManagerInstance.OnActivityInvite.Invoke(type, ref user, ref activity); } } } public partial class RelationshipManager { [StructLayout(LayoutKind.Sequential)] internal partial struct FFIEvents { [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void RefreshHandler(IntPtr ptr); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void RelationshipUpdateHandler(IntPtr ptr, ref Relationship relationship); internal RefreshHandler OnRefresh; internal RelationshipUpdateHandler OnRelationshipUpdate; } [StructLayout(LayoutKind.Sequential)] internal partial struct FFIMethods { [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate bool FilterCallback(IntPtr ptr, ref Relationship relationship); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void FilterMethod(IntPtr methodsPtr, IntPtr callbackData, FilterCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result CountMethod(IntPtr methodsPtr, ref Int32 count); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result GetMethod(IntPtr methodsPtr, Int64 userId, ref Relationship relationship); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result GetAtMethod(IntPtr methodsPtr, UInt32 index, ref Relationship relationship); internal FilterMethod Filter; internal CountMethod Count; internal GetMethod Get; internal GetAtMethod GetAt; } public delegate bool FilterHandler(ref Relationship relationship); public delegate void RefreshHandler(); public delegate void RelationshipUpdateHandler(ref Relationship relationship); private IntPtr MethodsPtr; private Object MethodsStructure; private FFIMethods Methods { get { if (MethodsStructure == null) { MethodsStructure = Marshal.PtrToStructure(MethodsPtr, typeof(FFIMethods)); } return (FFIMethods)MethodsStructure; } } public event RefreshHandler OnRefresh; public event RelationshipUpdateHandler OnRelationshipUpdate; internal RelationshipManager(IntPtr ptr, IntPtr eventsPtr, ref FFIEvents events) { if (eventsPtr == IntPtr.Zero) { throw new ResultException(Result.InternalError); } InitEvents(eventsPtr, ref events); MethodsPtr = ptr; if (MethodsPtr == IntPtr.Zero) { throw new ResultException(Result.InternalError); } } private void InitEvents(IntPtr eventsPtr, ref FFIEvents events) { events.OnRefresh = OnRefreshImpl; events.OnRelationshipUpdate = OnRelationshipUpdateImpl; Marshal.StructureToPtr(events, eventsPtr, false); } [MonoPInvokeCallback] private static bool FilterCallbackImpl(IntPtr ptr, ref Relationship relationship) { GCHandle h = GCHandle.FromIntPtr(ptr); FilterHandler callback = (FilterHandler)h.Target; return callback(ref relationship); } public void Filter(FilterHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.Filter(MethodsPtr, GCHandle.ToIntPtr(wrapped), FilterCallbackImpl); wrapped.Free(); } public Int32 Count() { var ret = new Int32(); var res = Methods.Count(MethodsPtr, ref ret); if (res != Result.Ok) { throw new ResultException(res); } return ret; } public Relationship Get(Int64 userId) { var ret = new Relationship(); var res = Methods.Get(MethodsPtr, userId, ref ret); if (res != Result.Ok) { throw new ResultException(res); } return ret; } public Relationship GetAt(UInt32 index) { var ret = new Relationship(); var res = Methods.GetAt(MethodsPtr, index, ref ret); if (res != Result.Ok) { throw new ResultException(res); } return ret; } [MonoPInvokeCallback] private static void OnRefreshImpl(IntPtr ptr) { GCHandle h = GCHandle.FromIntPtr(ptr); Discord d = (Discord)h.Target; if (d.RelationshipManagerInstance.OnRefresh != null) { d.RelationshipManagerInstance.OnRefresh.Invoke(); } } [MonoPInvokeCallback] private static void OnRelationshipUpdateImpl(IntPtr ptr, ref Relationship relationship) { GCHandle h = GCHandle.FromIntPtr(ptr); Discord d = (Discord)h.Target; if (d.RelationshipManagerInstance.OnRelationshipUpdate != null) { d.RelationshipManagerInstance.OnRelationshipUpdate.Invoke(ref relationship); } } } public partial class LobbyManager { [StructLayout(LayoutKind.Sequential)] internal partial struct FFIEvents { [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void LobbyUpdateHandler(IntPtr ptr, Int64 lobbyId); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void LobbyDeleteHandler(IntPtr ptr, Int64 lobbyId, UInt32 reason); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void MemberConnectHandler(IntPtr ptr, Int64 lobbyId, Int64 userId); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void MemberUpdateHandler(IntPtr ptr, Int64 lobbyId, Int64 userId); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void MemberDisconnectHandler(IntPtr ptr, Int64 lobbyId, Int64 userId); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void LobbyMessageHandler(IntPtr ptr, Int64 lobbyId, Int64 userId, IntPtr dataPtr, Int32 dataLen); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void SpeakingHandler(IntPtr ptr, Int64 lobbyId, Int64 userId, bool speaking); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void NetworkMessageHandler(IntPtr ptr, Int64 lobbyId, Int64 userId, byte channelId, IntPtr dataPtr, Int32 dataLen); internal LobbyUpdateHandler OnLobbyUpdate; internal LobbyDeleteHandler OnLobbyDelete; internal MemberConnectHandler OnMemberConnect; internal MemberUpdateHandler OnMemberUpdate; internal MemberDisconnectHandler OnMemberDisconnect; internal LobbyMessageHandler OnLobbyMessage; internal SpeakingHandler OnSpeaking; internal NetworkMessageHandler OnNetworkMessage; } [StructLayout(LayoutKind.Sequential)] internal partial struct FFIMethods { [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result GetLobbyCreateTransactionMethod(IntPtr methodsPtr, ref IntPtr transaction); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result GetLobbyUpdateTransactionMethod(IntPtr methodsPtr, Int64 lobbyId, ref IntPtr transaction); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result GetMemberUpdateTransactionMethod(IntPtr methodsPtr, Int64 lobbyId, Int64 userId, ref IntPtr transaction); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void CreateLobbyCallback(IntPtr ptr, Result result, ref Lobby lobby); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void CreateLobbyMethod(IntPtr methodsPtr, IntPtr transaction, IntPtr callbackData, CreateLobbyCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void UpdateLobbyCallback(IntPtr ptr, Result result); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void UpdateLobbyMethod(IntPtr methodsPtr, Int64 lobbyId, IntPtr transaction, IntPtr callbackData, UpdateLobbyCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void DeleteLobbyCallback(IntPtr ptr, Result result); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void DeleteLobbyMethod(IntPtr methodsPtr, Int64 lobbyId, IntPtr callbackData, DeleteLobbyCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void ConnectLobbyCallback(IntPtr ptr, Result result, ref Lobby lobby); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void ConnectLobbyMethod(IntPtr methodsPtr, Int64 lobbyId, [MarshalAs(UnmanagedType.LPStr)]string secret, IntPtr callbackData, ConnectLobbyCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void ConnectLobbyWithActivitySecretCallback(IntPtr ptr, Result result, ref Lobby lobby); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void ConnectLobbyWithActivitySecretMethod(IntPtr methodsPtr, [MarshalAs(UnmanagedType.LPStr)]string activitySecret, IntPtr callbackData, ConnectLobbyWithActivitySecretCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void DisconnectLobbyCallback(IntPtr ptr, Result result); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void DisconnectLobbyMethod(IntPtr methodsPtr, Int64 lobbyId, IntPtr callbackData, DisconnectLobbyCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result GetLobbyMethod(IntPtr methodsPtr, Int64 lobbyId, ref Lobby lobby); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result GetLobbyActivitySecretMethod(IntPtr methodsPtr, Int64 lobbyId, StringBuilder secret); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result GetLobbyMetadataValueMethod(IntPtr methodsPtr, Int64 lobbyId, [MarshalAs(UnmanagedType.LPStr)]string key, StringBuilder value); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result GetLobbyMetadataKeyMethod(IntPtr methodsPtr, Int64 lobbyId, Int32 index, StringBuilder key); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result LobbyMetadataCountMethod(IntPtr methodsPtr, Int64 lobbyId, ref Int32 count); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result MemberCountMethod(IntPtr methodsPtr, Int64 lobbyId, ref Int32 count); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result GetMemberUserIdMethod(IntPtr methodsPtr, Int64 lobbyId, Int32 index, ref Int64 userId); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result GetMemberUserMethod(IntPtr methodsPtr, Int64 lobbyId, Int64 userId, ref User user); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result GetMemberMetadataValueMethod(IntPtr methodsPtr, Int64 lobbyId, Int64 userId, [MarshalAs(UnmanagedType.LPStr)]string key, StringBuilder value); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result GetMemberMetadataKeyMethod(IntPtr methodsPtr, Int64 lobbyId, Int64 userId, Int32 index, StringBuilder key); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result MemberMetadataCountMethod(IntPtr methodsPtr, Int64 lobbyId, Int64 userId, ref Int32 count); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void UpdateMemberCallback(IntPtr ptr, Result result); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void UpdateMemberMethod(IntPtr methodsPtr, Int64 lobbyId, Int64 userId, IntPtr transaction, IntPtr callbackData, UpdateMemberCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void SendLobbyMessageCallback(IntPtr ptr, Result result); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void SendLobbyMessageMethod(IntPtr methodsPtr, Int64 lobbyId, byte[] data, Int32 dataLen, IntPtr callbackData, SendLobbyMessageCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result GetSearchQueryMethod(IntPtr methodsPtr, ref IntPtr query); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void SearchCallback(IntPtr ptr, Result result); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void SearchMethod(IntPtr methodsPtr, IntPtr query, IntPtr callbackData, SearchCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void LobbyCountMethod(IntPtr methodsPtr, ref Int32 count); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result GetLobbyIdMethod(IntPtr methodsPtr, Int32 index, ref Int64 lobbyId); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void ConnectVoiceCallback(IntPtr ptr, Result result); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void ConnectVoiceMethod(IntPtr methodsPtr, Int64 lobbyId, IntPtr callbackData, ConnectVoiceCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void DisconnectVoiceCallback(IntPtr ptr, Result result); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void DisconnectVoiceMethod(IntPtr methodsPtr, Int64 lobbyId, IntPtr callbackData, DisconnectVoiceCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result ConnectNetworkMethod(IntPtr methodsPtr, Int64 lobbyId); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result DisconnectNetworkMethod(IntPtr methodsPtr, Int64 lobbyId); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result FlushNetworkMethod(IntPtr methodsPtr); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result OpenNetworkChannelMethod(IntPtr methodsPtr, Int64 lobbyId, byte channelId, bool reliable); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result SendNetworkMessageMethod(IntPtr methodsPtr, Int64 lobbyId, Int64 userId, byte channelId, byte[] data, Int32 dataLen); internal GetLobbyCreateTransactionMethod GetLobbyCreateTransaction; internal GetLobbyUpdateTransactionMethod GetLobbyUpdateTransaction; internal GetMemberUpdateTransactionMethod GetMemberUpdateTransaction; internal CreateLobbyMethod CreateLobby; internal UpdateLobbyMethod UpdateLobby; internal DeleteLobbyMethod DeleteLobby; internal ConnectLobbyMethod ConnectLobby; internal ConnectLobbyWithActivitySecretMethod ConnectLobbyWithActivitySecret; internal DisconnectLobbyMethod DisconnectLobby; internal GetLobbyMethod GetLobby; internal GetLobbyActivitySecretMethod GetLobbyActivitySecret; internal GetLobbyMetadataValueMethod GetLobbyMetadataValue; internal GetLobbyMetadataKeyMethod GetLobbyMetadataKey; internal LobbyMetadataCountMethod LobbyMetadataCount; internal MemberCountMethod MemberCount; internal GetMemberUserIdMethod GetMemberUserId; internal GetMemberUserMethod GetMemberUser; internal GetMemberMetadataValueMethod GetMemberMetadataValue; internal GetMemberMetadataKeyMethod GetMemberMetadataKey; internal MemberMetadataCountMethod MemberMetadataCount; internal UpdateMemberMethod UpdateMember; internal SendLobbyMessageMethod SendLobbyMessage; internal GetSearchQueryMethod GetSearchQuery; internal SearchMethod Search; internal LobbyCountMethod LobbyCount; internal GetLobbyIdMethod GetLobbyId; internal ConnectVoiceMethod ConnectVoice; internal DisconnectVoiceMethod DisconnectVoice; internal ConnectNetworkMethod ConnectNetwork; internal DisconnectNetworkMethod DisconnectNetwork; internal FlushNetworkMethod FlushNetwork; internal OpenNetworkChannelMethod OpenNetworkChannel; internal SendNetworkMessageMethod SendNetworkMessage; } public delegate void CreateLobbyHandler(Result result, ref Lobby lobby); public delegate void UpdateLobbyHandler(Result result); public delegate void DeleteLobbyHandler(Result result); public delegate void ConnectLobbyHandler(Result result, ref Lobby lobby); public delegate void ConnectLobbyWithActivitySecretHandler(Result result, ref Lobby lobby); public delegate void DisconnectLobbyHandler(Result result); public delegate void UpdateMemberHandler(Result result); public delegate void SendLobbyMessageHandler(Result result); public delegate void SearchHandler(Result result); public delegate void ConnectVoiceHandler(Result result); public delegate void DisconnectVoiceHandler(Result result); public delegate void LobbyUpdateHandler(Int64 lobbyId); public delegate void LobbyDeleteHandler(Int64 lobbyId, UInt32 reason); public delegate void MemberConnectHandler(Int64 lobbyId, Int64 userId); public delegate void MemberUpdateHandler(Int64 lobbyId, Int64 userId); public delegate void MemberDisconnectHandler(Int64 lobbyId, Int64 userId); public delegate void LobbyMessageHandler(Int64 lobbyId, Int64 userId, byte[] data); public delegate void SpeakingHandler(Int64 lobbyId, Int64 userId, bool speaking); public delegate void NetworkMessageHandler(Int64 lobbyId, Int64 userId, byte channelId, byte[] data); private IntPtr MethodsPtr; private Object MethodsStructure; private FFIMethods Methods { get { if (MethodsStructure == null) { MethodsStructure = Marshal.PtrToStructure(MethodsPtr, typeof(FFIMethods)); } return (FFIMethods)MethodsStructure; } } public event LobbyUpdateHandler OnLobbyUpdate; public event LobbyDeleteHandler OnLobbyDelete; public event MemberConnectHandler OnMemberConnect; public event MemberUpdateHandler OnMemberUpdate; public event MemberDisconnectHandler OnMemberDisconnect; public event LobbyMessageHandler OnLobbyMessage; public event SpeakingHandler OnSpeaking; public event NetworkMessageHandler OnNetworkMessage; internal LobbyManager(IntPtr ptr, IntPtr eventsPtr, ref FFIEvents events) { if (eventsPtr == IntPtr.Zero) { throw new ResultException(Result.InternalError); } InitEvents(eventsPtr, ref events); MethodsPtr = ptr; if (MethodsPtr == IntPtr.Zero) { throw new ResultException(Result.InternalError); } } private void InitEvents(IntPtr eventsPtr, ref FFIEvents events) { events.OnLobbyUpdate = OnLobbyUpdateImpl; events.OnLobbyDelete = OnLobbyDeleteImpl; events.OnMemberConnect = OnMemberConnectImpl; events.OnMemberUpdate = OnMemberUpdateImpl; events.OnMemberDisconnect = OnMemberDisconnectImpl; events.OnLobbyMessage = OnLobbyMessageImpl; events.OnSpeaking = OnSpeakingImpl; events.OnNetworkMessage = OnNetworkMessageImpl; Marshal.StructureToPtr(events, eventsPtr, false); } public LobbyTransaction GetLobbyCreateTransaction() { var ret = new LobbyTransaction(); var res = Methods.GetLobbyCreateTransaction(MethodsPtr, ref ret.MethodsPtr); if (res != Result.Ok) { throw new ResultException(res); } return ret; } public LobbyTransaction GetLobbyUpdateTransaction(Int64 lobbyId) { var ret = new LobbyTransaction(); var res = Methods.GetLobbyUpdateTransaction(MethodsPtr, lobbyId, ref ret.MethodsPtr); if (res != Result.Ok) { throw new ResultException(res); } return ret; } public LobbyMemberTransaction GetMemberUpdateTransaction(Int64 lobbyId, Int64 userId) { var ret = new LobbyMemberTransaction(); var res = Methods.GetMemberUpdateTransaction(MethodsPtr, lobbyId, userId, ref ret.MethodsPtr); if (res != Result.Ok) { throw new ResultException(res); } return ret; } [MonoPInvokeCallback] private static void CreateLobbyCallbackImpl(IntPtr ptr, Result result, ref Lobby lobby) { GCHandle h = GCHandle.FromIntPtr(ptr); CreateLobbyHandler callback = (CreateLobbyHandler)h.Target; h.Free(); callback(result, ref lobby); } public void CreateLobby(LobbyTransaction transaction, CreateLobbyHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.CreateLobby(MethodsPtr, transaction.MethodsPtr, GCHandle.ToIntPtr(wrapped), CreateLobbyCallbackImpl); transaction.MethodsPtr = IntPtr.Zero; } [MonoPInvokeCallback] private static void UpdateLobbyCallbackImpl(IntPtr ptr, Result result) { GCHandle h = GCHandle.FromIntPtr(ptr); UpdateLobbyHandler callback = (UpdateLobbyHandler)h.Target; h.Free(); callback(result); } public void UpdateLobby(Int64 lobbyId, LobbyTransaction transaction, UpdateLobbyHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.UpdateLobby(MethodsPtr, lobbyId, transaction.MethodsPtr, GCHandle.ToIntPtr(wrapped), UpdateLobbyCallbackImpl); transaction.MethodsPtr = IntPtr.Zero; } [MonoPInvokeCallback] private static void DeleteLobbyCallbackImpl(IntPtr ptr, Result result) { GCHandle h = GCHandle.FromIntPtr(ptr); DeleteLobbyHandler callback = (DeleteLobbyHandler)h.Target; h.Free(); callback(result); } public void DeleteLobby(Int64 lobbyId, DeleteLobbyHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.DeleteLobby(MethodsPtr, lobbyId, GCHandle.ToIntPtr(wrapped), DeleteLobbyCallbackImpl); } [MonoPInvokeCallback] private static void ConnectLobbyCallbackImpl(IntPtr ptr, Result result, ref Lobby lobby) { GCHandle h = GCHandle.FromIntPtr(ptr); ConnectLobbyHandler callback = (ConnectLobbyHandler)h.Target; h.Free(); callback(result, ref lobby); } public void ConnectLobby(Int64 lobbyId, string secret, ConnectLobbyHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.ConnectLobby(MethodsPtr, lobbyId, secret, GCHandle.ToIntPtr(wrapped), ConnectLobbyCallbackImpl); } [MonoPInvokeCallback] private static void ConnectLobbyWithActivitySecretCallbackImpl(IntPtr ptr, Result result, ref Lobby lobby) { GCHandle h = GCHandle.FromIntPtr(ptr); ConnectLobbyWithActivitySecretHandler callback = (ConnectLobbyWithActivitySecretHandler)h.Target; h.Free(); callback(result, ref lobby); } public void ConnectLobbyWithActivitySecret(string activitySecret, ConnectLobbyWithActivitySecretHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.ConnectLobbyWithActivitySecret(MethodsPtr, activitySecret, GCHandle.ToIntPtr(wrapped), ConnectLobbyWithActivitySecretCallbackImpl); } [MonoPInvokeCallback] private static void DisconnectLobbyCallbackImpl(IntPtr ptr, Result result) { GCHandle h = GCHandle.FromIntPtr(ptr); DisconnectLobbyHandler callback = (DisconnectLobbyHandler)h.Target; h.Free(); callback(result); } public void DisconnectLobby(Int64 lobbyId, DisconnectLobbyHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.DisconnectLobby(MethodsPtr, lobbyId, GCHandle.ToIntPtr(wrapped), DisconnectLobbyCallbackImpl); } public Lobby GetLobby(Int64 lobbyId) { var ret = new Lobby(); var res = Methods.GetLobby(MethodsPtr, lobbyId, ref ret); if (res != Result.Ok) { throw new ResultException(res); } return ret; } public string GetLobbyActivitySecret(Int64 lobbyId) { var ret = new StringBuilder(128); var res = Methods.GetLobbyActivitySecret(MethodsPtr, lobbyId, ret); if (res != Result.Ok) { throw new ResultException(res); } return ret.ToString(); } public string GetLobbyMetadataValue(Int64 lobbyId, string key) { var ret = new StringBuilder(4096); var res = Methods.GetLobbyMetadataValue(MethodsPtr, lobbyId, key, ret); if (res != Result.Ok) { throw new ResultException(res); } return ret.ToString(); } public string GetLobbyMetadataKey(Int64 lobbyId, Int32 index) { var ret = new StringBuilder(256); var res = Methods.GetLobbyMetadataKey(MethodsPtr, lobbyId, index, ret); if (res != Result.Ok) { throw new ResultException(res); } return ret.ToString(); } public Int32 LobbyMetadataCount(Int64 lobbyId) { var ret = new Int32(); var res = Methods.LobbyMetadataCount(MethodsPtr, lobbyId, ref ret); if (res != Result.Ok) { throw new ResultException(res); } return ret; } public Int32 MemberCount(Int64 lobbyId) { var ret = new Int32(); var res = Methods.MemberCount(MethodsPtr, lobbyId, ref ret); if (res != Result.Ok) { throw new ResultException(res); } return ret; } public Int64 GetMemberUserId(Int64 lobbyId, Int32 index) { var ret = new Int64(); var res = Methods.GetMemberUserId(MethodsPtr, lobbyId, index, ref ret); if (res != Result.Ok) { throw new ResultException(res); } return ret; } public User GetMemberUser(Int64 lobbyId, Int64 userId) { var ret = new User(); var res = Methods.GetMemberUser(MethodsPtr, lobbyId, userId, ref ret); if (res != Result.Ok) { throw new ResultException(res); } return ret; } public string GetMemberMetadataValue(Int64 lobbyId, Int64 userId, string key) { var ret = new StringBuilder(4096); var res = Methods.GetMemberMetadataValue(MethodsPtr, lobbyId, userId, key, ret); if (res != Result.Ok) { throw new ResultException(res); } return ret.ToString(); } public string GetMemberMetadataKey(Int64 lobbyId, Int64 userId, Int32 index) { var ret = new StringBuilder(256); var res = Methods.GetMemberMetadataKey(MethodsPtr, lobbyId, userId, index, ret); if (res != Result.Ok) { throw new ResultException(res); } return ret.ToString(); } public Int32 MemberMetadataCount(Int64 lobbyId, Int64 userId) { var ret = new Int32(); var res = Methods.MemberMetadataCount(MethodsPtr, lobbyId, userId, ref ret); if (res != Result.Ok) { throw new ResultException(res); } return ret; } [MonoPInvokeCallback] private static void UpdateMemberCallbackImpl(IntPtr ptr, Result result) { GCHandle h = GCHandle.FromIntPtr(ptr); UpdateMemberHandler callback = (UpdateMemberHandler)h.Target; h.Free(); callback(result); } public void UpdateMember(Int64 lobbyId, Int64 userId, LobbyMemberTransaction transaction, UpdateMemberHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.UpdateMember(MethodsPtr, lobbyId, userId, transaction.MethodsPtr, GCHandle.ToIntPtr(wrapped), UpdateMemberCallbackImpl); transaction.MethodsPtr = IntPtr.Zero; } [MonoPInvokeCallback] private static void SendLobbyMessageCallbackImpl(IntPtr ptr, Result result) { GCHandle h = GCHandle.FromIntPtr(ptr); SendLobbyMessageHandler callback = (SendLobbyMessageHandler)h.Target; h.Free(); callback(result); } public void SendLobbyMessage(Int64 lobbyId, byte[] data, SendLobbyMessageHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.SendLobbyMessage(MethodsPtr, lobbyId, data, data.Length, GCHandle.ToIntPtr(wrapped), SendLobbyMessageCallbackImpl); } public LobbySearchQuery GetSearchQuery() { var ret = new LobbySearchQuery(); var res = Methods.GetSearchQuery(MethodsPtr, ref ret.MethodsPtr); if (res != Result.Ok) { throw new ResultException(res); } return ret; } [MonoPInvokeCallback] private static void SearchCallbackImpl(IntPtr ptr, Result result) { GCHandle h = GCHandle.FromIntPtr(ptr); SearchHandler callback = (SearchHandler)h.Target; h.Free(); callback(result); } public void Search(LobbySearchQuery query, SearchHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.Search(MethodsPtr, query.MethodsPtr, GCHandle.ToIntPtr(wrapped), SearchCallbackImpl); query.MethodsPtr = IntPtr.Zero; } public Int32 LobbyCount() { var ret = new Int32(); Methods.LobbyCount(MethodsPtr, ref ret); return ret; } public Int64 GetLobbyId(Int32 index) { var ret = new Int64(); var res = Methods.GetLobbyId(MethodsPtr, index, ref ret); if (res != Result.Ok) { throw new ResultException(res); } return ret; } [MonoPInvokeCallback] private static void ConnectVoiceCallbackImpl(IntPtr ptr, Result result) { GCHandle h = GCHandle.FromIntPtr(ptr); ConnectVoiceHandler callback = (ConnectVoiceHandler)h.Target; h.Free(); callback(result); } public void ConnectVoice(Int64 lobbyId, ConnectVoiceHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.ConnectVoice(MethodsPtr, lobbyId, GCHandle.ToIntPtr(wrapped), ConnectVoiceCallbackImpl); } [MonoPInvokeCallback] private static void DisconnectVoiceCallbackImpl(IntPtr ptr, Result result) { GCHandle h = GCHandle.FromIntPtr(ptr); DisconnectVoiceHandler callback = (DisconnectVoiceHandler)h.Target; h.Free(); callback(result); } public void DisconnectVoice(Int64 lobbyId, DisconnectVoiceHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.DisconnectVoice(MethodsPtr, lobbyId, GCHandle.ToIntPtr(wrapped), DisconnectVoiceCallbackImpl); } public void ConnectNetwork(Int64 lobbyId) { var res = Methods.ConnectNetwork(MethodsPtr, lobbyId); if (res != Result.Ok) { throw new ResultException(res); } } public void DisconnectNetwork(Int64 lobbyId) { var res = Methods.DisconnectNetwork(MethodsPtr, lobbyId); if (res != Result.Ok) { throw new ResultException(res); } } public void FlushNetwork() { var res = Methods.FlushNetwork(MethodsPtr); if (res != Result.Ok) { throw new ResultException(res); } } public void OpenNetworkChannel(Int64 lobbyId, byte channelId, bool reliable) { var res = Methods.OpenNetworkChannel(MethodsPtr, lobbyId, channelId, reliable); if (res != Result.Ok) { throw new ResultException(res); } } public void SendNetworkMessage(Int64 lobbyId, Int64 userId, byte channelId, byte[] data) { var res = Methods.SendNetworkMessage(MethodsPtr, lobbyId, userId, channelId, data, data.Length); if (res != Result.Ok) { throw new ResultException(res); } } [MonoPInvokeCallback] private static void OnLobbyUpdateImpl(IntPtr ptr, Int64 lobbyId) { GCHandle h = GCHandle.FromIntPtr(ptr); Discord d = (Discord)h.Target; if (d.LobbyManagerInstance.OnLobbyUpdate != null) { d.LobbyManagerInstance.OnLobbyUpdate.Invoke(lobbyId); } } [MonoPInvokeCallback] private static void OnLobbyDeleteImpl(IntPtr ptr, Int64 lobbyId, UInt32 reason) { GCHandle h = GCHandle.FromIntPtr(ptr); Discord d = (Discord)h.Target; if (d.LobbyManagerInstance.OnLobbyDelete != null) { d.LobbyManagerInstance.OnLobbyDelete.Invoke(lobbyId, reason); } } [MonoPInvokeCallback] private static void OnMemberConnectImpl(IntPtr ptr, Int64 lobbyId, Int64 userId) { GCHandle h = GCHandle.FromIntPtr(ptr); Discord d = (Discord)h.Target; if (d.LobbyManagerInstance.OnMemberConnect != null) { d.LobbyManagerInstance.OnMemberConnect.Invoke(lobbyId, userId); } } [MonoPInvokeCallback] private static void OnMemberUpdateImpl(IntPtr ptr, Int64 lobbyId, Int64 userId) { GCHandle h = GCHandle.FromIntPtr(ptr); Discord d = (Discord)h.Target; if (d.LobbyManagerInstance.OnMemberUpdate != null) { d.LobbyManagerInstance.OnMemberUpdate.Invoke(lobbyId, userId); } } [MonoPInvokeCallback] private static void OnMemberDisconnectImpl(IntPtr ptr, Int64 lobbyId, Int64 userId) { GCHandle h = GCHandle.FromIntPtr(ptr); Discord d = (Discord)h.Target; if (d.LobbyManagerInstance.OnMemberDisconnect != null) { d.LobbyManagerInstance.OnMemberDisconnect.Invoke(lobbyId, userId); } } [MonoPInvokeCallback] private static void OnLobbyMessageImpl(IntPtr ptr, Int64 lobbyId, Int64 userId, IntPtr dataPtr, Int32 dataLen) { GCHandle h = GCHandle.FromIntPtr(ptr); Discord d = (Discord)h.Target; if (d.LobbyManagerInstance.OnLobbyMessage != null) { byte[] data = new byte[dataLen]; Marshal.Copy(dataPtr, data, 0, (int)dataLen); d.LobbyManagerInstance.OnLobbyMessage.Invoke(lobbyId, userId, data); } } [MonoPInvokeCallback] private static void OnSpeakingImpl(IntPtr ptr, Int64 lobbyId, Int64 userId, bool speaking) { GCHandle h = GCHandle.FromIntPtr(ptr); Discord d = (Discord)h.Target; if (d.LobbyManagerInstance.OnSpeaking != null) { d.LobbyManagerInstance.OnSpeaking.Invoke(lobbyId, userId, speaking); } } [MonoPInvokeCallback] private static void OnNetworkMessageImpl(IntPtr ptr, Int64 lobbyId, Int64 userId, byte channelId, IntPtr dataPtr, Int32 dataLen) { GCHandle h = GCHandle.FromIntPtr(ptr); Discord d = (Discord)h.Target; if (d.LobbyManagerInstance.OnNetworkMessage != null) { byte[] data = new byte[dataLen]; Marshal.Copy(dataPtr, data, 0, (int)dataLen); d.LobbyManagerInstance.OnNetworkMessage.Invoke(lobbyId, userId, channelId, data); } } } public partial class NetworkManager { [StructLayout(LayoutKind.Sequential)] internal partial struct FFIEvents { [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void MessageHandler(IntPtr ptr, UInt64 peerId, byte channelId, IntPtr dataPtr, Int32 dataLen); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void RouteUpdateHandler(IntPtr ptr, [MarshalAs(UnmanagedType.LPStr)]string routeData); internal MessageHandler OnMessage; internal RouteUpdateHandler OnRouteUpdate; } [StructLayout(LayoutKind.Sequential)] internal partial struct FFIMethods { [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void GetPeerIdMethod(IntPtr methodsPtr, ref UInt64 peerId); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result FlushMethod(IntPtr methodsPtr); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result OpenPeerMethod(IntPtr methodsPtr, UInt64 peerId, [MarshalAs(UnmanagedType.LPStr)]string routeData); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result UpdatePeerMethod(IntPtr methodsPtr, UInt64 peerId, [MarshalAs(UnmanagedType.LPStr)]string routeData); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result ClosePeerMethod(IntPtr methodsPtr, UInt64 peerId); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result OpenChannelMethod(IntPtr methodsPtr, UInt64 peerId, byte channelId, bool reliable); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result CloseChannelMethod(IntPtr methodsPtr, UInt64 peerId, byte channelId); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result SendMessageMethod(IntPtr methodsPtr, UInt64 peerId, byte channelId, byte[] data, Int32 dataLen); internal GetPeerIdMethod GetPeerId; internal FlushMethod Flush; internal OpenPeerMethod OpenPeer; internal UpdatePeerMethod UpdatePeer; internal ClosePeerMethod ClosePeer; internal OpenChannelMethod OpenChannel; internal CloseChannelMethod CloseChannel; internal SendMessageMethod SendMessage; } public delegate void MessageHandler(UInt64 peerId, byte channelId, byte[] data); public delegate void RouteUpdateHandler(string routeData); private IntPtr MethodsPtr; private Object MethodsStructure; private FFIMethods Methods { get { if (MethodsStructure == null) { MethodsStructure = Marshal.PtrToStructure(MethodsPtr, typeof(FFIMethods)); } return (FFIMethods)MethodsStructure; } } public event MessageHandler OnMessage; public event RouteUpdateHandler OnRouteUpdate; internal NetworkManager(IntPtr ptr, IntPtr eventsPtr, ref FFIEvents events) { if (eventsPtr == IntPtr.Zero) { throw new ResultException(Result.InternalError); } InitEvents(eventsPtr, ref events); MethodsPtr = ptr; if (MethodsPtr == IntPtr.Zero) { throw new ResultException(Result.InternalError); } } private void InitEvents(IntPtr eventsPtr, ref FFIEvents events) { events.OnMessage = OnMessageImpl; events.OnRouteUpdate = OnRouteUpdateImpl; Marshal.StructureToPtr(events, eventsPtr, false); } /// /// Get the local peer ID for this process. /// public UInt64 GetPeerId() { var ret = new UInt64(); Methods.GetPeerId(MethodsPtr, ref ret); return ret; } /// /// Send pending network messages. /// public void Flush() { var res = Methods.Flush(MethodsPtr); if (res != Result.Ok) { throw new ResultException(res); } } /// /// Open a connection to a remote peer. /// public void OpenPeer(UInt64 peerId, string routeData) { var res = Methods.OpenPeer(MethodsPtr, peerId, routeData); if (res != Result.Ok) { throw new ResultException(res); } } /// /// Update the route data for a connected peer. /// public void UpdatePeer(UInt64 peerId, string routeData) { var res = Methods.UpdatePeer(MethodsPtr, peerId, routeData); if (res != Result.Ok) { throw new ResultException(res); } } /// /// Close the connection to a remote peer. /// public void ClosePeer(UInt64 peerId) { var res = Methods.ClosePeer(MethodsPtr, peerId); if (res != Result.Ok) { throw new ResultException(res); } } /// /// Open a message channel to a connected peer. /// public void OpenChannel(UInt64 peerId, byte channelId, bool reliable) { var res = Methods.OpenChannel(MethodsPtr, peerId, channelId, reliable); if (res != Result.Ok) { throw new ResultException(res); } } /// /// Close a message channel to a connected peer. /// public void CloseChannel(UInt64 peerId, byte channelId) { var res = Methods.CloseChannel(MethodsPtr, peerId, channelId); if (res != Result.Ok) { throw new ResultException(res); } } /// /// Send a message to a connected peer over an opened message channel. /// public void SendMessage(UInt64 peerId, byte channelId, byte[] data) { var res = Methods.SendMessage(MethodsPtr, peerId, channelId, data, data.Length); if (res != Result.Ok) { throw new ResultException(res); } } [MonoPInvokeCallback] private static void OnMessageImpl(IntPtr ptr, UInt64 peerId, byte channelId, IntPtr dataPtr, Int32 dataLen) { GCHandle h = GCHandle.FromIntPtr(ptr); Discord d = (Discord)h.Target; if (d.NetworkManagerInstance.OnMessage != null) { byte[] data = new byte[dataLen]; Marshal.Copy(dataPtr, data, 0, (int)dataLen); d.NetworkManagerInstance.OnMessage.Invoke(peerId, channelId, data); } } [MonoPInvokeCallback] private static void OnRouteUpdateImpl(IntPtr ptr, string routeData) { GCHandle h = GCHandle.FromIntPtr(ptr); Discord d = (Discord)h.Target; if (d.NetworkManagerInstance.OnRouteUpdate != null) { d.NetworkManagerInstance.OnRouteUpdate.Invoke(routeData); } } } public partial class OverlayManager { [StructLayout(LayoutKind.Sequential)] internal partial struct FFIEvents { [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void ToggleHandler(IntPtr ptr, bool locked); internal ToggleHandler OnToggle; } [StructLayout(LayoutKind.Sequential)] internal partial struct FFIMethods { [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void IsEnabledMethod(IntPtr methodsPtr, ref bool enabled); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void IsLockedMethod(IntPtr methodsPtr, ref bool locked); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void SetLockedCallback(IntPtr ptr, Result result); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void SetLockedMethod(IntPtr methodsPtr, bool locked, IntPtr callbackData, SetLockedCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void OpenActivityInviteCallback(IntPtr ptr, Result result); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void OpenActivityInviteMethod(IntPtr methodsPtr, ActivityActionType type, IntPtr callbackData, OpenActivityInviteCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void OpenGuildInviteCallback(IntPtr ptr, Result result); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void OpenGuildInviteMethod(IntPtr methodsPtr, [MarshalAs(UnmanagedType.LPStr)]string code, IntPtr callbackData, OpenGuildInviteCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void OpenVoiceSettingsCallback(IntPtr ptr, Result result); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void OpenVoiceSettingsMethod(IntPtr methodsPtr, IntPtr callbackData, OpenVoiceSettingsCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result InitDrawingDxgiMethod(IntPtr methodsPtr, IntPtr swapchain, bool useMessageForwarding); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void OnPresentMethod(IntPtr methodsPtr); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void ForwardMessageMethod(IntPtr methodsPtr, IntPtr message); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void KeyEventMethod(IntPtr methodsPtr, bool down, [MarshalAs(UnmanagedType.LPStr)]string keyCode, KeyVariant variant); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void CharEventMethod(IntPtr methodsPtr, [MarshalAs(UnmanagedType.LPStr)]string character); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void MouseButtonEventMethod(IntPtr methodsPtr, byte down, Int32 clickCount, MouseButton which, Int32 x, Int32 y); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void MouseMotionEventMethod(IntPtr methodsPtr, Int32 x, Int32 y); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void ImeCommitTextMethod(IntPtr methodsPtr, [MarshalAs(UnmanagedType.LPStr)]string text); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void ImeSetCompositionMethod(IntPtr methodsPtr, [MarshalAs(UnmanagedType.LPStr)]string text, ref ImeUnderline underlines, Int32 from, Int32 to); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void ImeCancelCompositionMethod(IntPtr methodsPtr); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void SetImeCompositionRangeCallbackCallback(IntPtr ptr, Int32 from, Int32 to, ref Rect bounds); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void SetImeCompositionRangeCallbackMethod(IntPtr methodsPtr, IntPtr callbackData, SetImeCompositionRangeCallbackCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void SetImeSelectionBoundsCallbackCallback(IntPtr ptr, Rect anchor, Rect focus, bool isAnchorFirst); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void SetImeSelectionBoundsCallbackMethod(IntPtr methodsPtr, IntPtr callbackData, SetImeSelectionBoundsCallbackCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate bool IsPointInsideClickZoneMethod(IntPtr methodsPtr, Int32 x, Int32 y); internal IsEnabledMethod IsEnabled; internal IsLockedMethod IsLocked; internal SetLockedMethod SetLocked; internal OpenActivityInviteMethod OpenActivityInvite; internal OpenGuildInviteMethod OpenGuildInvite; internal OpenVoiceSettingsMethod OpenVoiceSettings; internal InitDrawingDxgiMethod InitDrawingDxgi; internal OnPresentMethod OnPresent; internal ForwardMessageMethod ForwardMessage; internal KeyEventMethod KeyEvent; internal CharEventMethod CharEvent; internal MouseButtonEventMethod MouseButtonEvent; internal MouseMotionEventMethod MouseMotionEvent; internal ImeCommitTextMethod ImeCommitText; internal ImeSetCompositionMethod ImeSetComposition; internal ImeCancelCompositionMethod ImeCancelComposition; internal SetImeCompositionRangeCallbackMethod SetImeCompositionRangeCallback; internal SetImeSelectionBoundsCallbackMethod SetImeSelectionBoundsCallback; internal IsPointInsideClickZoneMethod IsPointInsideClickZone; } public delegate void SetLockedHandler(Result result); public delegate void OpenActivityInviteHandler(Result result); public delegate void OpenGuildInviteHandler(Result result); public delegate void OpenVoiceSettingsHandler(Result result); public delegate void SetImeCompositionRangeCallbackHandler(Int32 from, Int32 to, ref Rect bounds); public delegate void SetImeSelectionBoundsCallbackHandler(Rect anchor, Rect focus, bool isAnchorFirst); public delegate void ToggleHandler(bool locked); private IntPtr MethodsPtr; private Object MethodsStructure; private FFIMethods Methods { get { if (MethodsStructure == null) { MethodsStructure = Marshal.PtrToStructure(MethodsPtr, typeof(FFIMethods)); } return (FFIMethods)MethodsStructure; } } public event ToggleHandler OnToggle; internal OverlayManager(IntPtr ptr, IntPtr eventsPtr, ref FFIEvents events) { if (eventsPtr == IntPtr.Zero) { throw new ResultException(Result.InternalError); } InitEvents(eventsPtr, ref events); MethodsPtr = ptr; if (MethodsPtr == IntPtr.Zero) { throw new ResultException(Result.InternalError); } } private void InitEvents(IntPtr eventsPtr, ref FFIEvents events) { events.OnToggle = OnToggleImpl; Marshal.StructureToPtr(events, eventsPtr, false); } public bool IsEnabled() { var ret = new bool(); Methods.IsEnabled(MethodsPtr, ref ret); return ret; } public bool IsLocked() { var ret = new bool(); Methods.IsLocked(MethodsPtr, ref ret); return ret; } [MonoPInvokeCallback] private static void SetLockedCallbackImpl(IntPtr ptr, Result result) { GCHandle h = GCHandle.FromIntPtr(ptr); SetLockedHandler callback = (SetLockedHandler)h.Target; h.Free(); callback(result); } public void SetLocked(bool locked, SetLockedHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.SetLocked(MethodsPtr, locked, GCHandle.ToIntPtr(wrapped), SetLockedCallbackImpl); } [MonoPInvokeCallback] private static void OpenActivityInviteCallbackImpl(IntPtr ptr, Result result) { GCHandle h = GCHandle.FromIntPtr(ptr); OpenActivityInviteHandler callback = (OpenActivityInviteHandler)h.Target; h.Free(); callback(result); } public void OpenActivityInvite(ActivityActionType type, OpenActivityInviteHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.OpenActivityInvite(MethodsPtr, type, GCHandle.ToIntPtr(wrapped), OpenActivityInviteCallbackImpl); } [MonoPInvokeCallback] private static void OpenGuildInviteCallbackImpl(IntPtr ptr, Result result) { GCHandle h = GCHandle.FromIntPtr(ptr); OpenGuildInviteHandler callback = (OpenGuildInviteHandler)h.Target; h.Free(); callback(result); } public void OpenGuildInvite(string code, OpenGuildInviteHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.OpenGuildInvite(MethodsPtr, code, GCHandle.ToIntPtr(wrapped), OpenGuildInviteCallbackImpl); } [MonoPInvokeCallback] private static void OpenVoiceSettingsCallbackImpl(IntPtr ptr, Result result) { GCHandle h = GCHandle.FromIntPtr(ptr); OpenVoiceSettingsHandler callback = (OpenVoiceSettingsHandler)h.Target; h.Free(); callback(result); } public void OpenVoiceSettings(OpenVoiceSettingsHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.OpenVoiceSettings(MethodsPtr, GCHandle.ToIntPtr(wrapped), OpenVoiceSettingsCallbackImpl); } public void InitDrawingDxgi(IntPtr swapchain, bool useMessageForwarding) { var res = Methods.InitDrawingDxgi(MethodsPtr, swapchain, useMessageForwarding); if (res != Result.Ok) { throw new ResultException(res); } } public void OnPresent() { Methods.OnPresent(MethodsPtr); } public void ForwardMessage(IntPtr message) { Methods.ForwardMessage(MethodsPtr, message); } public void KeyEvent(bool down, string keyCode, KeyVariant variant) { Methods.KeyEvent(MethodsPtr, down, keyCode, variant); } public void CharEvent(string character) { Methods.CharEvent(MethodsPtr, character); } public void MouseButtonEvent(byte down, Int32 clickCount, MouseButton which, Int32 x, Int32 y) { Methods.MouseButtonEvent(MethodsPtr, down, clickCount, which, x, y); } public void MouseMotionEvent(Int32 x, Int32 y) { Methods.MouseMotionEvent(MethodsPtr, x, y); } public void ImeCommitText(string text) { Methods.ImeCommitText(MethodsPtr, text); } public void ImeSetComposition(string text, ImeUnderline underlines, Int32 from, Int32 to) { Methods.ImeSetComposition(MethodsPtr, text, ref underlines, from, to); } public void ImeCancelComposition() { Methods.ImeCancelComposition(MethodsPtr); } [MonoPInvokeCallback] private static void SetImeCompositionRangeCallbackCallbackImpl(IntPtr ptr, Int32 from, Int32 to, ref Rect bounds) { GCHandle h = GCHandle.FromIntPtr(ptr); SetImeCompositionRangeCallbackHandler callback = (SetImeCompositionRangeCallbackHandler)h.Target; h.Free(); callback(from, to, ref bounds); } public void SetImeCompositionRangeCallback(SetImeCompositionRangeCallbackHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.SetImeCompositionRangeCallback(MethodsPtr, GCHandle.ToIntPtr(wrapped), SetImeCompositionRangeCallbackCallbackImpl); } [MonoPInvokeCallback] private static void SetImeSelectionBoundsCallbackCallbackImpl(IntPtr ptr, Rect anchor, Rect focus, bool isAnchorFirst) { GCHandle h = GCHandle.FromIntPtr(ptr); SetImeSelectionBoundsCallbackHandler callback = (SetImeSelectionBoundsCallbackHandler)h.Target; h.Free(); callback(anchor, focus, isAnchorFirst); } public void SetImeSelectionBoundsCallback(SetImeSelectionBoundsCallbackHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.SetImeSelectionBoundsCallback(MethodsPtr, GCHandle.ToIntPtr(wrapped), SetImeSelectionBoundsCallbackCallbackImpl); } public bool IsPointInsideClickZone(Int32 x, Int32 y) { return Methods.IsPointInsideClickZone(MethodsPtr, x, y); } [MonoPInvokeCallback] private static void OnToggleImpl(IntPtr ptr, bool locked) { GCHandle h = GCHandle.FromIntPtr(ptr); Discord d = (Discord)h.Target; if (d.OverlayManagerInstance.OnToggle != null) { d.OverlayManagerInstance.OnToggle.Invoke(locked); } } } public partial class StorageManager { [StructLayout(LayoutKind.Sequential)] internal partial struct FFIEvents { } [StructLayout(LayoutKind.Sequential)] internal partial struct FFIMethods { [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result ReadMethod(IntPtr methodsPtr, [MarshalAs(UnmanagedType.LPStr)]string name, byte[] data, Int32 dataLen, ref UInt32 read); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void ReadAsyncCallback(IntPtr ptr, Result result, IntPtr dataPtr, Int32 dataLen); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void ReadAsyncMethod(IntPtr methodsPtr, [MarshalAs(UnmanagedType.LPStr)]string name, IntPtr callbackData, ReadAsyncCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void ReadAsyncPartialCallback(IntPtr ptr, Result result, IntPtr dataPtr, Int32 dataLen); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void ReadAsyncPartialMethod(IntPtr methodsPtr, [MarshalAs(UnmanagedType.LPStr)]string name, UInt64 offset, UInt64 length, IntPtr callbackData, ReadAsyncPartialCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result WriteMethod(IntPtr methodsPtr, [MarshalAs(UnmanagedType.LPStr)]string name, byte[] data, Int32 dataLen); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void WriteAsyncCallback(IntPtr ptr, Result result); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void WriteAsyncMethod(IntPtr methodsPtr, [MarshalAs(UnmanagedType.LPStr)]string name, byte[] data, Int32 dataLen, IntPtr callbackData, WriteAsyncCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result DeleteMethod(IntPtr methodsPtr, [MarshalAs(UnmanagedType.LPStr)]string name); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result ExistsMethod(IntPtr methodsPtr, [MarshalAs(UnmanagedType.LPStr)]string name, ref bool exists); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void CountMethod(IntPtr methodsPtr, ref Int32 count); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result StatMethod(IntPtr methodsPtr, [MarshalAs(UnmanagedType.LPStr)]string name, ref FileStat stat); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result StatAtMethod(IntPtr methodsPtr, Int32 index, ref FileStat stat); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result GetPathMethod(IntPtr methodsPtr, StringBuilder path); internal ReadMethod Read; internal ReadAsyncMethod ReadAsync; internal ReadAsyncPartialMethod ReadAsyncPartial; internal WriteMethod Write; internal WriteAsyncMethod WriteAsync; internal DeleteMethod Delete; internal ExistsMethod Exists; internal CountMethod Count; internal StatMethod Stat; internal StatAtMethod StatAt; internal GetPathMethod GetPath; } public delegate void ReadAsyncHandler(Result result, byte[] data); public delegate void ReadAsyncPartialHandler(Result result, byte[] data); public delegate void WriteAsyncHandler(Result result); private IntPtr MethodsPtr; private Object MethodsStructure; private FFIMethods Methods { get { if (MethodsStructure == null) { MethodsStructure = Marshal.PtrToStructure(MethodsPtr, typeof(FFIMethods)); } return (FFIMethods)MethodsStructure; } } internal StorageManager(IntPtr ptr, IntPtr eventsPtr, ref FFIEvents events) { if (eventsPtr == IntPtr.Zero) { throw new ResultException(Result.InternalError); } InitEvents(eventsPtr, ref events); MethodsPtr = ptr; if (MethodsPtr == IntPtr.Zero) { throw new ResultException(Result.InternalError); } } private void InitEvents(IntPtr eventsPtr, ref FFIEvents events) { Marshal.StructureToPtr(events, eventsPtr, false); } public UInt32 Read(string name, byte[] data) { var ret = new UInt32(); var res = Methods.Read(MethodsPtr, name, data, data.Length, ref ret); if (res != Result.Ok) { throw new ResultException(res); } return ret; } [MonoPInvokeCallback] private static void ReadAsyncCallbackImpl(IntPtr ptr, Result result, IntPtr dataPtr, Int32 dataLen) { GCHandle h = GCHandle.FromIntPtr(ptr); ReadAsyncHandler callback = (ReadAsyncHandler)h.Target; h.Free(); byte[] data = new byte[dataLen]; Marshal.Copy(dataPtr, data, 0, (int)dataLen); callback(result, data); } public void ReadAsync(string name, ReadAsyncHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.ReadAsync(MethodsPtr, name, GCHandle.ToIntPtr(wrapped), ReadAsyncCallbackImpl); } [MonoPInvokeCallback] private static void ReadAsyncPartialCallbackImpl(IntPtr ptr, Result result, IntPtr dataPtr, Int32 dataLen) { GCHandle h = GCHandle.FromIntPtr(ptr); ReadAsyncPartialHandler callback = (ReadAsyncPartialHandler)h.Target; h.Free(); byte[] data = new byte[dataLen]; Marshal.Copy(dataPtr, data, 0, (int)dataLen); callback(result, data); } public void ReadAsyncPartial(string name, UInt64 offset, UInt64 length, ReadAsyncPartialHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.ReadAsyncPartial(MethodsPtr, name, offset, length, GCHandle.ToIntPtr(wrapped), ReadAsyncPartialCallbackImpl); } public void Write(string name, byte[] data) { var res = Methods.Write(MethodsPtr, name, data, data.Length); if (res != Result.Ok) { throw new ResultException(res); } } [MonoPInvokeCallback] private static void WriteAsyncCallbackImpl(IntPtr ptr, Result result) { GCHandle h = GCHandle.FromIntPtr(ptr); WriteAsyncHandler callback = (WriteAsyncHandler)h.Target; h.Free(); callback(result); } public void WriteAsync(string name, byte[] data, WriteAsyncHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.WriteAsync(MethodsPtr, name, data, data.Length, GCHandle.ToIntPtr(wrapped), WriteAsyncCallbackImpl); } public void Delete(string name) { var res = Methods.Delete(MethodsPtr, name); if (res != Result.Ok) { throw new ResultException(res); } } public bool Exists(string name) { var ret = new bool(); var res = Methods.Exists(MethodsPtr, name, ref ret); if (res != Result.Ok) { throw new ResultException(res); } return ret; } public Int32 Count() { var ret = new Int32(); Methods.Count(MethodsPtr, ref ret); return ret; } public FileStat Stat(string name) { var ret = new FileStat(); var res = Methods.Stat(MethodsPtr, name, ref ret); if (res != Result.Ok) { throw new ResultException(res); } return ret; } public FileStat StatAt(Int32 index) { var ret = new FileStat(); var res = Methods.StatAt(MethodsPtr, index, ref ret); if (res != Result.Ok) { throw new ResultException(res); } return ret; } public string GetPath() { var ret = new StringBuilder(4096); var res = Methods.GetPath(MethodsPtr, ret); if (res != Result.Ok) { throw new ResultException(res); } return ret.ToString(); } } public partial class StoreManager { [StructLayout(LayoutKind.Sequential)] internal partial struct FFIEvents { [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void EntitlementCreateHandler(IntPtr ptr, ref Entitlement entitlement); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void EntitlementDeleteHandler(IntPtr ptr, ref Entitlement entitlement); internal EntitlementCreateHandler OnEntitlementCreate; internal EntitlementDeleteHandler OnEntitlementDelete; } [StructLayout(LayoutKind.Sequential)] internal partial struct FFIMethods { [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void FetchSkusCallback(IntPtr ptr, Result result); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void FetchSkusMethod(IntPtr methodsPtr, IntPtr callbackData, FetchSkusCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void CountSkusMethod(IntPtr methodsPtr, ref Int32 count); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result GetSkuMethod(IntPtr methodsPtr, Int64 skuId, ref Sku sku); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result GetSkuAtMethod(IntPtr methodsPtr, Int32 index, ref Sku sku); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void FetchEntitlementsCallback(IntPtr ptr, Result result); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void FetchEntitlementsMethod(IntPtr methodsPtr, IntPtr callbackData, FetchEntitlementsCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void CountEntitlementsMethod(IntPtr methodsPtr, ref Int32 count); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result GetEntitlementMethod(IntPtr methodsPtr, Int64 entitlementId, ref Entitlement entitlement); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result GetEntitlementAtMethod(IntPtr methodsPtr, Int32 index, ref Entitlement entitlement); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result HasSkuEntitlementMethod(IntPtr methodsPtr, Int64 skuId, ref bool hasEntitlement); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void StartPurchaseCallback(IntPtr ptr, Result result); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void StartPurchaseMethod(IntPtr methodsPtr, Int64 skuId, IntPtr callbackData, StartPurchaseCallback callback); internal FetchSkusMethod FetchSkus; internal CountSkusMethod CountSkus; internal GetSkuMethod GetSku; internal GetSkuAtMethod GetSkuAt; internal FetchEntitlementsMethod FetchEntitlements; internal CountEntitlementsMethod CountEntitlements; internal GetEntitlementMethod GetEntitlement; internal GetEntitlementAtMethod GetEntitlementAt; internal HasSkuEntitlementMethod HasSkuEntitlement; internal StartPurchaseMethod StartPurchase; } public delegate void FetchSkusHandler(Result result); public delegate void FetchEntitlementsHandler(Result result); public delegate void StartPurchaseHandler(Result result); public delegate void EntitlementCreateHandler(ref Entitlement entitlement); public delegate void EntitlementDeleteHandler(ref Entitlement entitlement); private IntPtr MethodsPtr; private Object MethodsStructure; private FFIMethods Methods { get { if (MethodsStructure == null) { MethodsStructure = Marshal.PtrToStructure(MethodsPtr, typeof(FFIMethods)); } return (FFIMethods)MethodsStructure; } } public event EntitlementCreateHandler OnEntitlementCreate; public event EntitlementDeleteHandler OnEntitlementDelete; internal StoreManager(IntPtr ptr, IntPtr eventsPtr, ref FFIEvents events) { if (eventsPtr == IntPtr.Zero) { throw new ResultException(Result.InternalError); } InitEvents(eventsPtr, ref events); MethodsPtr = ptr; if (MethodsPtr == IntPtr.Zero) { throw new ResultException(Result.InternalError); } } private void InitEvents(IntPtr eventsPtr, ref FFIEvents events) { events.OnEntitlementCreate = OnEntitlementCreateImpl; events.OnEntitlementDelete = OnEntitlementDeleteImpl; Marshal.StructureToPtr(events, eventsPtr, false); } [MonoPInvokeCallback] private static void FetchSkusCallbackImpl(IntPtr ptr, Result result) { GCHandle h = GCHandle.FromIntPtr(ptr); FetchSkusHandler callback = (FetchSkusHandler)h.Target; h.Free(); callback(result); } public void FetchSkus(FetchSkusHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.FetchSkus(MethodsPtr, GCHandle.ToIntPtr(wrapped), FetchSkusCallbackImpl); } public Int32 CountSkus() { var ret = new Int32(); Methods.CountSkus(MethodsPtr, ref ret); return ret; } public Sku GetSku(Int64 skuId) { var ret = new Sku(); var res = Methods.GetSku(MethodsPtr, skuId, ref ret); if (res != Result.Ok) { throw new ResultException(res); } return ret; } public Sku GetSkuAt(Int32 index) { var ret = new Sku(); var res = Methods.GetSkuAt(MethodsPtr, index, ref ret); if (res != Result.Ok) { throw new ResultException(res); } return ret; } [MonoPInvokeCallback] private static void FetchEntitlementsCallbackImpl(IntPtr ptr, Result result) { GCHandle h = GCHandle.FromIntPtr(ptr); FetchEntitlementsHandler callback = (FetchEntitlementsHandler)h.Target; h.Free(); callback(result); } public void FetchEntitlements(FetchEntitlementsHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.FetchEntitlements(MethodsPtr, GCHandle.ToIntPtr(wrapped), FetchEntitlementsCallbackImpl); } public Int32 CountEntitlements() { var ret = new Int32(); Methods.CountEntitlements(MethodsPtr, ref ret); return ret; } public Entitlement GetEntitlement(Int64 entitlementId) { var ret = new Entitlement(); var res = Methods.GetEntitlement(MethodsPtr, entitlementId, ref ret); if (res != Result.Ok) { throw new ResultException(res); } return ret; } public Entitlement GetEntitlementAt(Int32 index) { var ret = new Entitlement(); var res = Methods.GetEntitlementAt(MethodsPtr, index, ref ret); if (res != Result.Ok) { throw new ResultException(res); } return ret; } public bool HasSkuEntitlement(Int64 skuId) { var ret = new bool(); var res = Methods.HasSkuEntitlement(MethodsPtr, skuId, ref ret); if (res != Result.Ok) { throw new ResultException(res); } return ret; } [MonoPInvokeCallback] private static void StartPurchaseCallbackImpl(IntPtr ptr, Result result) { GCHandle h = GCHandle.FromIntPtr(ptr); StartPurchaseHandler callback = (StartPurchaseHandler)h.Target; h.Free(); callback(result); } public void StartPurchase(Int64 skuId, StartPurchaseHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.StartPurchase(MethodsPtr, skuId, GCHandle.ToIntPtr(wrapped), StartPurchaseCallbackImpl); } [MonoPInvokeCallback] private static void OnEntitlementCreateImpl(IntPtr ptr, ref Entitlement entitlement) { GCHandle h = GCHandle.FromIntPtr(ptr); Discord d = (Discord)h.Target; if (d.StoreManagerInstance.OnEntitlementCreate != null) { d.StoreManagerInstance.OnEntitlementCreate.Invoke(ref entitlement); } } [MonoPInvokeCallback] private static void OnEntitlementDeleteImpl(IntPtr ptr, ref Entitlement entitlement) { GCHandle h = GCHandle.FromIntPtr(ptr); Discord d = (Discord)h.Target; if (d.StoreManagerInstance.OnEntitlementDelete != null) { d.StoreManagerInstance.OnEntitlementDelete.Invoke(ref entitlement); } } } public partial class VoiceManager { [StructLayout(LayoutKind.Sequential)] internal partial struct FFIEvents { [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void SettingsUpdateHandler(IntPtr ptr); internal SettingsUpdateHandler OnSettingsUpdate; } [StructLayout(LayoutKind.Sequential)] internal partial struct FFIMethods { [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result GetInputModeMethod(IntPtr methodsPtr, ref InputMode inputMode); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void SetInputModeCallback(IntPtr ptr, Result result); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void SetInputModeMethod(IntPtr methodsPtr, InputMode inputMode, IntPtr callbackData, SetInputModeCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result IsSelfMuteMethod(IntPtr methodsPtr, ref bool mute); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result SetSelfMuteMethod(IntPtr methodsPtr, bool mute); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result IsSelfDeafMethod(IntPtr methodsPtr, ref bool deaf); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result SetSelfDeafMethod(IntPtr methodsPtr, bool deaf); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result IsLocalMuteMethod(IntPtr methodsPtr, Int64 userId, ref bool mute); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result SetLocalMuteMethod(IntPtr methodsPtr, Int64 userId, bool mute); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result GetLocalVolumeMethod(IntPtr methodsPtr, Int64 userId, ref byte volume); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result SetLocalVolumeMethod(IntPtr methodsPtr, Int64 userId, byte volume); internal GetInputModeMethod GetInputMode; internal SetInputModeMethod SetInputMode; internal IsSelfMuteMethod IsSelfMute; internal SetSelfMuteMethod SetSelfMute; internal IsSelfDeafMethod IsSelfDeaf; internal SetSelfDeafMethod SetSelfDeaf; internal IsLocalMuteMethod IsLocalMute; internal SetLocalMuteMethod SetLocalMute; internal GetLocalVolumeMethod GetLocalVolume; internal SetLocalVolumeMethod SetLocalVolume; } public delegate void SetInputModeHandler(Result result); public delegate void SettingsUpdateHandler(); private IntPtr MethodsPtr; private Object MethodsStructure; private FFIMethods Methods { get { if (MethodsStructure == null) { MethodsStructure = Marshal.PtrToStructure(MethodsPtr, typeof(FFIMethods)); } return (FFIMethods)MethodsStructure; } } public event SettingsUpdateHandler OnSettingsUpdate; internal VoiceManager(IntPtr ptr, IntPtr eventsPtr, ref FFIEvents events) { if (eventsPtr == IntPtr.Zero) { throw new ResultException(Result.InternalError); } InitEvents(eventsPtr, ref events); MethodsPtr = ptr; if (MethodsPtr == IntPtr.Zero) { throw new ResultException(Result.InternalError); } } private void InitEvents(IntPtr eventsPtr, ref FFIEvents events) { events.OnSettingsUpdate = OnSettingsUpdateImpl; Marshal.StructureToPtr(events, eventsPtr, false); } public InputMode GetInputMode() { var ret = new InputMode(); var res = Methods.GetInputMode(MethodsPtr, ref ret); if (res != Result.Ok) { throw new ResultException(res); } return ret; } [MonoPInvokeCallback] private static void SetInputModeCallbackImpl(IntPtr ptr, Result result) { GCHandle h = GCHandle.FromIntPtr(ptr); SetInputModeHandler callback = (SetInputModeHandler)h.Target; h.Free(); callback(result); } public void SetInputMode(InputMode inputMode, SetInputModeHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.SetInputMode(MethodsPtr, inputMode, GCHandle.ToIntPtr(wrapped), SetInputModeCallbackImpl); } public bool IsSelfMute() { var ret = new bool(); var res = Methods.IsSelfMute(MethodsPtr, ref ret); if (res != Result.Ok) { throw new ResultException(res); } return ret; } public void SetSelfMute(bool mute) { var res = Methods.SetSelfMute(MethodsPtr, mute); if (res != Result.Ok) { throw new ResultException(res); } } public bool IsSelfDeaf() { var ret = new bool(); var res = Methods.IsSelfDeaf(MethodsPtr, ref ret); if (res != Result.Ok) { throw new ResultException(res); } return ret; } public void SetSelfDeaf(bool deaf) { var res = Methods.SetSelfDeaf(MethodsPtr, deaf); if (res != Result.Ok) { throw new ResultException(res); } } public bool IsLocalMute(Int64 userId) { var ret = new bool(); var res = Methods.IsLocalMute(MethodsPtr, userId, ref ret); if (res != Result.Ok) { throw new ResultException(res); } return ret; } public void SetLocalMute(Int64 userId, bool mute) { var res = Methods.SetLocalMute(MethodsPtr, userId, mute); if (res != Result.Ok) { throw new ResultException(res); } } public byte GetLocalVolume(Int64 userId) { var ret = new byte(); var res = Methods.GetLocalVolume(MethodsPtr, userId, ref ret); if (res != Result.Ok) { throw new ResultException(res); } return ret; } public void SetLocalVolume(Int64 userId, byte volume) { var res = Methods.SetLocalVolume(MethodsPtr, userId, volume); if (res != Result.Ok) { throw new ResultException(res); } } [MonoPInvokeCallback] private static void OnSettingsUpdateImpl(IntPtr ptr) { GCHandle h = GCHandle.FromIntPtr(ptr); Discord d = (Discord)h.Target; if (d.VoiceManagerInstance.OnSettingsUpdate != null) { d.VoiceManagerInstance.OnSettingsUpdate.Invoke(); } } } public partial class AchievementManager { [StructLayout(LayoutKind.Sequential)] internal partial struct FFIEvents { [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void UserAchievementUpdateHandler(IntPtr ptr, ref UserAchievement userAchievement); internal UserAchievementUpdateHandler OnUserAchievementUpdate; } [StructLayout(LayoutKind.Sequential)] internal partial struct FFIMethods { [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void SetUserAchievementCallback(IntPtr ptr, Result result); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void SetUserAchievementMethod(IntPtr methodsPtr, Int64 achievementId, byte percentComplete, IntPtr callbackData, SetUserAchievementCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void FetchUserAchievementsCallback(IntPtr ptr, Result result); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void FetchUserAchievementsMethod(IntPtr methodsPtr, IntPtr callbackData, FetchUserAchievementsCallback callback); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate void CountUserAchievementsMethod(IntPtr methodsPtr, ref Int32 count); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result GetUserAchievementMethod(IntPtr methodsPtr, Int64 userAchievementId, ref UserAchievement userAchievement); [UnmanagedFunctionPointer(CallingConvention.Winapi)] internal delegate Result GetUserAchievementAtMethod(IntPtr methodsPtr, Int32 index, ref UserAchievement userAchievement); internal SetUserAchievementMethod SetUserAchievement; internal FetchUserAchievementsMethod FetchUserAchievements; internal CountUserAchievementsMethod CountUserAchievements; internal GetUserAchievementMethod GetUserAchievement; internal GetUserAchievementAtMethod GetUserAchievementAt; } public delegate void SetUserAchievementHandler(Result result); public delegate void FetchUserAchievementsHandler(Result result); public delegate void UserAchievementUpdateHandler(ref UserAchievement userAchievement); private IntPtr MethodsPtr; private Object MethodsStructure; private FFIMethods Methods { get { if (MethodsStructure == null) { MethodsStructure = Marshal.PtrToStructure(MethodsPtr, typeof(FFIMethods)); } return (FFIMethods)MethodsStructure; } } public event UserAchievementUpdateHandler OnUserAchievementUpdate; internal AchievementManager(IntPtr ptr, IntPtr eventsPtr, ref FFIEvents events) { if (eventsPtr == IntPtr.Zero) { throw new ResultException(Result.InternalError); } InitEvents(eventsPtr, ref events); MethodsPtr = ptr; if (MethodsPtr == IntPtr.Zero) { throw new ResultException(Result.InternalError); } } private void InitEvents(IntPtr eventsPtr, ref FFIEvents events) { events.OnUserAchievementUpdate = OnUserAchievementUpdateImpl; Marshal.StructureToPtr(events, eventsPtr, false); } [MonoPInvokeCallback] private static void SetUserAchievementCallbackImpl(IntPtr ptr, Result result) { GCHandle h = GCHandle.FromIntPtr(ptr); SetUserAchievementHandler callback = (SetUserAchievementHandler)h.Target; h.Free(); callback(result); } public void SetUserAchievement(Int64 achievementId, byte percentComplete, SetUserAchievementHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.SetUserAchievement(MethodsPtr, achievementId, percentComplete, GCHandle.ToIntPtr(wrapped), SetUserAchievementCallbackImpl); } [MonoPInvokeCallback] private static void FetchUserAchievementsCallbackImpl(IntPtr ptr, Result result) { GCHandle h = GCHandle.FromIntPtr(ptr); FetchUserAchievementsHandler callback = (FetchUserAchievementsHandler)h.Target; h.Free(); callback(result); } public void FetchUserAchievements(FetchUserAchievementsHandler callback) { GCHandle wrapped = GCHandle.Alloc(callback); Methods.FetchUserAchievements(MethodsPtr, GCHandle.ToIntPtr(wrapped), FetchUserAchievementsCallbackImpl); } public Int32 CountUserAchievements() { var ret = new Int32(); Methods.CountUserAchievements(MethodsPtr, ref ret); return ret; } public UserAchievement GetUserAchievement(Int64 userAchievementId) { var ret = new UserAchievement(); var res = Methods.GetUserAchievement(MethodsPtr, userAchievementId, ref ret); if (res != Result.Ok) { throw new ResultException(res); } return ret; } public UserAchievement GetUserAchievementAt(Int32 index) { var ret = new UserAchievement(); var res = Methods.GetUserAchievementAt(MethodsPtr, index, ref ret); if (res != Result.Ok) { throw new ResultException(res); } return ret; } [MonoPInvokeCallback] private static void OnUserAchievementUpdateImpl(IntPtr ptr, ref UserAchievement userAchievement) { GCHandle h = GCHandle.FromIntPtr(ptr); Discord d = (Discord)h.Target; if (d.AchievementManagerInstance.OnUserAchievementUpdate != null) { d.AchievementManagerInstance.OnUserAchievementUpdate.Invoke(ref userAchievement); } } } } ================================================ FILE: Assets/Plugins/DiscordSDK/Core.cs.meta ================================================ fileFormatVersion: 2 guid: 6803100cc09c5bb48b81c763963c0828 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/DiscordSDK/ImageManager.cs ================================================ using System; using System.Runtime.InteropServices; #if UNITY_EDITOR || UNITY_STANDALONE using UnityEngine; #endif namespace Discord { public partial struct ImageHandle { static public ImageHandle User(Int64 id) { return User(id, 128); } static public ImageHandle User(Int64 id, UInt32 size) { return new ImageHandle { Type = ImageType.User, Id = id, Size = size, }; } } public partial class ImageManager { public void Fetch(ImageHandle handle, FetchHandler callback) { Fetch(handle, false, callback); } public byte[] GetData(ImageHandle handle) { var dimensions = GetDimensions(handle); var data = new byte[dimensions.Width * dimensions.Height * 4]; GetData(handle, data); return data; } #if UNITY_EDITOR || UNITY_STANDALONE public Texture2D GetTexture(ImageHandle handle) { var dimensions = GetDimensions(handle); var texture = new Texture2D((int)dimensions.Width, (int)dimensions.Height, TextureFormat.RGBA32, false, true); texture.LoadRawTextureData(GetData(handle)); texture.Apply(); return texture; } #endif } } ================================================ FILE: Assets/Plugins/DiscordSDK/ImageManager.cs.meta ================================================ fileFormatVersion: 2 guid: 8a9ae2ac76483094c8637f9bb3908d95 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/DiscordSDK/LobbyManager.cs ================================================ using System; using System.Runtime.InteropServices; using System.Collections.Generic; using System.Text; namespace Discord { public partial class LobbyManager { public IEnumerable GetMemberUsers(Int64 lobbyID) { var memberCount = MemberCount(lobbyID); var members = new List(); for (var i = 0; i < memberCount; i++) { members.Add(GetMemberUser(lobbyID, GetMemberUserId(lobbyID, i))); } return members; } public void SendLobbyMessage(Int64 lobbyID, string data, SendLobbyMessageHandler handler) { SendLobbyMessage(lobbyID, Encoding.UTF8.GetBytes(data), handler); } } } ================================================ FILE: Assets/Plugins/DiscordSDK/LobbyManager.cs.meta ================================================ fileFormatVersion: 2 guid: 969a5429f59847e4c9273c7327965abc MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/DiscordSDK/StorageManager.cs ================================================ using System; using System.Collections.Generic; using System.Text; namespace Discord { public partial class StorageManager { public IEnumerable Files() { var fileCount = Count(); var files = new List(); for (var i = 0; i < fileCount; i++) { files.Add(StatAt(i)); } return files; } } } ================================================ FILE: Assets/Plugins/DiscordSDK/StorageManager.cs.meta ================================================ fileFormatVersion: 2 guid: 1a63fb8bfc63d064d9e057c0b1d75d70 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/DiscordSDK/StoreManager.cs ================================================ using System; using System.Runtime.InteropServices; using System.Collections.Generic; using System.Text; namespace Discord { public partial class StoreManager { public IEnumerable GetEntitlements() { var count = CountEntitlements(); var entitlements = new List(); for (var i = 0; i < count; i++) { entitlements.Add(GetEntitlementAt(i)); } return entitlements; } public IEnumerable GetSkus() { var count = CountSkus(); var skus = new List(); for (var i = 0; i < count; i++) { skus.Add(GetSkuAt(i)); } return skus; } } } ================================================ FILE: Assets/Plugins/DiscordSDK/StoreManager.cs.meta ================================================ fileFormatVersion: 2 guid: 103ff28411b3ab84e881e54b358d3f44 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/DiscordSDK.meta ================================================ fileFormatVersion: 2 guid: 19da960c797ae6a4582d7412bd4e5b78 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Debugger/DebuggerLogic/AsyncDebugger.cs ================================================ #if (!PCL) && ((!UNITY_5) || UNITY_STANDALONE) using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using System.Text.RegularExpressions; using System.Threading; using MoonSharp.Interpreter; using MoonSharp.Interpreter.Debugging; using MoonSharp.VsCodeDebugger; using MoonSharp.VsCodeDebugger.SDK; namespace MoonSharp.VsCodeDebugger.DebuggerLogic { internal class AsyncDebugger : IDebugger { private static object s_AsyncDebuggerIdLock = new object(); private static int s_AsyncDebuggerIdCounter = 0; object m_Lock = new object(); private IAsyncDebuggerClient m_Client__; DebuggerAction m_PendingAction = null; List[] m_WatchItems; Dictionary m_SourcesMap = new Dictionary(); Dictionary m_SourcesOverride = new Dictionary(); Func m_SourceFinder; public DebugService DebugService { get; private set; } public Regex ErrorRegex { get; set; } public Script Script { get; private set; } public bool PauseRequested { get; set; } public string Name { get; set; } public int Id { get; private set; } public AsyncDebugger(Script script, Func sourceFinder, string name) { lock (s_AsyncDebuggerIdLock) Id = s_AsyncDebuggerIdCounter++; m_SourceFinder = sourceFinder; ErrorRegex = new Regex(@"\A.*\Z"); Script = script; m_WatchItems = new List[(int)WatchType.MaxValue]; Name = name; for (int i = 0; i < m_WatchItems.Length; i++) m_WatchItems[i] = new List(64); } public IAsyncDebuggerClient Client { get { return m_Client__; } set { lock (m_Lock) { if (m_Client__ != null && m_Client__ != value) { m_Client__.Unbind(); } if (value != null) { for (int i = 0; i < Script.SourceCodeCount; i++) if (m_SourcesMap.ContainsKey(i)) value.OnSourceCodeChanged(i); } m_Client__ = value; } } } DebuggerAction IDebugger.GetAction(int ip, SourceRef sourceref) { PauseRequested = false; lock (m_Lock) if (Client != null) { Client.SendStopEvent(); } while (true) { lock (m_Lock) { if (Client == null) { return new DebuggerAction() { Action = DebuggerAction.ActionType.Run }; } if (m_PendingAction != null) { var action = m_PendingAction; m_PendingAction = null; return action; } } Sleep(10); } } public void QueueAction(DebuggerAction action) { while (true) { lock (m_Lock) if (m_PendingAction == null) { m_PendingAction = action; break; } Sleep(10); } } private void Sleep(int v) { #if DOTNET_CORE System.Threading.Tasks.Task.Delay(10).Wait(); #else System.Threading.Thread.Sleep(10); #endif } private DynamicExpression CreateDynExpr(string code) { try { return Script.CreateDynamicExpression(code); } catch (Exception ex) { return Script.CreateConstantDynamicExpression(code, DynValue.NewString(ex.Message)); } } List IDebugger.GetWatchItems() { return new List(); } bool IDebugger.IsPauseRequested() { return PauseRequested; } void IDebugger.RefreshBreakpoints(IEnumerable refs) { } void IDebugger.SetByteCode(string[] byteCode) { } void IDebugger.SetSourceCode(SourceCode sourceCode) { m_SourcesMap[sourceCode.SourceID] = sourceCode; bool invalidFile = false; string file = m_SourceFinder(sourceCode); if (!string.IsNullOrEmpty(file)) { try { if (!File.Exists(file)) invalidFile = true; } catch { invalidFile = true; } } else { invalidFile = true; } if (invalidFile) { file = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString("N") + ".lua"); File.WriteAllText(file, sourceCode.Code + GetFooterForTempFile()); m_SourcesOverride[sourceCode.SourceID] = file; } else if (file != sourceCode.Name) { m_SourcesOverride[sourceCode.SourceID] = file; } lock (m_Lock) if (Client != null) Client.OnSourceCodeChanged(sourceCode.SourceID); } private string GetFooterForTempFile() { return "\n\n" + "----------------------------------------------------------------------------------------------------------\n" + "-- This file has been generated by the debugger as a placeholder for a script snippet stored in memory. --\n" + "-- If you restart the host process, the contents of this file are not valid anymore. --\n" + "----------------------------------------------------------------------------------------------------------\n"; } public string GetSourceFile(int sourceId) { if (m_SourcesOverride.ContainsKey(sourceId)) return m_SourcesOverride[sourceId]; else if (m_SourcesMap.ContainsKey(sourceId)) return m_SourcesMap[sourceId].Name; return null; } public bool IsSourceOverride(int sourceId) { return (m_SourcesOverride.ContainsKey(sourceId)); } void IDebugger.SignalExecutionEnded() { lock (m_Lock) if (Client != null) Client.OnExecutionEnded(); } bool IDebugger.SignalRuntimeException(ScriptRuntimeException ex) { lock (m_Lock) if (Client == null) return false; Client.OnException(ex); PauseRequested = ErrorRegex.IsMatch(ex.Message); return PauseRequested; } void IDebugger.Update(WatchType watchType, IEnumerable items) { var list = m_WatchItems[(int)watchType]; list.Clear(); list.AddRange(items); lock (m_Lock) if (Client != null) Client.OnWatchesUpdated(watchType); } public List GetWatches(WatchType watchType) { return m_WatchItems[(int)watchType]; } public SourceCode GetSource(int id) { if (m_SourcesMap.ContainsKey(id)) return m_SourcesMap[id]; return null; } public SourceCode FindSourceByName(string path) { // we use case insensitive match - be damned if you have files which differ only by // case in the same directory on Unix. path = path.Replace('\\', '/').ToUpperInvariant(); foreach (var kvp in m_SourcesOverride) { if (kvp.Value.Replace('\\', '/').ToUpperInvariant() == path) return m_SourcesMap[kvp.Key]; } return m_SourcesMap.Values.FirstOrDefault(s => s.Name.Replace('\\', '/').ToUpperInvariant() == path); } void IDebugger.SetDebugService(DebugService debugService) { DebugService = debugService; } public DynValue Evaluate(string expression) { DynamicExpression expr = CreateDynExpr(expression); return expr.Evaluate(); } DebuggerCaps IDebugger.GetDebuggerCaps() { return DebuggerCaps.CanDebugSourceCode | DebuggerCaps.HasLineBasedBreakpoints; } } } #endif ================================================ FILE: Assets/Plugins/MoonSharp/Debugger/DebuggerLogic/AsyncDebugger.cs.meta ================================================ fileFormatVersion: 2 guid: 3e668bdf7446ab540acde63de6ee4fc8 timeCreated: 1518177917 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Debugger/DebuggerLogic/EmptyDebugSession.cs ================================================ #if (!PCL) && ((!UNITY_5) || UNITY_STANDALONE) using System; using System.Collections.Generic; using System.Linq; using System.Text; using MoonSharp.Interpreter; using MoonSharp.VsCodeDebugger.SDK; namespace MoonSharp.VsCodeDebugger.DebuggerLogic { internal class EmptyDebugSession : DebugSession { MoonSharpVsCodeDebugServer m_Server; internal EmptyDebugSession(MoonSharpVsCodeDebugServer server) : base(true, false) { m_Server = server; } public override void Initialize(Response response, Table args) { #if DOTNET_CORE SendText("Connected to MoonSharp {0} [{1}]", Script.VERSION, Script.GlobalOptions.Platform.GetPlatformName()); #else SendText("Connected to MoonSharp {0} [{1}] on process {2} (PID {3})", Script.VERSION, Script.GlobalOptions.Platform.GetPlatformName(), System.Diagnostics.Process.GetCurrentProcess().ProcessName, System.Diagnostics.Process.GetCurrentProcess().Id); #endif SendText("No script is set as default for debugging; use the debug console to select the script to debug.\n"); SendList(); SendResponse(response, new Capabilities() { // This debug adapter does not need the configurationDoneRequest. supportsConfigurationDoneRequest = false, // This debug adapter does not support function breakpoints. supportsFunctionBreakpoints = false, // This debug adapter doesn't support conditional breakpoints. supportsConditionalBreakpoints = false, // This debug adapter does not support a side effect free evaluate request for data hovers. supportsEvaluateForHovers = false, // This debug adapter does not support exception breakpoint filters exceptionBreakpointFilters = new object[0] }); // Debugger is ready to accept breakpoints immediately SendEvent(new InitializedEvent()); } private void SendList() { int currId = m_Server.CurrentId ?? -1000; SendText("=========================================================="); foreach (var pair in m_Server.GetAttachedDebuggersByIdAndName()) { string isdef = (pair.Key == currId) ? " (default)" : ""; SendText("{0} : {1}{2}", pair.Key.ToString().PadLeft(9), pair.Value, isdef); } SendText(""); SendText("Type the number of the script to debug, or '!' to refresh"); } public override void Attach(Response response, Table arguments) { SendResponse(response); } public override void Continue(Response response, Table arguments) { SendList(); SendResponse(response); } public override void Disconnect(Response response, Table arguments) { SendResponse(response); } private static string getString(Table args, string property, string dflt = null) { var s = (string)args[property]; if (s == null) { return dflt; } s = s.Trim(); if (s.Length == 0) { return dflt; } return s; } public override void Evaluate(Response response, Table args) { var expression = getString(args, "expression"); var context = getString(args, "context") ?? "hover"; if (context == "repl") ExecuteRepl(expression); SendResponse(response); } private void ExecuteRepl(string cmd) { int id = 0; if (int.TryParse(cmd, out id)) { m_Server.CurrentId = id; SendText("Re-attach the debugger to debug the selected script."); Unbind(); } else { SendList(); } } public override void Launch(Response response, Table arguments) { SendResponse(response); } public override void Next(Response response, Table arguments) { SendList(); SendResponse(response); } public override void Pause(Response response, Table arguments) { SendList(); SendResponse(response); } public override void Scopes(Response response, Table arguments) { SendResponse(response); } public override void SetBreakpoints(Response response, Table args) { SendResponse(response); } public override void StackTrace(Response response, Table args) { SendResponse(response); } public override void StepIn(Response response, Table arguments) { SendList(); SendResponse(response); } public override void StepOut(Response response, Table arguments) { SendList(); SendResponse(response); } public override void Threads(Response response, Table arguments) { var threads = new List() { new Thread(0, "Main Thread") }; SendResponse(response, new ThreadsResponseBody(threads)); } public override void Variables(Response response, Table arguments) { SendResponse(response); } private void SendText(string msg, params object[] args) { msg = string.Format(msg, args); SendEvent(new OutputEvent("console", msg + "\n")); } public void Unbind() { SendText("Bye."); SendEvent(new TerminatedEvent()); } } } #endif ================================================ FILE: Assets/Plugins/MoonSharp/Debugger/DebuggerLogic/EmptyDebugSession.cs.meta ================================================ fileFormatVersion: 2 guid: e932fd4395c0b0442b6395daebcc3fdf timeCreated: 1518177925 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Debugger/DebuggerLogic/IAsyncDebuggerClient.cs ================================================ #if (!PCL) && ((!UNITY_5) || UNITY_STANDALONE) using System; using System.Collections.Generic; using System.Linq; using System.Text; using MoonSharp.Interpreter; using MoonSharp.Interpreter.Debugging; namespace MoonSharp.VsCodeDebugger.DebuggerLogic { internal interface IAsyncDebuggerClient { void SendStopEvent(); void OnWatchesUpdated(WatchType watchType); void OnSourceCodeChanged(int sourceID); void OnExecutionEnded(); void OnException(ScriptRuntimeException ex); void Unbind(); } } #endif ================================================ FILE: Assets/Plugins/MoonSharp/Debugger/DebuggerLogic/IAsyncDebuggerClient.cs.meta ================================================ fileFormatVersion: 2 guid: 6934b69b92260a54b9b8f9f23efa131d timeCreated: 1518177919 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Debugger/DebuggerLogic/MoonSharpDebugSession.cs ================================================ #if (!PCL) && ((!UNITY_5) || UNITY_STANDALONE) using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using System.Text.RegularExpressions; using MoonSharp.Interpreter; using MoonSharp.Interpreter.Debugging; using MoonSharp.VsCodeDebugger.SDK; namespace MoonSharp.VsCodeDebugger.DebuggerLogic { internal class MoonSharpDebugSession : DebugSession, IAsyncDebuggerClient { AsyncDebugger m_Debug; MoonSharpVsCodeDebugServer m_Server; List m_Variables = new List(); bool m_NotifyExecutionEnd = false; const int SCOPE_LOCALS = 65536; const int SCOPE_SELF = 65537; internal MoonSharpDebugSession(MoonSharpVsCodeDebugServer server, AsyncDebugger debugger) : base(true, false) { m_Server = server; m_Debug = debugger; } public override void Initialize(Response response, Table args) { #if DOTNET_CORE SendText("Connected to MoonSharp {0} [{1}]", Script.VERSION, Script.GlobalOptions.Platform.GetPlatformName()); #else SendText("Connected to MoonSharp {0} [{1}] on process {2} (PID {3})", Script.VERSION, Script.GlobalOptions.Platform.GetPlatformName(), System.Diagnostics.Process.GetCurrentProcess().ProcessName, System.Diagnostics.Process.GetCurrentProcess().Id); #endif SendText("Debugging script '{0}'; use the debug console to debug another script.", m_Debug.Name); SendText("Type '!help' in the Debug Console for available commands."); SendResponse(response, new Capabilities() { // This debug adapter does not need the configurationDoneRequest. supportsConfigurationDoneRequest = false, // This debug adapter does not support function breakpoints. supportsFunctionBreakpoints = false, // This debug adapter doesn't support conditional breakpoints. supportsConditionalBreakpoints = false, // This debug adapter does not support a side effect free evaluate request for data hovers. supportsEvaluateForHovers = false, // This debug adapter does not support exception breakpoint filters exceptionBreakpointFilters = new object[0] }); // Debugger is ready to accept breakpoints immediately SendEvent(new InitializedEvent()); m_Debug.Client = this; } public override void Attach(Response response, Table arguments) { SendResponse(response); } public override void Continue(Response response, Table arguments) { m_Debug.QueueAction(new DebuggerAction() { Action = DebuggerAction.ActionType.Run }); SendResponse(response); } public override void Disconnect(Response response, Table arguments) { m_Debug.Client = null; SendResponse(response); } private static string getString(Table args, string property, string dflt = null) { var s = (string)args[property]; if (s == null) { return dflt; } s = s.Trim(); if (s.Length == 0) { return dflt; } return s; } public override void Evaluate(Response response, Table args) { var expression = getString(args, "expression"); var frameId = getInt(args, "frameId", 0); var context = getString(args, "context") ?? "hover"; if (frameId != 0 && context != "repl") SendText("Warning : Evaluation of variables/watches is always done with the top-level scope."); if (context == "repl" && expression.StartsWith("!")) { ExecuteRepl(expression.Substring(1)); SendResponse(response); return; } DynValue v = m_Debug.Evaluate(expression) ?? DynValue.Nil; m_Variables.Add(v); SendResponse(response, new EvaluateResponseBody(v.ToDebugPrintString(), m_Variables.Count - 1) { type = v.Type.ToLuaDebuggerString() }); } private void ExecuteRepl(string cmd) { bool showHelp = false; cmd = cmd.Trim(); if (cmd == "help") { showHelp = true; } else if (cmd.StartsWith("geterror")) { SendText("Current error regex : {0}", m_Debug.ErrorRegex.ToString()); } else if (cmd.StartsWith("seterror")) { string regex = cmd.Substring("seterror".Length).Trim(); try { Regex rx = new Regex(regex); m_Debug.ErrorRegex = rx; SendText("Current error regex : {0}", m_Debug.ErrorRegex.ToString()); } catch (Exception ex) { SendText("Error setting regex: {0}", ex.Message); } } else if (cmd.StartsWith("execendnotify")) { string val = cmd.Substring("execendnotify".Length).Trim(); if (val == "off") { m_NotifyExecutionEnd = false; } else if (val == "on") { m_NotifyExecutionEnd = true; } else if (val.Length > 0) SendText("Error : expected 'on' or 'off'"); SendText("Notifications of execution end are : {0}", m_NotifyExecutionEnd ? "enabled" : "disabled"); } else if (cmd == "list") { int currId = m_Server.CurrentId ?? -1000; foreach (var pair in m_Server.GetAttachedDebuggersByIdAndName()) { string isthis = (pair.Key == m_Debug.Id) ? " (this)" : ""; string isdef = (pair.Key == currId) ? " (default)" : ""; SendText("{0} : {1}{2}{3}", pair.Key.ToString().PadLeft(9), pair.Value, isdef, isthis); } } else if (cmd.StartsWith("select") || cmd.StartsWith("switch")) { string arg = cmd.Substring("switch".Length).Trim(); try { int id = int.Parse(arg); m_Server.CurrentId = id; if (cmd.StartsWith("switch")) Unbind(); else SendText("Next time you'll attach the debugger, it will be atteched to script #{0}", id); } catch (Exception ex) { SendText("Error setting regex: {0}", ex.Message); } } else { SendText("Syntax error : {0}\n", cmd); showHelp = true; } if (showHelp) { SendText("Available commands : "); SendText(" !help - gets this help"); SendText(" !list - lists the other scripts which can be debugged"); SendText(" !select - select another script for future sessions"); SendText(" !switch - switch to another script (same as select + disconnect)"); SendText(" !seterror - sets the regex which tells which errors to trap"); SendText(" !geterror - gets the current value of the regex which tells which errors to trap"); SendText(" !execendnotify [on|off] - sets the notification of end of execution on or off (default = off)"); SendText(" ... or type an expression to evaluate it on the fly."); } } public override void Launch(Response response, Table arguments) { SendResponse(response); } public override void Next(Response response, Table arguments) { m_Debug.QueueAction(new DebuggerAction() { Action = DebuggerAction.ActionType.StepOver }); SendResponse(response); } private StoppedEvent CreateStoppedEvent(string reason, string text = null) { return new StoppedEvent(0, reason, text); } public override void Pause(Response response, Table arguments) { m_Debug.PauseRequested = true; SendResponse(response); SendText("Pause pending -- will pause at first script statement."); } public override void Scopes(Response response, Table arguments) { var scopes = new List(); scopes.Add(new Scope("Locals", SCOPE_LOCALS)); scopes.Add(new Scope("Self", SCOPE_SELF)); SendResponse(response, new ScopesResponseBody(scopes)); } public override void SetBreakpoints(Response response, Table args) { string path = null; Table args_source = args["source"] as Table; if (args_source != null) { string p = args_source["path"].ToString(); if (p != null && p.Trim().Length > 0) path = p; } if (path == null) { SendErrorResponse(response, 3010, "setBreakpoints: property 'source' is empty or misformed", null, false, true); return; } path = ConvertClientPathToDebugger(path); SourceCode src = m_Debug.FindSourceByName(path); if (src == null) { // we only support breakpoints in files mono can handle SendResponse(response, new SetBreakpointsResponseBody()); return; } Table clientLines = args.Get("lines").Table; var lin = new HashSet(clientLines.Values.Select(jt => ConvertClientLineToDebugger(jt.ToObject())).ToArray()); var lin2 = m_Debug.DebugService.ResetBreakPoints(src, lin); var breakpoints = new List(); foreach (var l in lin) { breakpoints.Add(new Breakpoint(lin2.Contains(l), l)); } response.SetBody(new SetBreakpointsResponseBody(breakpoints)); SendResponse(response); } public override void StackTrace(Response response, Table args) { int maxLevels = getInt(args, "levels", 10); //int threadReference = getInt(args, "threadId", 0); var stackFrames = new List(); var stack = m_Debug.GetWatches(WatchType.CallStack); var coroutine = m_Debug.GetWatches(WatchType.Threads).LastOrDefault(); int level = 0; int max = Math.Min(maxLevels - 3, stack.Count); while (level < max) { WatchItem frame = stack[level]; string name = frame.Name; SourceRef sourceRef = frame.Location ?? DefaultSourceRef; int sourceIdx = sourceRef.SourceIdx; string path = sourceRef.IsClrLocation ? "(native)" : (m_Debug.GetSourceFile(sourceIdx) ?? "???"); string sourceName = Path.GetFileName(path); var source = new Source(sourceName, path); // ConvertDebuggerPathToClient(path)); stackFrames.Add(new StackFrame(level, name, source, ConvertDebuggerLineToClient(sourceRef.FromLine), sourceRef.FromChar, ConvertDebuggerLineToClient(sourceRef.ToLine), sourceRef.ToChar)); level++; } if (stack.Count > maxLevels - 3) stackFrames.Add(new StackFrame(level++, "(...)", null, 0)); if (coroutine != null) stackFrames.Add(new StackFrame(level++, "(" + coroutine.Name + ")", null, 0)); else stackFrames.Add(new StackFrame(level++, "(main coroutine)", null, 0)); stackFrames.Add(new StackFrame(level++, "(native)", null, 0)); SendResponse(response, new StackTraceResponseBody(stackFrames)); } readonly SourceRef DefaultSourceRef = new SourceRef(-1, 0, 0, 0, 0, false); private int getInt(Table args, string propName, int defaultValue) { var jo = args.Get(propName); if (jo.Type != DataType.Number) return defaultValue; else return jo.ToObject(); } public override void StepIn(Response response, Table arguments) { m_Debug.QueueAction(new DebuggerAction() { Action = DebuggerAction.ActionType.StepIn }); SendResponse(response); } public override void StepOut(Response response, Table arguments) { m_Debug.QueueAction(new DebuggerAction() { Action = DebuggerAction.ActionType.StepOut }); SendResponse(response); } public override void Threads(Response response, Table arguments) { var threads = new List() { new Thread(0, "Main Thread") }; SendResponse(response, new ThreadsResponseBody(threads)); } public override void Variables(Response response, Table arguments) { int index = getInt(arguments, "variablesReference", -1); var variables = new List(); if (index == SCOPE_SELF) { DynValue v = m_Debug.Evaluate("self"); VariableInspector.InspectVariable(v, variables); } else if (index == SCOPE_LOCALS) { foreach (var w in m_Debug.GetWatches(WatchType.Locals)) variables.Add(new Variable(w.Name, (w.Value ?? DynValue.Void).ToDebugPrintString())); } else if (index < 0 || index >= m_Variables.Count) { variables.Add(new Variable("", null)); } else { VariableInspector.InspectVariable(m_Variables[index], variables); } SendResponse(response, new VariablesResponseBody(variables)); } void IAsyncDebuggerClient.SendStopEvent() { SendEvent(CreateStoppedEvent("step")); } void IAsyncDebuggerClient.OnWatchesUpdated(WatchType watchType) { if (watchType == WatchType.CallStack) m_Variables.Clear(); } void IAsyncDebuggerClient.OnSourceCodeChanged(int sourceID) { if (m_Debug.IsSourceOverride(sourceID)) SendText("Loaded source '{0}' -> '{1}'", m_Debug.GetSource(sourceID).Name, m_Debug.GetSourceFile(sourceID)); else SendText("Loaded source '{0}'", m_Debug.GetSource(sourceID).Name); } public void OnExecutionEnded() { if (m_NotifyExecutionEnd) SendText("Execution ended."); } private void SendText(string msg, params object[] args) { msg = string.Format(msg, args); // SendEvent(new OutputEvent("console", DateTime.Now.ToString("u") + ": " + msg + "\n")); SendEvent(new OutputEvent("console", msg + "\n")); } public void OnException(ScriptRuntimeException ex) { SendText("runtime error : {0}", ex.DecoratedMessage); } public void Unbind() { SendText("Debug session has been closed by the hosting process."); SendText("Bye."); SendEvent(new TerminatedEvent()); } } } #endif ================================================ FILE: Assets/Plugins/MoonSharp/Debugger/DebuggerLogic/MoonSharpDebugSession.cs.meta ================================================ fileFormatVersion: 2 guid: 01ef5bd972e890745b8716e5eebdcb98 timeCreated: 1518177913 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Debugger/DebuggerLogic/VariableInspector.cs ================================================ #if (!PCL) && ((!UNITY_5) || UNITY_STANDALONE) using System; using System.Collections.Generic; using System.Linq; using System.Text; using MoonSharp.Interpreter; using MoonSharp.VsCodeDebugger.SDK; namespace MoonSharp.VsCodeDebugger.DebuggerLogic { internal static class VariableInspector { internal static void InspectVariable(DynValue v, List variables) { variables.Add(new Variable("(value)", v.ToPrintString())); variables.Add(new Variable("(type)", v.Type.ToLuaDebuggerString())); variables.Add(new Variable("(val #id)", v.ReferenceID.ToString())); switch (v.Type) { case DataType.Tuple: for (int i = 0; i < v.Tuple.Length; i++) variables.Add(new Variable("[i]", (v.Tuple[i] ?? DynValue.Void).ToDebugPrintString())); break; case DataType.Function: variables.Add(new Variable("(address)", v.Function.EntryPointByteCodeLocation.ToString("X8"))); variables.Add(new Variable("(upvalues)", v.Function.GetUpvaluesCount().ToString())); variables.Add(new Variable("(upvalues type)", v.Function.GetUpvaluesType().ToString())); break; case DataType.Table: if (v.Table.MetaTable != null && (v.Table.OwnerScript == null)) variables.Add(new Variable("(table type)", "prime table with metatable")); else if (v.Table.MetaTable != null) variables.Add(new Variable("(table type)", "has metatable")); else if (v.Table.OwnerScript == null) variables.Add(new Variable("(table type)", "prime table")); else variables.Add(new Variable("(table type)", "standard")); variables.Add(new Variable("(table #id)", v.Table.ReferenceID.ToString())); if (v.Table.MetaTable != null) variables.Add(new Variable("(metatable #id)", v.Table.MetaTable.ReferenceID.ToString())); variables.Add(new Variable("(length)", v.Table.Length.ToString())); foreach (TablePair p in v.Table.Pairs) variables.Add(new Variable("[" + p.Key.ToDebugPrintString() + "]", p.Value.ToDebugPrintString())); break; case DataType.UserData: if (v.UserData.Descriptor != null) { variables.Add(new Variable("(descriptor)", v.UserData.Descriptor.Name)); variables.Add(new Variable("(native type)", v.UserData.Descriptor.Type.ToString())); } else { variables.Add(new Variable("(descriptor)", "null!")); } variables.Add(new Variable("(native object)", v.UserData.Object != null ? v.UserData.Object.ToString() : "(null)")); break; case DataType.Thread: variables.Add(new Variable("(coroutine state)", v.Coroutine.State.ToString())); variables.Add(new Variable("(coroutine type)", v.Coroutine.Type.ToString())); variables.Add(new Variable("(auto-yield counter)", v.Coroutine.AutoYieldCounter.ToString())); break; case DataType.ClrFunction: variables.Add(new Variable("(name)", v.Callback.Name ?? "(unnamed)")); break; case DataType.TailCallRequest: case DataType.YieldRequest: case DataType.Nil: case DataType.Void: case DataType.Boolean: case DataType.Number: case DataType.String: default: break; } } } } #endif ================================================ FILE: Assets/Plugins/MoonSharp/Debugger/DebuggerLogic/VariableInspector.cs.meta ================================================ fileFormatVersion: 2 guid: 8fc8e362f6f3c6b4d83744df44d3397d timeCreated: 1518177922 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Debugger/DebuggerLogic.meta ================================================ fileFormatVersion: 2 guid: e61de60ae1ea31b4288a545fe8cff751 folderAsset: yes timeCreated: 1518177912 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Debugger/MoonSharpVsCodeDebugServer.cs ================================================ #if (!PCL) && ((!UNITY_5) || UNITY_STANDALONE) using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Net; using System.Net.Sockets; using System.Text; using System.Threading; using MoonSharp.VsCodeDebugger.DebuggerLogic; using MoonSharp.Interpreter; using MoonSharp.Interpreter.Debugging; using MoonSharp.VsCodeDebugger.SDK; namespace MoonSharp.VsCodeDebugger { /// /// Class implementing a debugger allowing attaching from a Visual Studio Code debugging session. /// public class MoonSharpVsCodeDebugServer : IDisposable { object m_Lock = new object(); List m_DebuggerList = new List(); AsyncDebugger m_Current = null; ManualResetEvent m_StopEvent = new ManualResetEvent(false); bool m_Started = false; int m_Port; /// /// Initializes a new instance of the class. /// /// The port on which the debugger listens. It's recommended to use 41912. public MoonSharpVsCodeDebugServer(int port = 41912) { m_Port = port; } /// /// Initializes a new instance of the class with a default script. /// Note that for this specific script, it will NOT attach the debugger to the script. /// /// The script object to debug. /// The port on which the debugger listens. It's recommended to use 41912 unless you are going to keep more than one script object around. /// A function which gets in input a source code and returns the path to /// source file to use. It can return null and in that case (or if the file cannot be found) /// a temporary file will be generated on the fly. [Obsolete("Use the constructor taking only a port, and the 'Attach' method instead.")] public MoonSharpVsCodeDebugServer(Script script, int port, Func sourceFinder = null) { m_Port = port; m_Current = new AsyncDebugger(script, sourceFinder ?? (s => s.Name), "Default script"); m_DebuggerList.Add(m_Current); } /// /// Attaches the specified script to the debugger /// /// The script. /// The name of the script. /// A function which gets in input a source code and returns the path to /// source file to use. It can return null and in that case (or if the file cannot be found) /// a temporary file will be generated on the fly. /// If the script has already been attached to this debugger. public void AttachToScript(Script script, string name, Func sourceFinder = null) { lock (m_Lock) { if (m_DebuggerList.Any(d => d.Script == script)) throw new ArgumentException("Script already attached to this debugger."); var debugger = new AsyncDebugger(script, sourceFinder ?? (s => s.Name), name); script.AttachDebugger(debugger); m_DebuggerList.Add(debugger); if (m_Current == null) m_Current = debugger; } } /// /// Gets a list of the attached debuggers by id and name /// public IEnumerable> GetAttachedDebuggersByIdAndName() { lock (m_Lock) return m_DebuggerList .OrderBy(d => d.Id) .Select(d => new KeyValuePair(d.Id, d.Name)) .ToArray(); } /// /// Gets or sets the current script by ID (see GetAttachedDebuggersByIdAndName). /// New vscode connections will attach to this debugger ID. Changing the current ID does NOT disconnect /// connected clients. /// public int? CurrentId { get { lock (m_Lock) return m_Current != null ? m_Current.Id : (int?)null; } set { lock (m_Lock) { if (value == null) { m_Current = null; return; } var current = (m_DebuggerList.FirstOrDefault(d => d.Id == value)); if (current == null) throw new ArgumentException("Cannot find debugger with given Id."); m_Current = current; } } } /// /// Gets or sets the current script. New vscode connections will attach to this script. Changing the current script does NOT disconnect /// connected clients. /// public Script Current { get { lock(m_Lock) return m_Current != null ? m_Current.Script : null; } set { lock (m_Lock) { if (value == null) { m_Current = null; return; } var current = (m_DebuggerList.FirstOrDefault(d => d.Script == value)); if (current == null) throw new ArgumentException("Cannot find debugger with given script associated."); m_Current = current; } } } /// /// Detaches the specified script. The debugger attached to that script will get disconnected. /// /// The script. /// Thrown if the script cannot be found. public void Detach(Script script) { lock (m_Lock) { var removed = m_DebuggerList.FirstOrDefault(d => d.Script == script); if (removed == null) throw new ArgumentException("Cannot detach script - not found."); removed.Client = null; m_DebuggerList.Remove(removed); if (m_Current == removed) { if (m_DebuggerList.Count > 0) m_Current = m_DebuggerList[m_DebuggerList.Count - 1]; else m_Current = null; } } } /// /// Gets or sets a delegate which will be called when logging messages are generated /// public Action Logger { get; set; } /// /// Gets the debugger object. Obsolete, use the new interface using the Attach method instead. /// [Obsolete("Use the Attach method instead.")] public IDebugger GetDebugger() { lock(m_Lock) return m_Current; } /// /// Stops listening /// /// Cannot stop; server was not started. public void Dispose() { m_StopEvent.Set(); } /// /// Starts listening on the localhost for incoming connections. /// public MoonSharpVsCodeDebugServer Start() { lock (m_Lock) { if (m_Started) throw new InvalidOperationException("Cannot start; server has already been started."); m_StopEvent.Reset(); TcpListener serverSocket = null; serverSocket = new TcpListener(IPAddress.Parse("127.0.0.1"), m_Port); serverSocket.Start(); SpawnThread("VsCodeDebugServer_" + m_Port.ToString(), () => ListenThread(serverSocket)); m_Started = true; return this; } } private void ListenThread(TcpListener serverSocket) { try { while (!m_StopEvent.WaitOne(0)) { #if DOTNET_CORE var task = serverSocket.AcceptSocketAsync(); task.Wait(); var clientSocket = task.Result; #else var clientSocket = serverSocket.AcceptSocket(); #endif if (clientSocket != null) { string sessionId = Guid.NewGuid().ToString("N"); Log("[{0}] : Accepted connection from client {1}", sessionId, clientSocket.RemoteEndPoint); SpawnThread("VsCodeDebugSession_" + sessionId, () => { using (var networkStream = new NetworkStream(clientSocket)) { try { RunSession(sessionId, networkStream); } catch (Exception ex) { Log("[{0}] : Error : {1}", ex.Message); } } #if DOTNET_CORE clientSocket.Dispose(); #else clientSocket.Close(); #endif Log("[{0}] : Client connection closed", sessionId); }); } } } catch (Exception e) { Log("Fatal error in listening thread : {0}", e.Message); } finally { if (serverSocket != null) serverSocket.Stop(); } } private void RunSession(string sessionId, NetworkStream stream) { DebugSession debugSession = null; lock (m_Lock) { if (m_Current != null) debugSession = new MoonSharpDebugSession(this, m_Current); else debugSession = new EmptyDebugSession(this); } debugSession.ProcessLoop(stream, stream); } private void Log(string format, params object[] args) { Action logger = Logger; if (logger != null) { string msg = string.Format(format, args); logger(msg); } } private static void SpawnThread(string name, Action threadProc) { #if DOTNET_CORE System.Threading.Tasks.Task.Run(() => threadProc()); #else new System.Threading.Thread(() => threadProc()) { IsBackground = true, Name = name } .Start(); #endif } } } #else using System; using System.Collections.Generic; using MoonSharp.Interpreter; using MoonSharp.Interpreter.Debugging; namespace MoonSharp.VsCodeDebugger { public class MoonSharpVsCodeDebugServer : IDisposable { public MoonSharpVsCodeDebugServer(int port = 41912) { } [Obsolete("Use the constructor taking only a port, and the 'Attach' method instead.")] public MoonSharpVsCodeDebugServer(Script script, int port, Func sourceFinder = null) { } public void AttachToScript(Script script, string name, Func sourceFinder = null) { } public IEnumerable> GetAttachedDebuggersByIdAndName() { yield break; } public int? CurrentId { get { return null; } set { } } public Script Current { get { return null; } set { } } /// /// Detaches the specified script. The debugger attached to that script will get disconnected. /// /// The script. /// Thrown if the script cannot be found. public void Detach(Script script) { } public Action Logger { get; set; } [Obsolete("Use the Attach method instead.")] public IDebugger GetDebugger() { return null; } public void Dispose() { } public MoonSharpVsCodeDebugServer Start() { return this; } } } #endif ================================================ FILE: Assets/Plugins/MoonSharp/Debugger/MoonSharpVsCodeDebugServer.cs.meta ================================================ fileFormatVersion: 2 guid: ff5ca8aa7631b8642b337d0dc49c9ba8 timeCreated: 1518177926 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Debugger/SDK/DebugSession.cs ================================================ #if (!PCL) && ((!UNITY_5) || UNITY_STANDALONE) /*--------------------------------------------------------------------------------------------- Copyright (c) Microsoft Corporation All rights reserved. MIT License Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. *--------------------------------------------------------------------------------------------*/ using System; using System.Collections.Generic; using System.Linq; using System.IO; using MoonSharp.Interpreter; namespace MoonSharp.VsCodeDebugger.SDK { // ---- Types ------------------------------------------------------------------------- public class Message { public int id { get; private set; } public string format { get; private set; } public object variables { get; private set; } public object showUser { get; private set; } public object sendTelemetry { get; private set; } public Message(int id, string format, object variables = null, bool user = true, bool telemetry = false) { this.id = id; this.format = format; this.variables = variables; this.showUser = user; this.sendTelemetry = telemetry; } } public class StackFrame { public int id { get; private set; } public Source source { get; private set; } public int line { get; private set; } public int column { get; private set; } public string name { get; private set; } public int? endLine { get; private set; } public int? endColumn { get; private set; } public StackFrame(int id, string name, Source source, int line, int column = 0, int? endLine = null, int? endColumn = null) { this.id = id; this.name = name; this.source = source; this.line = line; this.column = column; this.endLine = endLine; this.endColumn = endColumn; } } public class Scope { public string name { get; private set; } public int variablesReference { get; private set; } public bool expensive { get; private set; } public Scope(string name, int variablesReference, bool expensive = false) { this.name = name; this.variablesReference = variablesReference; this.expensive = expensive; } } public class Variable { public string name { get; private set; } public string value { get; private set; } public int variablesReference { get; private set; } public Variable(string name, string value, int variablesReference = 0) { this.name = name; this.value = value; this.variablesReference = variablesReference; } } public class Thread { public int id { get; private set; } public string name { get; private set; } public Thread(int id, string name) { this.id = id; if (name == null || name.Length == 0) { this.name = string.Format("Thread #{0}", id); } else { this.name = name; } } } public class Source { public string name { get; private set; } public string path { get; private set; } public int sourceReference { get; private set; } public Source(string name, string path, int sourceReference = 0) { this.name = name; this.path = path; this.sourceReference = sourceReference; } public Source(string path, int sourceReference = 0) { this.name = Path.GetFileName(path); this.path = path; this.sourceReference = sourceReference; } } public class Breakpoint { public bool verified { get; private set; } public int line { get; private set; } public Breakpoint(bool verified, int line) { this.verified = verified; this.line = line; } } // ---- Events ------------------------------------------------------------------------- public class InitializedEvent : Event { public InitializedEvent() : base("initialized") { } } public class StoppedEvent : Event { public StoppedEvent(int tid, string reasn, string txt = null) : base("stopped", new { threadId = tid, reason = reasn, text = txt }) { } } public class ExitedEvent : Event { public ExitedEvent(int exCode) : base("exited", new { exitCode = exCode }) { } } public class TerminatedEvent : Event { public TerminatedEvent() : base("terminated") { } } public class ThreadEvent : Event { public ThreadEvent(string reasn, int tid) : base("thread", new { reason = reasn, threadId = tid }) { } } public class OutputEvent : Event { public OutputEvent(string cat, string outpt) : base("output", new { category = cat, output = outpt }) { } } // ---- Response ------------------------------------------------------------------------- public class Capabilities : ResponseBody { public bool supportsConfigurationDoneRequest; public bool supportsFunctionBreakpoints; public bool supportsConditionalBreakpoints; public bool supportsEvaluateForHovers; public object[] exceptionBreakpointFilters; } public class ErrorResponseBody : ResponseBody { public Message error { get; private set; } public ErrorResponseBody(Message error) { this.error = error; } } public class StackTraceResponseBody : ResponseBody { public StackFrame[] stackFrames { get; private set; } public StackTraceResponseBody(List frames = null) { if (frames == null) stackFrames = new StackFrame[0]; else stackFrames = frames.ToArray(); } } public class ScopesResponseBody : ResponseBody { public Scope[] scopes { get; private set; } public ScopesResponseBody(List scps = null) { if (scps == null) scopes = new Scope[0]; else scopes = scps.ToArray(); } } public class VariablesResponseBody : ResponseBody { public Variable[] variables { get; private set; } public VariablesResponseBody(List vars = null) { if (vars == null) variables = new Variable[0]; else variables = vars.ToArray(); } } public class ThreadsResponseBody : ResponseBody { public Thread[] threads { get; private set; } public ThreadsResponseBody(List vars = null) { if (vars == null) threads = new Thread[0]; else threads = vars.ToArray(); } } public class EvaluateResponseBody : ResponseBody { public string result { get; private set; } public string type { get; set; } public int variablesReference { get; private set; } public EvaluateResponseBody(string value, int reff = 0) { result = value; variablesReference = reff; } } public class SetBreakpointsResponseBody : ResponseBody { public Breakpoint[] breakpoints { get; private set; } public SetBreakpointsResponseBody(List bpts = null) { if (bpts == null) breakpoints = new Breakpoint[0]; else breakpoints = bpts.ToArray(); } } // ---- The Session -------------------------------------------------------- public abstract class DebugSession : ProtocolServer { private bool _debuggerLinesStartAt1; private bool _debuggerPathsAreURI; private bool _clientLinesStartAt1 = true; private bool _clientPathsAreURI = true; public DebugSession(bool debuggerLinesStartAt1, bool debuggerPathsAreURI = false) { _debuggerLinesStartAt1 = debuggerLinesStartAt1; _debuggerPathsAreURI = debuggerPathsAreURI; } public void SendResponse(Response response, ResponseBody body = null) { if (body != null) { response.SetBody(body); } SendMessage(response); } public void SendErrorResponse(Response response, int id, string format, object arguments = null, bool user = true, bool telemetry = false) { var msg = new Message(id, format, arguments, user, telemetry); var message = Utilities.ExpandVariables(msg.format, msg.variables); response.SetErrorBody(message, new ErrorResponseBody(msg)); SendMessage(response); } protected override void DispatchRequest(string command, Table args, Response response) { if (args == null) { args = new Table(null); } try { switch (command) { case "initialize": if (args["linesStartAt1"] != null) _clientLinesStartAt1 = args.Get("linesStartAt1").ToObject(); var pathFormat = args.Get("pathFormat").ToObject(); if (pathFormat != null) { switch (pathFormat) { case "uri": _clientPathsAreURI = true; break; case "path": _clientPathsAreURI = false; break; default: SendErrorResponse(response, 1015, "initialize: bad value '{_format}' for pathFormat", new { _format = pathFormat }); return; } } Initialize(response, args); break; case "launch": Launch(response, args); break; case "attach": Attach(response, args); break; case "disconnect": Disconnect(response, args); break; case "next": Next(response, args); break; case "continue": Continue(response, args); break; case "stepIn": StepIn(response, args); break; case "stepOut": StepOut(response, args); break; case "pause": Pause(response, args); break; case "stackTrace": StackTrace(response, args); break; case "scopes": Scopes(response, args); break; case "variables": Variables(response, args); break; case "source": Source(response, args); break; case "threads": Threads(response, args); break; case "setBreakpoints": SetBreakpoints(response, args); break; case "setFunctionBreakpoints": SetFunctionBreakpoints(response, args); break; case "setExceptionBreakpoints": SetExceptionBreakpoints(response, args); break; case "evaluate": Evaluate(response, args); break; default: SendErrorResponse(response, 1014, "unrecognized request: {_request}", new { _request = command }); break; } } catch (Exception e) { SendErrorResponse(response, 1104, "error while processing request '{_request}' (exception: {_exception})", new { _request = command, _exception = e.Message }); } if (command == "disconnect") { Stop(); } } public abstract void Initialize(Response response, Table args); public abstract void Launch(Response response, Table arguments); public abstract void Attach(Response response, Table arguments); public abstract void Disconnect(Response response, Table arguments); public virtual void SetFunctionBreakpoints(Response response, Table arguments) { } public virtual void SetExceptionBreakpoints(Response response, Table arguments) { } public abstract void SetBreakpoints(Response response, Table arguments); public abstract void Continue(Response response, Table arguments); public abstract void Next(Response response, Table arguments); public abstract void StepIn(Response response, Table arguments); public abstract void StepOut(Response response, Table arguments); public abstract void Pause(Response response, Table arguments); public abstract void StackTrace(Response response, Table arguments); public abstract void Scopes(Response response, Table arguments); public abstract void Variables(Response response, Table arguments); public virtual void Source(Response response, Table arguments) { SendErrorResponse(response, 1020, "Source not supported"); } public abstract void Threads(Response response, Table arguments); public abstract void Evaluate(Response response, Table arguments); // protected protected int ConvertDebuggerLineToClient(int line) { if (_debuggerLinesStartAt1) { return _clientLinesStartAt1 ? line : line - 1; } else { return _clientLinesStartAt1 ? line + 1 : line; } } protected int ConvertClientLineToDebugger(int line) { if (_debuggerLinesStartAt1) { return _clientLinesStartAt1 ? line : line + 1; } else { return _clientLinesStartAt1 ? line - 1 : line; } } protected string ConvertDebuggerPathToClient(string path) { if (_debuggerPathsAreURI) { if (_clientPathsAreURI) { return path; } else { Uri uri = new Uri(path); return uri.LocalPath; } } else { if (_clientPathsAreURI) { try { var uri = new System.Uri(path); return uri.AbsoluteUri; } catch { return null; } } else { return path; } } } protected string ConvertClientPathToDebugger(string clientPath) { if (clientPath == null) { return null; } if (_debuggerPathsAreURI) { if (_clientPathsAreURI) { return clientPath; } else { var uri = new System.Uri(clientPath); return uri.AbsoluteUri; } } else { if (_clientPathsAreURI) { if (Uri.IsWellFormedUriString(clientPath, UriKind.Absolute)) { Uri uri = new Uri(clientPath); return uri.LocalPath; } Console.Error.WriteLine("path not well formed: '{0}'", clientPath); return null; } else { return clientPath; } } } } } #endif ================================================ FILE: Assets/Plugins/MoonSharp/Debugger/SDK/DebugSession.cs.meta ================================================ fileFormatVersion: 2 guid: 7655f55ead53bf248b055dcda6364a7f timeCreated: 1518177920 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Debugger/SDK/Protocol.cs ================================================ #if (!PCL) && ((!UNITY_5) || UNITY_STANDALONE) /*--------------------------------------------------------------------------------------------- Copyright (c) Microsoft Corporation All rights reserved. MIT License Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. *--------------------------------------------------------------------------------------------*/ using System; using System.Text; using System.IO; using System.Text.RegularExpressions; using MoonSharp.Interpreter; using MoonSharp.Interpreter.Serialization.Json; using MoonSharp.Interpreter.Serialization; namespace MoonSharp.VsCodeDebugger.SDK { public class ProtocolMessage { public int seq; public string type { get; private set; } public ProtocolMessage(string typ) { type = typ; } public ProtocolMessage(string typ, int sq) { type = typ; seq = sq; } } public class Request : ProtocolMessage { public string command; public Table arguments; public Request(int id, string cmd, Table arg) : base("request", id) { command = cmd; arguments = arg; } } /* * subclasses of ResponseBody are serialized as the body of a response. * Don't change their instance variables since that will break the debug protocol. */ public class ResponseBody { // empty } public class Response : ProtocolMessage { public bool success { get; private set; } public string message { get; private set; } public int request_seq { get; private set; } public string command { get; private set; } public ResponseBody body { get; private set; } public Response(Table req) : base("response") { success = true; request_seq = req.Get("seq").ToObject(); command = req.Get("command").ToObject(); } public void SetBody(ResponseBody bdy) { success = true; body = bdy; } public void SetErrorBody(string msg, ResponseBody bdy = null) { success = false; message = msg; body = bdy; } } public class Event : ProtocolMessage { public string @event { get; private set; } public object body { get; private set; } public Event(string type, object bdy = null) : base("event") { @event = type; body = bdy; } } /* * The ProtocolServer can be used to implement a server that uses the VSCode debug protocol. */ public abstract class ProtocolServer { public bool TRACE; public bool TRACE_RESPONSE; protected const int BUFFER_SIZE = 4096; protected const string TWO_CRLF = "\r\n\r\n"; protected static readonly Regex CONTENT_LENGTH_MATCHER = new Regex(@"Content-Length: (\d+)"); protected static readonly Encoding Encoding = System.Text.Encoding.UTF8; private int _sequenceNumber; private Stream _outputStream; private ByteBuffer _rawData; private int _bodyLength; private bool _stopRequested; public ProtocolServer() { _sequenceNumber = 1; _bodyLength = -1; _rawData = new ByteBuffer(); } public void ProcessLoop(Stream inputStream, Stream outputStream) { _outputStream = outputStream; byte[] buffer = new byte[BUFFER_SIZE]; _stopRequested = false; while (!_stopRequested) { var read = inputStream.Read(buffer, 0, buffer.Length); if (read == 0) { // end of stream break; } if (read > 0) { _rawData.Append(buffer, read); ProcessData(); } } } public void Stop() { _stopRequested = true; } public void SendEvent(Event e) { SendMessage(e); } protected abstract void DispatchRequest(string command, Table args, Response response); // ---- private ------------------------------------------------------------------------ private void ProcessData() { while (true) { if (_bodyLength >= 0) { if (_rawData.Length >= _bodyLength) { var buf = _rawData.RemoveFirst(_bodyLength); _bodyLength = -1; Dispatch(Encoding.GetString(buf)); continue; // there may be more complete messages to process } } else { string s = _rawData.GetString(Encoding); var idx = s.IndexOf(TWO_CRLF); if (idx != -1) { Match m = CONTENT_LENGTH_MATCHER.Match(s); if (m.Success && m.Groups.Count == 2) { _bodyLength = Convert.ToInt32(m.Groups[1].ToString()); _rawData.RemoveFirst(idx + TWO_CRLF.Length); continue; // try to handle a complete message } } } break; } } private void Dispatch(string req) { try { Table request = JsonTableConverter.JsonToTable(req); if (request != null && request["type"].ToString() == "request") { if (TRACE) Console.Error.WriteLine(string.Format("C {0}: {1}", request["command"], req)); var response = new Response(request); DispatchRequest(request.Get("command").String, request.Get("arguments").Table, response); SendMessage(response); } } catch { } } protected void SendMessage(ProtocolMessage message) { message.seq = _sequenceNumber++; if (TRACE_RESPONSE && message.type == "response") { Console.Error.WriteLine(string.Format(" R: {0}", JsonTableConverter.ObjectToJson(message))); } if (TRACE && message.type == "event") { Event e = (Event)message; Console.Error.WriteLine(string.Format("E {0}: {1}", e.@event, JsonTableConverter.ObjectToJson(e.body))); } var data = ConvertToBytes(message); try { _outputStream.Write(data, 0, data.Length); _outputStream.Flush(); } catch (Exception) { // ignore } } private static byte[] ConvertToBytes(ProtocolMessage request) { var asJson = JsonTableConverter.ObjectToJson(request); byte[] jsonBytes = Encoding.GetBytes(asJson); string header = string.Format("Content-Length: {0}{1}", jsonBytes.Length, TWO_CRLF); byte[] headerBytes = Encoding.GetBytes(header); byte[] data = new byte[headerBytes.Length + jsonBytes.Length]; System.Buffer.BlockCopy(headerBytes, 0, data, 0, headerBytes.Length); System.Buffer.BlockCopy(jsonBytes, 0, data, headerBytes.Length, jsonBytes.Length); return data; } } //-------------------------------------------------------------------------------------- class ByteBuffer { private byte[] _buffer; public ByteBuffer() { _buffer = new byte[0]; } public int Length { get { return _buffer.Length; } } public string GetString(Encoding enc) { return enc.GetString(_buffer); } public void Append(byte[] b, int length) { byte[] newBuffer = new byte[_buffer.Length + length]; System.Buffer.BlockCopy(_buffer, 0, newBuffer, 0, _buffer.Length); System.Buffer.BlockCopy(b, 0, newBuffer, _buffer.Length, length); _buffer = newBuffer; } public byte[] RemoveFirst(int n) { byte[] b = new byte[n]; System.Buffer.BlockCopy(_buffer, 0, b, 0, n); byte[] newBuffer = new byte[_buffer.Length - n]; System.Buffer.BlockCopy(_buffer, n, newBuffer, 0, _buffer.Length - n); _buffer = newBuffer; return b; } } } #endif ================================================ FILE: Assets/Plugins/MoonSharp/Debugger/SDK/Protocol.cs.meta ================================================ fileFormatVersion: 2 guid: 67535c97991a9ce40b14088387c4ed5c timeCreated: 1518177919 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Debugger/SDK/Utilities.cs ================================================ #if (!PCL) && ((!UNITY_5) || UNITY_STANDALONE) /*--------------------------------------------------------------------------------------------- Copyright (c) Microsoft Corporation All rights reserved. MIT License Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. *--------------------------------------------------------------------------------------------*/ using System; using System.Net; using System.IO; using System.Linq; using System.Text.RegularExpressions; using System.Reflection; using MoonSharp.Interpreter.Compatibility; namespace MoonSharp.VsCodeDebugger.SDK { internal class Utilities { private static readonly Regex VARIABLE = new Regex(@"\{(\w+)\}"); /* * Resolve hostname, dotted-quad notation for IPv4, or colon-hexadecimal notation for IPv6 to IPAddress. * Returns null on failure. */ public static string ExpandVariables(string format, object variables, bool underscoredOnly = true) { if (variables == null) { variables = new { }; } Type type = variables.GetType(); return VARIABLE.Replace(format, match => { string name = match.Groups[1].Value; if (!underscoredOnly || name.StartsWith("_")) { PropertyInfo property = Framework.Do.GetProperty(type, name); if (property != null) { object value = property.GetValue(variables, null); return value.ToString(); } return '{' + name + ": not found}"; } return match.Groups[0].Value; }); } /** * converts the given absPath into a path that is relative to the given dirPath. */ public static string MakeRelativePath(string dirPath, string absPath) { if (!dirPath.EndsWith("/")) { dirPath += "/"; } if (absPath.StartsWith(dirPath)) { return absPath.Replace(dirPath, ""); } return absPath; /* Uri uri1 = new Uri(path); Uri uri2 = new Uri(dir_path); return uri2.MakeRelativeUri(uri1).ToString(); */ } } } #endif ================================================ FILE: Assets/Plugins/MoonSharp/Debugger/SDK/Utilities.cs.meta ================================================ fileFormatVersion: 2 guid: e3d0752180e77b9459f24e60e8cc0236 timeCreated: 1518177925 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Debugger/SDK.meta ================================================ fileFormatVersion: 2 guid: d9606ad005fa78540a8b1c6bef8d77fe folderAsset: yes timeCreated: 1518177912 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Debugger.meta ================================================ fileFormatVersion: 2 guid: a64d4110aeb414e4ca35aa3ff000a630 folderAsset: yes timeCreated: 1518177911 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/AsyncExtensions.cs ================================================ #if HASDYNAMIC using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using System.Threading; using System.Threading.Tasks; using MoonSharp.Interpreter.REPL; namespace MoonSharp.Interpreter { /// /// This class contains extension methods providing async wrappers of many methods. /// Asynchronous execution is performed by scheduling the method on the thread pool (through a Task.Factory.StartNew). /// /// This type is supported only on .NET 4.x and .NET 4.x PCL targets. /// public static class AsyncExtensions { private static Task ExecAsync(Func func) { return Task.Factory.StartNew(func); } private static Task ExecAsyncVoid(Action func) { return Task.Factory.StartNew(func); } /// /// Asynchronously calls this function with the specified args /// /// This method is supported only on .NET 4.x and .NET 4.x PCL targets. /// /// The function. /// /// Thrown if function is not of DataType.Function public static Task CallAsync(this Closure function) { return ExecAsync(() => function.Call()); } /// /// Asynchronously calls this function with the specified args /// /// This method is supported only on .NET 4.x and .NET 4.x PCL targets. /// /// The function. /// The arguments to pass to the function. /// /// Thrown if function is not of DataType.Function public static Task CallAsync(this Closure function, params object[] args) { return ExecAsync(() => function.Call(args)); } /// /// Asynchronously calls this function with the specified args /// /// This method is supported only on .NET 4.x and .NET 4.x PCL targets. /// /// The function. /// The arguments to pass to the function. /// /// Thrown if function is not of DataType.Function public static Task CallAsync(this Closure function, params DynValue[] args) { return ExecAsync(() => function.Call(args)); } /// /// Asynchronously loads and executes a string containing a Lua/MoonSharp script. /// /// This method is supported only on .NET 4.x and .NET 4.x PCL targets. /// /// The script. /// The code. /// The global context. /// Name of the code - used to report errors, etc. Also used by debuggers to locate the original source file. /// /// A DynValue containing the result of the processing of the loaded chunk. /// public static Task DoStringAsync(this Script script, string code, Table globalContext = null, string codeFriendlyName = null) { return ExecAsync(() => script.DoString(code, globalContext, codeFriendlyName)); } /// /// Asynchronously loads and executes a stream containing a Lua/MoonSharp script. /// /// This method is supported only on .NET 4.x and .NET 4.x PCL targets. /// /// The script. /// The stream. /// The global context. /// Name of the code - used to report errors, etc. Also used by debuggers to locate the original source file. /// /// A DynValue containing the result of the processing of the loaded chunk. /// public static Task DoStreamAsync(this Script script, Stream stream, Table globalContext = null, string codeFriendlyName = null) { return ExecAsync(() => script.DoStream(stream, globalContext, codeFriendlyName)); } /// /// Asynchronously loads and executes a file containing a Lua/MoonSharp script. /// /// This method is supported only on .NET 4.x and .NET 4.x PCL targets. /// /// The script. /// The filename. /// The global context. /// Name of the code - used to report errors, etc. Also used by debuggers to locate the original source file. /// /// A DynValue containing the result of the processing of the loaded chunk. /// public static Task DoFileAsync(this Script script, string filename, Table globalContext = null, string codeFriendlyName = null) { return ExecAsync(() => script.DoFile(filename, globalContext, codeFriendlyName)); } /// /// Asynchronously loads a string containing a Lua/MoonSharp function. /// /// This method is supported only on .NET 4.x and .NET 4.x PCL targets. /// /// The script. /// The code. /// The global table to bind to this chunk. /// Name of the function used to report errors, etc. /// /// A DynValue containing a function which will execute the loaded code. /// public static Task LoadFunctionAsync(this Script script, string code, Table globalTable = null, string funcFriendlyName = null) { return ExecAsync(() => script.LoadFunction(code, globalTable, funcFriendlyName)); } /// /// Asynchronously loads a string containing a Lua/MoonSharp script. /// /// This method is supported only on .NET 4.x and .NET 4.x PCL targets. /// /// The script. /// The code. /// The global table to bind to this chunk. /// Name of the code - used to report errors, etc. /// /// A DynValue containing a function which will execute the loaded code. /// public static Task LoadStringAsync(this Script script, string code, Table globalTable = null, string codeFriendlyName = null) { return ExecAsync(() => script.LoadString(code, globalTable, codeFriendlyName)); } /// /// Asynchronously loads a Lua/MoonSharp script from a System.IO.Stream. NOTE: This will *NOT* close the stream! /// /// This method is supported only on .NET 4.x and .NET 4.x PCL targets. /// /// The script. /// The stream containing code. /// The global table to bind to this chunk. /// Name of the code - used to report errors, etc. /// /// A DynValue containing a function which will execute the loaded code. /// public static Task LoadStreamAsync(this Script script, Stream stream, Table globalTable = null, string codeFriendlyName = null) { return ExecAsync(() => script.LoadStream(stream, globalTable, codeFriendlyName)); } /// /// Asynchronously dumps a function on the specified stream. /// This method is supported only on .NET 4.x and .NET 4.x PCL targets. /// /// The script. /// The function. /// The stream. /// /// function arg is not a function! /// or /// stream is readonly! /// or /// function arg has upvalues other than _ENV public static Task DumpAsync(this Script script, DynValue function, Stream stream) { return ExecAsyncVoid(() => script.Dump(function, stream)); } /// /// Asynchronously loads a string containing a Lua/MoonSharp script. /// This method is supported only on .NET 4.x and .NET 4.x PCL targets. /// /// The script. /// The code. /// The global table to bind to this chunk. /// The filename to be used in error messages. /// /// A DynValue containing a function which will execute the loaded code. /// public static Task LoadFileAsync(this Script script, string filename, Table globalContext = null, string friendlyFilename = null) { return ExecAsync(() => script.LoadFile(filename, globalContext, friendlyFilename)); } /// /// Calls the specified function. /// This method is supported only on .NET 4.x and .NET 4.x PCL targets. /// /// The script. /// The Lua/MoonSharp function to be called /// /// The return value(s) of the function call. /// /// Thrown if function is not of DataType.Function public static Task CallAsync(this Script script, DynValue function) { return ExecAsync(() => script.Call(function)); } /// /// Asynchronously calls the specified function. /// This method is supported only on .NET 4.x and .NET 4.x PCL targets. /// /// The script. /// The Lua/MoonSharp function to be called /// The arguments to pass to the function. /// /// The return value(s) of the function call. /// /// Thrown if function is not of DataType.Function public static Task CallAsync(this Script script, DynValue function, params DynValue[] args) { return ExecAsync(() => script.Call(function, args)); } /// /// Asynchronously calls the specified function. /// This method is supported only on .NET 4.x and .NET 4.x PCL targets. /// /// The script. /// The Lua/MoonSharp function to be called /// The arguments to pass to the function. /// /// The return value(s) of the function call. /// /// Thrown if function is not of DataType.Function public static Task CallAsync(this Script script, DynValue function, params object[] args) { return ExecAsync(() => script.Call(function, args)); } /// /// Asynchronously calls the specified function. /// This method is supported only on .NET 4.x and .NET 4.x PCL targets. /// /// The script. /// The Lua/MoonSharp function to be called /// /// Thrown if function is not of DataType.Function public static Task CallAsync(this Script script, object function) { return ExecAsync(() => script.Call(function)); } /// /// Asynchronously calls the specified function. /// /// This method is supported only on .NET 4.x and .NET 4.x PCL targets. /// /// The script. /// The Lua/MoonSharp function to be called /// The arguments to pass to the function. /// /// Thrown if function is not of DataType.Function public static Task CallAsync(this Script script, object function, params object[] args) { return ExecAsync(() => script.Call(function, args)); } /// /// Asynchronously creates a new dynamic expression. /// /// This method is supported only on .NET 4.x and .NET 4.x PCL targets. /// /// The script. /// The code of the expression. /// public static Task CreateDynamicExpressionAsync(this Script script, string code) { return ExecAsync(() => script.CreateDynamicExpression(code)); } /// /// Asynchronously evaluates a REPL command. /// This method returns the result of the computation, or null if more input is needed for having valid code. /// In case of errors, exceptions are propagated to the caller. /// /// This method is supported only on .NET 4.x and .NET 4.x PCL targets. /// /// The interpreter. /// The input. /// /// This method returns the result of the computation, or null if more input is needed for a computation. /// public static Task EvaluateAsync(this ReplInterpreter interpreter, string input) { return ExecAsync(() => interpreter.Evaluate(input)); } /// /// Resumes the coroutine. /// Only non-CLR coroutines can be resumed with this overload of the Resume method. Use the overload accepting a ScriptExecutionContext instead. /// /// This method is supported only on .NET 4.x and .NET 4.x PCL targets. /// /// The coroutine /// The arguments. /// /// Only non-CLR coroutines can be resumed with this overload of the Resume method. Use the overload accepting a ScriptExecutionContext instead public static Task ResumeAsync(this Coroutine cor, params DynValue[] args) { return ExecAsync(() => cor.Resume(args)); } /// /// Resumes the coroutine. /// /// This method is supported only on .NET 4.x and .NET 4.x PCL targets. /// /// The coroutine /// The ScriptExecutionContext. /// The arguments. /// public static Task ResumeAsync(this Coroutine cor, ScriptExecutionContext context, params DynValue[] args) { return ExecAsync(() => cor.Resume(context, args)); } /// /// Resumes the coroutine. /// Only non-CLR coroutines can be resumed with this overload of the Resume method. Use the overload accepting a ScriptExecutionContext instead. /// /// This method is supported only on .NET 4.x and .NET 4.x PCL targets. /// /// The coroutine /// /// Only non-CLR coroutines can be resumed with this overload of the Resume method. Use the overload accepting a ScriptExecutionContext instead public static Task ResumeAsync(this Coroutine cor) { return ExecAsync(() => cor.Resume()); } /// /// Resumes the coroutine. /// /// This method is supported only on .NET 4.x and .NET 4.x PCL targets. /// /// The coroutine /// The ScriptExecutionContext. /// public static Task ResumeAsync(this Coroutine cor, ScriptExecutionContext context) { return ExecAsync(() => cor.Resume(context)); } /// /// Resumes the coroutine. /// Only non-CLR coroutines can be resumed with this overload of the Resume method. Use the overload accepting a ScriptExecutionContext instead. /// /// This method is supported only on .NET 4.x and .NET 4.x PCL targets. /// /// The coroutine /// The arguments. /// /// Only non-CLR coroutines can be resumed with this overload of the Resume method. Use the overload accepting a ScriptExecutionContext instead. public static Task ResumeAsync(this Coroutine cor, params object[] args) { return ExecAsync(() => cor.Resume(args)); } /// /// Resumes the coroutine /// /// This method is supported only on .NET 4.x and .NET 4.x PCL targets. /// /// The coroutine /// The ScriptExecutionContext. /// The arguments. /// public static Task ResumeAsync(this Coroutine cor, ScriptExecutionContext context, params object[] args) { return ExecAsync(() => cor.Resume(context, args)); } } } #endif ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/AsyncExtensions.cs.meta ================================================ fileFormatVersion: 2 guid: 1a1a1cbc57ffaad43b0c04f357dd5241 timeCreated: 1518177915 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CodeAnalysis/AstNode.cs ================================================  namespace MoonSharp.Interpreter.CodeAnalysis { class AstNode { } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CodeAnalysis/AstNode.cs.meta ================================================ fileFormatVersion: 2 guid: b3572b3f03c6053498e09b78cb3ba2cd timeCreated: 1518177923 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CodeAnalysis.meta ================================================ fileFormatVersion: 2 guid: 7e4d0dec59ecb31408a6fab5033c74c9 folderAsset: yes timeCreated: 1518177911 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Compatibility/Attributes.cs ================================================ #if PCL || ((!UNITY_EDITOR) && (ENABLE_DOTNET)) using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace System.Reflection { internal class ComVisibleAttribute : Attribute { public ComVisibleAttribute(bool dummy) { } } internal class GuidAttribute : Attribute { public GuidAttribute(string dummy) { } } } #endif ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Compatibility/Attributes.cs.meta ================================================ fileFormatVersion: 2 guid: c29637a0d659af44a98c79c6a4dc1202 timeCreated: 1518177924 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Compatibility/Framework.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using System.Reflection; using System.Text; using MoonSharp.Interpreter.Compatibility.Frameworks; namespace MoonSharp.Interpreter.Compatibility { public static class Framework { static FrameworkCurrent s_FrameworkCurrent = new FrameworkCurrent(); public static FrameworkBase Do { get { return s_FrameworkCurrent; } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Compatibility/Framework.cs.meta ================================================ fileFormatVersion: 2 guid: aebf7435b76110d4b9b8babe01b0ab7c timeCreated: 1518177923 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Compatibility/Frameworks/Base/FrameworkBase.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using System.Reflection; using System.Text; namespace MoonSharp.Interpreter.Compatibility.Frameworks { public abstract class FrameworkBase { public abstract bool StringContainsChar(string str, char chr); public abstract bool IsValueType(Type t); public abstract Assembly GetAssembly(Type t); public abstract Type GetBaseType(Type t); public abstract bool IsGenericType(Type t); public abstract bool IsGenericTypeDefinition(Type t); public abstract bool IsEnum(Type t); public abstract bool IsNestedPublic(Type t); public abstract bool IsAbstract(Type t); public abstract bool IsInterface(Type t); public abstract Attribute[] GetCustomAttributes(Type t, bool inherit); public abstract Attribute[] GetCustomAttributes(Type t, Type at, bool inherit); public abstract Type[] GetInterfaces(Type t); public abstract bool IsInstanceOfType(Type t, object o); public abstract MethodInfo GetAddMethod(EventInfo ei); public abstract MethodInfo GetRemoveMethod(EventInfo ei); public abstract MethodInfo GetGetMethod(PropertyInfo pi); public abstract MethodInfo GetSetMethod(PropertyInfo pi); public abstract Type GetInterface(Type type, string name); public abstract PropertyInfo[] GetProperties(Type type); public abstract PropertyInfo GetProperty(Type type, string name); public abstract Type[] GetNestedTypes(Type type); public abstract EventInfo[] GetEvents(Type type); public abstract ConstructorInfo[] GetConstructors(Type type); public abstract Type[] GetAssemblyTypes(Assembly asm); public abstract MethodInfo[] GetMethods(Type type); public abstract FieldInfo[] GetFields(Type t); public abstract MethodInfo GetMethod(Type type, string name); public abstract Type[] GetGenericArguments(Type t); public abstract bool IsAssignableFrom(Type current, Type toCompare); public abstract bool IsDbNull(object o); public abstract MethodInfo GetMethod(Type resourcesType, string v, Type[] type); } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Compatibility/Frameworks/Base/FrameworkBase.cs.meta ================================================ fileFormatVersion: 2 guid: c3359156dc5b7bd41af52ec73d06d5d4 timeCreated: 1518177924 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Compatibility/Frameworks/Base/FrameworkClrBase.cs ================================================ #if !NETFX_CORE || DOTNET_CORE using System; using System.Collections.Generic; using System.Linq; using System.Reflection; using System.Text; namespace MoonSharp.Interpreter.Compatibility.Frameworks { abstract class FrameworkClrBase : FrameworkReflectionBase { BindingFlags BINDINGFLAGS_MEMBER = BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.Static; BindingFlags BINDINGFLAGS_INNERCLASS = BindingFlags.Public | BindingFlags.NonPublic; public override MethodInfo GetAddMethod(EventInfo ei) { return ei.GetAddMethod(true); } public override ConstructorInfo[] GetConstructors(Type type) { return GetTypeInfoFromType(type).GetConstructors(BINDINGFLAGS_MEMBER); } public override EventInfo[] GetEvents(Type type) { return GetTypeInfoFromType(type).GetEvents(BINDINGFLAGS_MEMBER); } public override FieldInfo[] GetFields(Type type) { return GetTypeInfoFromType(type).GetFields(BINDINGFLAGS_MEMBER); } public override Type[] GetGenericArguments(Type type) { return GetTypeInfoFromType(type).GetGenericArguments(); } public override MethodInfo GetGetMethod(PropertyInfo pi) { return pi.GetGetMethod(true); } public override Type[] GetInterfaces(Type t) { return GetTypeInfoFromType(t).GetInterfaces(); } public override MethodInfo GetMethod(Type type, string name) { return GetTypeInfoFromType(type).GetMethod(name); } public override MethodInfo[] GetMethods(Type type) { return GetTypeInfoFromType(type).GetMethods(BINDINGFLAGS_MEMBER); } public override Type[] GetNestedTypes(Type type) { return GetTypeInfoFromType(type).GetNestedTypes(BINDINGFLAGS_INNERCLASS); } public override PropertyInfo[] GetProperties(Type type) { return GetTypeInfoFromType(type).GetProperties(BINDINGFLAGS_MEMBER); } public override PropertyInfo GetProperty(Type type, string name) { return GetTypeInfoFromType(type).GetProperty(name); } public override MethodInfo GetRemoveMethod(EventInfo ei) { return ei.GetRemoveMethod(true); } public override MethodInfo GetSetMethod(PropertyInfo pi) { return pi.GetSetMethod(true); } public override bool IsAssignableFrom(Type current, Type toCompare) { return GetTypeInfoFromType(current).IsAssignableFrom(toCompare); } public override bool IsInstanceOfType(Type t, object o) { return GetTypeInfoFromType(t).IsInstanceOfType(o); } public override MethodInfo GetMethod(Type resourcesType, string name, Type[] types) { return GetTypeInfoFromType(resourcesType).GetMethod(name, types); } public override Type[] GetAssemblyTypes(Assembly asm) { return asm.GetTypes(); } } } #endif ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Compatibility/Frameworks/Base/FrameworkClrBase.cs.meta ================================================ fileFormatVersion: 2 guid: f3c7f8b37ebfdf841bd33fe11cdb8cfb timeCreated: 1518177925 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Compatibility/Frameworks/Base/FrameworkReflectionBase.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using System.Reflection; using System.Text; #if DOTNET_CORE using TTypeInfo = System.Reflection.TypeInfo; #elif NETFX_CORE using TTypeInfo = System.Reflection.TypeInfo; #else using TTypeInfo = System.Type; #endif namespace MoonSharp.Interpreter.Compatibility.Frameworks { abstract class FrameworkReflectionBase : FrameworkBase { public abstract TTypeInfo GetTypeInfoFromType(Type t); public override Assembly GetAssembly(Type t) { return GetTypeInfoFromType(t).Assembly; } public override Type GetBaseType(Type t) { return GetTypeInfoFromType(t).BaseType; } public override bool IsValueType(Type t) { return GetTypeInfoFromType(t).IsValueType; } public override bool IsInterface(Type t) { return GetTypeInfoFromType(t).IsInterface; } public override bool IsNestedPublic(Type t) { return GetTypeInfoFromType(t).IsNestedPublic; } public override bool IsAbstract(Type t) { return GetTypeInfoFromType(t).IsAbstract; } public override bool IsEnum(Type t) { return GetTypeInfoFromType(t).IsEnum; } public override bool IsGenericTypeDefinition(Type t) { return GetTypeInfoFromType(t).IsGenericTypeDefinition; } public override bool IsGenericType(Type t) { return GetTypeInfoFromType(t).IsGenericType; } public override Attribute[] GetCustomAttributes(Type t, bool inherit) { return GetTypeInfoFromType(t).GetCustomAttributes(inherit).OfType().ToArray(); } public override Attribute[] GetCustomAttributes(Type t, Type at, bool inherit) { return GetTypeInfoFromType(t).GetCustomAttributes(at, inherit).OfType().ToArray(); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Compatibility/Frameworks/Base/FrameworkReflectionBase.cs.meta ================================================ fileFormatVersion: 2 guid: eed2eeae1e1cc5b41b53d13ad011cc4a timeCreated: 1518177925 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Compatibility/Frameworks/Base.meta ================================================ fileFormatVersion: 2 guid: cbaa685e2a65e51458c07a360dac4385 folderAsset: yes timeCreated: 1518177913 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Compatibility/Frameworks/FrameworkCLR.cs ================================================ #if !(DOTNET_CORE || NETFX_CORE) && !PCL using System; using System.Collections.Generic; using System.Linq; using System.Reflection; using System.Text; namespace MoonSharp.Interpreter.Compatibility.Frameworks { class FrameworkCurrent : FrameworkClrBase { public override Type GetTypeInfoFromType(Type t) { return t; } public override bool IsDbNull(object o) { return o != null && Convert.IsDBNull(o); } public override bool StringContainsChar(string str, char chr) { return str.Contains(chr); } public override Type GetInterface(Type type, string name) { return type.GetInterface(name); } } } #endif ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Compatibility/Frameworks/FrameworkCLR.cs.meta ================================================ fileFormatVersion: 2 guid: 89a0a6ed7d72afc43a6cf6296b166719 timeCreated: 1518177921 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Compatibility/Frameworks/FrameworkCore.cs ================================================ #if DOTNET_CORE using System; using System.Collections.Generic; using System.Linq; using System.Reflection; using System.Text; namespace MoonSharp.Interpreter.Compatibility.Frameworks { class FrameworkCurrent : FrameworkClrBase { public override Type GetInterface(Type type, string name) { return type.GetTypeInfo().GetInterface(name); } public override TypeInfo GetTypeInfoFromType(Type t) { return t.GetTypeInfo(); } public override bool IsDbNull(object o) { return o != null && o.GetType().FullName.StartsWith("System.DBNull"); } public override bool StringContainsChar(string str, char chr) { return str.Contains(chr); } } } #endif ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Compatibility/Frameworks/FrameworkCore.cs.meta ================================================ fileFormatVersion: 2 guid: 63b8b39c7dae2264da27bc3c86b6cba8 timeCreated: 1518177919 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Compatibility/Frameworks/FrameworkPCL.cs ================================================ #if !(DOTNET_CORE || NETFX_CORE) && PCL using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace MoonSharp.Interpreter.Compatibility.Frameworks { class FrameworkCurrent : FrameworkClrBase { public override Type GetTypeInfoFromType(Type t) { return t; } public override bool IsDbNull(object o) { return o != null && o.GetType().FullName.StartsWith("System.DBNull"); } public override bool StringContainsChar(string str, char chr) { return str.Contains(chr.ToString()); } public override Type GetInterface(Type type, string name) { return type.GetInterfaces(). FirstOrDefault(t => t.Name == name); } } } #endif ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Compatibility/Frameworks/FrameworkPCL.cs.meta ================================================ fileFormatVersion: 2 guid: 9fd84232f68f540419cce119f45dd93f timeCreated: 1518177922 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Compatibility/Frameworks/FrameworkWin8.cs ================================================ #if NETFX_CORE && !DOTNET_CORE using System; using System.Collections.Generic; using System.Linq; using System.Reflection; using System.Text; namespace MoonSharp.Interpreter.Compatibility.Frameworks { class FrameworkCurrent : FrameworkReflectionBase { public override TypeInfo GetTypeInfoFromType(Type t) { return t.GetTypeInfo(); } private T[] SafeArray(IEnumerable prop) { return prop != null ? prop.ToArray() : new T[0]; } public override MethodInfo GetAddMethod(EventInfo ei) { return ei.AddMethod; } public override ConstructorInfo[] GetConstructors(Type type) { return SafeArray(GetTypeInfoFromType(type).DeclaredConstructors); } public override EventInfo[] GetEvents(Type type) { return SafeArray(type.GetRuntimeEvents()); } public override FieldInfo[] GetFields(Type type) { return SafeArray(type.GetRuntimeFields()); } public override Type[] GetGenericArguments(Type type) { return type.GetTypeInfo().GenericTypeArguments; } public override MethodInfo GetGetMethod(PropertyInfo pi) { return pi.GetMethod; } public override Type GetInterface(Type type, string name) { return type.GetTypeInfo().ImplementedInterfaces.FirstOrDefault(t => t.Name == name); } public override Type[] GetInterfaces(Type t) { return SafeArray(GetTypeInfoFromType(t).ImplementedInterfaces); } public override MethodInfo GetMethod(Type type, string name) { return type.GetRuntimeMethods().FirstOrDefault(mi => mi.Name == name); } public override MethodInfo[] GetMethods(Type type) { return SafeArray(type.GetRuntimeMethods()); } public override Type[] GetNestedTypes(Type type) { return SafeArray(GetTypeInfoFromType(type).DeclaredNestedTypes.Select(ti => ti.AsType())); } public override PropertyInfo[] GetProperties(Type type) { return SafeArray(type.GetRuntimeProperties()); } public override PropertyInfo GetProperty(Type type, string name) { return type.GetRuntimeProperty(name); } public override MethodInfo GetRemoveMethod(EventInfo ei) { return ei.RemoveMethod; } public override MethodInfo GetSetMethod(PropertyInfo pi) { return pi.SetMethod; } public override bool IsAssignableFrom(Type current, Type toCompare) { return current.GetTypeInfo().IsAssignableFrom(toCompare.GetTypeInfo()); } public override bool IsDbNull(object o) { return o != null && o.GetType().FullName.StartsWith("System.DBNull"); } public override bool IsInstanceOfType(Type t, object o) { if (o == null) return false; return t.GetTypeInfo().IsAssignableFrom(o.GetType().GetTypeInfo()); } public override bool StringContainsChar(string str, char chr) { return str.Contains(chr); } public override MethodInfo GetMethod(Type resourcesType, string name, Type[] types) { return resourcesType.GetRuntimeMethod(name, types); } public override Type[] GetAssemblyTypes(Assembly asm) { return SafeArray(asm.DefinedTypes.Select(ti => ti.AsType())); } } } #endif ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Compatibility/Frameworks/FrameworkWin8.cs.meta ================================================ fileFormatVersion: 2 guid: b946a7676b806154da0bc286fa67a897 timeCreated: 1518177923 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Compatibility/Frameworks.meta ================================================ fileFormatVersion: 2 guid: 6cf358cd4afec1447b3c79760c2ab6d9 folderAsset: yes timeCreated: 1518177913 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Compatibility/Stopwatch.cs ================================================ #if PCL || ((!UNITY_EDITOR) && (ENABLE_DOTNET)) using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace System.Diagnostics { internal class Stopwatch { DateTime startTime, stopTime; public void Start() { startTime = DateTime.UtcNow; } public void Stop() { stopTime = DateTime.UtcNow; } public static Stopwatch StartNew() { Stopwatch sw = new Stopwatch(); sw.Start(); return sw; } public long ElapsedMilliseconds { get { return (long)((stopTime - startTime).TotalMilliseconds); } } } } #endif ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Compatibility/Stopwatch.cs.meta ================================================ fileFormatVersion: 2 guid: 7006799c17ff0a141898d724c74d537b timeCreated: 1518177920 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Compatibility.meta ================================================ fileFormatVersion: 2 guid: b5021c228fddf454a90284045e53dc27 folderAsset: yes timeCreated: 1518177911 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/BasicModule.cs ================================================ // Disable warnings about XML documentation #pragma warning disable 1591 using System; using System.Collections.Generic; using System.Globalization; using System.Text; using MoonSharp.Interpreter.Debugging; namespace MoonSharp.Interpreter.CoreLib { /// /// Class implementing basic Lua functions (print, type, tostring, etc) as a MoonSharp module. /// [MoonSharpModule] public class BasicModule { //type (v) //---------------------------------------------------------------------------------------------------------------- //Returns the type of its only argument, coded as a string. The possible results of this function are "nil" //(a string, not the value nil), "number", "string", "boolean", "table", "function", "thread", and "userdata". [MoonSharpModuleMethod] public static DynValue type(ScriptExecutionContext executionContext, CallbackArguments args) { if (args.Count < 1) throw ScriptRuntimeException.BadArgumentValueExpected(0, "type"); DynValue v = args[0]; return DynValue.NewString(v.Type.ToLuaTypeString()); } //assert (v [, message]) //---------------------------------------------------------------------------------------------------------------- //Issues an error when the value of its argument v is false (i.e., nil or false); //otherwise, returns all its arguments. message is an error message; when absent, it defaults to "assertion failed!" [MoonSharpModuleMethod] public static DynValue assert(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue v = args[0]; DynValue message = args[1]; if (!v.CastToBool()) { if (message.IsNil()) throw new ScriptRuntimeException("assertion failed!"); // { DoNotDecorateMessage = true }; else throw new ScriptRuntimeException(message.ToPrintString()); // { DoNotDecorateMessage = true }; } return DynValue.NewTupleNested(args.GetArray()); } // collectgarbage ([opt [, arg]]) // ---------------------------------------------------------------------------------------------------------------- // This function is mostly a stub towards the CLR GC. If mode is nil, "collect" or "restart", a GC is forced. [MoonSharpModuleMethod] public static DynValue collectgarbage(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue opt = args[0]; string mode = opt.CastToString(); if (mode == null || mode == "collect" || mode == "restart") { #if PCL || ENABLE_DOTNET GC.Collect(); #else GC.Collect(2, GCCollectionMode.Forced); #endif } return DynValue.Nil; } // error (message [, level]) // ---------------------------------------------------------------------------------------------------------------- // Terminates the last protected function called and returns message as the error message. Function error never returns. // Usually, error adds some information about the error position at the beginning of the message. // The level argument specifies how to get the error position. // With level 1 (the default), the error position is where the error function was called. // Level 2 points the error to where the function that called error was called; and so on. // Passing a level 0 avoids the addition of error position information to the message. [MoonSharpModuleMethod] public static DynValue error(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue message = args.AsType(0, "error", DataType.String, false); DynValue level = args.AsType(1, "error", DataType.Number, true); Coroutine cor = executionContext.GetCallingCoroutine(); WatchItem[] stacktrace = cor.GetStackTrace(0, executionContext.CallingLocation); var e = new ScriptRuntimeException(message.String); if (level.IsNil()) { level = DynValue.NewNumber(1); // Default } if (level.Number > 0 && level.Number < stacktrace.Length) { // Lua allows levels up to max. value of a double, while this has to be cast to int // Probably never will be a problem, just leaving this note here WatchItem wi = stacktrace[(int)level.Number]; e.DecorateMessage(executionContext.GetScript(), wi.Location); } else { e.DoNotDecorateMessage = true; } throw e; } // tostring (v) // ---------------------------------------------------------------------------------------------------------------- // Receives a value of any type and converts it to a string in a reasonable format. (For complete control of how // numbers are converted, use string.format.) // // If the metatable of v has a "__tostring" field, then tostring calls the corresponding value with v as argument, // and uses the result of the call as its result. [MoonSharpModuleMethod] public static DynValue tostring(ScriptExecutionContext executionContext, CallbackArguments args) { if (args.Count < 1) throw ScriptRuntimeException.BadArgumentValueExpected(0, "tostring"); DynValue v = args[0]; DynValue tail = executionContext.GetMetamethodTailCall(v, "__tostring", v); if (tail == null || tail.IsNil()) return DynValue.NewString(v.ToPrintString()); tail.TailCallData.Continuation = new CallbackFunction(__tostring_continuation, "__tostring"); return tail; } private static DynValue __tostring_continuation(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue b = args[0].ToScalar(); if (b.IsNil()) return b; if (b.Type != DataType.String) throw new ScriptRuntimeException("'tostring' must return a string"); return b; } // select (index, ...) // ----------------------------------------------------------------------------- // If index is a number, returns all arguments after argument number index; a negative number indexes from // the end (-1 is the last argument). Otherwise, index must be the string "#", and select returns the total // number of extra arguments it received. [MoonSharpModuleMethod] public static DynValue select(ScriptExecutionContext executionContext, CallbackArguments args) { if (args[0].Type == DataType.String && args[0].String == "#") { if (args[args.Count - 1].Type == DataType.Tuple) { return DynValue.NewNumber(args.Count - 1 + args[args.Count - 1].Tuple.Length); } else { return DynValue.NewNumber(args.Count - 1); } } DynValue v_num = args.AsType(0, "select", DataType.Number, false); int num = (int)v_num.Number; List values = new List(); if (num > 0) { for (int i = num; i < args.Count; i++) values.Add(args[i]); } else if (num < 0) { num = args.Count + num; if (num < 1) throw ScriptRuntimeException.BadArgumentIndexOutOfRange("select", 0); for (int i = num; i < args.Count; i++) values.Add(args[i]); } else { throw ScriptRuntimeException.BadArgumentIndexOutOfRange("select", 0); } return DynValue.NewTupleNested(values.ToArray()); } // tonumber (e [, base]) // ---------------------------------------------------------------------------------------------------------------- // When called with no base, tonumber tries to convert its argument to a number. If the argument is already // a number or a string convertible to a number (see §3.4.2), then tonumber returns this number; otherwise, // it returns nil. // // When called with base, then e should be a string to be interpreted as an integer numeral in that base. // The base may be any integer between 2 and 36, inclusive. In bases above 10, the letter 'A' (in either // upper or lower case) represents 10, 'B' represents 11, and so forth, with 'Z' representing 35. If the // string e is not a valid numeral in the given base, the function returns nil. [MoonSharpModuleMethod] public static DynValue tonumber(ScriptExecutionContext executionContext, CallbackArguments args) { if (args.Count < 1) throw ScriptRuntimeException.BadArgumentValueExpected(0, "tonumber"); DynValue e = args[0]; DynValue b = args.AsType(1, "tonumber", DataType.Number, true); if (b.IsNil()) { if (e.Type == DataType.Number) return e; if (e.Type != DataType.String) return DynValue.Nil; double d; if (double.TryParse(e.String, NumberStyles.Any, CultureInfo.InvariantCulture, out d)) { return DynValue.NewNumber(d); } return DynValue.Nil; } else { //!COMPAT: tonumber supports only 2,8,10 or 16 as base //UPDATE: added support for 3-9 base numbers DynValue ee; if (args[0].Type != DataType.Number) ee = args.AsType(0, "tonumber", DataType.String, false); else ee = DynValue.NewString(args[0].Number.ToString(CultureInfo.InvariantCulture)); ; int bb = (int)b.Number; uint uiv = 0; if (bb == 2 || bb == 8 || bb == 10 || bb == 16) { uiv = Convert.ToUInt32(ee.String.Trim(), bb); } else if (bb < 10 && bb > 2) // Support for 3, 4, 5, 6, 7 and 9 based numbers { foreach (char digit in ee.String.Trim()) { int value = digit - 48; if (value < 0 || value >= bb) { throw new ScriptRuntimeException("bad argument #1 to 'tonumber' (invalid character)"); } uiv = (uint)(uiv * bb) + (uint)value; } } else { throw new ScriptRuntimeException("bad argument #2 to 'tonumber' (base out of range)"); } return DynValue.NewNumber(uiv); } } [MoonSharpModuleMethod] public static DynValue print(ScriptExecutionContext executionContext, CallbackArguments args) { StringBuilder sb = new StringBuilder(); for (int i = 0; i < args.Count; i++) { if (args[i].IsVoid()) break; if (i != 0) sb.Append('\t'); sb.Append(args.AsStringUsingMeta(executionContext, i, "print")); } executionContext.GetScript().Options.DebugPrint(sb.ToString()); return DynValue.Nil; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/BasicModule.cs.meta ================================================ fileFormatVersion: 2 guid: 804fc1452b54d554993e2d1b594721e6 timeCreated: 1518177921 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/Bit32Module.cs ================================================ // Disable warnings about XML documentation #pragma warning disable 1591 using System; namespace MoonSharp.Interpreter.CoreLib { /// /// Class implementing bit32 Lua functions /// [MoonSharpModule(Namespace = "bit32")] public class Bit32Module { static readonly uint[] MASKS = new uint[] { 0x1, 0x3, 0x7, 0xF, 0x1F, 0x3F, 0x7F, 0xFF, 0x1FF, 0x3FF, 0x7FF, 0xFFF, 0x1FFF, 0x3FFF, 0x7FFF, 0xFFFF, 0x1FFFF, 0x3FFFF, 0x7FFFF, 0xFFFFF, 0x1FFFFF, 0x3FFFFF, 0x7FFFFF, 0xFFFFFF, 0x1FFFFFF, 0x3FFFFFF, 0x7FFFFFF, 0xFFFFFFF, 0x1FFFFFFF, 0x3FFFFFFF, 0x7FFFFFFF, 0xFFFFFFFF, }; static uint ToUInt32(DynValue v) { double d = v.Number; d = Math.IEEERemainder(d, Math.Pow(2.0, 32.0)); return (uint)d; } static int ToInt32(DynValue v) { double d = v.Number; d = Math.IEEERemainder(d, Math.Pow(2.0, 32.0)); return (int)d; } static uint NBitMask(int bits) { if (bits <= 0) return 0; if (bits >= 32) return MASKS[31]; return MASKS[bits - 1]; } public static uint Bitwise(string funcName, CallbackArguments args, Func accumFunc) { uint accum = ToUInt32(args.AsType(0, funcName, DataType.Number, false)); for (int i = 1; i < args.Count; i++) { uint vv = ToUInt32(args.AsType(i, funcName, DataType.Number, false)); accum = accumFunc(accum, vv); } return accum; } [MoonSharpModuleMethod] public static DynValue extract(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue v_v = args.AsType(0, "extract", DataType.Number); uint v = ToUInt32(v_v); DynValue v_pos = args.AsType(1, "extract", DataType.Number); DynValue v_width = args.AsType(2, "extract", DataType.Number, true); int pos = (int)v_pos.Number; int width = (v_width).IsNilOrNan() ? 1 : (int)v_width.Number; ValidatePosWidth("extract", 2, pos, width); uint res = (v >> pos) & NBitMask(width); return DynValue.NewNumber(res); } [MoonSharpModuleMethod] public static DynValue replace(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue v_v = args.AsType(0, "replace", DataType.Number); uint v = ToUInt32(v_v); DynValue v_u = args.AsType(1, "replace", DataType.Number); uint u = ToUInt32(v_u); DynValue v_pos = args.AsType(2, "replace", DataType.Number); DynValue v_width = args.AsType(3, "replace", DataType.Number, true); int pos = (int)v_pos.Number; int width = (v_width).IsNilOrNan() ? 1 : (int)v_width.Number; ValidatePosWidth("replace", 3, pos, width); uint mask = NBitMask(width) << pos; v = v & (~mask); u = u & (mask); v = v | u; return DynValue.NewNumber(v); } private static void ValidatePosWidth(string func, int argPos, int pos, int width) { if (pos > 31 || (pos + width) > 31) throw new ScriptRuntimeException("trying to access non-existent bits"); if (pos < 0) throw new ScriptRuntimeException("bad argument #{1} to '{0}' (field cannot be negative)", func, argPos); if (width <= 0) throw new ScriptRuntimeException("bad argument #{1} to '{0}' (width must be positive)", func, argPos+1); } [MoonSharpModuleMethod] public static DynValue arshift(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue v_v = args.AsType(0, "arshift", DataType.Number); int v = ToInt32(v_v); DynValue v_a = args.AsType(1, "arshift", DataType.Number); int a = (int)v_a.Number; if (a < 0) v = v << -a; else v = v >> a; return DynValue.NewNumber(v); } [MoonSharpModuleMethod] public static DynValue rshift(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue v_v = args.AsType(0, "rshift", DataType.Number); uint v = ToUInt32(v_v); DynValue v_a = args.AsType(1, "rshift", DataType.Number); int a = (int)v_a.Number; if (a < 0) v = v << -a; else v = v >> a; return DynValue.NewNumber(v); } [MoonSharpModuleMethod] public static DynValue lshift(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue v_v = args.AsType(0, "lshift", DataType.Number); uint v = ToUInt32(v_v); DynValue v_a = args.AsType(1, "lshift", DataType.Number); int a = (int)v_a.Number; if (a < 0) v = v >> -a; else v = v << a; return DynValue.NewNumber(v); } [MoonSharpModuleMethod] public static DynValue band(ScriptExecutionContext executionContext, CallbackArguments args) { return DynValue.NewNumber(Bitwise("band", args, (x, y) => x & y)); } [MoonSharpModuleMethod] public static DynValue btest(ScriptExecutionContext executionContext, CallbackArguments args) { return DynValue.NewBoolean(0 != Bitwise("btest", args, (x, y) => x & y)); } [MoonSharpModuleMethod] public static DynValue bor(ScriptExecutionContext executionContext, CallbackArguments args) { return DynValue.NewNumber(Bitwise("bor", args, (x, y) => x | y)); } [MoonSharpModuleMethod] public static DynValue bnot(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue v_v = args.AsType(0, "bnot", DataType.Number); uint v = ToUInt32(v_v); return DynValue.NewNumber(~v); } [MoonSharpModuleMethod] public static DynValue bxor(ScriptExecutionContext executionContext, CallbackArguments args) { return DynValue.NewNumber(Bitwise("bxor", args, (x, y) => x ^ y)); } [MoonSharpModuleMethod] public static DynValue lrotate(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue v_v = args.AsType(0, "lrotate", DataType.Number); uint v = ToUInt32(v_v); DynValue v_a = args.AsType(1, "lrotate", DataType.Number); int a = ((int)v_a.Number) % 32; if (a < 0) v = (v >> (-a)) | (v << (32 + a)); else v = (v << a) | (v >> (32 - a)); return DynValue.NewNumber(v); } [MoonSharpModuleMethod] public static DynValue rrotate(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue v_v = args.AsType(0, "rrotate", DataType.Number); uint v = ToUInt32(v_v); DynValue v_a = args.AsType(1, "rrotate", DataType.Number); int a = ((int)v_a.Number) % 32; if (a < 0) v = (v << (-a)) | (v >> (32 + a)); else v = (v >> a) | (v << (32 - a)); return DynValue.NewNumber(v); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/Bit32Module.cs.meta ================================================ fileFormatVersion: 2 guid: d3ce764870d134e4b9653557d9c2bb8e timeCreated: 1518177924 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/CoroutineModule.cs ================================================ // Disable warnings about XML documentation #pragma warning disable 1591 using System.Collections.Generic; namespace MoonSharp.Interpreter.CoreLib { /// /// Class implementing coroutine Lua functions /// [MoonSharpModule(Namespace = "coroutine")] public class CoroutineModule { [MoonSharpModuleMethod] public static DynValue create(ScriptExecutionContext executionContext, CallbackArguments args) { if (args[0].Type != DataType.Function && args[0].Type != DataType.ClrFunction) args.AsType(0, "create", DataType.Function); // this throws return executionContext.GetScript().CreateCoroutine(args[0]); } [MoonSharpModuleMethod] public static DynValue wrap(ScriptExecutionContext executionContext, CallbackArguments args) { if (args[0].Type != DataType.Function && args[0].Type != DataType.ClrFunction) args.AsType(0, "wrap", DataType.Function); // this throws DynValue v = create(executionContext, args); DynValue c = DynValue.NewCallback(__wrap_wrapper); c.Callback.AdditionalData = v; return c; } public static DynValue __wrap_wrapper(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue handle = (DynValue)executionContext.AdditionalData; return handle.Coroutine.Resume(args.GetArray()); } [MoonSharpModuleMethod] public static DynValue resume(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue handle = args.AsType(0, "resume", DataType.Thread); try { DynValue ret = handle.Coroutine.Resume(args.GetArray(1)); List retval = new List(); retval.Add(DynValue.True); if (ret.Type == DataType.Tuple) { for (int i = 0; i < ret.Tuple.Length; i++) { var v = ret.Tuple[i]; if ((i == ret.Tuple.Length - 1) && (v.Type == DataType.Tuple)) { retval.AddRange(v.Tuple); } else { retval.Add(v); } } } else { retval.Add(ret); } return DynValue.NewTuple(retval.ToArray()); } catch (ScriptRuntimeException ex) { return DynValue.NewTuple( DynValue.False, DynValue.NewString(ex.Message)); } } [MoonSharpModuleMethod] public static DynValue yield(ScriptExecutionContext executionContext, CallbackArguments args) { return DynValue.NewYieldReq(args.GetArray()); } [MoonSharpModuleMethod] public static DynValue running(ScriptExecutionContext executionContext, CallbackArguments args) { Coroutine C = executionContext.GetCallingCoroutine(); return DynValue.NewTuple(DynValue.NewCoroutine(C), DynValue.NewBoolean(C.State == CoroutineState.Main)); } [MoonSharpModuleMethod] public static DynValue status(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue handle = args.AsType(0, "status", DataType.Thread); Coroutine running = executionContext.GetCallingCoroutine(); CoroutineState cs = handle.Coroutine.State; switch (cs) { case CoroutineState.Main: case CoroutineState.Running: return (handle.Coroutine == running) ? DynValue.NewString("running") : DynValue.NewString("normal"); case CoroutineState.NotStarted: case CoroutineState.Suspended: case CoroutineState.ForceSuspended: return DynValue.NewString("suspended"); case CoroutineState.Dead: return DynValue.NewString("dead"); default: throw new InternalErrorException("Unexpected coroutine state {0}", cs); } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/CoroutineModule.cs.meta ================================================ fileFormatVersion: 2 guid: 88df6d6f267c35f4f8fb2b5ba8fcbc4e timeCreated: 1518177921 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/DebugModule.cs ================================================ // Disable warnings about XML documentation #pragma warning disable 1591 using System; using System.Text; using MoonSharp.Interpreter.Debugging; using MoonSharp.Interpreter.REPL; namespace MoonSharp.Interpreter.CoreLib { /// /// Class implementing debug Lua functions. Support for the debug module is partial. /// [MoonSharpModule(Namespace = "debug")] public class DebugModule { [MoonSharpModuleMethod] public static DynValue debug(ScriptExecutionContext executionContext, CallbackArguments args) { Script script = executionContext.GetScript(); if (script.Options.DebugInput == null) throw new ScriptRuntimeException("debug.debug not supported on this platform/configuration"); ReplInterpreter interpreter = new ReplInterpreter(script) { HandleDynamicExprs = false, HandleClassicExprsSyntax = true }; while (true) { string s = script.Options.DebugInput(interpreter.ClassicPrompt + " "); try { DynValue result = interpreter.Evaluate(s); if (result != null && result.Type != DataType.Void) script.Options.DebugPrint(string.Format("{0}", result)); } catch (InterpreterException ex) { script.Options.DebugPrint(string.Format("{0}", ex.DecoratedMessage ?? ex.Message)); } catch (Exception ex) { script.Options.DebugPrint(string.Format("{0}", ex.Message)); } } } [MoonSharpModuleMethod] public static DynValue getuservalue(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue v = args[0]; if (v.Type != DataType.UserData) return DynValue.Nil; return v.UserData.UserValue ?? DynValue.Nil; } [MoonSharpModuleMethod] public static DynValue setuservalue(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue v = args.AsType(0, "setuservalue", DataType.UserData, false); DynValue t = args.AsType(1, "setuservalue", DataType.Table, true); return v.UserData.UserValue = t; } [MoonSharpModuleMethod] public static DynValue getregistry(ScriptExecutionContext executionContext, CallbackArguments args) { return DynValue.NewTable(executionContext.GetScript().Registry); } [MoonSharpModuleMethod] public static DynValue getmetatable(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue v = args[0]; Script S = executionContext.GetScript(); if (v.Type.CanHaveTypeMetatables()) return DynValue.NewTable(S.GetTypeMetatable(v.Type)); else if (v.Type == DataType.Table) return DynValue.NewTable(v.Table.MetaTable); else return DynValue.Nil; } [MoonSharpModuleMethod] public static DynValue setmetatable(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue v = args[0]; DynValue t = args.AsType(1, "setmetatable", DataType.Table, true); Table m = (t.IsNil()) ? null : t.Table; Script S = executionContext.GetScript(); if (v.Type.CanHaveTypeMetatables()) S.SetTypeMetatable(v.Type, m); else if (v.Type == DataType.Table) v.Table.MetaTable = m; else throw new ScriptRuntimeException("cannot debug.setmetatable on type {0}", v.Type.ToErrorTypeString()); return v; } [MoonSharpModuleMethod] public static DynValue getupvalue(ScriptExecutionContext executionContext, CallbackArguments args) { var index = (int)args.AsType(1, "getupvalue", DataType.Number, false).Number - 1; if (args[0].Type == DataType.ClrFunction) return DynValue.Nil; var fn = args.AsType(0, "getupvalue", DataType.Function, false).Function; var closure = fn.ClosureContext; if (index < 0 || index >= closure.Count) return DynValue.Nil; return DynValue.NewTuple( DynValue.NewString(closure.Symbols[index]), closure[index]); } [MoonSharpModuleMethod] public static DynValue upvalueid(ScriptExecutionContext executionContext, CallbackArguments args) { var index = (int)args.AsType(1, "getupvalue", DataType.Number, false).Number - 1; if (args[0].Type == DataType.ClrFunction) return DynValue.Nil; var fn = args.AsType(0, "getupvalue", DataType.Function, false).Function; var closure = fn.ClosureContext; if (index < 0 || index >= closure.Count) return DynValue.Nil; return DynValue.NewNumber(closure[index].ReferenceID); } [MoonSharpModuleMethod] public static DynValue setupvalue(ScriptExecutionContext executionContext, CallbackArguments args) { var index = (int)args.AsType(1, "setupvalue", DataType.Number, false).Number - 1; if (args[0].Type == DataType.ClrFunction) return DynValue.Nil; var fn = args.AsType(0, "setupvalue", DataType.Function, false).Function; var closure = fn.ClosureContext; if (index < 0 || index >= closure.Count) return DynValue.Nil; closure[index].Assign(args[2]); return DynValue.NewString(closure.Symbols[index]); } [MoonSharpModuleMethod] public static DynValue upvaluejoin(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue f1 = args.AsType(0, "upvaluejoin", DataType.Function, false); DynValue f2 = args.AsType(2, "upvaluejoin", DataType.Function, false); int n1 = args.AsInt(1, "upvaluejoin") - 1; int n2 = args.AsInt(3, "upvaluejoin") - 1; Closure c1 = f1.Function; Closure c2 = f2.Function; if (n1 < 0 || n1 >= c1.ClosureContext.Count) throw ScriptRuntimeException.BadArgument(1, "upvaluejoin", "invalid upvalue index"); if (n2 < 0 || n2 >= c2.ClosureContext.Count) throw ScriptRuntimeException.BadArgument(3, "upvaluejoin", "invalid upvalue index"); c2.ClosureContext[n2] = c1.ClosureContext[n1]; return DynValue.Void; } [MoonSharpModuleMethod] public static DynValue traceback(ScriptExecutionContext executionContext, CallbackArguments args) { StringBuilder sb = new StringBuilder(); DynValue vmessage = args[0]; DynValue vlevel = args[1]; double defaultSkip = 1.0; Coroutine cor = executionContext.GetCallingCoroutine(); if (vmessage.Type == DataType.Thread) { cor = vmessage.Coroutine; vmessage = args[1]; vlevel = args[2]; defaultSkip = 0.0; } if (vmessage.IsNotNil() && vmessage.Type != DataType.String && vmessage.Type != DataType.Number) { return vmessage; } string message = vmessage.CastToString(); int skip = (int)((vlevel.CastToNumber()) ?? defaultSkip); WatchItem[] stacktrace = cor.GetStackTrace(Math.Max(0, skip)); if (message != null) sb.AppendLine(message); sb.AppendLine("stack traceback:"); foreach (WatchItem wi in stacktrace) { string name; if (wi.Name == null) if (wi.RetAddress < 0) name = "main chunk"; else name = "?"; else name = "function '" + wi.Name + "'"; string loc = wi.Location != null ? wi.Location.FormatLocation(executionContext.GetScript()) : "[clr]"; sb.AppendFormat("\t{0}: in {1}\n", loc, name); } return DynValue.NewString(sb); } //[MoonSharpModuleMethod] //public static DynValue getlocal(ScriptExecutionContext executionContext, CallbackArguments args) //{ // Coroutine c; // int funcIdx; // Closure f; // int nextArg = ParseComplexArgs("getlocal", executionContext, args, out c, out f, out funcIdx); // int localIdx = args.AsInt(nextArg, "getlocal"); // if (f != null) // { // } // else // { // } //} //private static int ParseComplexArgs(string funcname, ScriptExecutionContext executionContext, CallbackArguments args, out Coroutine c, out Closure f, out int funcIdx) //{ // DynValue arg1 = args[0]; // int argbase = 0; // c = null; // if (arg1.Type == DataType.Thread) // { // c = arg1.Coroutine; // argbase = 1; // } // if (args[argbase].Type == DataType.Number) // { // funcIdx = (int)args[argbase].Number; // f = null; // } // else // { // funcIdx = -1; // f = args.AsType(argbase, funcname, DataType.Function, false).Function; // } // return argbase + 1; //} [MoonSharpModuleMethod] public static DynValue getinfo(ScriptExecutionContext executionContext, CallbackArguments args) { Coroutine cor = executionContext.GetCallingCoroutine(); int vfArgIdx = 0; if (args[0].Type == DataType.Thread) { cor = args[0].Coroutine; vfArgIdx++; } DynValue vf = args[vfArgIdx+0]; DynValue vwhat = args[vfArgIdx+1]; if (vf.Type == DataType.Void || vf.Type == DataType.Nil) vf = DynValue.NewNumber(1); args.AsType(vfArgIdx + 1, "getinfo", DataType.String, true); string what = vwhat.CastToString() ?? "nfSlu"; DynValue vt = DynValue.NewTable(executionContext.GetScript()); if (vf.Type == DataType.Number) { WatchItem[] stacktrace = cor.GetStackTrace((int)vf.Number, executionContext.CallingLocation); if (stacktrace.Length == 0) return DynValue.NewNil(); WatchItem wi = stacktrace[0]; if (what.Contains("n")) { vt.Table.Set("name", DynValue.NewString(wi.Name ?? "")); } if (what.Contains("f")) { vt.Table.Set("func", wi.Value ?? DynValue.NewNil()); } if (what.Contains("S")) { string source = (wi.Value != null && wi.Value.Type == DataType.Function) ? executionContext.GetScript().GetSourceCode(executionContext.CallingLocation.SourceIdx).Name : "[C]"; vt.Table.Set("source", DynValue.NewString("=" + source)); vt.Table.Set("short_src", DynValue.NewString(source.Length >= 60 ? source.Substring(0, 60) : source)); vt.Table.Set("what", DynValue.NewString(wi.Name == null ? "main" : ((wi.Value != null && wi.Value.Type == DataType.Function) ? "Lua" : "C"))); } if (what.Contains("l")) { vt.Table.Set("currentline", DynValue.NewNumber(wi.Location != null ? wi.Location.FromLine : executionContext.CallingLocation.FromLine)); } if (what.Contains("u")) { vt.Table.Set("nups", DynValue.NewNumber((wi.Value != null && wi.Value.Type == DataType.Function) ? wi.Value.Function.GetUpvaluesCount() : 0)); } } else { args.AsType(vfArgIdx + 0, "getinfo", DataType.Number, true); } return vt; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/DebugModule.cs.meta ================================================ fileFormatVersion: 2 guid: 69c6920527571644c83eb25a9bedeed3 timeCreated: 1518177919 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/DynamicModule.cs ================================================ // Disable warnings about XML documentation #pragma warning disable 1591 namespace MoonSharp.Interpreter.CoreLib { /// /// Class implementing dynamic expression evaluations at runtime (a MoonSharp addition). /// [MoonSharpModule(Namespace = "dynamic")] public class DynamicModule { private class DynamicExprWrapper { public DynamicExpression Expr; } public static void MoonSharpInit(Table globalTable, Table stringTable) { UserData.RegisterType(InteropAccessMode.HideMembers); } [MoonSharpModuleMethod] public static DynValue eval(ScriptExecutionContext executionContext, CallbackArguments args) { try { if (args[0].Type == DataType.UserData) { UserData ud = args[0].UserData; if (ud.Object is DynamicExprWrapper) { return ((DynamicExprWrapper)ud.Object).Expr.Evaluate(executionContext); } else { throw ScriptRuntimeException.BadArgument(0, "dynamic.eval", "A userdata was passed, but was not a previously prepared expression."); } } else { DynValue vs = args.AsType(0, "dynamic.eval", DataType.String, false); DynamicExpression expr = executionContext.GetScript().CreateDynamicExpression(vs.String); return expr.Evaluate(executionContext); } } catch (SyntaxErrorException ex) { throw new ScriptRuntimeException(ex); } } [MoonSharpModuleMethod] public static DynValue prepare(ScriptExecutionContext executionContext, CallbackArguments args) { try { DynValue vs = args.AsType(0, "dynamic.prepare", DataType.String, false); DynamicExpression expr = executionContext.GetScript().CreateDynamicExpression(vs.String); return UserData.Create(new DynamicExprWrapper() { Expr = expr }); } catch (SyntaxErrorException ex) { throw new ScriptRuntimeException(ex); } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/DynamicModule.cs.meta ================================================ fileFormatVersion: 2 guid: c8c155892d110124a8996ac3232b26be timeCreated: 1518177924 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/ErrorHandlingModule.cs ================================================ // Disable warnings about XML documentation #pragma warning disable 1591 using System.Collections.Generic; namespace MoonSharp.Interpreter.CoreLib { /// /// Class implementing error handling Lua functions (pcall and xpcall) /// [MoonSharpModule] public class ErrorHandlingModule { [MoonSharpModuleMethod] public static DynValue pcall(ScriptExecutionContext executionContext, CallbackArguments args) { return SetErrorHandlerStrategy("pcall", executionContext, args, null); } private static DynValue SetErrorHandlerStrategy(string funcName, ScriptExecutionContext executionContext, CallbackArguments args, DynValue handlerBeforeUnwind) { DynValue v = args[0]; DynValue[] a = new DynValue[args.Count - 1]; for (int i = 1; i < args.Count; i++) a[i - 1] = args[i]; if (args[0].Type == DataType.ClrFunction) { try { DynValue ret = args[0].Callback.Invoke(executionContext, a); if (ret.Type == DataType.TailCallRequest) { if (ret.TailCallData.Continuation != null || ret.TailCallData.ErrorHandler != null) throw new ScriptRuntimeException("the function passed to {0} cannot be called directly by {0}. wrap in a script function instead.", funcName); return DynValue.NewTailCallReq(new TailCallData() { Args = ret.TailCallData.Args, Function = ret.TailCallData.Function, Continuation = new CallbackFunction(pcall_continuation, funcName), ErrorHandler = new CallbackFunction(pcall_onerror, funcName), ErrorHandlerBeforeUnwind = handlerBeforeUnwind }); } else if (ret.Type == DataType.YieldRequest) { throw new ScriptRuntimeException("the function passed to {0} cannot be called directly by {0}. wrap in a script function instead.", funcName); } else { return DynValue.NewTupleNested(DynValue.True, ret); } } catch (ScriptRuntimeException ex) { executionContext.PerformMessageDecorationBeforeUnwind(handlerBeforeUnwind, ex); return DynValue.NewTupleNested(DynValue.False, DynValue.NewString(ex.DecoratedMessage)); } } else if (args[0].Type != DataType.Function) { return DynValue.NewTupleNested(DynValue.False, DynValue.NewString("attempt to " + funcName + " a non-function")); } else { return DynValue.NewTailCallReq(new TailCallData() { Args = a, Function = v, Continuation = new CallbackFunction(pcall_continuation, funcName), ErrorHandler = new CallbackFunction(pcall_onerror, funcName), ErrorHandlerBeforeUnwind = handlerBeforeUnwind }); } } private static DynValue MakeReturnTuple(bool retstatus, CallbackArguments args) { DynValue[] rets = new DynValue[args.Count + 1]; for (int i = 0; i < args.Count; i++) rets[i + 1] = args[i]; rets[0] = DynValue.NewBoolean(retstatus); return DynValue.NewTuple(rets); } public static DynValue pcall_continuation(ScriptExecutionContext executionContext, CallbackArguments args) { return MakeReturnTuple(true, args); } public static DynValue pcall_onerror(ScriptExecutionContext executionContext, CallbackArguments args) { return MakeReturnTuple(false, args); } [MoonSharpModuleMethod] public static DynValue xpcall(ScriptExecutionContext executionContext, CallbackArguments args) { List a = new List(); for (int i = 0; i < args.Count; i++) { if (i != 1) a.Add(args[i]); } DynValue handler = null; if (args[1].Type == DataType.Function || args[1].Type == DataType.ClrFunction) { handler = args[1]; } else if (args[1].Type != DataType.Nil) { args.AsType(1, "xpcall", DataType.Function, false); } return SetErrorHandlerStrategy("xpcall", executionContext, new CallbackArguments(a, false), handler); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/ErrorHandlingModule.cs.meta ================================================ fileFormatVersion: 2 guid: dcff71d4e23e1b34185b4d536c3c95bb timeCreated: 1518177925 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/IO/BinaryEncoding.cs ================================================ using System.Text; namespace MoonSharp.Interpreter.CoreLib.IO { class BinaryEncoding : Encoding { public BinaryEncoding() : base() { } public override int GetByteCount(char[] chars, int index, int count) { return count; } public override int GetBytes(char[] chars, int charIndex, int charCount, byte[] bytes, int byteIndex) { for (int i = 0; i < charCount; i++) { bytes[byteIndex + i] = (byte)((int)chars[charIndex + i]); } return charCount; } public override int GetCharCount(byte[] bytes, int index, int count) { return count; } public override int GetChars(byte[] bytes, int byteIndex, int byteCount, char[] chars, int charIndex) { for (int i = 0; i < byteCount; i++) { chars[charIndex + i] = (char)((int)bytes[byteIndex + i]); } return byteCount; } public override int GetMaxByteCount(int charCount) { return charCount; } public override int GetMaxCharCount(int byteCount) { return byteCount; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/IO/BinaryEncoding.cs.meta ================================================ fileFormatVersion: 2 guid: 6181d42e0487eb04e8a44d6848a548ef timeCreated: 1518177919 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/IO/FileUserData.cs ================================================ using System.IO; using System.Text; namespace MoonSharp.Interpreter.CoreLib.IO { /// /// Abstract class implementing a file Lua userdata. Methods are meant to be called by Lua code. /// internal class FileUserData : StreamFileUserDataBase { public FileUserData(Script script, string filename, Encoding encoding, string mode) { Stream stream = Script.GlobalOptions.Platform.IO_OpenFile(script, filename, encoding, mode); StreamReader reader = (stream.CanRead) ? new StreamReader(stream, encoding) : null; StreamWriter writer = (stream.CanWrite) ? new StreamWriter(stream, encoding) : null; base.Initialize(stream, reader, writer); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/IO/FileUserData.cs.meta ================================================ fileFormatVersion: 2 guid: f41dda436ee619b44b58538554237623 timeCreated: 1518177925 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/IO/FileUserDataBase.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using MoonSharp.Interpreter.Compatibility; namespace MoonSharp.Interpreter.CoreLib.IO { /// /// Abstract class implementing a file Lua userdata. Methods are meant to be called by Lua code. /// internal abstract class FileUserDataBase : RefIdObject { public DynValue lines(ScriptExecutionContext executionContext, CallbackArguments args) { List readLines = new List(); DynValue readValue = null; do { readValue = read(executionContext, args); readLines.Add(readValue); } while (readValue.IsNotNil()); return DynValue.FromObject(executionContext.GetScript(), readLines.Select(s => s)); } public DynValue read(ScriptExecutionContext executionContext, CallbackArguments args) { if (args.Count == 0) { string str = ReadLine(); if (str == null) return DynValue.Nil; str = str.TrimEnd('\n', '\r'); return DynValue.NewString(str); } else { List rets = new List(); for (int i = 0; i < args.Count; i++) { DynValue v; if (args[i].Type == DataType.Number) { if (Eof()) return DynValue.Nil; int howmany = (int)args[i].Number; string str = ReadBuffer(howmany); v = DynValue.NewString(str); } else { string opt = args.AsType(i, "read", DataType.String, false).String; if (Eof()) { v = opt.StartsWith("*a") ? DynValue.NewString("") : DynValue.Nil; } else if (opt.StartsWith("*n")) { double? d = ReadNumber(); if (d.HasValue) v = DynValue.NewNumber(d.Value); else v = DynValue.Nil; } else if (opt.StartsWith("*a")) { string str = ReadToEnd(); v = DynValue.NewString(str); } else if (opt.StartsWith("*l")) { string str = ReadLine(); str = str.TrimEnd('\n', '\r'); v = DynValue.NewString(str); } else if (opt.StartsWith("*L")) { string str = ReadLine(); str = str.TrimEnd('\n', '\r'); str += "\n"; v = DynValue.NewString(str); } else { throw ScriptRuntimeException.BadArgument(i, "read", "invalid option"); } } rets.Add(v); } return DynValue.NewTuple(rets.ToArray()); } } public DynValue write(ScriptExecutionContext executionContext, CallbackArguments args) { try { for (int i = 0; i < args.Count; i++) { //string str = args.AsStringUsingMeta(executionContext, i, "file:write"); string str = args.AsType(i, "write", DataType.String, false).String; Write(str); } return UserData.Create(this); } catch (ScriptRuntimeException) { throw; } catch (Exception ex) { return DynValue.NewTuple(DynValue.Nil, DynValue.NewString(ex.Message)); } } public DynValue close(ScriptExecutionContext executionContext, CallbackArguments args) { try { string msg = Close(); if (msg == null) return DynValue.True; else return DynValue.NewTuple(DynValue.Nil, DynValue.NewString(msg)); } catch (ScriptRuntimeException) { throw; } catch (Exception ex) { return DynValue.NewTuple(DynValue.Nil, DynValue.NewString(ex.Message)); } } double? ReadNumber() { string chr = ""; while (!Eof()) { char c = Peek(); if (char.IsWhiteSpace(c)) { ReadBuffer(1); } else if (IsNumericChar(c, chr)) { ReadBuffer(1); chr += c; } else break; } double d; if (double.TryParse(chr, out d)) { return d; } else { return null; } } private bool IsNumericChar(char c, string numAsFar) { if (char.IsDigit(c)) return true; if (c == '-') return numAsFar.Length == 0; if (c == '.') return !Framework.Do.StringContainsChar(numAsFar, '.'); if (c == 'E' || c == 'e') return !(Framework.Do.StringContainsChar(numAsFar, 'E') || Framework.Do.StringContainsChar(numAsFar, 'e')); return false; } protected abstract bool Eof(); protected abstract string ReadLine(); protected abstract string ReadBuffer(int p); protected abstract string ReadToEnd(); protected abstract char Peek(); protected abstract void Write(string value); protected internal abstract bool isopen(); protected abstract string Close(); public abstract bool flush(); public abstract long seek(string whence, long offset = 0); public abstract bool setvbuf(string mode); public override string ToString() { if (isopen()) return string.Format("file ({0:X8})", base.ReferenceID); else return "file (closed)"; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/IO/FileUserDataBase.cs.meta ================================================ fileFormatVersion: 2 guid: 4e207086cbf5283418669ca57e938dd5 timeCreated: 1518177918 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/IO/StandardIOFileUserDataBase.cs ================================================ using System.IO; namespace MoonSharp.Interpreter.CoreLib.IO { /// /// Abstract class implementing an unclosable file Lua userdata. Methods are meant to be called by Lua code. /// internal class StandardIOFileUserDataBase : StreamFileUserDataBase { protected override string Close() { return ("cannot close standard file"); } public static StandardIOFileUserDataBase CreateInputStream(Stream stream) { var f = new StandardIOFileUserDataBase(); f.Initialize(stream, new StreamReader(stream), null); return f; } public static StandardIOFileUserDataBase CreateOutputStream(Stream stream) { var f = new StandardIOFileUserDataBase(); f.Initialize(stream, null, new StreamWriter(stream)); return f; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/IO/StandardIOFileUserDataBase.cs.meta ================================================ fileFormatVersion: 2 guid: 829dcc0e3ab93e64e95386366ddfbeb7 timeCreated: 1518177921 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/IO/StreamFileUserDataBase.cs ================================================ using System.IO; namespace MoonSharp.Interpreter.CoreLib.IO { /// /// Abstract class implementing a file Lua userdata. Methods are meant to be called by Lua code. /// internal abstract class StreamFileUserDataBase : FileUserDataBase { protected Stream m_Stream; protected StreamReader m_Reader; protected StreamWriter m_Writer; protected bool m_Closed = false; protected void Initialize(Stream stream, StreamReader reader, StreamWriter writer) { m_Stream = stream; m_Reader = reader; m_Writer = writer; } private void CheckFileIsNotClosed() { if (m_Closed) throw new ScriptRuntimeException("attempt to use a closed file"); } protected override bool Eof() { CheckFileIsNotClosed(); if (m_Reader != null) return m_Reader.EndOfStream; else return false; } protected override string ReadLine() { CheckFileIsNotClosed(); return m_Reader.ReadLine(); } protected override string ReadToEnd() { CheckFileIsNotClosed(); return m_Reader.ReadToEnd(); } protected override string ReadBuffer(int p) { CheckFileIsNotClosed(); char[] buffer = new char[p]; int length = m_Reader.ReadBlock(buffer, 0, p); return new string(buffer, 0, length); } protected override char Peek() { CheckFileIsNotClosed(); return (char)m_Reader.Peek(); } protected override void Write(string value) { CheckFileIsNotClosed(); m_Writer.Write(value); } protected override string Close() { CheckFileIsNotClosed(); if (m_Writer != null) m_Writer.Dispose(); if (m_Reader != null) m_Reader.Dispose(); m_Stream.Dispose(); m_Closed = true; return null; } public override bool flush() { CheckFileIsNotClosed(); if (m_Writer != null) m_Writer.Flush(); return true; } public override long seek(string whence, long offset = 0) { CheckFileIsNotClosed(); if (whence != null) { if (whence == "set") { m_Stream.Seek(offset, SeekOrigin.Begin); } else if (whence == "cur") { m_Stream.Seek(offset, SeekOrigin.Current); } else if (whence == "end") { m_Stream.Seek(offset, SeekOrigin.End); } else { throw ScriptRuntimeException.BadArgument(0, "seek", "invalid option '" + whence + "'"); } } return m_Stream.Position; } public override bool setvbuf(string mode) { CheckFileIsNotClosed(); if (m_Writer != null) m_Writer.AutoFlush = (mode == "no" || mode == "line"); return true; } protected internal override bool isopen() { return !m_Closed; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/IO/StreamFileUserDataBase.cs.meta ================================================ fileFormatVersion: 2 guid: 26330cd0d8ed0c54ba008f9ed3f2f425 timeCreated: 1518177916 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/IO.meta ================================================ fileFormatVersion: 2 guid: 1b1341eba3896da44ae2cd03e7356601 folderAsset: yes timeCreated: 1518177912 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/IoModule.cs ================================================ // Disable warnings about XML documentation #pragma warning disable 1591 using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using MoonSharp.Interpreter.Compatibility; using MoonSharp.Interpreter.CoreLib.IO; using MoonSharp.Interpreter.Platforms; namespace MoonSharp.Interpreter.CoreLib { /// /// Class implementing io Lua functions. Proper support requires a compatible IPlatformAccessor /// [MoonSharpModule(Namespace = "io")] public class IoModule { public static void MoonSharpInit(Table globalTable, Table ioTable) { UserData.RegisterType(InteropAccessMode.Default, "file"); Table meta = new Table(ioTable.OwnerScript); DynValue __index = DynValue.NewCallback(new CallbackFunction(__index_callback, "__index_callback")); meta.Set("__index", __index); ioTable.MetaTable = meta; SetStandardFile(globalTable.OwnerScript, StandardFileType.StdIn, globalTable.OwnerScript.Options.Stdin); SetStandardFile(globalTable.OwnerScript, StandardFileType.StdOut, globalTable.OwnerScript.Options.Stdout); SetStandardFile(globalTable.OwnerScript, StandardFileType.StdErr, globalTable.OwnerScript.Options.Stderr); } private static DynValue __index_callback(ScriptExecutionContext executionContext, CallbackArguments args) { string name = args[1].CastToString(); if (name == "stdin") return GetStandardFile(executionContext.GetScript(), StandardFileType.StdIn); else if (name == "stdout") return GetStandardFile(executionContext.GetScript(), StandardFileType.StdOut); else if (name == "stderr") return GetStandardFile(executionContext.GetScript(), StandardFileType.StdErr); else return DynValue.Nil; } private static DynValue GetStandardFile(Script S, StandardFileType file) { Table R = S.Registry; DynValue ff = R.Get("853BEAAF298648839E2C99D005E1DF94_STD_" + file.ToString()); return ff; } private static void SetStandardFile(Script S, StandardFileType file, Stream optionsStream) { Table R = S.Registry; optionsStream = optionsStream ?? Script.GlobalOptions.Platform.IO_GetStandardStream(file); FileUserDataBase udb = null; if (file == StandardFileType.StdIn) udb = StandardIOFileUserDataBase.CreateInputStream(optionsStream); else udb = StandardIOFileUserDataBase.CreateOutputStream(optionsStream); R.Set("853BEAAF298648839E2C99D005E1DF94_STD_" + file.ToString(), UserData.Create(udb)); } static FileUserDataBase GetDefaultFile(ScriptExecutionContext executionContext, StandardFileType file) { Table R = executionContext.GetScript().Registry; DynValue ff = R.Get("853BEAAF298648839E2C99D005E1DF94_" + file.ToString()); if (ff.IsNil()) { ff = GetStandardFile(executionContext.GetScript(), file); } return ff.CheckUserDataType("getdefaultfile(" + file.ToString() + ")"); } static void SetDefaultFile(ScriptExecutionContext executionContext, StandardFileType file, FileUserDataBase fileHandle) { SetDefaultFile(executionContext.GetScript(), file, fileHandle); } internal static void SetDefaultFile(Script script, StandardFileType file, FileUserDataBase fileHandle) { Table R = script.Registry; R.Set("853BEAAF298648839E2C99D005E1DF94_" + file.ToString(), UserData.Create(fileHandle)); } public static void SetDefaultFile(Script script, StandardFileType file, Stream stream) { if (file == StandardFileType.StdIn) SetDefaultFile(script, file, StandardIOFileUserDataBase.CreateInputStream(stream)); else SetDefaultFile(script, file, StandardIOFileUserDataBase.CreateOutputStream(stream)); } [MoonSharpModuleMethod] public static DynValue close(ScriptExecutionContext executionContext, CallbackArguments args) { FileUserDataBase outp = args.AsUserData(0, "close", true) ?? GetDefaultFile(executionContext, StandardFileType.StdOut); return outp.close(executionContext, args); } [MoonSharpModuleMethod] public static DynValue flush(ScriptExecutionContext executionContext, CallbackArguments args) { FileUserDataBase outp = args.AsUserData(0, "close", true) ?? GetDefaultFile(executionContext, StandardFileType.StdOut); outp.flush(); return DynValue.True; } [MoonSharpModuleMethod] public static DynValue input(ScriptExecutionContext executionContext, CallbackArguments args) { return HandleDefaultStreamSetter(executionContext, args, StandardFileType.StdIn); } [MoonSharpModuleMethod] public static DynValue output(ScriptExecutionContext executionContext, CallbackArguments args) { return HandleDefaultStreamSetter(executionContext, args, StandardFileType.StdOut); } private static DynValue HandleDefaultStreamSetter(ScriptExecutionContext executionContext, CallbackArguments args, StandardFileType defaultFiles) { if (args.Count == 0 || args[0].IsNil()) { var file = GetDefaultFile(executionContext, defaultFiles); return UserData.Create(file); } FileUserDataBase inp = null; if (args[0].Type == DataType.String || args[0].Type == DataType.Number) { string fileName = args[0].CastToString(); inp = Open(executionContext, fileName, GetUTF8Encoding(), defaultFiles == StandardFileType.StdIn ? "r" : "w"); } else { inp = args.AsUserData(0, defaultFiles == StandardFileType.StdIn ? "input" : "output", false); } SetDefaultFile(executionContext, defaultFiles, inp); return UserData.Create(inp); } private static Encoding GetUTF8Encoding() { return new System.Text.UTF8Encoding(false); } [MoonSharpModuleMethod] public static DynValue lines(ScriptExecutionContext executionContext, CallbackArguments args) { string filename = args.AsType(0, "lines", DataType.String, false).String; try { List readLines = new List(); using (var stream = Script.GlobalOptions.Platform.IO_OpenFile(executionContext.GetScript(), filename, null, "r")) { using (var reader = new System.IO.StreamReader(stream)) { while (!reader.EndOfStream) { string line = reader.ReadLine(); readLines.Add(DynValue.NewString(line)); } } } readLines.Add(DynValue.Nil); return DynValue.FromObject(executionContext.GetScript(), readLines.Select(s => s)); } catch (Exception ex) { throw new ScriptRuntimeException(IoExceptionToLuaMessage(ex, filename)); } } [MoonSharpModuleMethod] public static DynValue open(ScriptExecutionContext executionContext, CallbackArguments args) { string filename = args.AsType(0, "open", DataType.String, false).String; DynValue vmode = args.AsType(1, "open", DataType.String, true); DynValue vencoding = args.AsType(2, "open", DataType.String, true); string mode = vmode.IsNil() ? "r" : vmode.String; string invalidChars = mode.Replace("+", "") .Replace("r", "") .Replace("a", "") .Replace("w", "") .Replace("b", "") .Replace("t", ""); if (invalidChars.Length > 0) throw ScriptRuntimeException.BadArgument(1, "open", "invalid mode"); try { string encoding = vencoding.IsNil() ? null : vencoding.String; // list of codes: http://msdn.microsoft.com/en-us/library/vstudio/system.text.encoding%28v=vs.90%29.aspx. // In addition, "binary" is available. Encoding e = null; bool isBinary = Framework.Do.StringContainsChar(mode, 'b'); if (encoding == "binary") { isBinary = true; e = new BinaryEncoding(); } else if (encoding == null) { if (!isBinary) e = GetUTF8Encoding(); else e = new BinaryEncoding(); } else { if (isBinary) throw new ScriptRuntimeException("Can't specify encodings other than nil or 'binary' for binary streams."); e = Encoding.GetEncoding(encoding); } return UserData.Create(Open(executionContext, filename, e, mode)); } catch (Exception ex) { return DynValue.NewTuple(DynValue.Nil, DynValue.NewString(IoExceptionToLuaMessage(ex, filename))); } } public static string IoExceptionToLuaMessage(Exception ex, string filename) { if (ex is System.IO.FileNotFoundException) return string.Format("{0}: No such file or directory", filename); else return ex.Message; } [MoonSharpModuleMethod] public static DynValue type(ScriptExecutionContext executionContext, CallbackArguments args) { if (args[0].Type != DataType.UserData) return DynValue.Nil; FileUserDataBase file = args[0].UserData.Object as FileUserDataBase; if (file == null) return DynValue.Nil; else if (file.isopen()) return DynValue.NewString("file"); else return DynValue.NewString("closed file"); } [MoonSharpModuleMethod] public static DynValue read(ScriptExecutionContext executionContext, CallbackArguments args) { FileUserDataBase file = GetDefaultFile(executionContext, StandardFileType.StdIn); return file.read(executionContext, args); } [MoonSharpModuleMethod] public static DynValue write(ScriptExecutionContext executionContext, CallbackArguments args) { FileUserDataBase file = GetDefaultFile(executionContext, StandardFileType.StdOut); return file.write(executionContext, args); } [MoonSharpModuleMethod] public static DynValue tmpfile(ScriptExecutionContext executionContext, CallbackArguments args) { string tmpfilename = Script.GlobalOptions.Platform.IO_OS_GetTempFilename(); FileUserDataBase file = Open(executionContext, tmpfilename, GetUTF8Encoding(), "w"); return UserData.Create(file); } private static FileUserDataBase Open(ScriptExecutionContext executionContext, string filename, Encoding encoding, string mode) { return new FileUserData(executionContext.GetScript(), filename, encoding, mode); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/IoModule.cs.meta ================================================ fileFormatVersion: 2 guid: a4608e1acee789b4ab48159af6cb6c3c timeCreated: 1518177922 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/JsonModule.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using System.Text; using MoonSharp.Interpreter.Serialization.Json; namespace MoonSharp.Interpreter.CoreLib { [MoonSharpModule(Namespace = "json")] public class JsonModule { [MoonSharpModuleMethod] public static DynValue parse(ScriptExecutionContext executionContext, CallbackArguments args) { try { DynValue vs = args.AsType(0, "parse", DataType.String, false); Table t = JsonTableConverter.JsonToTable(vs.String, executionContext.GetScript()); return DynValue.NewTable(t); } catch (SyntaxErrorException ex) { throw new ScriptRuntimeException(ex); } } [MoonSharpModuleMethod] public static DynValue serialize(ScriptExecutionContext executionContext, CallbackArguments args) { try { DynValue vt = args.AsType(0, "serialize", DataType.Table, false); string s = JsonTableConverter.TableToJson(vt.Table); return DynValue.NewString(s); } catch (SyntaxErrorException ex) { throw new ScriptRuntimeException(ex); } } [MoonSharpModuleMethod] public static DynValue isnull(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue vs = args[0]; return DynValue.NewBoolean((JsonNull.IsJsonNull(vs)) || (vs.IsNil())); } [MoonSharpModuleMethod] public static DynValue @null(ScriptExecutionContext executionContext, CallbackArguments args) { return JsonNull.Create(); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/JsonModule.cs.meta ================================================ fileFormatVersion: 2 guid: d58fe233020a17649b7d83f0bfbe49eb timeCreated: 1518177924 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/LoadModule.cs ================================================ using System; using System.Collections.Generic; using System.IO; // Disable warnings about XML documentation #pragma warning disable 1591 namespace MoonSharp.Interpreter.CoreLib { /// /// Class implementing loading Lua functions like 'require', 'load', etc. /// [MoonSharpModule] public class LoadModule { public static void MoonSharpInit(Table globalTable, Table ioTable) { DynValue package = globalTable.Get("package"); if (package.IsNil()) { package = DynValue.NewTable(globalTable.OwnerScript); globalTable["package"] = package; } else if (package.Type != DataType.Table) { throw new InternalErrorException("'package' global variable was found and it is not a table"); } #if PCL || ENABLE_DOTNET || NETFX_CORE string cfg = "\\\n;\n?\n!\n-\n"; #else string cfg = System.IO.Path.DirectorySeparatorChar + "\n;\n?\n!\n-\n"; #endif package.Table.Set("config", DynValue.NewString(cfg)); } // load (ld [, source [, mode [, env]]]) // ---------------------------------------------------------------- // Loads a chunk. // // If ld is a string, the chunk is this string. // // If there are no syntactic errors, returns the compiled chunk as a function; // otherwise, returns nil plus the error message. // // source is used as the source of the chunk for error messages and debug // information (see §4.9). When absent, it defaults to ld, if ld is a string, // or to "=(load)" otherwise. // // The string mode is ignored, and assumed to be "t"; [MoonSharpModuleMethod] public static DynValue load(ScriptExecutionContext executionContext, CallbackArguments args) { return load_impl(executionContext, args, null); } // loadsafe (ld [, source [, mode [, env]]]) // ---------------------------------------------------------------- // Same as load, except that "env" defaults to the current environment of the function // calling load, instead of the actual global environment. [MoonSharpModuleMethod] public static DynValue loadsafe(ScriptExecutionContext executionContext, CallbackArguments args) { return load_impl(executionContext, args, GetSafeDefaultEnv(executionContext)); } public static DynValue load_impl(ScriptExecutionContext executionContext, CallbackArguments args, Table defaultEnv) { try { Script S = executionContext.GetScript(); DynValue ld = args[0]; string script = ""; if (ld.Type == DataType.Function) { while (true) { DynValue ret = executionContext.GetScript().Call(ld); if (ret.Type == DataType.String && ret.String.Length > 0) script += ret.String; else if (ret.IsNil()) break; else return DynValue.NewTuple(DynValue.Nil, DynValue.NewString("reader function must return a string")); } } else if (ld.Type == DataType.String) { script = ld.String; } else { args.AsType(0, "load", DataType.Function, false); } DynValue source = args.AsType(1, "load", DataType.String, true); DynValue env = args.AsType(3, "load", DataType.Table, true); DynValue fn = S.LoadString(script, !env.IsNil() ? env.Table : defaultEnv, !source.IsNil() ? source.String : "=(load)"); return fn; } catch (SyntaxErrorException ex) { return DynValue.NewTuple(DynValue.Nil, DynValue.NewString(ex.DecoratedMessage ?? ex.Message)); } } // loadfile ([filename [, mode [, env]]]) // ---------------------------------------------------------------- // Similar to load, but gets the chunk from file filename or from the standard input, // if no file name is given. INCOMPAT: stdin not supported, mode ignored [MoonSharpModuleMethod] public static DynValue loadfile(ScriptExecutionContext executionContext, CallbackArguments args) { return loadfile_impl(executionContext, args, null); } // loadfile ([filename [, mode [, env]]]) // ---------------------------------------------------------------- // Same as loadfile, except that "env" defaults to the current environment of the function // calling load, instead of the actual global environment. [MoonSharpModuleMethod] public static DynValue loadfilesafe(ScriptExecutionContext executionContext, CallbackArguments args) { return loadfile_impl(executionContext, args, GetSafeDefaultEnv(executionContext)); } private static DynValue loadfile_impl(ScriptExecutionContext executionContext, CallbackArguments args, Table defaultEnv, bool catchError = true) { try { Script S = executionContext.GetScript(); DynValue v = args.AsType(0, "loadfile", DataType.String, false); DynValue env = args.AsType(2, "loadfile", DataType.Table, true); string str; if (v.String.StartsWith(DataRoot)) str = v.String; else str = (v.String.Replace("\\", "/").StartsWith("/") ? "" : "/") + v.String; string suffix = str.StartsWith(DataRoot) ? DataRoot : "raw"; ExplorePath(ref str, ref suffix); return S.LoadFile(str, env.IsNil() ? defaultEnv : env.Table); } catch (FileNotFoundException ex) { throw new CYFException(ex.Message); } catch (SyntaxErrorException ex) { return DynValue.NewTuple(DynValue.Nil, DynValue.NewString(ex.DecoratedMessage ?? ex.Message)); } catch (Exception) { if (!catchError) return DynValue.Nil; throw; } } private static Table GetSafeDefaultEnv(ScriptExecutionContext executionContext) { Table env = executionContext.CurrentGlobalEnv; if (env == null) throw new ScriptRuntimeException("current environment cannot be backtracked."); return env; } //dofile ([filename]) //-------------------------------------------------------------------------------------------------------------- //Opens the named file and executes its contents as a Lua chunk. When called without arguments, //dofile executes the contents of the standard input (stdin). Returns all values returned by the chunk. //In case of errors, dofile propagates the error to its caller (that is, dofile does not run in protected mode). [MoonSharpModuleMethod] public static DynValue dofile(ScriptExecutionContext executionContext, CallbackArguments args) { try { Script S = executionContext.GetScript(); DynValue v = args.AsType(0, "dofile", DataType.String, false); string str; if (v.String.StartsWith(DataRoot)) str = v.String; else str = (v.String.Replace("\\", "/").StartsWith("/") ? "" : "/") + v.String; string suffix = str.StartsWith(DataRoot) ? DataRoot : "raw"; ExplorePath(ref str, ref suffix); DynValue fn = S.LoadFile(str); return DynValue.NewTailCallReq(fn); // tail call to dofile } catch (FileNotFoundException ex) { throw new CYFException(ex.Message); } catch (SyntaxErrorException ex) { throw new ScriptRuntimeException(ex); } } //require (modname) //---------------------------------------------------------------------------------------------------------------- //Loads the given module. The function starts by looking into the package.loaded table to determine whether //modname is already loaded. If it is, then require returns the value stored at package.loaded[modname]. //Otherwise, it tries to find a loader for the module. // //To find a loader, require is guided by the package.loaders array. By changing this array, we can change //how require looks for a module. The following explanation is based on the default configuration for package.loaders. // //First require queries package.preload[modname]. If it has a value, this value (which should be a function) //is the loader. Otherwise require searches for a Lua loader using the path stored in package.path. //If that also fails, it searches for a C loader using the path stored in package.cpath. If that also fails, //it tries an all-in-one loader (see package.loaders). // //Once a loader is found, require calls the loader with a single argument, modname. If the loader returns any value, //require assigns the returned value to package.loaded[modname]. If the loader returns no value and has not assigned //any value to package.loaded[modname], then require assigns true to this entry. In any case, require returns the //final value of package.loaded[modname]. // //If there is any error loading or running the module, or if it cannot find any loader for the module, then require //signals an error. [MoonSharpModuleMethod] public static DynValue __require_clr_impl(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue v = args.AsType(0, "__require_clr_impl", DataType.String, false); string s = v.String.Replace("..", "¤").Replace(".", "/").Replace("¤", ".."); CallbackArguments newArgs = new CallbackArguments(new List { DynValue.NewString(ModDataPath + "Lua/" + s + ".lua"), args[1], args[2] }, args.IsMethodCall); Exception e = null; DynValue fn = DynValue.Nil; try { fn = loadfile_impl(executionContext, newArgs, null); } catch (Exception ex) { e = ex; } if (fn.Type != DataType.Nil) return fn; // tail call to dofile newArgs = new CallbackArguments(new List { DynValue.NewString(ModDataPath + "Lua/Libraries/" + s + ".lua"), args[1], args[2] }, args.IsMethodCall); try { fn = loadfile_impl(executionContext, newArgs, null); } catch (Exception ex) { if (e != null) throw e; throw ex; } return fn; // tail call to dofile } [MoonSharpModuleMethod] public const string require = @" function(modulename) if (package == nil) then package = { }; end if (package.loaded == nil) then package.loaded = { }; end local m = package.loaded[modulename]; if (m ~= nil) then return m; end local func = __require_clr_impl(modulename); local res = func(modulename); if (res == nil) then res = true; end package.loaded[modulename] = res; return res; end"; public static string DataRoot; public static string ModDataPath { get { return Path.Combine(DataRoot, "Mods" + Path.DirectorySeparatorChar + ModFolder + Path.DirectorySeparatorChar); } } public static string DefaultDataPath { get { return Path.Combine(DataRoot, "Default" + Path.DirectorySeparatorChar); } } public static string ModFolder; /// /// Checks if a file exists in CYF's Default or Mods folder and returns a clean path to it. /// /// Path to the file to require, relative or absolute. Will also contain the clean path to the existing resource if found. /// String to add to the tested path to check in the given folder. /// True if the file you're looking for needs to exist. /// True if you want to get the absolute path to the file, false otherwise. /// Defines whether the error screen should be displayed if the file isn't in either folder. /// True if the sanitization was successful, false otherwise. public static bool RequireFile(ref string fileName, string pathSuffix, bool needsToExist = true, bool needsAbsolutePath = false, bool errorOnFailure = true) { string baseFileName = fileName; string fileNameMod, fileNameDefault; // Get the presumed absolute path to the mod and default folder to this resource if it's a relative path if (!fileName.Replace('\\', '/').Contains(DataRoot.Replace('\\', '/'))) { if (fileName.Replace('\\', '/').StartsWith("/")) { fileNameMod = Path.Combine(DataRoot, fileName.TrimStart('/')); fileNameDefault = fileNameMod; } else { fileNameMod = Path.Combine(ModDataPath, Path.Combine(pathSuffix, fileName)); fileNameDefault = Path.Combine(DefaultDataPath, Path.Combine(pathSuffix, fileName)); } } else { fileNameMod = fileName; fileNameDefault = fileName; } string errorString = ""; // Check if the resource exists using the mod path try { string modPath = pathSuffix; ExplorePath(ref fileNameMod, ref modPath); // Keep the path to the mod folder in case of failure (used to open non-existent files!) fileName = fileNameMod; if (needsToExist && !new FileInfo(fileNameMod).Exists) throw new CYFException("The file " + fileNameMod + " doesn't exist."); if (needsAbsolutePath) return true; Uri uriRel = new Uri(modPath).MakeRelativeUri(new Uri(fileName)); fileName = Uri.UnescapeDataString(uriRel.OriginalString); return true; } catch (Exception e) { errorString = e.Message; } if (!errorString.Contains("µImportantµ")) { // Check if the resource exists using the default path try { string defaultPath = pathSuffix; ExplorePath(ref fileNameDefault, ref defaultPath); if (needsToExist && !new FileInfo(fileNameDefault).Exists) throw new CYFException("The file " + fileNameDefault + " doesn't exist."); fileName = fileNameDefault; if (needsAbsolutePath) return true; Uri uriRel = new Uri(defaultPath).MakeRelativeUri(new Uri(fileName)); fileName = Uri.UnescapeDataString(uriRel.OriginalString); return true; } catch (Exception e) { errorString = "Mod path error: " + errorString + "\n\nDefault path error: " + e.Message; } } if (needsToExist && !errorString.Contains("µImportantµ")) errorString = "Attempted to load \"" + baseFileName + "\" from either a mod or default directory, but it was missing in both.\n\n" + errorString; else errorString = "Error while trying to fetch a resource with the given path \"" + baseFileName + "\".\n\n" + errorString; // Display important errors if ((errorOnFailure && needsToExist) || errorString.Contains("µImportantµ")) throw new CYFException(errorString.Replace("µImportantµ", "")); return false; } /// /// Checks if a file exists in CYF's Default or Mods folder and returns a clean path to it. /// /// Path to the file to require. /// String to add to the tested path to check in the given folder. public static void ExplorePath(ref string fullPath, ref string pathSuffix) { fullPath = fullPath.Replace('\\', Path.DirectorySeparatorChar).Replace('/', Path.DirectorySeparatorChar); if (pathSuffix == "raw") pathSuffix = "/"; if (pathSuffix.Contains(DataRoot)) { } else if (fullPath.Contains(ModDataPath)) pathSuffix = Path.Combine(ModDataPath, pathSuffix); else if (fullPath.Contains(DefaultDataPath)) pathSuffix = Path.Combine(DefaultDataPath, pathSuffix); else if (fullPath.Contains(DataRoot)) pathSuffix = Path.Combine(DataRoot, pathSuffix); // Fetch CYF's root folder if none has been found (Used for dofile, require, loadfile...) else { pathSuffix = fullPath.StartsWith(Path.DirectorySeparatorChar.ToString()) ? DataRoot : Path.Combine(ModDataPath, pathSuffix); fullPath = Path.Combine(pathSuffix, fullPath.TrimStart(Path.DirectorySeparatorChar)); } fullPath = fullPath.Replace('\\', Path.DirectorySeparatorChar).Replace('/', Path.DirectorySeparatorChar); // Get the folder containing the resource to load and check if it exists string fileName = fullPath.Substring(fullPath.LastIndexOf(Path.DirectorySeparatorChar) + 1); DirectoryInfo endFolder = new DirectoryInfo(fullPath.Substring(0, fullPath.LastIndexOf(Path.DirectorySeparatorChar))); if (!endFolder.Exists) throw new CYFException("The path \"" + endFolder.FullName + "\" (file is \"" + fullPath + "\") doesn't exist."); // Check if the final directory is a child of CYF's root directory if (!endFolder.FullName.StartsWith(Path.Combine(DataRoot, "Mods")) && !endFolder.FullName.StartsWith(Path.Combine(DataRoot, "Default"))) throw new CYFException("µImportantµThe folder \"" + endFolder.FullName + "\" isn't inside of CYF's allowed folders (CYF's path is \"" + DataRoot + "\"). Please only fetch files from inside CYF's Mods or Default folders."); // Check for symlink usage, and throw an error if there's one DirectoryInfo fullPathInfo = new DirectoryInfo(fullPath); while (!DirectoryPathsEqual(fullPathInfo, new DirectoryInfo(DataRoot))) { if ((fullPathInfo.Attributes & FileAttributes.ReparsePoint) == FileAttributes.ReparsePoint) throw new CYFException("µImportantµSymbolic link detected in \"" + fullPathInfo.FullName + "\". Please do not use symbolic links in Create Your Frisk."); fullPathInfo = fullPathInfo.Parent; }; fullPath = endFolder.FullName; if (!fullPath.EndsWith(Path.DirectorySeparatorChar.ToString())) fullPath += Path.DirectorySeparatorChar; if (!pathSuffix.EndsWith(Path.DirectorySeparatorChar.ToString())) pathSuffix += Path.DirectorySeparatorChar; fullPath = Path.Combine(fullPath, fileName).Replace('\\', Path.DirectorySeparatorChar).Replace('/', Path.DirectorySeparatorChar); } public static string NormalizePath(string path) { return Path.GetFullPath(new Uri(path).LocalPath) .TrimEnd(Path.DirectorySeparatorChar, Path.AltDirectorySeparatorChar) .ToUpperInvariant(); } public static bool DirectoryPathsEqual(DirectoryInfo a, DirectoryInfo b) { return NormalizePath(a.FullName) == NormalizePath(b.FullName); } } public class CYFException : ScriptRuntimeException { public CYFException(string message) : base(message) { } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/LoadModule.cs.meta ================================================ fileFormatVersion: 2 guid: bc2fcf2902df17548bce755258970562 timeCreated: 1518177923 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/MathModule.cs ================================================ // Disable warnings about XML documentation #pragma warning disable 1591 using System; using MoonSharp.Interpreter.Interop; namespace MoonSharp.Interpreter.CoreLib { /// /// Class implementing math Lua functions /// [MoonSharpModule(Namespace = "math")] public class MathModule { [MoonSharpModuleConstant] public const double pi = Math.PI; [MoonSharpModuleConstant] public const double huge = double.MaxValue; private static Random GetRandom(Script s) { DynValue rr = s.Registry.Get("F61E3AA7247D4D1EB7A45430B0C8C9BB_MATH_RANDOM"); return (rr.UserData.Object as AnonWrapper).Value; } private static void SetRandom(Script s, Random random) { DynValue rr = UserData.Create(new AnonWrapper(random)); s.Registry.Set("F61E3AA7247D4D1EB7A45430B0C8C9BB_MATH_RANDOM", rr); } public static void MoonSharpInit(Table globalTable, Table ioTable) { SetRandom(globalTable.OwnerScript, new Random()); } private static DynValue exec1(CallbackArguments args, string funcName, Func func) { DynValue arg = args.AsType(0, funcName, DataType.Number, false); return DynValue.NewNumber(func(arg.Number)); } private static DynValue exec2(CallbackArguments args, string funcName, Func func) { DynValue arg = args.AsType(0, funcName, DataType.Number, false); DynValue arg2 = args.AsType(1, funcName, DataType.Number, false); return DynValue.NewNumber(func(arg.Number, arg2.Number)); } private static DynValue exec2n(CallbackArguments args, string funcName, double defVal, Func func) { DynValue arg = args.AsType(0, funcName, DataType.Number, false); DynValue arg2 = args.AsType(1, funcName, DataType.Number, true); return DynValue.NewNumber(func(arg.Number, arg2.IsNil() ? defVal : arg2.Number)); } private static DynValue execaccum(CallbackArguments args, string funcName, Func func) { double accum = double.NaN; if (args.Count == 0) { throw new ScriptRuntimeException("bad argument #1 to '{0}' (number expected, got no value)", funcName); } for (int i = 0; i < args.Count; i++) { DynValue arg = args.AsType(i, funcName, DataType.Number, false); if (i == 0) accum = arg.Number; else accum = func(accum, arg.Number); } return DynValue.NewNumber(accum); } [MoonSharpModuleMethod] public static DynValue abs(ScriptExecutionContext executionContext, CallbackArguments args) { return exec1(args, "abs", d => Math.Abs(d)); } [MoonSharpModuleMethod] public static DynValue acos(ScriptExecutionContext executionContext, CallbackArguments args) { return exec1(args, "acos", d => Math.Acos(d)); } [MoonSharpModuleMethod] public static DynValue asin(ScriptExecutionContext executionContext, CallbackArguments args) { return exec1(args, "asin", d => Math.Asin(d)); } [MoonSharpModuleMethod] public static DynValue atan(ScriptExecutionContext executionContext, CallbackArguments args) { return exec1(args, "atan", d => Math.Atan(d)); } [MoonSharpModuleMethod] public static DynValue atan2(ScriptExecutionContext executionContext, CallbackArguments args) { return exec2(args, "atan2", (d1, d2) => Math.Atan2(d1, d2)); } [MoonSharpModuleMethod] public static DynValue ceil(ScriptExecutionContext executionContext, CallbackArguments args) { return exec1(args, "ceil", d => Math.Ceiling(d)); } [MoonSharpModuleMethod] public static DynValue cos(ScriptExecutionContext executionContext, CallbackArguments args) { return exec1(args, "cos", d => Math.Cos(d)); } [MoonSharpModuleMethod] public static DynValue cosh(ScriptExecutionContext executionContext, CallbackArguments args) { return exec1(args, "cosh", d => Math.Cosh(d)); } [MoonSharpModuleMethod] public static DynValue deg(ScriptExecutionContext executionContext, CallbackArguments args) { return exec1(args, "deg", d => d * 180.0 / Math.PI); } [MoonSharpModuleMethod] public static DynValue exp(ScriptExecutionContext executionContext, CallbackArguments args) { return exec1(args, "exp", d => Math.Exp(d)); } [MoonSharpModuleMethod] public static DynValue floor(ScriptExecutionContext executionContext, CallbackArguments args) { return exec1(args, "floor", d => Math.Floor(d)); } [MoonSharpModuleMethod] public static DynValue fmod(ScriptExecutionContext executionContext, CallbackArguments args) { return exec2(args, "fmod", (d1, d2) => Math.IEEERemainder(d1, d2)); } [MoonSharpModuleMethod] public static DynValue frexp(ScriptExecutionContext executionContext, CallbackArguments args) { // http://stackoverflow.com/questions/389993/extracting-mantissa-and-exponent-from-double-in-c-sharp DynValue arg = args.AsType(0, "frexp", DataType.Number, false); double d = arg.Number; // Translate the double into sign, exponent and mantissa. long bits = BitConverter.DoubleToInt64Bits(d); // Note that the shift is sign-extended, hence the test against -1 not 1 bool negative = (bits < 0); int exponent = (int) ((bits >> 52) & 0x7ffL); long mantissa = bits & 0xfffffffffffffL; // Subnormal numbers; exponent is effectively one higher, // but there's no extra normalisation bit in the mantissa if (exponent==0) { exponent++; } // Normal numbers; leave exponent as it is but add extra // bit to the front of the mantissa else { mantissa = mantissa | (1L<<52); } // Bias the exponent. It's actually biased by 1023, but we're // treating the mantissa as m.0 rather than 0.m, so we need // to subtract another 52 from it. exponent -= 1075; if (mantissa == 0) { return DynValue.NewTuple(DynValue.NewNumber(0), DynValue.NewNumber(0)); } /* Normalize */ while((mantissa & 1) == 0) { /* i.e., Mantissa is even */ mantissa >>= 1; exponent++; } double m = (double)mantissa; double e = (double)exponent; while( m >= 1 ) { m /= 2.0; e += 1.0; } if( negative ) m = -m; return DynValue.NewTuple(DynValue.NewNumber(m), DynValue.NewNumber(e)); } [MoonSharpModuleMethod] public static DynValue ldexp(ScriptExecutionContext executionContext, CallbackArguments args) { return exec2(args, "ldexp", (d1, d2) => d1 * Math.Pow(2, d2)); } [MoonSharpModuleMethod] public static DynValue log(ScriptExecutionContext executionContext, CallbackArguments args) { return exec2n(args, "log", Math.E, (d1, d2) => Math.Log(d1, d2)); } [MoonSharpModuleMethod] public static DynValue max(ScriptExecutionContext executionContext, CallbackArguments args) { return execaccum(args, "max", (d1, d2) => Math.Max(d1, d2)); } [MoonSharpModuleMethod] public static DynValue min(ScriptExecutionContext executionContext, CallbackArguments args) { return execaccum(args, "min", (d1, d2) => Math.Min(d1, d2)); } [MoonSharpModuleMethod] public static DynValue modf(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue arg = args.AsType(0, "modf", DataType.Number, false); return DynValue.NewTuple(DynValue.NewNumber(Math.Floor(arg.Number)), DynValue.NewNumber(arg.Number - Math.Floor(arg.Number))); } [MoonSharpModuleMethod] public static DynValue pow(ScriptExecutionContext executionContext, CallbackArguments args) { return exec2(args, "pow", (d1, d2) => Math.Pow(d1, d2)); } [MoonSharpModuleMethod] public static DynValue rad(ScriptExecutionContext executionContext, CallbackArguments args) { return exec1(args, "rad", d => d * Math.PI / 180.0); } [MoonSharpModuleMethod] public static DynValue random(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue m = args.AsType(0, "random", DataType.Number, true); DynValue n = args.AsType(1, "random", DataType.Number, true); Random R = GetRandom(executionContext.GetScript()); double d; if (m.IsNil() && n.IsNil()) { d = R.NextDouble(); } else { int a = n.IsNil() ? 1 : (int)n.Number; int b = (int)m.Number; if (a < b) d = R.Next(a, b + 1); else d = R.Next(b, a + 1); } return DynValue.NewNumber(d); } [MoonSharpModuleMethod] public static DynValue randomseed(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue arg = args.AsType(0, "randomseed", DataType.Number, false); var script = executionContext.GetScript(); SetRandom(script, new Random((int)arg.Number)); return DynValue.Nil; } [MoonSharpModuleMethod] public static DynValue sin(ScriptExecutionContext executionContext, CallbackArguments args) { return exec1(args, "sin", d => Math.Sin(d)); } [MoonSharpModuleMethod] public static DynValue sinh(ScriptExecutionContext executionContext, CallbackArguments args) { return exec1(args, "sinh", d => Math.Sinh(d)); } [MoonSharpModuleMethod] public static DynValue sqrt(ScriptExecutionContext executionContext, CallbackArguments args) { return exec1(args, "sqrt", d => Math.Sqrt(d)); } [MoonSharpModuleMethod] public static DynValue tan(ScriptExecutionContext executionContext, CallbackArguments args) { return exec1(args, "tan", d => Math.Tan(d)); } [MoonSharpModuleMethod] public static DynValue tanh(ScriptExecutionContext executionContext, CallbackArguments args) { return exec1(args, "tanh", d => Math.Tanh(d)); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/MathModule.cs.meta ================================================ fileFormatVersion: 2 guid: 44fcec737059b5242a209c70fcc2561a timeCreated: 1518177918 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/MetaTableModule.cs ================================================ // Disable warnings about XML documentation #pragma warning disable 1591 namespace MoonSharp.Interpreter.CoreLib { /// /// Class implementing metatable related Lua functions (xxxmetatable and rawxxx). /// [MoonSharpModule] public class MetaTableModule { // setmetatable (table, metatable) // ------------------------------------------------------------------------------------------------------------------- // Sets the metatable for the given table. (You cannot change the metatable of other // types from Lua, only from C.) If metatable is nil, removes the metatable of the given table. // If the original metatable has a "__metatable" field, raises an error ("cannot change a protected metatable"). // This function returns table. [MoonSharpModuleMethod] public static DynValue setmetatable(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue table = args.AsType(0, "setmetatable", DataType.Table); DynValue metatable = args.AsType(1, "setmetatable", DataType.Table, true); DynValue curmeta = executionContext.GetMetamethod(table, "__metatable"); if (curmeta != null) { throw new ScriptRuntimeException("cannot change a protected metatable"); } table.Table.MetaTable = metatable.Table; return table; } // getmetatable (object) // ------------------------------------------------------------------------------------------------------------------- // If object does not have a metatable, returns nil. Otherwise, if the object's metatable // has a "__metatable" field, returns the associated value. Otherwise, returns the metatable of the given object. [MoonSharpModuleMethod] public static DynValue getmetatable(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue obj = args[0]; Table meta = null; if (obj.Type.CanHaveTypeMetatables()) { meta = executionContext.GetScript().GetTypeMetatable(obj.Type); } if (obj.Type == DataType.Table) { meta = obj.Table.MetaTable; } if (meta == null) return DynValue.Nil; else if (meta.RawGet("__metatable") != null) return meta.Get("__metatable"); else return DynValue.NewTable(meta); } // rawget (table, index) // ------------------------------------------------------------------------------------------------------------------- // Gets the real value of table[index], without invoking any metamethod. table must be a table; index may be any value. [MoonSharpModuleMethod] public static DynValue rawget(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue table = args.AsType(0, "rawget", DataType.Table); DynValue index = args[1]; return table.Table.Get(index); } // rawset (table, index, value) // ------------------------------------------------------------------------------------------------------------------- // Sets the real value of table[index] to value, without invoking any metamethod. table must be a table, // index any value different from nil and NaN, and value any Lua value. // This function returns table. [MoonSharpModuleMethod] public static DynValue rawset(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue table = args.AsType(0, "rawset", DataType.Table); DynValue index = args[1]; table.Table.Set(index, args[2]); return table; } // rawequal (v1, v2) // ------------------------------------------------------------------------------------------------------------------- // Checks whether v1 is equal to v2, without invoking any metamethod. Returns a boolean. [MoonSharpModuleMethod] public static DynValue rawequal(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue v1 = args[0]; DynValue v2 = args[1]; return DynValue.NewBoolean(v1.Equals(v2)); } //rawlen (v) // ------------------------------------------------------------------------------------------------------------------- //Returns the length of the object v, which must be a table or a string, without invoking any metamethod. Returns an integer number. [MoonSharpModuleMethod] public static DynValue rawlen(ScriptExecutionContext executionContext, CallbackArguments args) { if (args[0].Type != DataType.String && args[0].Type != DataType.Table) { throw ScriptRuntimeException.BadArgument(0, "rawlen", "table or string", args[0].Type.ToErrorTypeString(), false); } return args[0].GetLength(); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/MetaTableModule.cs.meta ================================================ fileFormatVersion: 2 guid: 21dea5b0a9ff7f64684f655faa02a23c timeCreated: 1518177916 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/OsSystemModule.cs ================================================ // Disable warnings about XML documentation #pragma warning disable 1591 using System; namespace MoonSharp.Interpreter.CoreLib { /// /// Class implementing system related Lua functions from the 'os' module. /// Proper support requires a compatible IPlatformAccessor /// [MoonSharpModule(Namespace = "os")] public class OsSystemModule { [MoonSharpModuleMethod] public static DynValue execute(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue v = args.AsType(0, "execute", DataType.String, true); if (v.IsNil()) { return DynValue.NewBoolean(true); } else { try { int exitCode = Script.GlobalOptions.Platform.OS_Execute(v.String); return DynValue.NewTuple( DynValue.Nil, DynValue.NewString("exit"), DynValue.NewNumber(exitCode)); } catch (Exception) { // +++ bad to swallow.. return DynValue.Nil; } } } [MoonSharpModuleMethod] public static DynValue exit(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue v_exitCode = args.AsType(0, "exit", DataType.Number, true); int exitCode = 0; if (v_exitCode.IsNotNil()) exitCode = (int)v_exitCode.Number; Script.GlobalOptions.Platform.OS_ExitFast(exitCode); throw new InvalidOperationException("Unreachable code.. reached."); } [MoonSharpModuleMethod] public static DynValue getenv(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue varName = args.AsType(0, "getenv", DataType.String, false); string val = Script.GlobalOptions.Platform.GetEnvironmentVariable(varName.String); if (val == null) return DynValue.Nil; else return DynValue.NewString(val); } [MoonSharpModuleMethod] public static DynValue remove(ScriptExecutionContext executionContext, CallbackArguments args) { string fileName = args.AsType(0, "remove", DataType.String, false).String; try { if (Script.GlobalOptions.Platform.OS_FileExists(fileName)) { Script.GlobalOptions.Platform.OS_FileDelete(fileName); return DynValue.True; } else { return DynValue.NewTuple( DynValue.Nil, DynValue.NewString("{0}: No such file or directory.", fileName), DynValue.NewNumber(-1)); } } catch (Exception ex) { return DynValue.NewTuple(DynValue.Nil, DynValue.NewString(ex.Message), DynValue.NewNumber(-1)); } } [MoonSharpModuleMethod] public static DynValue rename(ScriptExecutionContext executionContext, CallbackArguments args) { string fileNameOld = args.AsType(0, "rename", DataType.String, false).String; string fileNameNew = args.AsType(1, "rename", DataType.String, false).String; try { if (!Script.GlobalOptions.Platform.OS_FileExists(fileNameOld)) { return DynValue.NewTuple(DynValue.Nil, DynValue.NewString("{0}: No such file or directory.", fileNameOld), DynValue.NewNumber(-1)); } Script.GlobalOptions.Platform.OS_FileMove(fileNameOld, fileNameNew); return DynValue.True; } catch (Exception ex) { return DynValue.NewTuple(DynValue.Nil, DynValue.NewString(ex.Message), DynValue.NewNumber(-1)); } } [MoonSharpModuleMethod] public static DynValue setlocale(ScriptExecutionContext executionContext, CallbackArguments args) { return DynValue.NewString("n/a"); } [MoonSharpModuleMethod] public static DynValue tmpname(ScriptExecutionContext executionContext, CallbackArguments args) { return DynValue.NewString(Script.GlobalOptions.Platform.IO_OS_GetTempFilename()); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/OsSystemModule.cs.meta ================================================ fileFormatVersion: 2 guid: 11d7b1b0a1cc28b4497d295c836777e1 timeCreated: 1518177915 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/OsTimeModule.cs ================================================ // Disable warnings about XML documentation #pragma warning disable 1591 using System; using System.Collections.Generic; using System.Text; namespace MoonSharp.Interpreter.CoreLib { /// /// Class implementing time related Lua functions from the 'os' module. /// [MoonSharpModule(Namespace = "os")] public class OsTimeModule { static DateTime Time0 = DateTime.UtcNow; static DateTime Epoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc); private static DynValue GetUnixTime(DateTime dateTime, DateTime? epoch = null) { double time = (dateTime - (epoch ?? Epoch)).TotalSeconds; if (time < 0.0) return DynValue.Nil; return DynValue.NewNumber(time); } private static DateTime FromUnixTime(double unixtime) { TimeSpan ts = TimeSpan.FromSeconds(unixtime); return Epoch + ts; } [MoonSharpModuleMethod] public static DynValue clock(ScriptExecutionContext executionContext, CallbackArguments args) { return GetUnixTime(DateTime.UtcNow, Time0); } [MoonSharpModuleMethod] public static DynValue difftime(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue t2 = args.AsType(0, "difftime", DataType.Number, false); DynValue t1 = args.AsType(1, "difftime", DataType.Number, true); if (t1.IsNil()) return DynValue.NewNumber(t2.Number); return DynValue.NewNumber(t2.Number - t1.Number); } [MoonSharpModuleMethod] public static DynValue time(ScriptExecutionContext executionContext, CallbackArguments args) { DateTime date = DateTime.UtcNow; if (args.Count > 0) { DynValue vt = args.AsType(0, "time", DataType.Table, true); if (vt.Type == DataType.Table) date = ParseTimeTable(vt.Table); } return GetUnixTime(date); } static DateTime ParseTimeTable(Table t) { int sec = GetTimeTableField(t, "sec") ?? 0; int min = GetTimeTableField(t, "min") ?? 0; int hour = GetTimeTableField(t, "hour") ?? 12; int? day = GetTimeTableField(t, "day"); int? month = GetTimeTableField(t, "month"); int? year = GetTimeTableField(t, "year"); if (day == null) throw new ScriptRuntimeException("field 'day' missing in date table"); if (month == null) throw new ScriptRuntimeException("field 'month' missing in date table"); if (year == null) throw new ScriptRuntimeException("field 'year' missing in date table"); return new DateTime(year.Value, month.Value, day.Value, hour, min, sec); } private static int? GetTimeTableField(Table t, string key) { DynValue v = t.Get(key); double? d = v.CastToNumber(); if (d.HasValue) return (int)d.Value; return null; } [MoonSharpModuleMethod] public static DynValue date(ScriptExecutionContext executionContext, CallbackArguments args) { DateTime reference = DateTime.UtcNow; DynValue vformat = args.AsType(0, "date", DataType.String, true); DynValue vtime = args.AsType(1, "date", DataType.Number, true); string format = (vformat.IsNil()) ? "%c" : vformat.String; if (vtime.IsNotNil()) reference = FromUnixTime(vtime.Number); bool isDst = false; if (format.StartsWith("!")) { format = format.Substring(1); } else { #if !(PCL || ENABLE_DOTNET || NETFX_CORE) try { reference = TimeZoneInfo.ConvertTimeFromUtc(reference, TimeZoneInfo.Local); isDst = reference.IsDaylightSavingTime(); } catch (TimeZoneNotFoundException) { // this catches a weird mono bug: https://bugzilla.xamarin.com/show_bug.cgi?id=11817 // however the behavior is definitely not correct. damn. } #endif } if (format == "*t") { Table t = new Table(executionContext.GetScript()); t.Set("year", DynValue.NewNumber(reference.Year)); t.Set("month", DynValue.NewNumber(reference.Month)); t.Set("day", DynValue.NewNumber(reference.Day)); t.Set("hour", DynValue.NewNumber(reference.Hour)); t.Set("min", DynValue.NewNumber(reference.Minute)); t.Set("sec", DynValue.NewNumber(reference.Second)); t.Set("wday", DynValue.NewNumber(((int)reference.DayOfWeek) + 1)); t.Set("yday", DynValue.NewNumber(reference.DayOfYear)); t.Set("isdst", DynValue.NewBoolean(isDst)); return DynValue.NewTable(t); } else return DynValue.NewString(StrFTime(format, reference)); } private static string StrFTime(string format, DateTime d) { // ref: http://www.cplusplus.com/reference/ctime/strftime/ Dictionary STANDARD_PATTERNS = new Dictionary() { { 'a', "ddd" }, { 'A', "dddd" }, { 'b', "MMM" }, { 'B', "MMMM" }, { 'c', "f" }, { 'd', "dd" }, { 'D', "MM/dd/yy" }, { 'F', "yyyy-MM-dd" }, { 'g', "yy" }, { 'G', "yyyy" }, { 'h', "MMM" }, { 'H', "HH" }, { 'I', "hh" }, { 'm', "MM" }, { 'M', "mm" }, { 'p', "tt" }, { 'r', "h:mm:ss tt" }, { 'R', "HH:mm" }, { 'S', "ss" }, { 'T', "HH:mm:ss" }, { 'y', "yy" }, { 'Y', "yyyy" }, { 'x', "d" }, { 'X', "T" }, { 'z', "zzz" }, { 'Z', "zzz" }, }; StringBuilder sb = new StringBuilder(); bool isEscapeSequence = false; for (int i = 0; i < format.Length; i++) { char c = format[i]; if (c == '%') { if (isEscapeSequence) { sb.Append('%'); isEscapeSequence = false; } else isEscapeSequence = true; continue; } if (!isEscapeSequence) { sb.Append(c); continue; } if (c == 'O' || c == 'E') continue; // no modifiers isEscapeSequence = false; if (STANDARD_PATTERNS.ContainsKey(c)) { sb.Append(d.ToString(STANDARD_PATTERNS[c])); } else if (c == 'e') { string s = d.ToString("%d"); if (s.Length < 2) s = " " + s; sb.Append(s); } else if (c == 'n') { sb.Append('\n'); } else if (c == 't') { sb.Append('\t'); } else if (c == 'C') { sb.Append((int)(d.Year / 100)); } else if (c == 'j') { sb.Append(d.DayOfYear.ToString("000")); } else if (c == 'u') { int weekDay = (int)d.DayOfWeek; if (weekDay == 0) weekDay = 7; sb.Append(weekDay); } else if (c == 'w') { int weekDay = (int)d.DayOfWeek; sb.Append(weekDay); } else if (c == 'U') { // Week number with the first Sunday as the first day of week one (00-53) sb.Append("??"); } else if (c == 'V') { // ISO 8601 week number (00-53) sb.Append("??"); } else if (c == 'W') { // Week number with the first Monday as the first day of week one (00-53) sb.Append("??"); } else { throw new ScriptRuntimeException("bad argument #1 to 'date' (invalid conversion specifier '{0}')", format); } } return sb.ToString(); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/OsTimeModule.cs.meta ================================================ fileFormatVersion: 2 guid: 7cd991c682d9a64478691b8e2aa34e25 timeCreated: 1518177921 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/StringLib/KopiLua_StrLib.cs ================================================ // Disable warnings about XML documentation #pragma warning disable 1591 // // This part taken from KopiLua - https://github.com/NLua/KopiLua // // ========================================================================================================= // // Kopi Lua License // ---------------- // MIT License for KopiLua // Copyright (c) 2012 LoDC // Permission is hereby granted, free of charge, to any person obtaining a copy of this software and // associated documentation files (the "Software"), to deal in the Software without restriction, // including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, // and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, // subject to the following conditions: // The above copyright notice and this permission notice shall be included in all copies or substantial // portions of the Software. // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. // IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE // SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. // =============================================================================== // Lua License // ----------- // Lua is licensed under the terms of the MIT license reproduced below. // This means that Lua is free software and can be used for both academic // and commercial purposes at absolutely no cost. // For details and rationale, see http://www.lua.org/license.html . // =============================================================================== // Copyright (C) 1994-2008 Lua.org, PUC-Rio. // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal // in the Software without restriction, including without limitation the rights // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the Software is // furnished to do so, subject to the following conditions: // The above copyright notice and this permission notice shall be included in // all copies or substantial portions of the Software. // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN // THE SOFTWARE. using MoonSharp.Interpreter.Interop.LuaStateInterop; using lua_Integer = System.Int32; using LUA_INTFRM_T = System.Int64; using ptrdiff_t = System.Int32; using UNSIGNED_LUA_INTFRM_T = System.UInt64; namespace MoonSharp.Interpreter.CoreLib.StringLib { internal class KopiLua_StringLib : LuaBase { public const int LUA_MAXCAPTURES = 32; private static ptrdiff_t posrelat(ptrdiff_t pos, uint len) { /* relative string position: negative means back from end */ if (pos < 0) pos += (ptrdiff_t)len + 1; return (pos >= 0) ? pos : 0; } /* ** {====================================================== ** PATTERN MATCHING ** ======================================================= */ public const int CAP_UNFINISHED = (-1); public const int CAP_POSITION = (-2); public class MatchState { public MatchState() { for (int i = 0; i < LUA_MAXCAPTURES; i++) capture[i] = new capture_(); } public int matchdepth; /* control for recursive depth (to avoid C stack overflow) */ public CharPtr src_init; /* init of source string */ public CharPtr src_end; /* end (`\0') of source string */ public LuaState L; public int level; /* total number of captures (finished or unfinished) */ public class capture_ { public CharPtr init; public ptrdiff_t len; }; public capture_[] capture = new capture_[LUA_MAXCAPTURES]; }; public const int MAXCCALLS = 200; public const char L_ESC = '%'; public const string SPECIALS = "^$*+?.([%-"; private static int check_capture(MatchState ms, int l) { l -= '1'; if (l < 0 || l >= ms.level || ms.capture[l].len == CAP_UNFINISHED) return LuaLError(ms.L, "invalid capture index {0}", l + 1); return l; } private static int capture_to_close(MatchState ms) { int level = ms.level; for (level--; level >= 0; level--) if (ms.capture[level].len == CAP_UNFINISHED) return level; return LuaLError(ms.L, "invalid pattern capture"); } private static CharPtr classend(MatchState ms, CharPtr p) { p = new CharPtr(p); char c = p[0]; p = p.next(); switch (c) { case L_ESC: { if (p[0] == '\0') LuaLError(ms.L, "malformed pattern (ends with " + LUA_QL("%") + ")"); return p + 1; } case '[': { if (p[0] == '^') p = p.next(); do { /* look for a `]' */ if (p[0] == '\0') LuaLError(ms.L, "malformed pattern (missing " + LUA_QL("]") + ")"); c = p[0]; p = p.next(); if (c == L_ESC && p[0] != '\0') p = p.next(); /* skip escapes (e.g. `%]') */ } while (p[0] != ']'); return p + 1; } default: { return p; } } } private static int match_class(char c, char cl) { bool res; switch (tolower(cl)) { case 'a': res = isalpha(c); break; case 'c': res = iscntrl(c); break; case 'd': res = isdigit(c); break; case 'l': res = islower(c); break; case 'p': res = ispunct(c); break; case 's': res = isspace(c); break; case 'g': res = isgraph(c); break; case 'u': res = isupper(c); break; case 'w': res = isalnum(c); break; case 'x': res = isxdigit((char)c); break; case 'z': res = (c == 0); break; default: return (cl == c) ? 1 : 0; } return (islower(cl) ? (res ? 1 : 0) : ((!res) ? 1 : 0)); } private static int matchbracketclass(int c, CharPtr p, CharPtr ec) { int sig = 1; if (p[1] == '^') { sig = 0; p = p.next(); /* skip the `^' */ } while ((p = p.next()) < ec) { if (p == L_ESC) { p = p.next(); if (match_class((char)c, (char)(p[0])) != 0) return sig; } else if ((p[1] == '-') && (p + 2 < ec)) { p += 2; if (p[-2] <= c && (c <= p[0])) return sig; } else if ((byte)(p[0]) == c) return sig; } return (sig == 0) ? 1 : 0; } private static int singlematch(int c, CharPtr p, CharPtr ep) { switch (p[0]) { case '.': return 1; /* matches any char */ case L_ESC: return match_class((char)c, (char)(p[1])); case '[': return matchbracketclass(c, p, ep - 1); default: return (p[0] == c) ? 1 : 0; } } private static CharPtr matchbalance(MatchState ms, CharPtr s, CharPtr p) { if ((p[0] == 0) || (p[1] == 0)) LuaLError(ms.L, "unbalanced pattern"); if (s[0] != p[0]) return null; else { int b = p[0]; int e = p[1]; int cont = 1; while ((s = s.next()) < ms.src_end) { if (s[0] == e) { if (--cont == 0) return s + 1; } else if (s[0] == b) cont++; } } return null; /* string ends out of balance */ } private static CharPtr max_expand(MatchState ms, CharPtr s, CharPtr p, CharPtr ep) { ptrdiff_t i = 0; /* counts maximum expand for item */ while ((s + i < ms.src_end) && (singlematch(s[i], p, ep) != 0)) i++; /* keeps trying to match with the maximum repetitions */ while (i >= 0) { CharPtr res = match(ms, (s + i), ep + 1); if (res != null) return res; i--; /* else didn't match; reduce 1 repetition to try again */ } return null; } private static CharPtr min_expand(MatchState ms, CharPtr s, CharPtr p, CharPtr ep) { for (; ; ) { CharPtr res = match(ms, s, ep + 1); if (res != null) return res; else if ((s < ms.src_end) && (singlematch(s[0], p, ep) != 0)) s = s.next(); /* try with one more repetition */ else return null; } } private static CharPtr start_capture(MatchState ms, CharPtr s, CharPtr p, int what) { CharPtr res; int level = ms.level; if (level >= LUA_MAXCAPTURES) LuaLError(ms.L, "too many captures"); ms.capture[level].init = s; ms.capture[level].len = what; ms.level = level + 1; if ((res = match(ms, s, p)) == null) /* match failed? */ ms.level--; /* undo capture */ return res; } private static CharPtr end_capture(MatchState ms, CharPtr s, CharPtr p) { int l = capture_to_close(ms); CharPtr res; ms.capture[l].len = s - ms.capture[l].init; /* close capture */ if ((res = match(ms, s, p)) == null) /* match failed? */ ms.capture[l].len = CAP_UNFINISHED; /* undo capture */ return res; } private static CharPtr match_capture(MatchState ms, CharPtr s, int l) { uint len; l = check_capture(ms, l); len = (uint)ms.capture[l].len; if ((uint)(ms.src_end - s) >= len && memcmp(ms.capture[l].init, s, len) == 0) return s + len; else return null; } private static CharPtr match(MatchState ms, CharPtr s, CharPtr p) { s = new CharPtr(s); p = new CharPtr(p); if (ms.matchdepth-- == 0) LuaLError(ms.L, "pattern too complex"); init: /* using goto's to optimize tail recursion */ switch (p[0]) { case '(': { /* start capture */ if (p[1] == ')') /* position capture? */ return start_capture(ms, s, p + 2, CAP_POSITION); else return start_capture(ms, s, p + 1, CAP_UNFINISHED); } case ')': { /* end capture */ return end_capture(ms, s, p + 1); } case L_ESC: { switch (p[1]) { case 'b': { /* balanced string? */ s = matchbalance(ms, s, p + 2); if (s == null) return null; p += 4; goto init; /* else return match(ms, s, p+4); */ } case 'f': { /* frontier? */ CharPtr ep; char previous; p += 2; if (p[0] != '[') LuaLError(ms.L, "missing " + LUA_QL("[") + " after " + LUA_QL("%f") + " in pattern"); ep = classend(ms, p); /* points to what is next */ previous = (s == ms.src_init) ? '\0' : s[-1]; if ((matchbracketclass(previous, p, ep - 1) != 0) || (matchbracketclass(s[0], p, ep - 1) == 0)) return null; p = ep; goto init; /* else return match(ms, s, ep); */ } default: { if (isdigit((char)(p[1]))) { /* capture results (%0-%9)? */ s = match_capture(ms, s, p[1]); if (s == null) return null; p += 2; goto init; /* else return match(ms, s, p+2) */ } //ismeretlen hiba miatt lett ide átmásolva { /* it is a pattern item */ CharPtr ep = classend(ms, p); /* points to what is next */ int m = (s < ms.src_end) && (singlematch(s[0], p, ep) != 0) ? 1 : 0; switch (ep[0]) { case '?': { /* optional */ CharPtr res; if ((m != 0) && ((res = match(ms, s + 1, ep + 1)) != null)) return res; p = ep + 1; goto init; /* else return match(ms, s, ep+1); */ } case '*': { /* 0 or more repetitions */ return max_expand(ms, s, p, ep); } case '+': { /* 1 or more repetitions */ return ((m != 0) ? max_expand(ms, s + 1, p, ep) : null); } case '-': { /* 0 or more repetitions (minimum) */ return min_expand(ms, s, p, ep); } default: { if (m == 0) return null; s = s.next(); p = ep; goto init; /* else return match(ms, s+1, ep); */ } } } //goto dflt; /* case default */ } } } case '\0': { /* end of pattern */ return s; /* match succeeded */ } case '$': { if (p[1] == '\0') /* is the `$' the last char in pattern? */ return (s == ms.src_end) ? s : null; /* check end of string */ else goto dflt; } default: dflt: { /* it is a pattern item */ CharPtr ep = classend(ms, p); /* points to what is next */ int m = (s < ms.src_end) && (singlematch(s[0], p, ep) != 0) ? 1 : 0; switch (ep[0]) { case '?': { /* optional */ CharPtr res; if ((m != 0) && ((res = match(ms, s + 1, ep + 1)) != null)) return res; p = ep + 1; goto init; /* else return match(ms, s, ep+1); */ } case '*': { /* 0 or more repetitions */ return max_expand(ms, s, p, ep); } case '+': { /* 1 or more repetitions */ return ((m != 0) ? max_expand(ms, s + 1, p, ep) : null); } case '-': { /* 0 or more repetitions (minimum) */ return min_expand(ms, s, p, ep); } default: { if (m == 0) return null; s = s.next(); p = ep; goto init; /* else return match(ms, s+1, ep); */ } } } } } private static CharPtr lmemfind(CharPtr s1, uint l1, CharPtr s2, uint l2) { if (l2 == 0) return s1; /* empty strings are everywhere */ else if (l2 > l1) return null; /* avoids a negative `l1' */ else { CharPtr init; /* to search for a `*s2' inside `s1' */ l2--; /* 1st char will be checked by `memchr' */ l1 = l1 - l2; /* `s2' cannot be found after that */ while (l1 > 0 && (init = memchr(s1, s2[0], l1)) != null) { init = init.next(); /* 1st char is already checked */ if (memcmp(init, s2 + 1, l2) == 0) return init - 1; else { /* correct `l1' and `s1' to try again */ l1 -= (uint)(init - s1); s1 = init; } } return null; /* not found */ } } private static void push_onecapture(MatchState ms, int i, CharPtr s, CharPtr e) { if (i >= ms.level) { if (i == 0) /* ms.level == 0, too */ LuaPushLString(ms.L, s, (uint)(e - s)); /* add whole match */ else LuaLError(ms.L, "invalid capture index"); } else { ptrdiff_t l = ms.capture[i].len; if (l == CAP_UNFINISHED) LuaLError(ms.L, "unfinished capture"); if (l == CAP_POSITION) LuaPushInteger(ms.L, ms.capture[i].init - ms.src_init + 1); else LuaPushLString(ms.L, ms.capture[i].init, (uint)l); } } private static int push_captures(MatchState ms, CharPtr s, CharPtr e) { int i; int nlevels = ((ms.level == 0) && (s != null)) ? 1 : ms.level; LuaLCheckStack(ms.L, nlevels, "too many captures"); for (i = 0; i < nlevels; i++) push_onecapture(ms, i, s, e); return nlevels; /* number of strings pushed */ } private static int str_find_aux(LuaState L, int find) { uint l1, l2; CharPtr s = LuaLCheckLString(L, 1, out l1); CharPtr p = PatchPattern(LuaLCheckLString(L, 2, out l2)); ptrdiff_t init = posrelat(LuaLOptInteger(L, 3, 1), l1) - 1; if (init < 0) init = 0; else if ((uint)(init) > l1) init = (ptrdiff_t)l1; if ((find != 0) && ((LuaToBoolean(L, 4) != 0) || /* explicit request? */ strpbrk(p, SPECIALS) == null)) { /* or no special characters? */ /* do a plain search */ CharPtr s2 = lmemfind(s + init, (uint)(l1 - init), p, (uint)(l2)); if (s2 != null) { LuaPushInteger(L, s2 - s + 1); LuaPushInteger(L, (int)(s2 - s + l2)); return 2; } } else { MatchState ms = new MatchState(); int anchor = 0; if (p[0] == '^') { p = p.next(); anchor = 1; } CharPtr s1 = s + init; ms.L = L; ms.matchdepth = MAXCCALLS; ms.src_init = s; ms.src_end = s + l1; do { CharPtr res; ms.level = 0; // LuaAssert(ms.matchdepth == MAXCCALLS); ms.matchdepth = MAXCCALLS; if ((res = match(ms, s1, p)) != null) { if (find != 0) { LuaPushInteger(L, s1 - s + 1); /* start */ LuaPushInteger(L, res - s); /* end */ return push_captures(ms, null, null) + 2; } else return push_captures(ms, s1, res); } } while (((s1 = s1.next()) <= ms.src_end) && (anchor == 0)); } LuaPushNil(L); /* not found */ return 1; } public static int str_find(LuaState L) { return str_find_aux(L, 1); } public static int str_match(LuaState L) { return str_find_aux(L, 0); } private class GMatchAuxData { public CharPtr S; public CharPtr P; public uint LS; public uint POS; } private static int gmatch_aux(LuaState L, GMatchAuxData auxdata) { MatchState ms = new MatchState(); uint ls = auxdata.LS; CharPtr s = auxdata.S; CharPtr p = auxdata.P; CharPtr src; ms.L = L; ms.matchdepth = MAXCCALLS; ms.src_init = s; ms.src_end = s + ls; for (src = s + auxdata.POS; src <= ms.src_end; src = src.next()) { CharPtr e; ms.level = 0; //LuaAssert(ms.matchdepth == MAXCCALLS); ms.matchdepth = MAXCCALLS; if ((e = match(ms, src, p)) != null) { lua_Integer newstart = e - s; if (e == src) newstart++; /* empty match? go at least one position */ auxdata.POS = (uint)newstart; return push_captures(ms, src, e); } } return 0; /* not found */ } private static DynValue gmatch_aux_2(ScriptExecutionContext executionContext, CallbackArguments args) { return executionContext.EmulateClassicCall(args, "gmatch", L => gmatch_aux(L, (GMatchAuxData)executionContext.AdditionalData)); } public static int str_gmatch(LuaState L) { CallbackFunction C = new CallbackFunction(gmatch_aux_2, "gmatch"); string s = ArgAsType(L, 1, DataType.String, false).String; string p = PatchPattern(ArgAsType(L, 2, DataType.String, false).String); C.AdditionalData = new GMatchAuxData() { S = new CharPtr(s), P = new CharPtr(p), LS = (uint)s.Length, POS = 0 }; L.Push(DynValue.NewCallback(C)); return 1; } private static int gfind_nodef(LuaState L) { return LuaLError(L, LUA_QL("string.gfind") + " was renamed to " + LUA_QL("string.gmatch")); } private static void add_s(MatchState ms, LuaLBuffer b, CharPtr s, CharPtr e) { uint l, i; CharPtr news = LuaToLString(ms.L, 3, out l); for (i = 0; i < l; i++) { if (news[i] != L_ESC) LuaLAddChar(b, news[i]); else { i++; /* skip ESC */ if (!isdigit((char)(news[i]))) { if (news[i] != L_ESC) { LuaLError(ms.L, "invalid use of '%' in replacement string"); } LuaLAddChar(b, news[i]); } else if (news[i] == '0') LuaLAddLString(b, s, (uint)(e - s)); else { push_onecapture(ms, news[i] - '1', s, e); LuaLAddValue(b); /* add capture to accumulated result */ } } } } private static void add_value(MatchState ms, LuaLBuffer b, CharPtr s, CharPtr e) { LuaState L = ms.L; switch (LuaType(L, 3)) { case LUA_TNUMBER: case LUA_TSTRING: { add_s(ms, b, s, e); return; } // case LUA_TUSERDATA: /// +++ does this make sense ?? case LUA_TFUNCTION: { int n; LuaPushValue(L, 3); n = push_captures(ms, s, e); LuaCall(L, n, 1); break; } case LUA_TTABLE: { push_onecapture(ms, 0, s, e); LuaGetTable(L, 3); break; } } if (LuaToBoolean(L, -1) == 0) { /* nil or false? */ LuaPop(L, 1); LuaPushLString(L, s, (uint)(e - s)); /* keep original text */ } else if (LuaIsString(L, -1) == 0) LuaLError(L, "invalid replacement value (a {0})", LuaLTypeName(L, -1)); LuaLAddValue(b); /* add result to accumulator */ } public static int str_gsub(LuaState L) { uint srcl; CharPtr src = LuaLCheckLString(L, 1, out srcl); CharPtr p = PatchPattern(LuaLCheckStringStr(L, 2)); int tr = LuaType(L, 3); int max_s = LuaLOptInt(L, 4, (int)(srcl + 1)); int anchor = 0; if (p[0] == '^') { p = p.next(); anchor = 1; } int n = 0; MatchState ms = new MatchState(); LuaLBuffer b = new LuaLBuffer(L); LuaLArgCheck(L, tr == LUA_TNUMBER || tr == LUA_TSTRING || tr == LUA_TFUNCTION || tr == LUA_TTABLE || tr == LUA_TUSERDATA, 3, "string/function/table expected"); LuaLBuffInit(L, b); ms.L = L; ms.matchdepth = MAXCCALLS; ms.src_init = src; ms.src_end = src + srcl; while (n < max_s) { CharPtr e; ms.level = 0; //LuaAssert(ms.matchdepth == MAXCCALLS); ms.matchdepth = MAXCCALLS; e = match(ms, src, p); if (e != null) { n++; add_value(ms, b, src, e); } if ((e != null) && e > src) /* non empty match? */ src = e; /* skip it */ else if (src < ms.src_end) { char c = src[0]; src = src.next(); LuaLAddChar(b, c); } else break; if (anchor != 0) break; } LuaLAddLString(b, src, (uint)(ms.src_end - src)); LuaLPushResult(b); LuaPushInteger(L, n); /* number of substitutions */ return 2; } /* }====================================================== */ /* maximum size of each formatted item (> len(format('%99.99f', -1e308))) */ public const int MAX_ITEM = 512; /* valid flags in a format specification */ public const string FLAGS = "-+ #0"; /* ** maximum size of each format specification (such as '%-099.99d') ** (+10 accounts for %99.99x plus margin of error) */ public static readonly int MAX_FORMAT = (FLAGS.Length + 1) + (LUA_INTFRMLEN.Length + 1) + 10; private static void addquoted(LuaState L, LuaLBuffer b, int arg) { uint l; CharPtr s = LuaLCheckLString(L, arg, out l); LuaLAddChar(b, '"'); while ((l--) != 0) { switch (s[0]) { case '"': case '\\': case '\n': { LuaLAddChar(b, '\\'); LuaLAddChar(b, s[0]); break; } case '\r': { LuaLAddLString(b, "\\r", 2); break; } default: { if (s[0] < (char)16) { bool isfollowedbynum = false; if (l >= 1) { if (char.IsNumber(s[1])) isfollowedbynum = true; } if (isfollowedbynum) LuaLAddString(b, string.Format("\\{0:000}", (int)s[0])); else LuaLAddString(b, string.Format("\\{0}", (int)s[0])); } else { LuaLAddChar(b, s[0]); } break; } } s = s.next(); } LuaLAddChar(b, '"'); } private static CharPtr scanformat(LuaState L, CharPtr strfrmt, CharPtr form) { CharPtr p = strfrmt; while (p[0] != '\0' && strchr(FLAGS, p[0]) != null) p = p.next(); /* skip flags */ if ((uint)(p - strfrmt) >= (FLAGS.Length + 1)) LuaLError(L, "invalid format (repeated flags)"); if (isdigit(p[0])) p = p.next(); /* skip width */ if (isdigit(p[0])) p = p.next(); /* (2 digits at most) */ if (p[0] == '.') { p = p.next(); if (isdigit(p[0])) p = p.next(); /* skip precision */ if (isdigit(p[0])) p = p.next(); /* (2 digits at most) */ } if (isdigit(p[0])) LuaLError(L, "invalid format (width or precision too long)"); form[0] = '%'; form = form.next(); strncpy(form, strfrmt, p - strfrmt + 1); form += p - strfrmt + 1; form[0] = '\0'; return p; } private static void addintlen(CharPtr form) { uint l = (uint)strlen(form); char spec = form[l - 1]; strcpy(form + l - 1, LUA_INTFRMLEN); form[l + (LUA_INTFRMLEN.Length + 1) - 2] = spec; form[l + (LUA_INTFRMLEN.Length + 1) - 1] = '\0'; } public static int str_format(LuaState L) { int top = LuaGetTop(L); int arg = 1; uint sfl; CharPtr strfrmt = LuaLCheckLString(L, arg, out sfl); CharPtr strfrmt_end = strfrmt + sfl; LuaLBuffer b = new LuaLBuffer(L); LuaLBuffInit(L, b); while (strfrmt < strfrmt_end) { if (strfrmt[0] != L_ESC) { LuaLAddChar(b, strfrmt[0]); strfrmt = strfrmt.next(); } else if (strfrmt[1] == L_ESC) { LuaLAddChar(b, strfrmt[0]); /* %% */ strfrmt = strfrmt + 2; } else { /* format item */ strfrmt = strfrmt.next(); CharPtr form = new char[MAX_FORMAT]; /* to store the format (`%...') */ CharPtr buff = new char[MAX_ITEM]; /* to store the formatted item */ if (++arg > top) LuaLArgError(L, arg, "no value"); strfrmt = scanformat(L, strfrmt, form); char ch = strfrmt[0]; strfrmt = strfrmt.next(); switch (ch) { case 'c': { sprintf(buff, form, (int)LuaLCheckNumber(L, arg)); break; } case 'd': case 'i': { addintlen(form); sprintf(buff, form, (LUA_INTFRM_T)LuaLCheckNumber(L, arg)); break; } case 'o': case 'u': case 'x': case 'X': { addintlen(form); sprintf(buff, form, (UNSIGNED_LUA_INTFRM_T)LuaLCheckNumber(L, arg)); break; } case 'e': case 'E': case 'f': case 'g': case 'G': { sprintf(buff, form, (double)LuaLCheckNumber(L, arg)); break; } case 'q': { addquoted(L, b, arg); continue; /* skip the 'addsize' at the end */ } case 's': { uint l; CharPtr s = LuaLCheckLString(L, arg, out l); if ((strchr(form, '.') == null) && l >= 100) { /* no precision and string is too long to be formatted; keep original string */ LuaPushValue(L, arg); LuaLAddValue(b); continue; /* skip the `addsize' at the end */ } else { sprintf(buff, form, s); break; } } default: { /* also treat cases `pnLlh' */ return LuaLError(L, "invalid option " + LUA_QL("%" + ch) + " to " + LUA_QL("format"), strfrmt[-1]); } } LuaLAddLString(b, buff, (uint)strlen(buff)); } } LuaLPushResult(b); return 1; } private static string PatchPattern(string charPtr) { return charPtr.Replace("\0", "%z"); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/StringLib/KopiLua_StrLib.cs.meta ================================================ fileFormatVersion: 2 guid: 744d4ca45517459479f911e16893aeaf timeCreated: 1518177920 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/StringLib/StringRange.cs ================================================ // Disable warnings about XML documentation #pragma warning disable 1591 namespace MoonSharp.Interpreter.CoreLib.StringLib { internal class StringRange { public int Start { get; set; } public int End { get; set; } public StringRange() { Start = 0; End = 0; } public StringRange(int start, int end) { Start = start; End = end; } public static StringRange FromLuaRange(DynValue start, DynValue end, int? defaultEnd = null) { int i = start.IsNil() ? 1 : (int)start.Number; int j = end.IsNil() ? (defaultEnd ?? i) : (int)end.Number; return new StringRange(i, j); } // Returns the substring of s that starts at i and continues until j; i and j can be negative. // If, after the translation of negative indices, i is less than 1, it is corrected to 1. // If j is greater than the string length, it is corrected to that length. // If, after these corrections, i is greater than j, the function returns the empty string. public string ApplyToString(string value) { int i = Start < 0 ? Start + value.Length + 1 : Start; int j = End < 0 ? End + value.Length + 1 : End; if (i < 1) i = 1; if (j > value.Length) j = value.Length; if (i > j) return string.Empty; return value.Substring(i - 1, j - i + 1); } public int Length() { return (End - Start) + 1; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/StringLib/StringRange.cs.meta ================================================ fileFormatVersion: 2 guid: 60c49a12fa4186945b2c889d6635f17b timeCreated: 1518177919 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/StringLib.meta ================================================ fileFormatVersion: 2 guid: 958df80dcd0465d43b0cf1ee7ea4ef4f folderAsset: yes timeCreated: 1518177913 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/StringModule.cs ================================================ // Disable warnings about XML documentation #pragma warning disable 1591 using System; using System.IO; using System.Text; using MoonSharp.Interpreter.CoreLib.StringLib; namespace MoonSharp.Interpreter.CoreLib { /// /// Class implementing string Lua functions /// [MoonSharpModule(Namespace = "string")] public class StringModule { public const string BASE64_DUMP_HEADER = "MoonSharp_dump_b64::"; public static void MoonSharpInit(Table globalTable, Table stringTable) { Table stringMetatable = new Table(globalTable.OwnerScript); stringMetatable.Set("__index", DynValue.NewTable(stringTable)); globalTable.OwnerScript.SetTypeMetatable(DataType.String, stringMetatable); } [MoonSharpModuleMethod] public static DynValue dump(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue fn = args.AsType(0, "dump", DataType.Function, false); try { byte[] bytes; using (MemoryStream ms = new MemoryStream()) { executionContext.GetScript().Dump(fn, ms); ms.Seek(0, SeekOrigin.Begin); bytes = ms.ToArray(); } string base64 = Convert.ToBase64String(bytes); return DynValue.NewString(BASE64_DUMP_HEADER + base64); } catch (Exception ex) { throw new ScriptRuntimeException(ex.Message); } } [MoonSharpModuleMethod] public static DynValue @char(ScriptExecutionContext executionContext, CallbackArguments args) { StringBuilder sb = new StringBuilder(args.Count); for (int i = 0; i < args.Count; i++) { DynValue v = args[i]; double d = 0d; if (v.Type == DataType.String) { double? nd = v.CastToNumber(); if (nd == null) args.AsType(i, "char", DataType.Number, false); else d = nd.Value; } else { args.AsType(i, "char", DataType.Number, false); d = v.Number; } sb.Append((char)(d)); } return DynValue.NewString(sb.ToString()); } [MoonSharpModuleMethod] public static DynValue @byte(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue vs = args.AsType(0, "byte", DataType.String, false); DynValue vi = args.AsType(1, "byte", DataType.Number, true); DynValue vj = args.AsType(2, "byte", DataType.Number, true); return PerformByteLike(vs, vi, vj, i => Unicode2Ascii(i)); } [MoonSharpModuleMethod] public static DynValue unicode(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue vs = args.AsType(0, "unicode", DataType.String, false); DynValue vi = args.AsType(1, "unicode", DataType.Number, true); DynValue vj = args.AsType(2, "unicode", DataType.Number, true); return PerformByteLike(vs, vi, vj, i => i); } private static int Unicode2Ascii(int i) { if (i >= 0 && i < 255) return i; return (int)'?'; } private static DynValue PerformByteLike(DynValue vs, DynValue vi, DynValue vj, Func filter) { StringRange range = StringRange.FromLuaRange(vi, vj, null); string s = range.ApplyToString(vs.String); int length = s.Length; DynValue[] rets = new DynValue[length]; for (int i = 0; i < length; ++i) { rets[i] = DynValue.NewNumber(filter((int)s[i])); } return DynValue.NewTuple(rets); } private static int? AdjustIndex(string s, DynValue vi, int defval) { if (vi.IsNil()) return defval; int i = (int)Math.Round(vi.Number, 0); if (i == 0) return null; if (i > 0) return i - 1; return s.Length - i; } [MoonSharpModuleMethod] public static DynValue len(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue vs = args.AsType(0, "len", DataType.String, false); return DynValue.NewNumber(vs.String.Length); } [MoonSharpModuleMethod] public static DynValue match(ScriptExecutionContext executionContext, CallbackArguments args) { return executionContext.EmulateClassicCall(args, "match", KopiLua_StringLib.str_match); } [MoonSharpModuleMethod] public static DynValue gmatch(ScriptExecutionContext executionContext, CallbackArguments args) { return executionContext.EmulateClassicCall(args, "gmatch", KopiLua_StringLib.str_gmatch); } [MoonSharpModuleMethod] public static DynValue gsub(ScriptExecutionContext executionContext, CallbackArguments args) { return executionContext.EmulateClassicCall(args, "gsub", KopiLua_StringLib.str_gsub); } [MoonSharpModuleMethod] public static DynValue find(ScriptExecutionContext executionContext, CallbackArguments args) { return executionContext.EmulateClassicCall(args, "find", KopiLua_StringLib.str_find); } [MoonSharpModuleMethod] public static DynValue lower(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue arg_s = args.AsType(0, "lower", DataType.String, false); return DynValue.NewString(arg_s.String.ToLower()); } [MoonSharpModuleMethod] public static DynValue upper(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue arg_s = args.AsType(0, "upper", DataType.String, false); return DynValue.NewString(arg_s.String.ToUpper()); } [MoonSharpModuleMethod] public static DynValue rep(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue arg_s = args.AsType(0, "rep", DataType.String, false); DynValue arg_n = args.AsType(1, "rep", DataType.Number, false); DynValue arg_sep = args.AsType(2, "rep", DataType.String, true); if (String.IsNullOrEmpty(arg_s.String) || (arg_n.Number < 1)) { return DynValue.NewString(""); } string sep = (arg_sep.IsNotNil()) ? arg_sep.String : null; int count = (int)arg_n.Number; StringBuilder result = new StringBuilder(arg_s.String.Length * count); for (int i = 0; i < count; ++i) { if (i != 0 && sep != null) result.Append(sep); result.Append(arg_s.String); } return DynValue.NewString(result.ToString()); } [MoonSharpModuleMethod] public static DynValue format(ScriptExecutionContext executionContext, CallbackArguments args) { return executionContext.EmulateClassicCall(args, "format", KopiLua_StringLib.str_format); } [MoonSharpModuleMethod] public static DynValue reverse(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue arg_s = args.AsType(0, "reverse", DataType.String, false); if (String.IsNullOrEmpty(arg_s.String)) { return DynValue.NewString(""); } char[] elements = arg_s.String.ToCharArray(); Array.Reverse(elements); return DynValue.NewString(new String(elements)); } [MoonSharpModuleMethod] public static DynValue sub(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue arg_s = args.AsType(0, "sub", DataType.String, false); DynValue arg_i = args.AsType(1, "sub", DataType.Number, true); DynValue arg_j = args.AsType(2, "sub", DataType.Number, true); StringRange range = StringRange.FromLuaRange(arg_i, arg_j, -1); string s = range.ApplyToString(arg_s.String); return DynValue.NewString(s); } [MoonSharpModuleMethod] public static DynValue startsWith(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue arg_s1 = args.AsType(0, "startsWith", DataType.String, true); DynValue arg_s2 = args.AsType(1, "startsWith", DataType.String, true); if (arg_s1.IsNil() || arg_s2.IsNil()) return DynValue.False; return DynValue.NewBoolean(arg_s1.String.StartsWith(arg_s2.String)); } [MoonSharpModuleMethod] public static DynValue endsWith(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue arg_s1 = args.AsType(0, "endsWith", DataType.String, true); DynValue arg_s2 = args.AsType(1, "endsWith", DataType.String, true); if (arg_s1.IsNil() || arg_s2.IsNil()) return DynValue.False; return DynValue.NewBoolean(arg_s1.String.EndsWith(arg_s2.String)); } [MoonSharpModuleMethod] public static DynValue contains(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue arg_s1 = args.AsType(0, "contains", DataType.String, true); DynValue arg_s2 = args.AsType(1, "contains", DataType.String, true); if (arg_s1.IsNil() || arg_s2.IsNil()) return DynValue.False; return DynValue.NewBoolean(arg_s1.String.Contains(arg_s2.String)); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/StringModule.cs.meta ================================================ fileFormatVersion: 2 guid: 787bcc6b00d5aba4d98fe77e1083f5aa timeCreated: 1518177920 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/TableIteratorsModule.cs ================================================ // Disable warnings about XML documentation #pragma warning disable 1591 namespace MoonSharp.Interpreter.CoreLib { /// /// Class implementing table Lua iterators (pairs, ipairs, next) /// [MoonSharpModule] public class TableIteratorsModule { // ipairs (t) // ------------------------------------------------------------------------------------------------------------------- // If t has a metamethod __ipairs, calls it with t as argument and returns the first three results from the call. // Otherwise, returns three values: an iterator function, the table t, and 0, so that the construction // for i,v in ipairs(t) do body end // will iterate over the pairs (1,t[1]), (2,t[2]), ..., up to the first integer key absent from the table. [MoonSharpModuleMethod] public static DynValue ipairs(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue table = args[0]; DynValue meta = executionContext.GetMetamethodTailCall(table, "__ipairs", args.GetArray()); return meta ?? DynValue.NewTuple(DynValue.NewCallback(__next_i), table, DynValue.NewNumber(0)); } // pairs (t) // ------------------------------------------------------------------------------------------------------------------- // If t has a metamethod __pairs, calls it with t as argument and returns the first three results from the call. // Otherwise, returns three values: the next function, the table t, and nil, so that the construction // for k,v in pairs(t) do body end // will iterate over all key–value pairs of table t. // See function next for the caveats of modifying the table during its traversal. [MoonSharpModuleMethod] public static DynValue pairs(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue table = args[0]; DynValue meta = executionContext.GetMetamethodTailCall(table, "__pairs", args.GetArray()); return meta ?? DynValue.NewTuple(DynValue.NewCallback(next), table); } // next (table [, index]) // ------------------------------------------------------------------------------------------------------------------- // Allows a program to traverse all fields of a table. Its first argument is a table and its second argument is an // index in this table. next returns the next index of the table and its associated value. // When called with nil as its second argument, next returns an initial index and its associated value. // When called with the last index, or with nil in an empty table, next returns nil. If the second argument is absent, // then it is interpreted as nil. In particular, you can use next(t) to check whether a table is empty. // The order in which the indices are enumerated is not specified, even for numeric indices. // (To traverse a table in numeric order, use a numerical for.) // The behavior of next is undefined if, during the traversal, you assign any value to a non-existent field in the table. // You may however modify existing fields. In particular, you may clear existing fields. [MoonSharpModuleMethod] public static DynValue next(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue table = args.AsType(0, "next", DataType.Table); DynValue index = args[1]; TablePair? pair = table.Table.NextKey(index); if (pair.HasValue) return DynValue.NewTuple(pair.Value.Key, pair.Value.Value); else throw new ScriptRuntimeException("invalid key to 'next'"); } // __next_i (table [, index]) // ------------------------------------------------------------------------------------------------------------------- // Allows a program to traverse all fields of an array. index is an integer number public static DynValue __next_i(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue table = args.AsType(0, "!!next_i!!", DataType.Table); DynValue index = args.AsType(1, "!!next_i!!", DataType.Number); int idx = ((int)index.Number) + 1; DynValue val = table.Table.Get(idx); if (val.Type != DataType.Nil) { return DynValue.NewTuple(DynValue.NewNumber(idx), val); } else { return DynValue.Nil; } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/TableIteratorsModule.cs.meta ================================================ fileFormatVersion: 2 guid: bd883d41a8893164ab1cdcf0273f073d timeCreated: 1518177923 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/TableModule.cs ================================================ // Disable warnings about XML documentation #pragma warning disable 1591 using System; using System.Collections.Generic; using System.Text; namespace MoonSharp.Interpreter.CoreLib { /// /// Class implementing table Lua functions /// [MoonSharpModule(Namespace = "table")] public class TableModule { [MoonSharpModuleMethod] public static DynValue unpack(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue s = args.AsType(0, "unpack", DataType.Table, false); DynValue vi = args.AsType(1, "unpack", DataType.Number, true); DynValue vj = args.AsType(2, "unpack", DataType.Number, true); int ii = vi.IsNil() ? 1 : (int)vi.Number; int ij = vj.IsNil() ? GetTableLength(executionContext, s) : (int)vj.Number; Table t = s.Table; DynValue[] v = new DynValue[ij - ii + 1]; int tidx = 0; for (int i = ii; i <= ij; i++) v[tidx++] = t.Get(i); return DynValue.NewTuple(v); } [MoonSharpModuleMethod] public static DynValue pack(ScriptExecutionContext executionContext, CallbackArguments args) { Table t = new Table(executionContext.GetScript()); DynValue v = DynValue.NewTable(t); for (int i = 0; i < args.Count; i++) t.Set(i + 1, args[i]); t.Set("n", DynValue.NewNumber(args.Count)); return v; } [MoonSharpModuleMethod] public static DynValue sort(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue vlist = args.AsType(0, "sort", DataType.Table, false); DynValue lt = args[1]; if (lt.Type != DataType.Function && lt.Type != DataType.ClrFunction && lt.IsNotNil()) args.AsType(1, "sort", DataType.Function, true); // this throws int end = GetTableLength(executionContext, vlist); List values = new List(); for (int i = 1; i <= end; i++) values.Add(vlist.Table.Get(i)); try { values.Sort((a, b) => SortComparer(executionContext, a, b, lt)); } catch (InvalidOperationException ex) { if (ex.InnerException is ScriptRuntimeException) throw ex.InnerException; } for (int i = 0; i < values.Count; i++) { vlist.Table.Set(i + 1, values[i]); } return vlist; } private static int SortComparer(ScriptExecutionContext executionContext, DynValue a, DynValue b, DynValue lt) { if (lt == null || lt.IsNil()) { lt = executionContext.GetBinaryMetamethod(a, b, "__lt"); if (lt == null || lt.IsNil()) { if (a.Type == DataType.Number && b.Type == DataType.Number) return a.Number.CompareTo(b.Number); if (a.Type == DataType.String && b.Type == DataType.String) return a.String.CompareTo(b.String); throw ScriptRuntimeException.CompareInvalidType(a, b); } else { return LuaComparerToClrComparer( executionContext.GetScript().Call(lt, a, b), executionContext.GetScript().Call(lt, b, a)); } } else { return LuaComparerToClrComparer( executionContext.GetScript().Call(lt, a, b), executionContext.GetScript().Call(lt, b, a)); } } private static int LuaComparerToClrComparer(DynValue dynValue1, DynValue dynValue2) { bool v1 = dynValue1.CastToBool(); bool v2 = dynValue2.CastToBool(); if (v1 && !v2) return -1; if (v2 && !v1) return 1; if (v1 || v2) throw new ScriptRuntimeException("invalid order function for sorting"); return 0; } [MoonSharpModuleMethod] public static DynValue insert(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue vlist = args.AsType(0, "table.insert", DataType.Table, false); DynValue vpos = args[1]; DynValue vvalue = args[2]; if (args.Count > 3) throw new ScriptRuntimeException("wrong number of arguments to 'insert'"); int len = GetTableLength(executionContext, vlist); Table list = vlist.Table; if (vvalue.IsNil()) { vvalue = vpos; vpos = DynValue.NewNumber(len + 1); } if (vpos.Type != DataType.Number) throw ScriptRuntimeException.BadArgument(1, "table.insert", DataType.Number, vpos.Type, false); int pos = (int)vpos.Number; if (pos > len + 1 || pos < 1) throw new ScriptRuntimeException("bad argument #2 to 'insert' (position out of bounds)"); for (int i = len; i >= pos; i--) { list.Set(i + 1, list.Get(i)); } list.Set(pos, vvalue); return vlist; } [MoonSharpModuleMethod] public static DynValue remove(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue vlist = args.AsType(0, "table.remove", DataType.Table, false); DynValue vpos = args.AsType(1, "table.remove", DataType.Number, true); DynValue ret = DynValue.Nil; if (args.Count > 2) throw new ScriptRuntimeException("wrong number of arguments to 'remove'"); int len = GetTableLength(executionContext, vlist); Table list = vlist.Table; int pos = vpos.IsNil() ? len : (int)vpos.Number; if (pos >= len + 1 || (pos < 1 && len > 0)) throw new ScriptRuntimeException("bad argument #1 to 'remove' (position out of bounds)"); for (int i = pos; i <= len; i++) { if (i == pos) ret = list.Get(i); list.Set(i, list.Get(i + 1)); } return ret; } //table.concat (list [, sep [, i [, j]]]) //Given a list where all elements are strings or numbers, returns the string list[i]..sep..list[i+1] (...) sep..list[j]. //The default value for sep is the empty string, the default for i is 1, and the default for j is #list. If i is greater //than j, returns the empty string. [MoonSharpModuleMethod] public static DynValue concat(ScriptExecutionContext executionContext, CallbackArguments args) { DynValue vlist = args.AsType(0, "concat", DataType.Table, false); DynValue vsep = args.AsType(1, "concat", DataType.String, true); DynValue vstart = args.AsType(2, "concat", DataType.Number, true); DynValue vend = args.AsType(3, "concat", DataType.Number, true); Table list = vlist.Table; string sep = vsep.IsNil() ? "" : vsep.String; int start = vstart.IsNilOrNan() ? 1 : (int)vstart.Number; int end; if (vend.IsNilOrNan()) { end = GetTableLength(executionContext, vlist); } else { end = (int)vend.Number; } if (end < start) return DynValue.NewString(string.Empty); StringBuilder sb = new StringBuilder(); for (int i = start; i <= end; i++) { DynValue v = list.Get(i); if (v.Type != DataType.Number && v.Type != DataType.String) throw new ScriptRuntimeException("invalid value ({1}) at index {0} in table for 'concat'", i, v.Type.ToLuaTypeString()); string s = v.ToPrintString(); if (i != start) sb.Append(sep); sb.Append(s); } return DynValue.NewString(sb.ToString()); } private static int GetTableLength(ScriptExecutionContext executionContext, DynValue vlist) { DynValue __len = executionContext.GetMetamethod(vlist, "__len"); if (__len != null) { DynValue lenv = executionContext.GetScript().Call(__len, vlist); double? len = lenv.CastToNumber(); if (len == null) throw new ScriptRuntimeException("object length is not a number"); return (int)len; } else { return (int)vlist.Table.Length; } } } /// /// Class exposing table.unpack and table.pack in the global namespace (to work around the most common Lua 5.1 compatibility issue). /// [MoonSharpModule] public class TableModule_Globals { [MoonSharpModuleMethod] public static DynValue unpack(ScriptExecutionContext executionContext, CallbackArguments args) { return TableModule.unpack(executionContext, args); } [MoonSharpModuleMethod] public static DynValue pack(ScriptExecutionContext executionContext, CallbackArguments args) { return TableModule.pack(executionContext, args); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib/TableModule.cs.meta ================================================ fileFormatVersion: 2 guid: 8d1b2840a78d7a94fa83ab382b1f5f44 timeCreated: 1518177921 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/CoreLib.meta ================================================ fileFormatVersion: 2 guid: 09e983dc5fd3acb428c56d198f5b46fa folderAsset: yes timeCreated: 1518177911 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataStructs/Extension_Methods.cs ================================================ using System; using System.Collections.Generic; namespace MoonSharp.Interpreter { /// /// Extension methods used in the whole project. /// internal static class Extension_Methods { /// /// Gets a value from the dictionary or returns the default value /// /// The type of the key. /// The type of the value. /// The dictionary. /// The key. /// public static TValue GetOrDefault(this Dictionary dictionary, TKey key) { TValue v; if (dictionary.TryGetValue(key, out v)) return v; return default(TValue); } /// /// Gets a value from the dictionary or creates it /// /// The type of the key. /// The type of the value. /// The dictionary. /// The key. /// A function which will create the value if it doesn't exist. /// public static TValue GetOrCreate(this Dictionary dictionary, TKey key, Func creator) { TValue v; if (!dictionary.TryGetValue(key, out v)) { v = creator(); dictionary.Add(key, v); } return v; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataStructs/Extension_Methods.cs.meta ================================================ fileFormatVersion: 2 guid: 773db9ef9f9aed942bbf33dcf6dca392 timeCreated: 1518177920 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataStructs/FastStack.cs ================================================ #if !USE_DYNAMIC_STACKS using System; using System.Collections.Generic; namespace MoonSharp.Interpreter.DataStructs { /// /// A preallocated, non-resizable, stack /// /// internal class FastStack : IList { T[] m_Storage; int m_HeadIdx = 0; public FastStack(int maxCapacity) { m_Storage = new T[maxCapacity]; } public T this[int index] { get { return m_Storage[index]; } set { m_Storage[index] = value; } } public T Push(T item) { m_Storage[m_HeadIdx++] = item; return item; } public void Expand(int size) { m_HeadIdx += size; } private void Zero(int from, int to) { Array.Clear(m_Storage, from, to - from + 1); } private void Zero(int index) { m_Storage[index] = default(T); } public T Peek(int idxofs = 0) { T item = m_Storage[m_HeadIdx - 1 - idxofs]; return item; } public void Set(int idxofs, T item) { m_Storage[m_HeadIdx - 1 - idxofs] = item; } public void CropAtCount(int p) { RemoveLast(Count - p); } public void RemoveLast( int cnt = 1) { if (cnt == 1) { --m_HeadIdx; m_Storage[m_HeadIdx] = default(T); } else { int oldhead = m_HeadIdx; m_HeadIdx -= cnt; Zero(m_HeadIdx, oldhead); } } public T Pop() { --m_HeadIdx; T retval = m_Storage[m_HeadIdx]; m_Storage[m_HeadIdx] = default(T); return retval; } public void Clear() { Array.Clear(m_Storage, 0, m_Storage.Length); m_HeadIdx = 0; } public int Count { get { return m_HeadIdx; } } #region IList Impl. int IList.IndexOf(T item) { throw new NotImplementedException(); } void IList.Insert(int index, T item) { throw new NotImplementedException(); } void IList.RemoveAt(int index) { throw new NotImplementedException(); } T IList.this[int index] { get { return this[index]; } set { this[index] = value; } } void ICollection.Add(T item) { Push(item); } void ICollection.Clear() { Clear(); } bool ICollection.Contains(T item) { throw new NotImplementedException(); } void ICollection.CopyTo(T[] array, int arrayIndex) { throw new NotImplementedException(); } int ICollection.Count { get { return this.Count; } } bool ICollection.IsReadOnly { get { return false; } } bool ICollection.Remove(T item) { throw new NotImplementedException(); } IEnumerator IEnumerable.GetEnumerator() { throw new NotImplementedException(); } System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() { throw new NotImplementedException(); } #endregion } } #endif ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataStructs/FastStack.cs.meta ================================================ fileFormatVersion: 2 guid: 2c6a7612ec2e5f1498ce808a91e509cf timeCreated: 1518177916 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataStructs/FastStackDynamic.cs ================================================ using System; using System.Collections.Generic; namespace MoonSharp.Interpreter.DataStructs { #if USE_DYNAMIC_STACKS internal class FastStack : FastStackDynamic { public FastStack(int startingCapacity) : base(startingCapacity) { } } #endif /// /// A non preallocated, non_fixed size stack /// /// internal class FastStackDynamic : List { public FastStackDynamic(int startingCapacity) : base(startingCapacity) { } public void Set(int idxofs, T item) { this[this.Count - 1 - idxofs] = item; } public T Push(T item) { this.Add(item); return item; } public void Expand(int size) { for(int i = 0; i < size; i++) this.Add(default(T)); } public void Zero(int index) { this[index] = default(T); } public T Peek(int idxofs = 0) { T item = this[this.Count - 1 - idxofs]; return item; } public void CropAtCount(int p) { RemoveLast(Count - p); } public void RemoveLast( int cnt = 1) { if (cnt == 1) { this.RemoveAt(this.Count - 1); } else { this.RemoveRange(this.Count - cnt, cnt); } } public T Pop() { T retval = this[this.Count - 1]; this.RemoveAt(this.Count - 1); return retval; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataStructs/FastStackDynamic.cs.meta ================================================ fileFormatVersion: 2 guid: 2162b39086d34744ca9a269500d261cd timeCreated: 1518177916 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataStructs/LinkedListIndex.cs ================================================ using System.Collections.Generic; namespace MoonSharp.Interpreter.DataStructs { /// /// An index to accelerate operations on a LinkedList using a single key of type /// More than one LinkedListIndex can index the same linked list, but every node in the linked list must be indexed by one and only one /// LinkedListIndex object. /// /// The type of the key. Must implement Equals and GetHashCode appropriately. /// The type of the values contained in the linked list. internal class LinkedListIndex { LinkedList m_LinkedList; Dictionary> m_Map = null; /// /// Initializes a new instance of the class. /// /// The linked list to be indexed. public LinkedListIndex(LinkedList linkedList) { m_LinkedList = linkedList; } /// /// Finds the node indexed by the specified key, or null. /// /// The key. public LinkedListNode Find(TKey key) { LinkedListNode node; if (m_Map == null) return null; if (m_Map.TryGetValue(key, out node)) return node; return null; } /// /// Updates or creates a new node in the linked list, indexed by the specified key. /// /// The key. /// The value. /// The previous value of the element public TValue Set(TKey key, TValue value) { LinkedListNode node = Find(key); if (node == null) { Add(key, value); return default(TValue); } else { TValue val = node.Value; node.Value = value; return val; } } /// /// Creates a new node in the linked list, indexed by the specified key. /// /// The key. /// The value. public void Add(TKey key, TValue value) { var node = m_LinkedList.AddLast(value); if (m_Map == null) m_Map = new Dictionary>(); m_Map.Add(key, node); } /// /// Removes the specified key from the index, and the node indexed by the key from the linked list. /// /// The key. public bool Remove(TKey key) { LinkedListNode node = Find(key); if (node != null) { m_LinkedList.Remove(node); return m_Map.Remove(key); } return false; } /// /// Determines whether the index contains the specified key. /// /// The key. public bool ContainsKey(TKey key) { if (m_Map == null) return false; return m_Map.ContainsKey(key); } /// /// Clears this instance (removes all elements) /// public void Clear() { if(m_Map != null) m_Map.Clear(); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataStructs/LinkedListIndex.cs.meta ================================================ fileFormatVersion: 2 guid: fe631f95d38fb604a8dbf2afe62fb3f7 timeCreated: 1518177926 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataStructs/MultiDictionary.cs ================================================ using System.Collections.Generic; namespace MoonSharp.Interpreter.DataStructs { /// /// A Dictionary where multiple values can be associated to the same key /// /// The key type /// The value type internal class MultiDictionary { Dictionary> m_Map; V[] m_DefaultRet = new V[0]; /// /// Initializes a new instance of the class. /// public MultiDictionary() { m_Map = new Dictionary>(); } /// /// Initializes a new instance of the class. /// /// The equality comparer to use in the underlying dictionary. public MultiDictionary(IEqualityComparer eqComparer) { m_Map = new Dictionary>(eqComparer); } /// /// Adds the specified key. Returns true if this is the first value for a given key /// /// The key. /// The value. /// public bool Add(K key, V value) { List list; if (m_Map.TryGetValue(key, out list)) { list.Add(value); return false; } else { list = new List(); list.Add(value); m_Map.Add(key, list); return true; } } /// /// Finds all the values associated with the specified key. /// An empty collection is returned if not found. /// /// The key. public IEnumerable Find(K key) { List list; if (m_Map.TryGetValue(key, out list)) return list; else return m_DefaultRet; } /// /// Determines whether this contains the specified key /// /// The key. public bool ContainsKey(K key) { return m_Map.ContainsKey(key); } /// /// Gets the keys. /// public IEnumerable Keys { get { return m_Map.Keys; } } /// /// Clears this instance. /// public void Clear() { m_Map.Clear(); } /// /// Removes the specified key and all its associated values from the multidictionary /// /// The key. public void Remove(K key) { m_Map.Remove(key); } /// /// Removes the value. Returns true if the removed value was the last of a given key /// /// The key. /// The value. /// public bool RemoveValue(K key, V value) { List list; if (m_Map.TryGetValue(key, out list)) { list.Remove(value); if (list.Count == 0) { Remove(key); return true; } } return false; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataStructs/MultiDictionary.cs.meta ================================================ fileFormatVersion: 2 guid: 34d76e6a4f236344f9ed8b0ee4f9b4d7 timeCreated: 1518177916 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataStructs/ReferenceEqualityComparer.cs ================================================ using System.Collections.Generic; namespace MoonSharp.Interpreter.DataStructs { /// /// Implementation of IEqualityComparer enforcing reference equality /// internal class ReferenceEqualityComparer : IEqualityComparer { bool IEqualityComparer.Equals(object x, object y) { return object.ReferenceEquals(x, y); } int IEqualityComparer.GetHashCode(object obj) { return obj.GetHashCode(); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataStructs/ReferenceEqualityComparer.cs.meta ================================================ fileFormatVersion: 2 guid: b231db58479458d49be0c046b923a2a2 timeCreated: 1518177923 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataStructs/Slice.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace MoonSharp.Interpreter.DataStructs { /// /// Provides facility to create a "sliced" view over an existing IList /// /// The type of the items contained in the collection internal class Slice : IEnumerable, IList { IList m_SourceList; int m_From, m_Length; bool m_Reversed; /// /// Initializes a new instance of the class. /// /// The list to apply the Slice view on /// From which index /// The length of the slice /// if set to true the view is in reversed order. public Slice(IList list, int from, int length, bool reversed) { m_SourceList = list; m_From = from; m_Length = length; m_Reversed = reversed; } /// /// Gets or sets the element at the specified index. /// /// The index. /// public T this[int index] { get { return m_SourceList[CalcRealIndex(index)]; } set { m_SourceList[CalcRealIndex(index)] = value; } } /// /// Gets the index from which the slice starts /// public int From { get { return m_From; } } /// /// Gets the number of elements contained in the . /// /// The number of elements contained in the . public int Count { get { return m_Length; } } /// /// Gets a value indicating whether this operates in a reversed direction. /// /// /// true if this operates in a reversed direction; otherwise, false. /// public bool Reversed { get { return m_Reversed; } } /// /// Calculates the real index in the underlying collection /// private int CalcRealIndex(int index) { if (index < 0 || index >= m_Length) throw new ArgumentOutOfRangeException("index"); if (m_Reversed) { return m_From + m_Length - index - 1; } else { return m_From + index; } } /// /// Returns an enumerator that iterates through the collection. /// /// /// A that can be used to iterate through the collection. /// public IEnumerator GetEnumerator() { for (int i = 0; i < m_Length; i++) yield return m_SourceList[CalcRealIndex(i)]; } /// /// Returns an enumerator that iterates through a collection. /// /// /// An object that can be used to iterate through the collection. /// System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() { for (int i = 0; i < m_Length; i++) yield return m_SourceList[CalcRealIndex(i)]; } /// /// Converts to an array. /// public T[] ToArray() { T[] array = new T[m_Length]; for (int i = 0; i < m_Length; i++) array[i] = m_SourceList[CalcRealIndex(i)]; return array; } /// /// Converts to an list. /// public List ToList() { List list = new List(m_Length); for (int i = 0; i < m_Length; i++) list.Add(m_SourceList[CalcRealIndex(i)]); return list; } /// /// Determines the index of a specific item in the . /// /// The object to locate in the . /// /// The index of if found in the list; otherwise, -1. /// public int IndexOf(T item) { for (int i = 0; i < this.Count; i++) { if (this[i].Equals(item)) return i; } return -1; } /// /// Inserts an item to the at the specified index. /// /// The zero-based index at which should be inserted. /// The object to insert into the . /// Slices are readonly public void Insert(int index, T item) { throw new InvalidOperationException("Slices are readonly"); } /// /// Removes the item at the specified index. /// /// The zero-based index of the item to remove. /// Slices are readonly public void RemoveAt(int index) { throw new InvalidOperationException("Slices are readonly"); } /// /// Adds an item to the . /// /// The object to add to the . /// Slices are readonly public void Add(T item) { throw new InvalidOperationException("Slices are readonly"); } /// /// Removes all items from the . /// /// Slices are readonly public void Clear() { throw new InvalidOperationException("Slices are readonly"); } /// /// Determines whether the contains a specific value. /// /// The object to locate in the . /// /// true if is found in the ; otherwise, false. /// public bool Contains(T item) { return IndexOf(item) >= 0; } /// /// Copies to. /// /// The array. /// Index of the array. public void CopyTo(T[] array, int arrayIndex) { for (int i = 0; i < Count; i++) array[i + arrayIndex] = this[i]; } /// /// Gets a value indicating whether the is read-only. /// /// true if the is read-only; otherwise, false. public bool IsReadOnly { get { return true; } } /// /// Removes the first occurrence of a specific object from the . /// /// The object to remove from the . /// /// true if was successfully removed from the ; otherwise, false. This method also returns false if is not found in the original . /// /// Slices are readonly public bool Remove(T item) { throw new InvalidOperationException("Slices are readonly"); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataStructs/Slice.cs.meta ================================================ fileFormatVersion: 2 guid: 027911791003dd043926454f85c093c9 timeCreated: 1518177914 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataStructs.meta ================================================ fileFormatVersion: 2 guid: c29603004ec45b74194f4c2b58b32716 folderAsset: yes timeCreated: 1518177911 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/CallbackArguments.cs ================================================ using System.Collections.Generic; using MoonSharp.Interpreter.DataStructs; namespace MoonSharp.Interpreter { /// /// This class is a container for arguments received by a CallbackFunction /// public class CallbackArguments { IList m_Args; int m_Count; bool m_LastIsTuple = false; /// /// Initializes a new instance of the class. /// /// The arguments. /// if set to true [is method call]. public CallbackArguments(IList args, bool isMethodCall) { m_Args = args; if (m_Args.Count > 0) { var last = m_Args[m_Args.Count - 1]; if (last.Type == DataType.Tuple) { m_Count = last.Tuple.Length - 1 + m_Args.Count; m_LastIsTuple = true; } else if (last.Type == DataType.Void) { m_Count = m_Args.Count - 1; } else { m_Count = m_Args.Count; } } else { m_Count = 0; } IsMethodCall = isMethodCall; } /// /// Gets the count of arguments /// public int Count { get { return m_Count; } } /// /// Gets or sets a value indicating whether this is a method call. /// public bool IsMethodCall { get; private set; } /// /// Gets the at the specified index, or Void if not found /// public DynValue this[int index] { get { return RawGet(index, true) ?? DynValue.Void; } } /// /// Gets the at the specified index, or null. /// /// The index. /// if set to true all voids are translated to nils. /// public DynValue RawGet(int index, bool translateVoids) { DynValue v; if (index >= m_Count) return null; if (!m_LastIsTuple || index < m_Args.Count - 1) v = m_Args[index]; else v = m_Args[m_Args.Count - 1].Tuple[index - (m_Args.Count - 1)]; if (v.Type == DataType.Tuple) { if (v.Tuple.Length > 0) v = v.Tuple[0]; else v = DynValue.Nil; } if (translateVoids && v.Type == DataType.Void) { v = DynValue.Nil; } return v; } /// /// Converts the arguments to an array /// /// The number of elements to skip (default= 0). /// public DynValue[] GetArray(int skip = 0) { if (skip >= m_Count) return new DynValue[0]; DynValue[] vals = new DynValue[m_Count - skip]; for (int i = skip; i < m_Count; i++) vals[i - skip] = this[i]; return vals; } /// /// Gets the specified argument as as an argument of the specified type. If not possible, /// an exception is raised. /// /// The argument number. /// Name of the function. /// The type desired. /// if set to true nil values are allowed. /// public DynValue AsType(int argNum, string funcName, DataType type, bool allowNil = false) { return this[argNum].CheckType(funcName, type, argNum, allowNil ? TypeValidationFlags.AllowNil | TypeValidationFlags.AutoConvert : TypeValidationFlags.AutoConvert); } /// /// Gets the specified argument as as an argument of the specified user data type. If not possible, /// an exception is raised. /// /// The desired userdata type /// The argument number. /// Name of the function. /// if set to true nil values are allowed. /// public T AsUserData(int argNum, string funcName, bool allowNil = false) { return this[argNum].CheckUserDataType(funcName, argNum, allowNil ? TypeValidationFlags.AllowNil : TypeValidationFlags.None); } /// /// Gets the specified argument as an integer /// /// The argument number. /// Name of the function. /// public int AsInt(int argNum, string funcName) { DynValue v = AsType(argNum, funcName, DataType.Number, false); double d = v.Number; return (int)d; } /// /// Gets the specified argument as a long integer /// /// The argument number. /// Name of the function. /// public long AsLong(int argNum, string funcName) { DynValue v = AsType(argNum, funcName, DataType.Number, false); double d = v.Number; return (long)d; } /// /// Gets the specified argument as a string, calling the __tostring metamethod if needed, in a NON /// yield-compatible way. /// /// The execution context. /// The argument number. /// Name of the function. /// /// 'tostring' must return a string to '{0}' public string AsStringUsingMeta(ScriptExecutionContext executionContext, int argNum, string funcName) { if ((this[argNum].Type == DataType.Table) && (this[argNum].Table.MetaTable != null) && (this[argNum].Table.MetaTable.RawGet("__tostring") != null)) { var v = executionContext.GetScript().Call(this[argNum].Table.MetaTable.RawGet("__tostring"), this[argNum]); if (v.Type != DataType.String) throw new ScriptRuntimeException("'tostring' must return a string to '{0}'", funcName); return v.ToPrintString(); } else { return (this[argNum].ToPrintString()); } } /// /// Returns a copy of CallbackArguments where the first ("self") argument is skipped if this was a method call, /// otherwise returns itself. /// /// public CallbackArguments SkipMethodCall() { if (this.IsMethodCall) { Slice slice = new Slice(m_Args, 1, m_Args.Count - 1, false); return new CallbackArguments(slice, false); } else return this; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/CallbackArguments.cs.meta ================================================ fileFormatVersion: 2 guid: 4e71ff7b2089dcb49b0a9e433513e903 timeCreated: 1518177918 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/CallbackFunction.cs ================================================ using System; using System.Collections.Generic; using MoonSharp.Interpreter.Interop; using System.Reflection; namespace MoonSharp.Interpreter { /// /// This class wraps a CLR function /// public sealed class CallbackFunction : RefIdObject { private static InteropAccessMode m_DefaultAccessMode = InteropAccessMode.LazyOptimized; /// /// Gets the name of the function /// public string Name { get; private set; } /// /// Gets the call back. /// /// /// The call back. /// public Func ClrCallback { get; private set; } /// /// Initializes a new instance of the class. /// /// The callback function to be called. /// The callback name, used in stacktraces, debugger, etc.. public CallbackFunction(Func callBack, string name = null) { ClrCallback = callBack; Name = name; } /// /// Invokes the callback function /// /// The execution context. /// The arguments. /// if set to true this is a method call. /// public DynValue Invoke(ScriptExecutionContext executionContext, IList args, bool isMethodCall = false) { if (isMethodCall) { var colon = executionContext.GetScript().Options.ColonOperatorClrCallbackBehaviour; if (colon == ColonOperatorBehaviour.TreatAsColon) isMethodCall = false; else if (colon == ColonOperatorBehaviour.TreatAsDotOnUserData) isMethodCall = (args.Count > 0 && args[0].Type == DataType.UserData); } return ClrCallback(executionContext, new CallbackArguments(args, isMethodCall)); } /// /// Gets or sets the default access mode used when marshalling delegates /// /// /// The default access mode. Default, HideMembers and BackgroundOptimized are NOT supported. /// /// Default, HideMembers and BackgroundOptimized are NOT supported. public static InteropAccessMode DefaultAccessMode { get { return m_DefaultAccessMode; } set { if (value == InteropAccessMode.Default || value == InteropAccessMode.HideMembers || value == InteropAccessMode.BackgroundOptimized) throw new ArgumentException("DefaultAccessMode"); m_DefaultAccessMode = value; } } /// /// Creates a CallbackFunction from a delegate. /// /// The script. /// The delegate. /// The access mode. /// public static CallbackFunction FromDelegate(Script script, Delegate del, InteropAccessMode accessMode = InteropAccessMode.Default) { if (accessMode == InteropAccessMode.Default) accessMode = m_DefaultAccessMode; #if NETFX_CORE MethodMemberDescriptor descr = new MethodMemberDescriptor(del.GetMethodInfo(), accessMode); #else MethodMemberDescriptor descr = new MethodMemberDescriptor(del.Method, accessMode); #endif return descr.GetCallbackFunction(script, del.Target); } /// /// Creates a CallbackFunction from a MethodInfo relative to a function. /// /// The script. /// The MethodInfo object. /// The object to which the function applies, or null for static methods. /// The access mode. /// /// The method is not static. public static CallbackFunction FromMethodInfo(Script script, System.Reflection.MethodInfo mi, object obj = null, InteropAccessMode accessMode = InteropAccessMode.Default) { if (accessMode == InteropAccessMode.Default) accessMode = m_DefaultAccessMode; MethodMemberDescriptor descr = new MethodMemberDescriptor(mi, accessMode); return descr.GetCallbackFunction(script, obj); } /// /// Gets or sets an object used as additional data to the callback function (available in the execution context). /// public object AdditionalData { get; set; } /// /// Checks the callback signature of a method is compatible for callbacks /// public static bool CheckCallbackSignature(System.Reflection.MethodInfo mi, bool requirePublicVisibility) { System.Reflection.ParameterInfo[] pi = mi.GetParameters(); return (pi.Length == 2 && pi[0].ParameterType == typeof(ScriptExecutionContext) && pi[1].ParameterType == typeof(CallbackArguments) && mi.ReturnType == typeof(DynValue) && (requirePublicVisibility || mi.IsPublic)); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/CallbackFunction.cs.meta ================================================ fileFormatVersion: 2 guid: 96b1c08c917019944b483244d81715a0 timeCreated: 1518177922 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/Closure.cs ================================================ using System.Collections.Generic; using MoonSharp.Interpreter.Execution; namespace MoonSharp.Interpreter { /// /// A class representing a script function /// public class Closure : RefIdObject, IScriptPrivateResource { /// /// Type of closure based on upvalues /// public enum UpvaluesType { /// /// The closure has no upvalues (thus, technically, it's a function and not a closure!) /// None, /// /// The closure has _ENV as its only upvalue /// Environment, /// /// The closure is a "real" closure, with multiple upvalues /// Closure } /// /// Gets the entry point location in bytecode . /// public int EntryPointByteCodeLocation { get; private set; } /// /// Gets the script owning this function /// public Script OwnerScript { get; private set; } /// /// Shortcut for an empty closure /// private static ClosureContext emptyClosure = new ClosureContext(); /// /// The current closure context /// internal ClosureContext ClosureContext { get; private set; } /// /// Initializes a new instance of the class. /// /// The script. /// The index. /// The symbols. /// The resolved locals. internal Closure(Script script, int idx, SymbolRef[] symbols, IEnumerable resolvedLocals) { OwnerScript = script; EntryPointByteCodeLocation = idx; if (symbols.Length > 0) ClosureContext = new ClosureContext(symbols, resolvedLocals); else ClosureContext = emptyClosure; } /// /// Calls this function with the specified args /// /// /// Thrown if function is not of DataType.Function public DynValue Call() { return OwnerScript.Call(this); } /// /// Calls this function with the specified args /// /// The arguments to pass to the function. /// /// Thrown if function is not of DataType.Function public DynValue Call(params object[] args) { return OwnerScript.Call(this, args); } /// /// Calls this function with the specified args /// /// The arguments to pass to the function. /// /// Thrown if function is not of DataType.Function public DynValue Call(params DynValue[] args) { return OwnerScript.Call(this, args); } /// /// Gets a delegate wrapping calls to this scripted function /// /// public ScriptFunctionDelegate GetDelegate() { return args => this.Call(args).ToObject(); } /// /// Gets a delegate wrapping calls to this scripted function /// /// The type of return value of the delegate. /// public ScriptFunctionDelegate GetDelegate() { return args => this.Call(args).ToObject(); } /// /// Gets the number of upvalues in this closure /// /// The number of upvalues in this closure public int GetUpvaluesCount() { return ClosureContext.Count; } /// /// Gets the name of the specified upvalue. /// /// The index of the upvalue. /// The upvalue name public string GetUpvalueName(int idx) { return ClosureContext.Symbols[idx]; } /// /// Gets the value of an upvalue. To set the value, use GetUpvalue(idx).Assign(...); /// /// The index of the upvalue. /// The value of an upvalue public DynValue GetUpvalue(int idx) { return ClosureContext[idx]; } /// /// Gets the type of the upvalues contained in this closure /// /// public UpvaluesType GetUpvaluesType() { int count = GetUpvaluesCount(); if (count == 0) return UpvaluesType.None; else if (count == 1 && GetUpvalueName(0) == WellKnownSymbols.ENV) return UpvaluesType.Environment; else return UpvaluesType.Closure; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/Closure.cs.meta ================================================ fileFormatVersion: 2 guid: 196d99e9719bedd49898379cdcb201cc timeCreated: 1518177915 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/Coroutine.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using MoonSharp.Interpreter.Debugging; using MoonSharp.Interpreter.Execution.VM; namespace MoonSharp.Interpreter { /// /// A class representing a script coroutine /// public class Coroutine : RefIdObject, IScriptPrivateResource { /// /// Possible types of coroutine /// public enum CoroutineType { /// /// A valid coroutine /// Coroutine, /// /// A CLR callback assigned to a coroutine. /// ClrCallback, /// /// A CLR callback assigned to a coroutine and already executed. /// ClrCallbackDead } /// /// Gets the type of coroutine /// public CoroutineType Type { get; private set; } private CallbackFunction m_ClrCallback; private Processor m_Processor; internal Coroutine(CallbackFunction function) { Type = CoroutineType.ClrCallback; m_ClrCallback = function; OwnerScript = null; } internal Coroutine(Processor proc) { Type = CoroutineType.Coroutine; m_Processor = proc; m_Processor.AssociatedCoroutine = this; OwnerScript = proc.GetScript(); } internal void MarkClrCallbackAsDead() { if (Type != CoroutineType.ClrCallback) throw new InvalidOperationException("State must be CoroutineType.ClrCallback"); Type = CoroutineType.ClrCallbackDead; } /// /// Gets this coroutine as a typed enumerable which can be looped over for resuming. /// Returns its result as DynValue(s) /// /// /// Only non-CLR coroutines can be resumed with this overload of the Resume method. Use the overload accepting a ScriptExecutionContext instead public IEnumerable AsTypedEnumerable() { if (Type != CoroutineType.Coroutine) throw new InvalidOperationException("Only non-CLR coroutines can be resumed with this overload of the Resume method. Use the overload accepting a ScriptExecutionContext instead"); while (this.State == CoroutineState.NotStarted || this.State == CoroutineState.Suspended || this.State == CoroutineState.ForceSuspended) yield return Resume(); } /// /// Gets this coroutine as a typed enumerable which can be looped over for resuming. /// Returns its result as System.Object. Only the first element of tuples is returned. /// Only non-CLR coroutines can be resumed with this method. Use an overload of the Resume method accepting a ScriptExecutionContext instead. /// /// /// Only non-CLR coroutines can be resumed with this overload of the Resume method. Use the overload accepting a ScriptExecutionContext instead public IEnumerable AsEnumerable() { foreach(DynValue v in AsTypedEnumerable()) { yield return v.ToScalar().ToObject(); } } /// /// Gets this coroutine as a typed enumerable which can be looped over for resuming. /// Returns its result as the specified type. Only the first element of tuples is returned. /// Only non-CLR coroutines can be resumed with this method. Use an overload of the Resume method accepting a ScriptExecutionContext instead. /// /// /// Only non-CLR coroutines can be resumed with this overload of the Resume method. Use the overload accepting a ScriptExecutionContext instead public IEnumerable AsEnumerable() { foreach(DynValue v in AsTypedEnumerable()) { yield return v.ToScalar().ToObject(); } } /// /// The purpose of this method is to convert a MoonSharp/Lua coroutine to a Unity3D coroutine. /// This loops over the coroutine, discarding returned values, and returning null for each invocation. /// This means however that the coroutine will be invoked each frame. /// Only non-CLR coroutines can be resumed with this method. Use an overload of the Resume method accepting a ScriptExecutionContext instead. /// /// /// Only non-CLR coroutines can be resumed with this overload of the Resume method. Use the overload accepting a ScriptExecutionContext instead public System.Collections.IEnumerator AsUnityCoroutine() { #pragma warning disable 0219 foreach (DynValue v in AsTypedEnumerable()) { yield return null; } #pragma warning restore 0219 } /// /// Resumes the coroutine. /// Only non-CLR coroutines can be resumed with this overload of the Resume method. Use the overload accepting a ScriptExecutionContext instead. /// /// The arguments. /// /// Only non-CLR coroutines can be resumed with this overload of the Resume method. Use the overload accepting a ScriptExecutionContext instead public DynValue Resume(params DynValue[] args) { this.CheckScriptOwnership(args); if (Type == CoroutineType.Coroutine) return m_Processor.Coroutine_Resume(args); else throw new InvalidOperationException("Only non-CLR coroutines can be resumed with this overload of the Resume method. Use the overload accepting a ScriptExecutionContext instead"); } /// /// Resumes the coroutine. /// /// The ScriptExecutionContext. /// The arguments. /// public DynValue Resume(ScriptExecutionContext context, params DynValue[] args) { this.CheckScriptOwnership(context); this.CheckScriptOwnership(args); if (Type == CoroutineType.Coroutine) return m_Processor.Coroutine_Resume(args); else if (Type == CoroutineType.ClrCallback) { DynValue ret = m_ClrCallback.Invoke(context, args); MarkClrCallbackAsDead(); return ret; } else throw ScriptRuntimeException.CannotResumeNotSuspended(CoroutineState.Dead); } /// /// Resumes the coroutine. /// Only non-CLR coroutines can be resumed with this overload of the Resume method. Use the overload accepting a ScriptExecutionContext instead. /// /// /// Only non-CLR coroutines can be resumed with this overload of the Resume method. Use the overload accepting a ScriptExecutionContext instead public DynValue Resume() { return Resume(new DynValue[0]); } /// /// Resumes the coroutine. /// /// The ScriptExecutionContext. /// public DynValue Resume(ScriptExecutionContext context) { return Resume(context, new DynValue[0]); } /// /// Resumes the coroutine. /// Only non-CLR coroutines can be resumed with this overload of the Resume method. Use the overload accepting a ScriptExecutionContext instead. /// /// The arguments. /// /// Only non-CLR coroutines can be resumed with this overload of the Resume method. Use the overload accepting a ScriptExecutionContext instead. public DynValue Resume(params object[] args) { if (Type != CoroutineType.Coroutine) throw new InvalidOperationException("Only non-CLR coroutines can be resumed with this overload of the Resume method. Use the overload accepting a ScriptExecutionContext instead"); DynValue[] dargs = new DynValue[args.Length]; for (int i = 0; i < dargs.Length; i++) dargs[i] = DynValue.FromObject(this.OwnerScript, args[i]); return Resume(dargs); } /// /// Resumes the coroutine /// /// The ScriptExecutionContext. /// The arguments. /// public DynValue Resume(ScriptExecutionContext context, params object[] args) { DynValue[] dargs = new DynValue[args.Length]; for (int i = 0; i < dargs.Length; i++) dargs[i] = DynValue.FromObject(context.GetScript(), args[i]); return Resume(context, dargs); } /// /// Gets the coroutine state. /// public CoroutineState State { get { if (Type == CoroutineType.ClrCallback) return CoroutineState.NotStarted; else if (Type == CoroutineType.ClrCallbackDead) return CoroutineState.Dead; else return m_Processor.State; } } /// /// Gets the coroutine stack trace for debug purposes /// /// The skip. /// The entry source reference. /// public WatchItem[] GetStackTrace(int skip, SourceRef entrySourceRef = null) { if (this.State != CoroutineState.Running) { entrySourceRef = m_Processor.GetCoroutineSuspendedLocation(); } List stack = m_Processor.Debugger_GetCallStack(entrySourceRef); return stack.Skip(skip).ToArray(); } /// /// Gets the script owning this resource. /// /// /// The script owning this resource. /// /// public Script OwnerScript { get; private set; } /// /// Gets or sets the automatic yield counter. /// /// /// The automatic yield counter. /// public long AutoYieldCounter { get { return m_Processor.AutoYieldCounter; } set { m_Processor.AutoYieldCounter = value; } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/Coroutine.cs.meta ================================================ fileFormatVersion: 2 guid: 3a50da670c57a194a84aebbe5dd5168d timeCreated: 1518177917 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/CoroutineState.cs ================================================  namespace MoonSharp.Interpreter { /// /// State of coroutines /// public enum CoroutineState { /// /// This is the main coroutine /// Main, /// /// Coroutine has not started yet /// NotStarted, /// /// Coroutine is suspended /// Suspended, /// /// Coroutine has been forcefully suspended (i.e. auto-yielded) /// ForceSuspended, /// /// Coroutine is running /// Running, /// /// Coroutine has terminated /// Dead } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/CoroutineState.cs.meta ================================================ fileFormatVersion: 2 guid: 16bd420fbabad58449e06d83b3b6406e timeCreated: 1518177915 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/DataType.cs ================================================  namespace MoonSharp.Interpreter { /// /// Enumeration of possible data types in MoonSharp /// public enum DataType { // DO NOT MODIFY ORDER - IT'S SIGNIFICANT /// /// A nil value, as in Lua /// Nil, /// /// A place holder for no value /// Void, /// /// A Lua boolean /// Boolean, /// /// A Lua number /// Number, /// /// A Lua string /// String, /// /// A Lua function /// Function, /// /// A Lua table /// Table, /// /// A set of multiple values /// Tuple, /// /// A userdata reference - that is a wrapped CLR object /// UserData, /// /// A coroutine handle /// Thread, /// /// A callback function /// ClrFunction, /// /// A request to execute a tail call /// TailCallRequest, /// /// A request to coroutine.yield /// YieldRequest, } /// /// Extension methods to DataType /// public static class LuaTypeExtensions { internal const DataType MaxMetaTypes = DataType.Table; internal const DataType MaxConvertibleTypes = DataType.ClrFunction; /// /// Determines whether this data type can have type metatables. /// /// The type. /// public static bool CanHaveTypeMetatables(this DataType type) { return (int)type < (int)MaxMetaTypes; } /// /// Converts the DataType to the string returned by the "type(...)" Lua function /// /// The type. /// /// The DataType is not a Lua type public static string ToErrorTypeString(this DataType type) { switch (type) { case DataType.Void: return "no value"; case DataType.Nil: return "nil"; case DataType.Boolean: return "boolean"; case DataType.Number: return "number"; case DataType.String: return "string"; case DataType.Function: return "function"; case DataType.ClrFunction: return "function"; case DataType.Table: return "table"; case DataType.UserData: return "userdata"; case DataType.Thread: return "coroutine"; case DataType.Tuple: case DataType.TailCallRequest: case DataType.YieldRequest: default: return string.Format("internal<{0}>", type.ToLuaDebuggerString()); } } /// /// Converts the DataType to the string returned by the "type(...)" Lua function, with additional values /// to support debuggers /// /// The type. /// /// The DataType is not a Lua type public static string ToLuaDebuggerString(this DataType type) { return type.ToString().ToLowerInvariant(); } /// /// Converts the DataType to the string returned by the "type(...)" Lua function /// /// The type. /// /// The DataType is not a Lua type public static string ToLuaTypeString(this DataType type) { switch (type) { case DataType.Void: case DataType.Nil: return "nil"; case DataType.Boolean: return "boolean"; case DataType.Number: return "number"; case DataType.String: return "string"; case DataType.Function: return "function"; case DataType.ClrFunction: return "function"; case DataType.Table: return "table"; case DataType.UserData: return "userdata"; case DataType.Thread: return "thread"; case DataType.Tuple: case DataType.TailCallRequest: case DataType.YieldRequest: default: throw new ScriptRuntimeException("Unexpected LuaType {0}", type); } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/DataType.cs.meta ================================================ fileFormatVersion: 2 guid: 570b3d5e857ea314a855262025c3a2ce timeCreated: 1518177918 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/DynValue.cs ================================================ using System; using System.Collections.Generic; using System.Globalization; using System.Linq; using System.Text; namespace MoonSharp.Interpreter { /// /// A class representing a value in a Lua/MoonSharp script. /// public sealed class DynValue { static int s_RefIDCounter = 0; private int m_RefID = ++s_RefIDCounter; private int m_HashCode = -1; private bool m_ReadOnly; private double m_Number; private object m_Object; private DataType m_Type; /// /// Gets a unique reference identifier. This is guaranteed to be unique only for dynvalues created in a single thread as it's not thread-safe. /// public int ReferenceID { get { return m_RefID; } } /// /// Gets the type of the value. /// public DataType Type { get { return m_Type; } } /// /// Gets the function (valid only if the is ) /// public Closure Function { get { return m_Object as Closure; } } /// /// Gets the numeric value (valid only if the is ) /// public double Number { get { return m_Number; } } /// /// Gets the values in the tuple (valid only if the is Tuple). /// This field is currently also used to hold arguments in values whose is . /// public DynValue[] Tuple { get { return m_Object as DynValue[]; } } /// /// Gets the coroutine handle. (valid only if the is Thread). /// public Coroutine Coroutine { get { return m_Object as Coroutine; } } /// /// Gets the table (valid only if the is ) /// public Table Table { get { return m_Object as Table; } } /// /// Gets the boolean value (valid only if the is ) /// public bool Boolean { get { return Number != 0; } } /// /// Gets the string value (valid only if the is ) /// public string String { get { return m_Object as string; } } /// /// Gets the CLR callback (valid only if the is ) /// public CallbackFunction Callback { get { return m_Object as CallbackFunction; } } /// /// Gets the tail call data. /// public TailCallData TailCallData { get { return m_Object as TailCallData; } } /// /// Gets the yield request data. /// public YieldRequest YieldRequest { get { return m_Object as YieldRequest; } } /// /// Gets the tail call data. /// public UserData UserData { get { return m_Object as UserData; } } /// /// Returns true if this instance is write protected. /// public bool ReadOnly { get { return m_ReadOnly; } } /// /// Creates a new writable value initialized to Nil. /// public static DynValue NewNil() { return new DynValue(); } /// /// Creates a new writable value initialized to the specified boolean. /// public static DynValue NewBoolean(bool v) { return new DynValue() { m_Number = v ? 1 : 0, m_Type = DataType.Boolean, }; } /// /// Creates a new writable value initialized to the specified number. /// public static DynValue NewNumber(double num) { return new DynValue() { m_Number = num, m_Type = DataType.Number, m_HashCode = -1, }; } /// /// Creates a new writable value initialized to the specified string. /// public static DynValue NewString(string str) { return new DynValue() { m_Object = str, m_Type = DataType.String, }; } /// /// Creates a new writable value initialized to the specified StringBuilder. /// public static DynValue NewString(StringBuilder sb) { return new DynValue() { m_Object = sb.ToString(), m_Type = DataType.String, }; } /// /// Creates a new writable value initialized to the specified string using String.Format like syntax /// public static DynValue NewString(string format, params object[] args) { return new DynValue() { m_Object = string.Format(format, args), m_Type = DataType.String, }; } /// /// Creates a new writable value initialized to the specified coroutine. /// Internal use only, for external use, see Script.CoroutineCreate /// /// The coroutine object. /// public static DynValue NewCoroutine(Coroutine coroutine) { return new DynValue() { m_Object = coroutine, m_Type = DataType.Thread }; } /// /// Creates a new writable value initialized to the specified closure (function). /// public static DynValue NewClosure(Closure function) { return new DynValue() { m_Object = function, m_Type = DataType.Function, }; } /// /// Creates a new writable value initialized to the specified CLR callback. /// public static DynValue NewCallback(Func callBack, string name = null) { return new DynValue() { m_Object = new CallbackFunction(callBack, name), m_Type = DataType.ClrFunction, }; } /// /// Creates a new writable value initialized to the specified CLR callback. /// See also CallbackFunction.FromDelegate and CallbackFunction.FromMethodInfo factory methods. /// public static DynValue NewCallback(CallbackFunction function) { return new DynValue() { m_Object = function, m_Type = DataType.ClrFunction, }; } /// /// Creates a new writable value initialized to the specified table. /// public static DynValue NewTable(Table table) { return new DynValue() { m_Object = table, m_Type = DataType.Table, }; } /// /// Creates a new writable value initialized to an empty prime table (a /// prime table is a table made only of numbers, strings, booleans and other /// prime tables). /// public static DynValue NewPrimeTable() { return NewTable(new Table(null)); } /// /// Creates a new writable value initialized to an empty table. /// public static DynValue NewTable(Script script) { return NewTable(new Table(script)); } /// /// Creates a new writable value initialized to with array contents. /// public static DynValue NewTable(Script script, params DynValue[] arrayValues) { return NewTable(new Table(script, arrayValues)); } /// /// Creates a new request for a tail call. This is the preferred way to execute Lua/MoonSharp code from a callback, /// although it's not always possible to use it. When a function (callback or script closure) returns a /// TailCallRequest, the bytecode processor immediately executes the function contained in the request. /// By executing script in this way, a callback function ensures it's not on the stack anymore and thus a number /// of functionality (state savings, coroutines, etc) keeps working at full power. /// /// The function to be called. /// The arguments. /// public static DynValue NewTailCallReq(DynValue tailFn, params DynValue[] args) { return new DynValue() { m_Object = new TailCallData() { Args = args, Function = tailFn, }, m_Type = DataType.TailCallRequest, }; } /// /// Creates a new request for a tail call. This is the preferred way to execute Lua/MoonSharp code from a callback, /// although it's not always possible to use it. When a function (callback or script closure) returns a /// TailCallRequest, the bytecode processor immediately executes the function contained in the request. /// By executing script in this way, a callback function ensures it's not on the stack anymore and thus a number /// of functionality (state savings, coroutines, etc) keeps working at full power. /// /// The data for the tail call. /// public static DynValue NewTailCallReq(TailCallData tailCallData) { return new DynValue() { m_Object = tailCallData, m_Type = DataType.TailCallRequest, }; } /// /// Creates a new request for a yield of the current coroutine. /// /// The yield argumenst. /// public static DynValue NewYieldReq(DynValue[] args) { return new DynValue() { m_Object = new YieldRequest() { ReturnValues = args }, m_Type = DataType.YieldRequest, }; } /// /// Creates a new request for a yield of the current coroutine. /// /// The yield argumenst. /// internal static DynValue NewForcedYieldReq() { return new DynValue() { m_Object = new YieldRequest() { Forced = true }, m_Type = DataType.YieldRequest, }; } /// /// Creates a new tuple initialized to the specified values. /// public static DynValue NewTuple(params DynValue[] values) { if (values.Length == 0) return DynValue.NewNil(); if (values.Length == 1) return values[0]; return new DynValue() { m_Object = values, m_Type = DataType.Tuple, }; } /// /// Creates a new tuple initialized to the specified values - which can be potentially other tuples /// public static DynValue NewTupleNested(params DynValue[] values) { if (!values.Any(v => v.Type == DataType.Tuple)) return NewTuple(values); if (values.Length == 1) return values[0]; List vals = new List(); foreach (var v in values) { if (v.Type == DataType.Tuple) vals.AddRange(v.Tuple); else vals.Add(v); } return new DynValue() { m_Object = vals.ToArray(), m_Type = DataType.Tuple, }; } /// /// Creates a new userdata value /// public static DynValue NewUserData(UserData userData) { return new DynValue() { m_Object = userData, m_Type = DataType.UserData, }; } /// /// Returns this value as readonly - eventually cloning it in the process if it isn't readonly to start with. /// public DynValue AsReadOnly() { if (ReadOnly) return this; else { return Clone(true); } } /// /// Clones this instance. /// /// public DynValue Clone() { return Clone(this.ReadOnly); } /// /// Clones this instance, overriding the "readonly" status. /// /// if set to true the new instance is set as readonly, or writeable otherwise. /// public DynValue Clone(bool readOnly) { DynValue v = new DynValue(); v.m_Object = this.m_Object; v.m_Number = this.m_Number; v.m_HashCode = this.m_HashCode; v.m_Type = this.m_Type; v.m_ReadOnly = readOnly; return v; } /// /// Clones this instance, returning a writable copy. /// /// Can't clone Symbol values public DynValue CloneAsWritable() { return Clone(false); } /// /// A preinitialized, readonly instance, equaling Void /// public static DynValue Void { get; private set; } /// /// A preinitialized, readonly instance, equaling Nil /// public static DynValue Nil { get; private set; } /// /// A preinitialized, readonly instance, equaling True /// public static DynValue True { get; private set; } /// /// A preinitialized, readonly instance, equaling False /// public static DynValue False { get; private set; } static DynValue() { Nil = new DynValue() { m_Type = DataType.Nil }.AsReadOnly(); Void = new DynValue() { m_Type = DataType.Void }.AsReadOnly(); True = DynValue.NewBoolean(true).AsReadOnly(); False = DynValue.NewBoolean(false).AsReadOnly(); } /// /// Returns a string which is what it's expected to be output by the print function applied to this value. /// public string ToPrintString() { if (this.m_Object != null && this.m_Object is RefIdObject) { RefIdObject refid = (RefIdObject)m_Object; string typeString = this.Type.ToLuaTypeString(); if (m_Object is UserData) { UserData ud = (UserData)m_Object; string str = ud.Descriptor.AsString(ud.Object); if (str != null) return str; } return refid.FormatTypeString(typeString); } switch (Type) { case DataType.String: return String; case DataType.Tuple: return string.Join("\t", Tuple.Select(t => t.ToPrintString()).ToArray()); case DataType.TailCallRequest: return "(TailCallRequest -- INTERNAL!)"; case DataType.YieldRequest: return "(YieldRequest -- INTERNAL!)"; default: return ToString(); } } /// /// Returns a string which is what it's expected to be output by debuggers. /// public string ToDebugPrintString() { if (this.m_Object != null && this.m_Object is RefIdObject) { RefIdObject refid = (RefIdObject)m_Object; string typeString = this.Type.ToLuaTypeString(); if (m_Object is UserData) { UserData ud = (UserData)m_Object; string str = ud.Descriptor.AsString(ud.Object); if (str != null) return str; } return refid.FormatTypeString(typeString); } switch (Type) { case DataType.Tuple: return string.Join("\t", Tuple.Select(t => t.ToPrintString()).ToArray()); case DataType.TailCallRequest: return "(TailCallRequest)"; case DataType.YieldRequest: return "(YieldRequest)"; default: return ToString(); } } /// /// Returns a that represents this instance. /// /// /// A that represents this instance. /// public override string ToString() { switch (Type) { case DataType.Void: return "void"; case DataType.Nil: return "nil"; case DataType.Boolean: return Boolean.ToString().ToLower(); case DataType.Number: return Number.ToString(CultureInfo.InvariantCulture); case DataType.String: return "\"" + String + "\""; case DataType.Function: return string.Format("(Function {0:X8})", Function.EntryPointByteCodeLocation); case DataType.ClrFunction: return string.Format("(Function CLR)", Function); case DataType.Table: return "(Table)"; case DataType.Tuple: return string.Join(", ", Tuple.Select(t => t.ToString()).ToArray()); case DataType.TailCallRequest: return "Tail:(" + string.Join(", ", Tuple.Select(t => t.ToString()).ToArray()) + ")"; case DataType.UserData: return "(UserData)"; case DataType.Thread: return string.Format("(Coroutine {0:X8})", this.Coroutine.ReferenceID); default: return "(???)"; } } /// /// Returns a hash code for this instance. /// /// /// A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. /// public override int GetHashCode() { if (m_HashCode != -1) return m_HashCode; int baseValue = ((int)(Type)) << 27; switch (Type) { case DataType.Void: case DataType.Nil: m_HashCode = 0; break; case DataType.Boolean: m_HashCode = Boolean ? 1 : 2; break; case DataType.Number: m_HashCode = baseValue ^ Number.GetHashCode(); break; case DataType.String: m_HashCode = baseValue ^ String.GetHashCode(); break; case DataType.Function: m_HashCode = baseValue ^ Function.GetHashCode(); break; case DataType.ClrFunction: m_HashCode = baseValue ^ Callback.GetHashCode(); break; case DataType.Table: m_HashCode = baseValue ^ Table.GetHashCode(); break; case DataType.Tuple: case DataType.TailCallRequest: m_HashCode = baseValue ^ Tuple.GetHashCode(); break; case DataType.UserData: case DataType.Thread: default: m_HashCode = 999; break; } return m_HashCode; } /// /// Determines whether the specified , is equal to this instance. /// /// The to compare with this instance. /// /// true if the specified is equal to this instance; otherwise, false. /// public override bool Equals(object obj) { DynValue other = obj as DynValue; if (other == null) return false; if ((other.Type == DataType.Nil && this.Type == DataType.Void) || (other.Type == DataType.Void && this.Type == DataType.Nil)) return true; if (other.Type != this.Type) return false; switch (Type) { case DataType.Void: case DataType.Nil: return true; case DataType.Boolean: return Boolean == other.Boolean; case DataType.Number: return Number == other.Number; case DataType.String: return String == other.String; case DataType.Function: return Function == other.Function; case DataType.ClrFunction: return Callback == other.Callback; case DataType.Table: return Table == other.Table; case DataType.Tuple: case DataType.TailCallRequest: return Tuple == other.Tuple; case DataType.Thread: return Coroutine == other.Coroutine; case DataType.UserData: { UserData ud1 = this.UserData; UserData ud2 = other.UserData; if (ud1 == null || ud2 == null) return false; if (ud1.Descriptor != ud2.Descriptor) return false; if (ud1.Object == null && ud2.Object == null) return true; if (ud1.Object != null && ud2.Object != null) return ud1.Object.Equals(ud2.Object); return false; } default: return object.ReferenceEquals(this, other); } } /// /// Casts this DynValue to string, using coercion if the type is number. /// /// The string representation, or null if not number, not string. public string CastToString() { DynValue rv = ToScalar(); if (rv.Type == DataType.Number) { return rv.Number.ToString(); } else if (rv.Type == DataType.String) { return rv.String; } return null; } /// /// Casts this DynValue to a double, using coercion if the type is string. /// /// The string representation, or null if not number, not string or non-convertible-string. public double? CastToNumber() { DynValue rv = ToScalar(); if (rv.Type == DataType.Number) { return rv.Number; } else if (rv.Type == DataType.String) { double num; if (double.TryParse(rv.String, NumberStyles.Any, CultureInfo.InvariantCulture, out num)) return num; } return null; } /// /// Casts this DynValue to a bool /// /// False if value is false or nil, true otherwise. public bool CastToBool() { DynValue rv = ToScalar(); if (rv.Type == DataType.Boolean) return rv.Boolean; else return (rv.Type != DataType.Nil && rv.Type != DataType.Void); } /// /// Returns this DynValue as an instance of , if possible, /// null otherwise /// /// False if value is false or nil, true otherwise. public IScriptPrivateResource GetAsPrivateResource() { return m_Object as IScriptPrivateResource; } /// /// Converts a tuple to a scalar value. If it's already a scalar value, this function returns "this". /// public DynValue ToScalar() { if (Type != DataType.Tuple) return this; if (Tuple.Length == 0) return DynValue.Void; return Tuple[0].ToScalar(); } /// /// Performs an assignment, overwriting the value with the specified one. /// /// The value. /// If the value is readonly. public void Assign(DynValue value) { if (this.ReadOnly) throw new ScriptRuntimeException("Assigning on r-value"); this.m_Number = value.m_Number; this.m_Object = value.m_Object; this.m_Type = value.Type; this.m_HashCode = -1; } /// /// Gets the length of a string or table value. /// /// /// Value is not a table or string. public DynValue GetLength() { if (this.Type == DataType.Table) return DynValue.NewNumber(this.Table.Length); if (this.Type == DataType.String) return DynValue.NewNumber(this.String.Length); throw new ScriptRuntimeException("Can't get length of type {0}", this.Type); } /// /// Determines whether this instance is nil or void /// public bool IsNil() { return this.Type == DataType.Nil || this.Type == DataType.Void; } /// /// Determines whether this instance is not nil or void /// public bool IsNotNil() { return this.Type != DataType.Nil && this.Type != DataType.Void; } /// /// Determines whether this instance is void /// public bool IsVoid() { return this.Type == DataType.Void; } /// /// Determines whether this instance is not void /// public bool IsNotVoid() { return this.Type != DataType.Void; } /// /// Determines whether is nil, void or NaN (and thus unsuitable for using as a table key). /// public bool IsNilOrNan() { return (this.Type == DataType.Nil) || (this.Type == DataType.Void) || (this.Type == DataType.Number && double.IsNaN(this.Number)); } /// /// Changes the numeric value of a number DynValue. /// internal void AssignNumber(double num) { if (this.ReadOnly) throw new InternalErrorException(null, "Writing on r-value"); if (this.Type != DataType.Number) throw new InternalErrorException("Can't assign number to type {0}", this.Type); this.m_Number = num; } /// /// Creates a new DynValue from a CLR object /// /// The script. /// The object. /// public static DynValue FromObject(Script script, object obj) { return MoonSharp.Interpreter.Interop.Converters.ClrToScriptConversions.ObjectToDynValue(script, obj); } /// /// Converts this MoonSharp DynValue to a CLR object. /// public object ToObject() { return MoonSharp.Interpreter.Interop.Converters.ScriptToClrConversions.DynValueToObject(this); } /// /// Converts this MoonSharp DynValue to a CLR object of the specified type. /// public object ToObject(Type desiredType) { //Contract.Requires(desiredType != null); return MoonSharp.Interpreter.Interop.Converters.ScriptToClrConversions.DynValueToObjectOfType(this, desiredType, null, false); } /// /// Converts this MoonSharp DynValue to a CLR object of the specified type. /// public T ToObject() { return (T)ToObject(typeof(T)); } #if HASDYNAMIC /// /// Converts this MoonSharp DynValue to a CLR object, marked as dynamic /// public dynamic ToDynamic() { return MoonSharp.Interpreter.Interop.Converters.ScriptToClrConversions.DynValueToObject(this); } #endif /// /// Checks the type of this value corresponds to the desired type. A propert ScriptRuntimeException is thrown /// if the value is not of the specified type or - considering the TypeValidationFlags - is not convertible /// to the specified type. /// /// Name of the function requesting the value, for error message purposes. /// The desired data type. /// The argument number, for error message purposes. /// The TypeValidationFlags. /// /// Thrown /// if the value is not of the specified type or - considering the TypeValidationFlags - is not convertible /// to the specified type. public DynValue CheckType(string funcName, DataType desiredType, int argNum = -1, TypeValidationFlags flags = TypeValidationFlags.Default) { if (this.Type == desiredType) return this; bool allowNil = ((int)(flags & TypeValidationFlags.AllowNil) != 0); if (allowNil && this.IsNil()) return this; bool autoConvert = ((int)(flags & TypeValidationFlags.AutoConvert) != 0); if (autoConvert) { if (desiredType == DataType.Boolean) return DynValue.NewBoolean(this.CastToBool()); if (desiredType == DataType.Number) { double? v = this.CastToNumber(); if (v.HasValue) return DynValue.NewNumber(v.Value); } if (desiredType == DataType.String) { string v = this.CastToString(); if (v != null) return DynValue.NewString(v); } } if (this.IsVoid()) throw ScriptRuntimeException.BadArgumentNoValue(argNum, funcName, desiredType); throw ScriptRuntimeException.BadArgument(argNum, funcName, desiredType, this.Type, allowNil); } /// /// Checks if the type is a specific userdata type, and returns it or throws. /// /// /// Name of the function. /// The argument number. /// The flags. /// public T CheckUserDataType(string funcName, int argNum = -1, TypeValidationFlags flags = TypeValidationFlags.Default) { DynValue v = this.CheckType(funcName, DataType.UserData, argNum, flags); bool allowNil = ((int)(flags & TypeValidationFlags.AllowNil) != 0); if (v.IsNil()) return default(T); object o = v.UserData.Object; if (o != null && o is T) return (T)o; throw ScriptRuntimeException.BadArgumentUserData(argNum, funcName, typeof(T), o, allowNil); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/DynValue.cs.meta ================================================ fileFormatVersion: 2 guid: 5b0c4003b2a3633468b65f4caececf78 timeCreated: 1518177918 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/IScriptPrivateResource.cs ================================================  namespace MoonSharp.Interpreter { /// /// Common interface for all resources which are uniquely bound to a script. /// public interface IScriptPrivateResource { /// /// Gets the script owning this resource. /// /// /// The script owning this resource. /// Script OwnerScript { get; } } internal static class ScriptPrivateResource_Extension { public static void CheckScriptOwnership(this IScriptPrivateResource containingResource, DynValue[] values) { foreach (DynValue v in values) CheckScriptOwnership(containingResource, v); } public static void CheckScriptOwnership(this IScriptPrivateResource containingResource, DynValue value) { if (value != null) { var otherResource = value.GetAsPrivateResource(); if (otherResource != null) { CheckScriptOwnership(containingResource, otherResource); } } } public static void CheckScriptOwnership(this IScriptPrivateResource resource, Script script) { if (resource.OwnerScript != null && resource.OwnerScript != script && script != null) { throw new ScriptRuntimeException("Attempt to access a resource owned by a script, from another script"); } } public static void CheckScriptOwnership(this IScriptPrivateResource containingResource, IScriptPrivateResource itemResource) { if (itemResource != null) { if (containingResource.OwnerScript != null && containingResource.OwnerScript != itemResource.OwnerScript && itemResource.OwnerScript != null) { throw new ScriptRuntimeException("Attempt to perform operations with resources owned by different scripts."); } else if (containingResource.OwnerScript == null && itemResource.OwnerScript != null) { throw new ScriptRuntimeException("Attempt to perform operations with a script private resource on a shared resource."); } } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/IScriptPrivateResource.cs.meta ================================================ fileFormatVersion: 2 guid: 41f38f1d6a103774ba7a732909203bf2 timeCreated: 1518177918 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/RefIdObject.cs ================================================  namespace MoonSharp.Interpreter { /// /// A base class for many MoonSharp objects. /// Helds a ReferenceID property which gets a different value for every object instance, for debugging /// purposes. Note that the ID is not assigned in a thread safe manner for speed reason, so the IDs /// are guaranteed to be unique only if everything is running on one thread at a time. /// public class RefIdObject { private static int s_RefIDCounter = 0; private int m_RefID = ++s_RefIDCounter; /// /// Gets the reference identifier. /// /// /// The reference identifier. /// public int ReferenceID { get { return m_RefID; } } /// /// Formats a string with a type name and a ref-id /// /// The type name. /// public string FormatTypeString(string typeString) { return string.Format("{0}: {1:X8}", typeString, m_RefID); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/RefIdObject.cs.meta ================================================ fileFormatVersion: 2 guid: eb001b28da1e1ce45a71bcb9bf0614bd timeCreated: 1518177925 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/ScriptFunctionDelegate.cs ================================================  namespace MoonSharp.Interpreter { /// /// A Delegate type which can wrap a script function /// /// The arguments. /// The return value of the script function public delegate object ScriptFunctionDelegate(params object[] args); /// /// A Delegate type which can wrap a script function with a generic typed return value /// /// /// The arguments. /// The return value of the script function public delegate T ScriptFunctionDelegate(params object[] args); } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/ScriptFunctionDelegate.cs.meta ================================================ fileFormatVersion: 2 guid: 064c117195b76934ba3bcd64e1850aed timeCreated: 1518177914 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/SymbolRef.cs ================================================ using System.Collections.Generic; using System.IO; namespace MoonSharp.Interpreter { /// /// This class stores a possible l-value (that is a potential target of an assignment) /// public class SymbolRef { private static SymbolRef s_DefaultEnv = new SymbolRef() { i_Type = SymbolRefType.DefaultEnv }; // Fields are internal - direct access by the executor was a 10% improvement at profiling here! internal SymbolRefType i_Type; internal SymbolRef i_Env; internal int i_Index; internal string i_Name; /// /// Gets the type of this symbol reference /// public SymbolRefType Type { get { return i_Type; } } /// /// Gets the index of this symbol in its scope context /// public int Index { get { return i_Index; } } /// /// Gets the name of this symbol /// public string Name { get { return i_Name; } } /// /// Gets the environment this symbol refers to (for global symbols only) /// public SymbolRef Environment { get { return i_Env; } } /// /// Gets the default _ENV. /// public static SymbolRef DefaultEnv { get { return s_DefaultEnv; } } /// /// Creates a new symbol reference pointing to a global var /// /// The name. /// The _ENV symbol. /// public static SymbolRef Global(string name, SymbolRef envSymbol) { return new SymbolRef() { i_Index = -1, i_Type = SymbolRefType.Global, i_Env = envSymbol, i_Name = name }; } /// /// Creates a new symbol reference pointing to a local var /// /// The name. /// The index of the var in local scope. /// internal static SymbolRef Local(string name, int index) { //Debug.Assert(index >= 0, "Symbol Index < 0"); return new SymbolRef() { i_Index = index, i_Type = SymbolRefType.Local, i_Name = name }; } /// /// Creates a new symbol reference pointing to an upvalue var /// /// The name. /// The index of the var in closure scope. /// internal static SymbolRef Upvalue(string name, int index) { //Debug.Assert(index >= 0, "Symbol Index < 0"); return new SymbolRef() { i_Index = index, i_Type = SymbolRefType.Upvalue, i_Name = name }; } /// /// Returns a that represents this instance. /// /// /// A that represents this instance. /// public override string ToString() { if (i_Type == SymbolRefType.DefaultEnv) return "(default _ENV)"; else if (i_Type == SymbolRefType.Global) return string.Format("{2} : {0} / {1}", i_Type, i_Env, i_Name); else return string.Format("{2} : {0}[{1}]", i_Type, i_Index, i_Name); } /// /// Writes this instance to a binary stream /// internal void WriteBinary(BinaryWriter bw) { bw.Write((byte)this.i_Type); bw.Write(i_Index); bw.Write(i_Name); } /// /// Reads a symbolref from a binary stream /// internal static SymbolRef ReadBinary(BinaryReader br) { SymbolRef that = new SymbolRef(); that.i_Type = (SymbolRefType)br.ReadByte(); that.i_Index = br.ReadInt32(); that.i_Name = br.ReadString(); return that; } internal void WriteBinaryEnv(BinaryWriter bw, Dictionary symbolMap) { if (this.i_Env != null) bw.Write(symbolMap[i_Env]); else bw.Write(-1); } internal void ReadBinaryEnv(BinaryReader br, SymbolRef[] symbolRefs) { int idx = br.ReadInt32(); if (idx >= 0) i_Env = symbolRefs[idx]; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/SymbolRef.cs.meta ================================================ fileFormatVersion: 2 guid: 6521b541294172a4aa02c7a658ce6dd7 timeCreated: 1518177919 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/SymbolRefType.cs ================================================  namespace MoonSharp.Interpreter { /// /// Enumeration of the types of SymbolRef /// public enum SymbolRefType { /// /// The symbol ref of a local variable /// Local, /// /// The symbol ref of an upvalue variable /// Upvalue, /// /// The symbol ref of a global variable /// Global, /// /// The symbol ref of the global environment /// DefaultEnv, } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/SymbolRefType.cs.meta ================================================ fileFormatVersion: 2 guid: 1fdb7450e75610d4998dbb45a02f7eee timeCreated: 1518177916 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/Table.cs ================================================ using System.Collections.Generic; using System.Linq; using MoonSharp.Interpreter.DataStructs; namespace MoonSharp.Interpreter { /// /// A class representing a Lua table. /// public class Table : RefIdObject, IScriptPrivateResource { readonly LinkedList m_Values; readonly LinkedListIndex m_ValueMap; readonly LinkedListIndex m_StringMap; readonly LinkedListIndex m_ArrayMap; readonly Script m_Owner; int m_InitArray = 0; int m_CachedLength = -1; bool m_ContainsNilEntries = false; /// /// Initializes a new instance of the class. /// /// The owner script. public Table(Script owner) { m_Values = new LinkedList(); m_StringMap = new LinkedListIndex(m_Values); m_ArrayMap = new LinkedListIndex(m_Values); m_ValueMap = new LinkedListIndex(m_Values); m_Owner = owner; } /// /// Initializes a new instance of the class. /// /// The owner. /// The values for the "array-like" part of the table. public Table(Script owner, params DynValue[] arrayValues) : this(owner) { for (int i = 0; i < arrayValues.Length; i++) { this.Set(DynValue.NewNumber(i + 1), arrayValues[i]); } } /// /// Gets the script owning this resource. /// public Script OwnerScript { get { return m_Owner; } } /// /// Removes all items from the Table. /// public void Clear() { m_Values.Clear(); m_StringMap.Clear(); m_ArrayMap.Clear(); m_ValueMap.Clear(); m_CachedLength = -1; } /// /// Gets the integral key from a double. /// private int GetIntegralKey(double d) { int v = ((int)d); if (d >= 1.0 && d == v) return v; return -1; } /// /// Gets or sets the /// with the specified key(s). /// This will marshall CLR and MoonSharp objects in the best possible way. /// Multiple keys can be used to access subtables. /// /// /// The . /// /// The keys to access the table and subtables public object this[params object[] keys] { get { return Get(keys).ToObject(); } set { Set(keys, DynValue.FromObject(OwnerScript, value)); } } /// /// Gets or sets the with the specified key(s). /// This will marshall CLR and MoonSharp objects in the best possible way. /// /// /// The . /// /// The key. /// public object this[object key] { get { return Get(key).ToObject(); } set { Set(key, DynValue.FromObject(OwnerScript, value)); } } private Table ResolveMultipleKeys(object[] keys, out object key) { //Contract.Ensures(Contract.Result() != null); //Contract.Requires(keys != null); Table t = this; key = (keys.Length > 0) ? keys[0] : null; for (int i = 1; i < keys.Length; ++i) { DynValue vt = t.RawGet(key); if (vt == null) throw new ScriptRuntimeException("Key '{0}' did not point to anything"); if (vt.Type != DataType.Table) throw new ScriptRuntimeException("Key '{0}' did not point to a table"); t = vt.Table; key = keys[i]; } return t; } /// /// Append the value to the table using the next available integer index. /// /// The value. public void Append(DynValue value) { this.CheckScriptOwnership(value); PerformTableSet(m_ArrayMap, Length + 1, DynValue.NewNumber(Length + 1), value, true, Length + 1); } #region Set private void PerformTableSet(LinkedListIndex listIndex, T key, DynValue keyDynValue, DynValue value, bool isNumber, int appendKey) { TablePair prev = listIndex.Set(key, new TablePair(keyDynValue, value)); // If this is an insert, we can invalidate all iterators and collect dead keys if (m_ContainsNilEntries && value.IsNotNil() && (prev.Value == null || prev.Value.IsNil())) { CollectDeadKeys(); } // If this value is nil (and we didn't collect), set that there are nil entries, and invalidate array len cache else if (value.IsNil()) { m_ContainsNilEntries = true; if (isNumber) m_CachedLength = -1; } else if (isNumber) { // If this is an array insert, we might have to invalidate the array length if (prev.Value == null || prev.Value.IsNilOrNan()) { // If this is an array append, let's check the next element before blindly invalidating if (appendKey >= 0) { LinkedListNode next = m_ArrayMap.Find(appendKey + 1); if (next == null || next.Value.Value == null || next.Value.Value.IsNil()) { m_CachedLength += 1; } else { m_CachedLength = -1; } } else { m_CachedLength = -1; } } } } /// /// Sets the value associated to the specified key. /// /// The key. /// The value. public void Set(string key, DynValue value) { if (key == null) throw ScriptRuntimeException.TableIndexIsNil(); this.CheckScriptOwnership(value); PerformTableSet(m_StringMap, key, DynValue.NewString(key), value, false, -1); } /// /// Sets the value associated to the specified key. /// /// The key. /// The value. public void Set(int key, DynValue value) { this.CheckScriptOwnership(value); PerformTableSet(m_ArrayMap, key, DynValue.NewNumber(key), value, true, -1); } /// /// Sets the value associated to the specified key. /// /// The key. /// The value. public void Set(DynValue key, DynValue value) { if (key.IsNilOrNan()) { if (key.IsNil()) throw ScriptRuntimeException.TableIndexIsNil(); else throw ScriptRuntimeException.TableIndexIsNaN(); } if (key.Type == DataType.String) { Set(key.String, value); return; } if (key.Type == DataType.Number) { int idx = GetIntegralKey(key.Number); if (idx > 0) { Set(idx, value); return; } } this.CheckScriptOwnership(key); this.CheckScriptOwnership(value); PerformTableSet(m_ValueMap, key, key, value, false, -1); } /// /// Sets the value associated with the specified key. /// /// The key. /// The value. public void Set(object key, DynValue value) { if (key == null) throw ScriptRuntimeException.TableIndexIsNil(); if (key is string) Set((string)key, value); else if (key is int) Set((int)key, value); else Set(DynValue.FromObject(OwnerScript, key), value); } /// /// Sets the value associated with the specified keys. /// Multiple keys can be used to access subtables. /// /// The keys. /// The value. public void Set(object[] keys, DynValue value) { if (keys == null || keys.Length <= 0) throw ScriptRuntimeException.TableIndexIsNil(); object key; ResolveMultipleKeys(keys, out key).Set(key, value); } #endregion #region Get /// /// Gets the value associated with the specified key. /// /// The key. public DynValue Get(string key) { //Contract.Ensures(Contract.Result() != null); return RawGet(key) ?? DynValue.Nil; } /// /// Gets the value associated with the specified key. /// /// The key. public DynValue Get(int key) { //Contract.Ensures(Contract.Result() != null); return RawGet(key) ?? DynValue.Nil; } /// /// Gets the value associated with the specified key. /// /// The key. public DynValue Get(DynValue key) { //Contract.Ensures(Contract.Result() != null); return RawGet(key) ?? DynValue.Nil; } /// /// Gets the value associated with the specified key. /// (expressed as a ). /// /// The key. public DynValue Get(object key) { //Contract.Ensures(Contract.Result() != null); return RawGet(key) ?? DynValue.Nil; } /// /// Gets the value associated with the specified keys (expressed as an /// array of ). /// This will marshall CLR and MoonSharp objects in the best possible way. /// Multiple keys can be used to access subtables. /// /// The keys to access the table and subtables public DynValue Get(params object[] keys) { //Contract.Ensures(Contract.Result() != null); return RawGet(keys) ?? DynValue.Nil; } #endregion #region RawGet private static DynValue RawGetValue(LinkedListNode linkedListNode) { return (linkedListNode != null) ? linkedListNode.Value.Value : null; } /// /// Gets the value associated with the specified key, /// without bringing to Nil the non-existant values. /// /// The key. public DynValue RawGet(string key) { return RawGetValue(m_StringMap.Find(key)); } /// /// Gets the value associated with the specified key, /// without bringing to Nil the non-existant values. /// /// The key. public DynValue RawGet(int key) { return RawGetValue(m_ArrayMap.Find(key)); } /// /// Gets the value associated with the specified key, /// without bringing to Nil the non-existant values. /// /// The key. public DynValue RawGet(DynValue key) { if (key.Type == DataType.String) return RawGet(key.String); if (key.Type == DataType.Number) { int idx = GetIntegralKey(key.Number); if (idx > 0) return RawGet(idx); } return RawGetValue(m_ValueMap.Find(key)); } /// /// Gets the value associated with the specified key, /// without bringing to Nil the non-existant values. /// /// The key. public DynValue RawGet(object key) { if (key == null) return null; if (key is string) return RawGet((string)key); if (key is int) return RawGet((int)key); return RawGet(DynValue.FromObject(OwnerScript, key)); } /// /// Gets the value associated with the specified keys (expressed as an /// array of ). /// This will marshall CLR and MoonSharp objects in the best possible way. /// Multiple keys can be used to access subtables. /// /// The keys to access the table and subtables public DynValue RawGet(params object[] keys) { if (keys == null || keys.Length <= 0) return null; object key; return ResolveMultipleKeys(keys, out key).RawGet(key); } #endregion #region Remove private bool PerformTableRemove(LinkedListIndex listIndex, T key, bool isNumber) { var removed = listIndex.Remove(key); if (removed && isNumber) { m_CachedLength = -1; } return removed; } /// /// Remove the value associated with the specified key from the table. /// /// The key. /// true if values was successfully removed; otherwise, false. public bool Remove(string key) { return PerformTableRemove(m_StringMap, key, false); } /// /// Remove the value associated with the specified key from the table. /// /// The key. /// true if values was successfully removed; otherwise, false. public bool Remove(int key) { return PerformTableRemove(m_ArrayMap, key, true); } /// /// Remove the value associated with the specified key from the table. /// /// The key. /// true if values was successfully removed; otherwise, false. public bool Remove(DynValue key) { if (key.Type == DataType.String) return Remove(key.String); if (key.Type == DataType.Number) { int idx = GetIntegralKey(key.Number); if (idx > 0) return Remove(idx); } return PerformTableRemove(m_ValueMap, key, false); } /// /// Remove the value associated with the specified key from the table. /// /// The key. /// true if values was successfully removed; otherwise, false. public bool Remove(object key) { if (key is string) return Remove((string)key); if (key is int) return Remove((int)key); return Remove(DynValue.FromObject(OwnerScript, key)); } /// /// Remove the value associated with the specified keys from the table. /// Multiple keys can be used to access subtables. /// /// The key. /// true if values was successfully removed; otherwise, false. public bool Remove(params object[] keys) { if (keys == null || keys.Length <= 0) return false; object key; return ResolveMultipleKeys(keys, out key).Remove(key); } #endregion /// /// Collects the dead keys. This frees up memory but invalidates pending iterators. /// It's called automatically internally when the semantics of Lua tables allow, but can be forced /// externally if it's known that no iterators are pending. /// public void CollectDeadKeys() { for (LinkedListNode node = m_Values.First; node != null; node = node.Next) { if (node.Value.Value.IsNil()) { Remove(node.Value.Key); } } m_ContainsNilEntries = false; m_CachedLength = -1; } /// /// Returns the next pair from a value /// public TablePair? NextKey(DynValue v) { if (v.IsNil()) { LinkedListNode node = m_Values.First; if (node == null) return TablePair.Nil; else { if (node.Value.Value.IsNil()) return NextKey(node.Value.Key); else return node.Value; } } if (v.Type == DataType.String) { return GetNextOf(m_StringMap.Find(v.String)); } if (v.Type == DataType.Number) { int idx = GetIntegralKey(v.Number); if (idx > 0) { return GetNextOf(m_ArrayMap.Find(idx)); } } return GetNextOf(m_ValueMap.Find(v)); } private TablePair? GetNextOf(LinkedListNode linkedListNode) { while (true) { if (linkedListNode == null) return null; if (linkedListNode.Next == null) return TablePair.Nil; linkedListNode = linkedListNode.Next; if (!linkedListNode.Value.Value.IsNil()) return linkedListNode.Value; } } /// /// Gets the length of the "array part". /// public int Length { get { if (m_CachedLength < 0) { m_CachedLength = 0; for (int i = 1; m_ArrayMap.ContainsKey(i) && !m_ArrayMap.Find(i).Value.Value.IsNil(); i++) m_CachedLength = i; } return m_CachedLength; } } internal void InitNextArrayKeys(DynValue val, bool lastpos) { if (val.Type == DataType.Tuple && lastpos) { foreach (DynValue v in val.Tuple) InitNextArrayKeys(v, true); } else { Set(++m_InitArray, val.ToScalar()); } } /// /// Gets the meta-table associated with this instance. /// public Table MetaTable { get { return m_MetaTable; } set { this.CheckScriptOwnership(m_MetaTable); m_MetaTable = value; } } private Table m_MetaTable; /// /// Enumerates the key/value pairs. /// /// public IEnumerable Pairs { get { return m_Values.Select(n => new TablePair(n.Key, n.Value)); } } /// /// Enumerates the keys. /// /// public IEnumerable Keys { get { return m_Values.Select(n => n.Key); } } /// /// Enumerates the values /// /// public IEnumerable Values { get { return m_Values.Select(n => n.Value); } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/Table.cs.meta ================================================ fileFormatVersion: 2 guid: a58b7c65b53324c41bbb0b688b0da872 timeCreated: 1518177922 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/TablePair.cs ================================================  namespace MoonSharp.Interpreter { /// /// A class representing a key/value pair for Table use /// public struct TablePair { private static TablePair s_NilNode = new TablePair(DynValue.Nil, DynValue.Nil); private DynValue key, value; /// /// Gets the key. /// public DynValue Key { get { return key; } private set { Key = key; } } /// /// Gets or sets the value. /// public DynValue Value { get { return value; } set { if (key.IsNotNil()) Value = value; } } /// /// Initializes a new instance of the struct. /// /// The key. /// The value. public TablePair(DynValue key, DynValue val) { this.key = key; this.value = val; } /// /// Gets the nil pair /// public static TablePair Nil { get { return s_NilNode; } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/TablePair.cs.meta ================================================ fileFormatVersion: 2 guid: b6eeb0946eeb8934298f1ba016939d8c timeCreated: 1518177923 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/TailCallData.cs ================================================  namespace MoonSharp.Interpreter { /// /// Class used to support "tail" continuations - a way for C# / Lua interaction which supports /// coroutine yielding (at the expense of a LOT of added complexity in calling code). /// public class TailCallData { /// /// Gets or sets the function to call /// public DynValue Function { get; set; } /// /// Gets or sets the arguments to the function /// public DynValue[] Args { get; set; } /// /// Gets or sets the callback to be used as a continuation. /// public CallbackFunction Continuation { get; set; } /// /// Gets or sets the callback to be used in case of errors. /// public CallbackFunction ErrorHandler { get; set; } /// /// Gets or sets the error handler to be called before stack unwinding /// public DynValue ErrorHandlerBeforeUnwind { get; set; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/TailCallData.cs.meta ================================================ fileFormatVersion: 2 guid: 8eb19340d54724a46992c3db5a02e838 timeCreated: 1518177922 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/TypeValidationFlags.cs ================================================ using System; namespace MoonSharp.Interpreter { /// /// Flags to alter the way the DynValue.CheckType and other related functions operate on data types for /// validation. /// [Flags] public enum TypeValidationFlags { /// /// No type validation specific behaviour /// None = 0, /// /// Nil and Void values are allowed (and returned by the call) /// AllowNil = 0x1, /// /// Simple autoconversions are attempted: /// 1) Numbers are convertible to strings /// 2) Strings are convertible to numbers if they contain a number /// 3) Everything is convertible to boolean (with void and nil converting to 'false', everything else converting to 'true') /// Note: if both AutoConvert and AllowNil are specified, nils will NOT be converted to false booleans. /// AutoConvert = 0x2, /// /// The default : Autoconverting values, no nils. /// Default = AutoConvert } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/TypeValidationFlags.cs.meta ================================================ fileFormatVersion: 2 guid: 40abe28a137aecd46b1fd83b1405e8ba timeCreated: 1518177918 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/UserData.cs ================================================ using System; using System.Collections.Generic; using System.Reflection; using System.Linq; using MoonSharp.Interpreter.Interop; using MoonSharp.Interpreter.Interop.BasicDescriptors; using MoonSharp.Interpreter.Interop.RegistrationPolicies; using MoonSharp.Interpreter.Interop.StandardDescriptors; using MoonSharp.Interpreter.Interop.UserDataRegistries; using MoonSharp.Interpreter.Serialization.Json; namespace MoonSharp.Interpreter { /// /// Class exposing C# objects as Lua userdata. /// For efficiency, a global registry of types is maintained, instead of a per-script one. /// public class UserData : RefIdObject { private UserData() { // This type can only be instantiated using one of the Create methods } /// /// Gets or sets the "uservalue". See debug.getuservalue and debug.setuservalue. /// http://www.lua.org/manual/5.2/manual.html#pdf-debug.setuservalue /// public DynValue UserValue { get; set; } /// /// Gets the object associated to this userdata (null for statics) /// public object Object { get; private set; } /// /// Gets the type descriptor of this userdata /// public IUserDataDescriptor Descriptor { get; private set; } static UserData() { RegistrationPolicy = InteropRegistrationPolicy.Default; RegisterType(InteropAccessMode.NoReflectionAllowed); RegisterType(InteropAccessMode.HideMembers); RegisterType(InteropAccessMode.NoReflectionAllowed); RegisterType(InteropAccessMode.Reflection); DefaultAccessMode = InteropAccessMode.LazyOptimized; } /// /// Registers a type for userdata interop /// /// The type to be registered /// The access mode (optional). /// Friendly name for the type (optional) public static IUserDataDescriptor RegisterType(InteropAccessMode accessMode = InteropAccessMode.Default, string friendlyName = null) { return TypeDescriptorRegistry.RegisterType_Impl(typeof(T), accessMode, friendlyName, null); } /// /// Registers a type for userdata interop /// /// The type to be registered /// The access mode (optional). /// Friendly name for the type (optional) public static IUserDataDescriptor RegisterType(Type type, InteropAccessMode accessMode = InteropAccessMode.Default, string friendlyName = null) { return TypeDescriptorRegistry.RegisterType_Impl(type, accessMode, friendlyName, null); } /// /// Registers a proxy type. /// /// The proxy factory. /// The access mode. /// A friendly name for the descriptor. /// public static IUserDataDescriptor RegisterProxyType(IProxyFactory proxyFactory, InteropAccessMode accessMode = InteropAccessMode.Default, string friendlyName = null) { return TypeDescriptorRegistry.RegisterProxyType_Impl(proxyFactory, accessMode, friendlyName); } /// /// Registers a proxy type using a delegate. /// /// The type of the proxy. /// The type of the target. /// A delegate creating a proxy object from a target object. /// The access mode. /// A friendly name for the descriptor. /// public static IUserDataDescriptor RegisterProxyType(Func wrapDelegate, InteropAccessMode accessMode = InteropAccessMode.Default, string friendlyName = null) where TProxy : class where TTarget : class { return RegisterProxyType(new DelegateProxyFactory(wrapDelegate), accessMode, friendlyName); } /// /// Registers a type with a custom userdata descriptor /// /// The type to be registered /// The custom descriptor. public static IUserDataDescriptor RegisterType(IUserDataDescriptor customDescriptor) { return TypeDescriptorRegistry.RegisterType_Impl(typeof(T), InteropAccessMode.Default, null, customDescriptor); } /// /// Registers a type with a custom userdata descriptor /// /// The type to be registered /// The custom descriptor. public static IUserDataDescriptor RegisterType(Type type, IUserDataDescriptor customDescriptor) { return TypeDescriptorRegistry.RegisterType_Impl(type, InteropAccessMode.Default, null, customDescriptor); } /// /// Registers a type with a custom userdata descriptor /// /// The custom descriptor. public static IUserDataDescriptor RegisterType(IUserDataDescriptor customDescriptor) { return TypeDescriptorRegistry.RegisterType_Impl(customDescriptor.Type, InteropAccessMode.Default, null, customDescriptor); } /// /// Registers all types marked with a MoonSharpUserDataAttribute that ar contained in an assembly. /// /// The assembly. /// if set to true extension types are registered to the appropriate registry. public static void RegisterAssembly(Assembly asm = null, bool includeExtensionTypes = false) { if (asm == null) { #if NETFX_CORE || DOTNET_CORE throw new NotSupportedException("Assembly.GetCallingAssembly is not supported on target framework."); #else asm = Assembly.GetCallingAssembly(); #endif } TypeDescriptorRegistry.RegisterAssembly(asm, includeExtensionTypes); } /// /// Determines whether the specified type is registered. Note that this should be used only to check if a descriptor /// has been registered EXACTLY. For many types a descriptor can still be created, for example through the descriptor /// of a base type or implemented interfaces. /// /// The type. /// public static bool IsTypeRegistered(Type t) { return TypeDescriptorRegistry.IsTypeRegistered(t); } /// /// Determines whether the specified type is registered. Note that this should be used only to check if a descriptor /// has been registered EXACTLY. For many types a descriptor can still be created, for example through the descriptor /// of a base type or implemented interfaces. /// /// The type. /// public static bool IsTypeRegistered() { return TypeDescriptorRegistry.IsTypeRegistered(typeof(T)); } /// /// Unregisters a type. /// WARNING: unregistering types at runtime is a dangerous practice and may cause unwanted errors. /// Use this only for testing purposes or to re-register the same type in a slightly different way. /// Additionally, it's a good practice to discard all previous loaded scripts after calling this method. /// /// The type to be unregistered public static void UnregisterType() { TypeDescriptorRegistry.UnregisterType(typeof(T)); } /// /// Unregisters a type. /// WARNING: unregistering types at runtime is a dangerous practice and may cause unwanted errors. /// Use this only for testing purposes or to re-register the same type in a slightly different way. /// Additionally, it's a good practice to discard all previous loaded scripts after calling this method. /// /// The The type to be unregistered public static void UnregisterType(Type t) { TypeDescriptorRegistry.UnregisterType(t); } /// /// Creates a userdata DynValue from the specified object, using a specific descriptor /// /// The object /// The descriptor. /// public static DynValue Create(object o, IUserDataDescriptor descr) { return DynValue.NewUserData(new UserData() { Descriptor = descr, Object = o }); } /// /// Creates a userdata DynValue from the specified object /// /// The object /// public static DynValue Create(object o) { var descr = GetDescriptorForObject(o); if (descr == null) { if (o is Type) return CreateStatic((Type)o); return null; } return Create(o, descr); } /// /// Creates a static userdata DynValue from the specified IUserDataDescriptor /// /// The IUserDataDescriptor /// public static DynValue CreateStatic(IUserDataDescriptor descr) { if (descr == null) return null; return DynValue.NewUserData(new UserData() { Descriptor = descr, Object = null }); } /// /// Creates a static userdata DynValue from the specified Type /// /// The type /// public static DynValue CreateStatic(Type t) { return CreateStatic(GetDescriptorForType(t, false)); } /// /// Creates a static userdata DynValue from the specified Type /// /// The Type /// public static DynValue CreateStatic() { return CreateStatic(GetDescriptorForType(typeof(T), false)); } /// /// Gets or sets the registration policy to be used in the whole application /// public static IRegistrationPolicy RegistrationPolicy { get { return TypeDescriptorRegistry.RegistrationPolicy; } set { TypeDescriptorRegistry.RegistrationPolicy = value; } } /// /// Gets or sets the default access mode to be used in the whole application /// /// /// The default access mode. /// /// InteropAccessMode is InteropAccessMode.Default public static InteropAccessMode DefaultAccessMode { get { return TypeDescriptorRegistry.DefaultAccessMode; } set { TypeDescriptorRegistry.DefaultAccessMode = value; } } /// /// Registers an extension Type (that is a type containing extension methods) /// /// The type. /// The InteropAccessMode. public static void RegisterExtensionType(Type type, InteropAccessMode mode = InteropAccessMode.Default) { ExtensionMethodsRegistry.RegisterExtensionType(type, mode); } /// /// Gets all the extension methods which can match a given name and extending a given Type /// /// The name. /// The extended type. /// public static List GetExtensionMethodsByNameAndType(string name, Type extendedType) { return ExtensionMethodsRegistry.GetExtensionMethodsByNameAndType(name, extendedType); } /// /// Gets a number which gets incremented everytime the extension methods registry changes. /// Use this to invalidate caches based on extension methods /// /// public static int GetExtensionMethodsChangeVersion() { return ExtensionMethodsRegistry.GetExtensionMethodsChangeVersion(); } /// /// Gets the best possible type descriptor for a specified CLR type. /// /// The CLR type for which the descriptor is desired. /// if set to true interfaces are used in the search. /// public static IUserDataDescriptor GetDescriptorForType(bool searchInterfaces) { return TypeDescriptorRegistry.GetDescriptorForType(typeof(T), searchInterfaces); } /// /// Gets the best possible type descriptor for a specified CLR type. /// /// The CLR type for which the descriptor is desired. /// if set to true interfaces are used in the search. /// public static IUserDataDescriptor GetDescriptorForType(Type type, bool searchInterfaces) { return TypeDescriptorRegistry.GetDescriptorForType(type, searchInterfaces); } /// /// Gets the best possible type descriptor for a specified CLR object. /// /// The object. /// public static IUserDataDescriptor GetDescriptorForObject(object o) { return TypeDescriptorRegistry.GetDescriptorForType(o.GetType(), true); } /// /// Gets a table with the description of registered types. /// /// if set to true, it will also include the last found descriptor of all unregistered types. /// public static Table GetDescriptionOfRegisteredTypes(bool useHistoricalData = false) { DynValue output = DynValue.NewPrimeTable(); var registeredTypesPairs = useHistoricalData ? TypeDescriptorRegistry.RegisteredTypesHistory : TypeDescriptorRegistry.RegisteredTypes; foreach (var descpair in registeredTypesPairs) { IWireableDescriptor sd = descpair.Value as IWireableDescriptor; if (sd != null) { DynValue t = DynValue.NewPrimeTable(); output.Table.Set(descpair.Key.FullName, t); sd.PrepareForWiring(t.Table); } } return output.Table; } /// /// Gets all the registered types. /// /// if set to true, it will also include the last found descriptor of all unregistered types. /// public static IEnumerable GetRegisteredTypes(bool useHistoricalData = false) { var registeredTypesPairs = useHistoricalData ? TypeDescriptorRegistry.RegisteredTypesHistory : TypeDescriptorRegistry.RegisteredTypes; return registeredTypesPairs.Select(p => p.Value.Type); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/UserData.cs.meta ================================================ fileFormatVersion: 2 guid: b1652b8e842a0554292997cd9aee30b4 timeCreated: 1518177923 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/WellKnownSymbols.cs ================================================  namespace MoonSharp.Interpreter { /// /// Constants of well known "symbols" in the MoonSharp grammar /// public static class WellKnownSymbols { /// /// The variadic argument symbol ("...") /// public const string VARARGS = "..."; /// /// The environment symbol ("_ENV") /// public const string ENV = "_ENV"; } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/WellKnownSymbols.cs.meta ================================================ fileFormatVersion: 2 guid: 55838de19bb72534ab54d60fe2e26b12 timeCreated: 1518177918 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/YieldRequest.cs ================================================  namespace MoonSharp.Interpreter { /// /// Class wrapping a request to yield a coroutine /// public class YieldRequest { /// /// The return values of the coroutine /// public DynValue[] ReturnValues; /// /// Gets or sets a value indicating whether this is a forced yield. /// public bool Forced { get; internal set; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes/YieldRequest.cs.meta ================================================ fileFormatVersion: 2 guid: 6dc37118ffab7504584e181102f12b19 timeCreated: 1518177920 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/DataTypes.meta ================================================ fileFormatVersion: 2 guid: 076cb7e60dea4fb4b970b0d8d8f77983 folderAsset: yes timeCreated: 1518177911 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Debugging/DebugService.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using System.Text; using MoonSharp.Interpreter.Execution.VM; namespace MoonSharp.Interpreter.Debugging { /// /// Class providing services specific to debugger implementations. /// /// public sealed class DebugService : IScriptPrivateResource { Processor m_Processor; internal DebugService(Script script, Processor processor) { OwnerScript = script; m_Processor = processor; } /// /// Gets the script owning this resource. /// /// /// The script owning this resource. /// public Script OwnerScript { get; private set; } /// /// Resets the break points for a given file. Supports only line-based breakpoints. /// /// The source. /// The lines. /// The lines for which breakpoints have been set public HashSet ResetBreakPoints(SourceCode src, HashSet lines) { return m_Processor.ResetBreakPoints(src, lines); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Debugging/DebugService.cs.meta ================================================ fileFormatVersion: 2 guid: 728299ecb4ef2a746830070495823713 timeCreated: 1518177920 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Debugging/DebuggerAction.cs ================================================ using System; namespace MoonSharp.Interpreter.Debugging { /// /// Wrapper for a debugger initiated action /// public class DebuggerAction { /// /// Type of the action /// public enum ActionType { /// /// Step-in at the bytecode level /// ByteCodeStepIn, /// /// Step-over at the bytecode level /// ByteCodeStepOver, /// /// Step-out at the bytecode level /// ByteCodeStepOut, /// /// Step-in at the source level /// StepIn, /// /// Step-over at the source level /// StepOver, /// /// Step-out at the source level /// StepOut, /// /// Continue execution "freely" /// Run, /// /// Toggles breakpoint /// ToggleBreakpoint, /// /// Sets a breakpoint /// SetBreakpoint, /// /// Clears a breakpoint /// ClearBreakpoint, /// /// Reset all breakpoints /// ResetBreakpoints, /// /// Refresh the data /// Refresh, /// /// Hard refresh of data /// HardRefresh, /// /// No action /// None, } /// /// The type of action /// public ActionType Action { get; set; } /// /// Gets the time stamp UTC of this action /// public DateTime TimeStampUTC { get; private set; } /// /// Gets or sets the source identifier this action refers to. /// public int SourceID { get; set; } /// /// Gets or sets the source line this action refers to. /// public int SourceLine { get; set; } /// /// Gets or sets the source column this action refers to. /// public int SourceCol { get; set; } /// /// Gets or sets the lines. This is used for the ResetBreakpoints and sets line-based bps only. /// public int[] Lines { get; set; } /// /// Initializes a new instance of the class. /// public DebuggerAction() { TimeStampUTC = DateTime.UtcNow; } /// /// Gets the age of this debugger action /// public TimeSpan Age { get { return DateTime.UtcNow - TimeStampUTC; } } /// /// Returns a that represents this instance. /// /// /// A that represents this instance. /// public override string ToString() { if (Action == ActionType.ToggleBreakpoint || Action == ActionType.SetBreakpoint || Action == ActionType.ClearBreakpoint) { return string.Format("{0} {1}:({2},{3})", Action, SourceID, SourceLine, SourceCol); } else { return Action.ToString(); } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Debugging/DebuggerAction.cs.meta ================================================ fileFormatVersion: 2 guid: dc7ac4e0b72a1b84eb0f448840e36be2 timeCreated: 1518177925 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Debugging/DebuggerCaps.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace MoonSharp.Interpreter.Debugging { /// /// Enumeration of capabilities for a debugger /// [Flags] public enum DebuggerCaps { /// /// Flag set if the debugger can debug source code /// CanDebugSourceCode = 0x1, /// /// Flag set if the can debug VM bytecode /// CanDebugByteCode = 0x2, /// /// Flag set if the debugger uses breakpoints based on lines instead of tokens /// HasLineBasedBreakpoints = 0x4 } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Debugging/DebuggerCaps.cs.meta ================================================ fileFormatVersion: 2 guid: 88787184b21843943a2f3964f4afdbd6 timeCreated: 1518177921 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Debugging/IDebugger.cs ================================================ using System.Collections.Generic; namespace MoonSharp.Interpreter.Debugging { /// /// Interface for debuggers to implement, in order to provide debugging facilities to Scripts. /// public interface IDebugger { /// /// Gets the debugger caps. /// DebuggerCaps GetDebuggerCaps(); /// /// Sets the debug service for this debugger /// /// The debug service. void SetDebugService(DebugService debugService); /// /// Called by the script engine when a source code is added or changed. /// /// The source code object. void SetSourceCode(SourceCode sourceCode); /// /// Called by the script engine when the bytecode changes. /// /// The bytecode source void SetByteCode(string[] byteCode); /// /// Called by the script engine at execution time to check if a break has /// been requested. Should return pretty fast as it's called A LOT. /// bool IsPauseRequested(); /// /// Called by the script engine when a runtime error occurs. /// The debugger can return true to signal the engine that it wants to break /// into the source of the error. If it does so, it should also return true /// to subsequent calls to IsPauseRequested(). /// /// The runtime exception. /// True if this error should break execution. bool SignalRuntimeException(ScriptRuntimeException ex); /// /// Called by the script engine to get what action to do next. /// /// The instruction pointer in bytecode. /// The source reference. /// T DebuggerAction GetAction(int ip, SourceRef sourceref); /// /// Called by the script engine when the execution ends. /// void SignalExecutionEnded(); /// /// Called by the script engine to update watches of a given type. Note /// that this method is not called only for watches in the strictest term, /// but also for the stack, etc. /// /// Type of the watch. /// The items. void Update(WatchType watchType, IEnumerable items); /// /// Called by the script engine to get which expressions are active /// watches in the debugger. /// /// A list of watches List GetWatchItems(); /// /// Called by the script engine to refresh the breakpoint list. /// void RefreshBreakpoints(IEnumerable refs); } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Debugging/IDebugger.cs.meta ================================================ fileFormatVersion: 2 guid: 17165039516e74142990cfa35e91af4d timeCreated: 1518177915 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Debugging/SourceCode.cs ================================================ using System; using System.Collections.Generic; using System.Text; namespace MoonSharp.Interpreter.Debugging { /// /// Class representing the source code of a given script /// public class SourceCode : IScriptPrivateResource { /// /// Gets the name of the source code /// public string Name { get; private set; } /// /// Gets the source code as a string /// public string Code { get; private set; } /// /// Gets the source code lines. /// public string[] Lines { get; private set; } /// /// Gets the script owning this resource. /// public Script OwnerScript { get; private set; } /// /// Gets the source identifier inside a script /// public int SourceID { get; private set; } internal List Refs { get; private set; } internal SourceCode(string name, string code, int sourceID, Script ownerScript) { Refs = new List(); List lines = new List(); Name = name; Code = code; lines.Add(string.Format("-- Begin of chunk : {0} ", name)); lines.AddRange(Code.Split('\n')); Lines = lines.ToArray(); OwnerScript = ownerScript; SourceID = sourceID; } /// /// Gets the code snippet represented by a source ref /// /// The source code reference. /// public string GetCodeSnippet(SourceRef sourceCodeRef) { if (sourceCodeRef.FromLine == sourceCodeRef.ToLine) { int from = AdjustStrIndex(Lines[sourceCodeRef.FromLine], sourceCodeRef.FromChar); int to = AdjustStrIndex(Lines[sourceCodeRef.FromLine], sourceCodeRef.ToChar); return Lines[sourceCodeRef.FromLine].Substring(from, to - from); } StringBuilder sb = new StringBuilder(); for (int i = sourceCodeRef.FromLine; i <= sourceCodeRef.ToLine; i++) { if (i == sourceCodeRef.FromLine) { int from = AdjustStrIndex(Lines[i], sourceCodeRef.FromChar); sb.Append(Lines[i].Substring(from)); } else if (i == sourceCodeRef.ToLine) { int to = AdjustStrIndex(Lines[i], sourceCodeRef.ToChar); sb.Append(Lines[i].Substring(0, to + 1)); } else { sb.Append(Lines[i]); } } return sb.ToString(); } private int AdjustStrIndex(string str, int loc) { return Math.Max(Math.Min(str.Length, loc), 0); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Debugging/SourceCode.cs.meta ================================================ fileFormatVersion: 2 guid: 6290b126772de4b40ab7394b5842600e timeCreated: 1518177919 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Debugging/SourceRef.cs ================================================ using System; namespace MoonSharp.Interpreter.Debugging { /// /// Class representing a reference to source code interval /// public class SourceRef { /// /// Gets a value indicating whether this location is inside CLR . /// public bool IsClrLocation { get; private set; } /// /// Gets the index of the source. /// public int SourceIdx { get; private set; } /// /// Gets from which column the source code ref starts /// public int FromChar { get; private set; } /// /// Gets to which column the source code ref ends /// public int ToChar { get; private set; } /// /// Gets from which line the source code ref starts /// public int FromLine { get; private set; } /// /// Gets to which line the source code ref ends /// public int ToLine { get; private set; } /// /// Gets a value indicating whether this instance is a stop "step" in source mode /// public bool IsStepStop { get; private set; } /// /// Gets a value indicating whether this instance is a breakpoint /// public bool Breakpoint; /// /// Gets a value indicating whether this instance cannot be set as a breakpoint /// public bool CannotBreakpoint { get; private set; } internal static SourceRef GetClrLocation() { return new SourceRef(0, 0, 0, 0, 0, false) { IsClrLocation = true }; } public SourceRef(SourceRef src, bool isStepStop) { SourceIdx = src.SourceIdx; FromChar = src.FromChar; ToChar = src.ToChar; FromLine = src.FromLine; ToLine = src.ToLine; IsStepStop = isStepStop; } public SourceRef(int sourceIdx, int from, int to, int fromline, int toline, bool isStepStop) { SourceIdx = sourceIdx; FromChar = from; ToChar = to; FromLine = fromline; ToLine = toline; IsStepStop = isStepStop; } /// /// Returns a that represents this instance. /// /// /// A that represents this instance. /// public override string ToString() { return string.Format("[{0}]{1} ({2}, {3}) -> ({4}, {5})", SourceIdx, IsStepStop ? "*" : " ", FromLine, FromChar, ToLine, ToChar); } internal int GetLocationDistance(int sourceIdx, int line, int col) { const int PER_LINE_FACTOR = 1600; // we avoid computing real lines length and approximate with heuristics.. if (sourceIdx != SourceIdx) return int.MaxValue; if (FromLine == ToLine) { if (line == FromLine) { if (col >= FromChar && col <= ToChar) return 0; else if (col < FromChar) return FromChar - col; else return col - ToChar; } else { return Math.Abs(line - FromLine) * PER_LINE_FACTOR; } } else if (line == FromLine) { if (col < FromChar) return FromChar - col; else return 0; } else if (line == ToLine) { if (col > ToChar) return col - ToChar; else return 0; } else if (line > FromLine && line < ToLine) { return 0; } else if (line < FromLine) { return (FromLine - line) * PER_LINE_FACTOR; } else { return (line - ToLine) * PER_LINE_FACTOR; } } /// /// Gets whether the source ref includes the specified location /// /// Index of the source. /// The line. /// The column. /// public bool IncludesLocation(int sourceIdx, int line, int col) { if (sourceIdx != SourceIdx || line < FromLine || line > ToLine) return false; if (FromLine == ToLine) return col >= FromChar && col <= ToChar; if (line == FromLine) return col >= FromChar; if (line == ToLine) return col <= ToChar; return true; } /// /// Sets the CannotBreakpoint flag. /// /// public SourceRef SetNoBreakPoint() { CannotBreakpoint = true; return this; } /// /// Formats the location according to script preferences /// /// The script. /// if set to true the classic Lua format is forced. /// public string FormatLocation(Script script, bool forceClassicFormat = false) { SourceCode sc = script.GetSourceCode(this.SourceIdx); if (this.IsClrLocation) return "[clr]"; if (script.Options.UseLuaErrorLocations || forceClassicFormat) { return string.Format("{0}:{1}", sc.Name, this.FromLine); } else if (this.FromLine == this.ToLine) { if (this.FromChar == this.ToChar) { return string.Format("{0}:({1},{2})", sc.Name, this.FromLine, this.FromChar, this.ToLine, this.ToChar); } else { return string.Format("{0}:({1},{2}-{4})", sc.Name, this.FromLine, this.FromChar, this.ToLine, this.ToChar); } } else { return string.Format("{0}:({1},{2}-{3},{4})", sc.Name, this.FromLine, this.FromChar, this.ToLine, this.ToChar); } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Debugging/SourceRef.cs.meta ================================================ fileFormatVersion: 2 guid: 4d3913ea123ab2545ab26dc6cfca8e01 timeCreated: 1518177918 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Debugging/WatchItem.cs ================================================  namespace MoonSharp.Interpreter.Debugging { /// /// A watch item for the debugger to consume. /// Most properties make or not sense depending on the WatchType. /// public class WatchItem { /// /// Gets or sets the address of the item /// public int Address { get; set; } /// /// Gets or sets the base pointer (base value of v-stack at entering the function). /// Valid only for call-stack items /// public int BasePtr { get; set; } /// /// Gets or sets the return address. /// Valid only for call-stack items /// public int RetAddress { get; set; } /// /// Gets or sets the name of the item /// public string Name { get; set; } /// /// Gets or sets the value of the item /// public DynValue Value { get; set; } /// /// Gets or sets the symbol reference of the item /// public SymbolRef LValue { get; set; } /// /// Gets or sets a value indicating whether this instance is generating an error. /// public bool IsError { get; set; } /// /// Gets or sets the source location this item refers to. /// public SourceRef Location { get; set; } /// /// Returns a that represents this instance. /// /// /// A that represents this instance. /// public override string ToString() { return string.Format("{0}:{1}:{2}:{3}:{4}:{5}", Address, BasePtr, RetAddress, Name ?? "(null)", Value != null ? Value.ToString() : "(null)", LValue != null ? LValue.ToString() : "(null)"); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Debugging/WatchItem.cs.meta ================================================ fileFormatVersion: 2 guid: bd278e018ce79594b8bcac63af77bf70 timeCreated: 1518177923 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Debugging/WatchType.cs ================================================  namespace MoonSharp.Interpreter.Debugging { /// /// Enumeration of the possible watch types /// public enum WatchType { /// /// A real variable watch /// Watches, /// /// The status of the v-stack /// VStack, /// /// The call stack /// CallStack, /// /// The list of coroutines /// Coroutines, /// /// Topmost local variables /// Locals, /// /// The list of currently active coroutines /// Threads, /// /// The maximum value of this enum /// MaxValue } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Debugging/WatchType.cs.meta ================================================ fileFormatVersion: 2 guid: 353ec6b61c26385429b3e5737afdbed1 timeCreated: 1518177917 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Debugging.meta ================================================ fileFormatVersion: 2 guid: cc497bea565664946ac1d91ec3fe37fc folderAsset: yes timeCreated: 1518177911 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Diagnostics/PerformanceCounter.cs ================================================  namespace MoonSharp.Interpreter.Diagnostics { /// /// Enumeration of the possible performance counters /// public enum PerformanceCounter { /// /// Measures the time spent parsing the source creating the AST /// AstCreation, /// /// Measures the time spent converting ASTs in bytecode /// Compilation, /// /// Measures the time spent in executing scripts /// Execution, /// /// Measures the on the fly creation/compilation of functions in userdata descriptors /// AdaptersCompilation, /// /// Sentinel value to get the enum size /// LastValue } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Diagnostics/PerformanceCounter.cs.meta ================================================ fileFormatVersion: 2 guid: fd3dba4d1efe6174bad1faf8ca58b13f timeCreated: 1518177926 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Diagnostics/PerformanceCounterType.cs ================================================  namespace MoonSharp.Interpreter.Diagnostics { /// /// Enumeration of unit of measures of the performance counters /// public enum PerformanceCounterType { /// /// The performance counter is specified in bytes (of memory) /// MemoryBytes, /// /// The performance counter is specified in milliseconds /// TimeMilliseconds, } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Diagnostics/PerformanceCounterType.cs.meta ================================================ fileFormatVersion: 2 guid: 86aabdee710de654e8c778ab5798d3cf timeCreated: 1518177921 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Diagnostics/PerformanceCounters/DummyPerformanceStopwatch.cs ================================================ using System; namespace MoonSharp.Interpreter.Diagnostics.PerformanceCounters { class DummyPerformanceStopwatch : IPerformanceStopwatch, IDisposable { public static DummyPerformanceStopwatch Instance = new DummyPerformanceStopwatch(); PerformanceResult m_Result; private DummyPerformanceStopwatch() { m_Result = new PerformanceResult() { Counter = 0, Global = true, Instances = 0, Name = "::dummy::", Type = PerformanceCounterType.TimeMilliseconds }; } public IDisposable Start() { return this; } public PerformanceResult GetResult() { return m_Result; } public void Dispose() { } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Diagnostics/PerformanceCounters/DummyPerformanceStopwatch.cs.meta ================================================ fileFormatVersion: 2 guid: 7396a44e90ace1042a70b71ef16e0a48 timeCreated: 1518177920 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Diagnostics/PerformanceCounters/GlobalPerformanceStopwatch.cs ================================================ using System; using System.Diagnostics; namespace MoonSharp.Interpreter.Diagnostics.PerformanceCounters { /// /// This class is not *really* IDisposable.. it's just use to have a RAII like pattern. /// You are free to reuse this instance after calling Dispose. /// internal class GlobalPerformanceStopwatch : IPerformanceStopwatch { private class GlobalPerformanceStopwatch_StopwatchObject : IDisposable { Stopwatch m_Stopwatch; GlobalPerformanceStopwatch m_Parent; public GlobalPerformanceStopwatch_StopwatchObject(GlobalPerformanceStopwatch parent) { m_Parent = parent; m_Stopwatch = Stopwatch.StartNew(); } public void Dispose() { m_Stopwatch.Stop(); m_Parent.SignalStopwatchTerminated(m_Stopwatch); } } int m_Count = 0; long m_Elapsed = 0; PerformanceCounter m_Counter; public GlobalPerformanceStopwatch(PerformanceCounter perfcounter) { m_Counter = perfcounter; } private void SignalStopwatchTerminated(Stopwatch sw) { m_Elapsed += sw.ElapsedMilliseconds; m_Count += 1; } public IDisposable Start() { return new GlobalPerformanceStopwatch_StopwatchObject(this); } public PerformanceResult GetResult() { return new PerformanceResult() { Type = PerformanceCounterType.TimeMilliseconds, Global = false, Name = m_Counter.ToString(), Instances = m_Count, Counter = m_Elapsed }; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Diagnostics/PerformanceCounters/GlobalPerformanceStopwatch.cs.meta ================================================ fileFormatVersion: 2 guid: a364338f46a37e641956d8a3d2976fbe timeCreated: 1518177922 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Diagnostics/PerformanceCounters/IPerformanceStopwatch.cs ================================================ using System; namespace MoonSharp.Interpreter.Diagnostics.PerformanceCounters { internal interface IPerformanceStopwatch { IDisposable Start(); PerformanceResult GetResult(); } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Diagnostics/PerformanceCounters/IPerformanceStopwatch.cs.meta ================================================ fileFormatVersion: 2 guid: 068ac7a21cfd1dd4ab0bd1a5c3496ea0 timeCreated: 1518177914 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Diagnostics/PerformanceCounters/PerformanceStopwatch.cs ================================================ using System; using System.Diagnostics; namespace MoonSharp.Interpreter.Diagnostics.PerformanceCounters { /// /// This class is not *really* IDisposable.. it's just use to have a RAII like pattern. /// You are free to reuse this instance after calling Dispose. /// internal class PerformanceStopwatch : IDisposable, IPerformanceStopwatch { Stopwatch m_Stopwatch = new Stopwatch(); int m_Count = 0; int m_Reentrant = 0; PerformanceCounter m_Counter; public PerformanceStopwatch(PerformanceCounter perfcounter) { m_Counter = perfcounter; } public IDisposable Start() { if (m_Reentrant == 0) { m_Count += 1; m_Stopwatch.Start(); } m_Reentrant += 1; return this; } public void Dispose() { m_Reentrant -= 1; if (m_Reentrant == 0) { m_Stopwatch.Stop(); } } public PerformanceResult GetResult() { return new PerformanceResult() { Type = PerformanceCounterType.TimeMilliseconds, Global = false, Name = m_Counter.ToString(), Instances = m_Count, Counter = m_Stopwatch.ElapsedMilliseconds }; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Diagnostics/PerformanceCounters/PerformanceStopwatch.cs.meta ================================================ fileFormatVersion: 2 guid: e180a9bd23487664da5dba5307bda06a timeCreated: 1518177925 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Diagnostics/PerformanceCounters.meta ================================================ fileFormatVersion: 2 guid: ca83cb1af52ec5c47b6c95a4ca946ae6 folderAsset: yes timeCreated: 1518177913 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Diagnostics/PerformanceResult.cs ================================================ using System; namespace MoonSharp.Interpreter.Diagnostics { /// /// The result of a performance counter /// public class PerformanceResult { /// /// Gets the name of the performance counter which generated this result. /// public string Name { get; internal set; } /// /// Gets the quantity monitored - see Type to understand what this field contains /// public long Counter { get; internal set; } /// /// Gets the number of instances which led to the specified counter being incremented - e.g. the times a specific /// code is executed, or object instanced /// public int Instances { get; internal set; } /// /// Gets a value indicating whether this is global or relative to the resource /// for which it's called. /// public bool Global { get; internal set; } /// /// Gets the unit of measure of the Counter field. /// public PerformanceCounterType Type { get; internal set; } /// /// Returns a that represents this instance. /// public override string ToString() { return string.Format("{0}{1} : {2} times / {3} {4}", Name, Global ? "(g)" : "", Instances, Counter, PerformanceCounterTypeToString(Type)); } /// /// Converts a PerformanceCounterType to a string. /// /// The type. public static string PerformanceCounterTypeToString(PerformanceCounterType Type) { switch (Type) { case PerformanceCounterType.MemoryBytes: return "bytes"; case PerformanceCounterType.TimeMilliseconds: return "ms"; default: throw new InvalidOperationException("PerformanceCounterType has invalid value " + Type.ToString()); } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Diagnostics/PerformanceResult.cs.meta ================================================ fileFormatVersion: 2 guid: 5224bac4b53cf9344b066155682f0584 timeCreated: 1518177918 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Diagnostics/PerformanceStatistics.cs ================================================ using System; using System.Text; using MoonSharp.Interpreter.Diagnostics.PerformanceCounters; namespace MoonSharp.Interpreter.Diagnostics { /// /// A single object of this type exists for every script and gives access to performance statistics. /// public class PerformanceStatistics { IPerformanceStopwatch[] m_Stopwatches = new IPerformanceStopwatch[(int)PerformanceCounter.LastValue]; static IPerformanceStopwatch[] m_GlobalStopwatches = new IPerformanceStopwatch[(int)PerformanceCounter.LastValue]; bool m_Enabled = false; /// /// Gets or sets a value indicating whether this collection of performance stats is enabled. /// /// /// true if enabled; otherwise, false. /// public bool Enabled { get { return m_Enabled; } set { if (value && !m_Enabled) { if (m_GlobalStopwatches[(int)PerformanceCounter.AdaptersCompilation] == null) m_GlobalStopwatches[(int)PerformanceCounter.AdaptersCompilation] = new GlobalPerformanceStopwatch(PerformanceCounter.AdaptersCompilation); for (int i = 0; i < (int)PerformanceCounter.LastValue; i++) m_Stopwatches[i] = m_GlobalStopwatches[i] ?? new PerformanceStopwatch((PerformanceCounter)i); } else if (!value && m_Enabled) { m_Stopwatches = new IPerformanceStopwatch[(int)PerformanceCounter.LastValue]; m_GlobalStopwatches = new IPerformanceStopwatch[(int)PerformanceCounter.LastValue]; } m_Enabled = value; } } /// /// Gets the result of the specified performance counter . /// /// The PerformanceCounter. /// public PerformanceResult GetPerformanceCounterResult(PerformanceCounter pc) { var pco = m_Stopwatches[(int)pc]; return (pco != null) ? pco.GetResult() : null; } /// /// Starts a stopwatch. /// /// internal IDisposable StartStopwatch(PerformanceCounter pc) { var pco = m_Stopwatches[(int)pc]; return (pco != null) ? pco.Start() : null; } /// /// Starts a stopwatch. /// /// internal static IDisposable StartGlobalStopwatch(PerformanceCounter pc) { var pco = m_GlobalStopwatches[(int)pc]; return (pco != null) ? pco.Start() : null; } /// /// Gets a string with a complete performance log. /// /// public string GetPerformanceLog() { StringBuilder sb = new StringBuilder(); for (int i = 0; i < (int)PerformanceCounter.LastValue; i++) { var res = this.GetPerformanceCounterResult((PerformanceCounter)i); if (res != null) sb.AppendLine(res.ToString()); } return sb.ToString(); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Diagnostics/PerformanceStatistics.cs.meta ================================================ fileFormatVersion: 2 guid: 7066c77726f77bd4ea935bf46a322bea timeCreated: 1518177920 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Diagnostics.meta ================================================ fileFormatVersion: 2 guid: 814b8024b6a458e4cb648a742ab52874 folderAsset: yes timeCreated: 1518177911 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Errors/DynamicExpressionException.cs ================================================  using System; namespace MoonSharp.Interpreter { /// /// Exception thrown when a dynamic expression is invalid /// #if !(PCL || ((!UNITY_EDITOR) && (ENABLE_DOTNET)) || NETFX_CORE) [Serializable] #endif public class DynamicExpressionException : ScriptRuntimeException { /// /// Initializes a new instance of the class. /// /// The format. /// The arguments. public DynamicExpressionException(string format, params object[] args) : base(": " + format, args) { } /// /// Initializes a new instance of the class. /// /// The message. public DynamicExpressionException(string message) : base(": " + message) { } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Errors/DynamicExpressionException.cs.meta ================================================ fileFormatVersion: 2 guid: 87b709a5d18ec484f91cb4d9919d4bc9 timeCreated: 1518177921 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Errors/InternalErrorException.cs ================================================ using System; namespace MoonSharp.Interpreter { /// /// Exception thrown when an inconsistent state is reached in the interpreter /// #if !(PCL || ((!UNITY_EDITOR) && (ENABLE_DOTNET)) || NETFX_CORE) [Serializable] #endif public class InternalErrorException : InterpreterException { internal InternalErrorException(string message) : base(message) { } internal InternalErrorException(string format, params object[] args) : base(format, args) { } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Errors/InternalErrorException.cs.meta ================================================ fileFormatVersion: 2 guid: b198fcc5994e1f741ace0112a1cf9653 timeCreated: 1518177923 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Errors/InterpreterException.cs ================================================ using System; using System.Collections.Generic; using MoonSharp.Interpreter.Debugging; namespace MoonSharp.Interpreter { /// /// Base type of all exceptions thrown in MoonSharp /// #if !(PCL || ((!UNITY_EDITOR) && (ENABLE_DOTNET)) || NETFX_CORE) [Serializable] #endif public class InterpreterException : Exception { /// /// Initializes a new instance of the class. /// /// The ex. protected InterpreterException(Exception ex, string message) : base(message, ex) { } /// /// Initializes a new instance of the class. /// /// The ex. protected InterpreterException(Exception ex) : base(ex.Message, ex) { } /// /// Initializes a new instance of the class. /// /// The message that describes the error. protected InterpreterException(string message) : base(message) { } /// /// Initializes a new instance of the class. /// /// The format. /// The arguments. protected InterpreterException(string format, params object[] args) : base(string.Format(format, args)) { } /// /// Gets the instruction pointer of the execution (if it makes sense) /// public int InstructionPtr { get; internal set; } /// /// Gets the interpreter call stack. /// public IList CallStack { get; internal set; } /// /// Gets the decorated message (error message plus error location in script) if possible. /// public string DecoratedMessage { get; internal set; } /// /// Gets or sets a value indicating whether the message should not be decorated /// public bool DoNotDecorateMessage { get; set; } internal void DecorateMessage(Script script, SourceRef sref, int ip = -1) { if (string.IsNullOrEmpty(this.DecoratedMessage)) { if (DoNotDecorateMessage) { this.DecoratedMessage = this.Message; return; } else if (sref != null) { this.DecoratedMessage = string.Format("{0}: {1}", sref.FormatLocation(script), this.Message); } else { this.DecoratedMessage = string.Format("bytecode:{0}: {1}", ip, this.Message); } } } /// /// Rethrows this instance if /// /// public virtual void Rethrow() { } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Errors/InterpreterException.cs.meta ================================================ fileFormatVersion: 2 guid: c11f8d5dd901f564eb73fbfec00e0811 timeCreated: 1518177923 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Errors/ScriptRuntimeException.cs ================================================ using System; using MoonSharp.Interpreter.Interop; using MoonSharp.Interpreter.Interop.BasicDescriptors; namespace MoonSharp.Interpreter { /// /// Exception for all runtime errors. In addition to constructors, it offers a lot of static methods /// generating more "standard" Lua errors. /// #if !(PCL || ((!UNITY_EDITOR) && (ENABLE_DOTNET)) || NETFX_CORE) [Serializable] #endif public class ScriptRuntimeException : InterpreterException { /// /// Initializes a new instance of the class. /// /// The ex. public ScriptRuntimeException(Exception ex) : base(ex) { } /// /// Initializes a new instance of the class. /// /// The ex. public ScriptRuntimeException(ScriptRuntimeException ex) : base(ex, ex.DecoratedMessage) { this.DecoratedMessage = Message; this.DoNotDecorateMessage = true; } /// /// Initializes a new instance of the class. /// /// The message that describes the error. public ScriptRuntimeException(string message) : base(message) { } /// /// Initializes a new instance of the class. /// /// The format. /// The arguments. public ScriptRuntimeException(string format, params object[] args) : base(format, args) { } /// /// Creates a ScriptRuntimeException with a predefined error message specifying that /// an arithmetic operation was attempted on non-numbers /// /// The left operand. /// The right operand (or null). /// The exception to be raised. /// If both are numbers public static ScriptRuntimeException ArithmeticOnNonNumber(DynValue l, DynValue r = null) { if (l.Type != DataType.Number && l.Type != DataType.String) return new ScriptRuntimeException("attempt to perform arithmetic on a {0} value", l.Type.ToLuaTypeString()); else if (r != null && r.Type != DataType.Number && r.Type != DataType.String) return new ScriptRuntimeException("attempt to perform arithmetic on a {0} value", r.Type.ToLuaTypeString()); else if (l.Type == DataType.String || (r != null && r.Type == DataType.String)) return new ScriptRuntimeException("attempt to perform arithmetic on a string value"); else throw new InternalErrorException("ArithmeticOnNonNumber - both are numbers"); } /// /// Creates a ScriptRuntimeException with a predefined error message specifying that /// a concat operation was attempted on non-strings /// /// The left operand. /// The right operand. /// The exception to be raised. /// If both are numbers or strings public static ScriptRuntimeException ConcatOnNonString(DynValue l, DynValue r) { if (l.Type != DataType.Number && l.Type != DataType.String) return new ScriptRuntimeException("attempt to concatenate a {0} value", l.Type.ToLuaTypeString()); else if (r != null && r.Type != DataType.Number && r.Type != DataType.String) return new ScriptRuntimeException("attempt to concatenate a {0} value", r.Type.ToLuaTypeString()); else throw new InternalErrorException("ConcatOnNonString - both are numbers/strings"); } /// /// Creates a ScriptRuntimeException with a predefined error message specifying that /// a len operator was applied on an invalid operand /// /// The operand. /// The exception to be raised. public static ScriptRuntimeException LenOnInvalidType(DynValue r) { return new ScriptRuntimeException("attempt to get length of a {0} value", r.Type.ToLuaTypeString()); } /// /// Creates a ScriptRuntimeException with a predefined error message specifying that /// a comparison operator was applied on an invalid combination of operand types /// /// The left operand. /// The right operand. /// The exception to be raised. public static ScriptRuntimeException CompareInvalidType(DynValue l, DynValue r) { if (l.Type.ToLuaTypeString() == r.Type.ToLuaTypeString()) return new ScriptRuntimeException("attempt to compare two {0} values", l.Type.ToLuaTypeString()); else return new ScriptRuntimeException("attempt to compare {0} with {1}", l.Type.ToLuaTypeString(), r.Type.ToLuaTypeString()); } /// /// Creates a ScriptRuntimeException with a predefined error message specifying that /// a function was called with a bad argument /// /// The argument number (0-based). /// Name of the function generating this error. /// The error message. /// The exception to be raised. public static ScriptRuntimeException BadArgument(int argNum, string funcName, string message) { return new ScriptRuntimeException("bad argument #{0} to '{1}' ({2})", argNum + 1, funcName, message); } /// /// Creates a ScriptRuntimeException with a predefined error message specifying that /// a function was called with a bad userdata argument /// /// The argument number (0-based). /// Name of the function generating this error. /// The expected System.Type. /// The object which was used. /// True if nils were allowed in this call. /// /// The exception to be raised. /// public static ScriptRuntimeException BadArgumentUserData(int argNum, string funcName, Type expected, object got, bool allowNil) { return new ScriptRuntimeException("bad argument #{0} to '{1}' (userdata<{2}>{3} expected, got {4})", argNum + 1, funcName, expected.Name, allowNil ? "nil or " : "", got != null ? "userdata<" + got.GetType().Name + ">" : "null" ); } /// /// Creates a ScriptRuntimeException with a predefined error message specifying that /// a function was called with a bad argument /// /// The argument number (0-based). /// Name of the function generating this error. /// The expected data type. /// The data type received. /// True if nils were allowed in this call. /// /// The exception to be raised. /// public static ScriptRuntimeException BadArgument(int argNum, string funcName, DataType expected, DataType got, bool allowNil) { return BadArgument(argNum, funcName, expected.ToErrorTypeString(), got.ToErrorTypeString(), allowNil); } /// /// Creates a ScriptRuntimeException with a predefined error message specifying that /// a function was called with a bad argument /// /// The argument number (0-based). /// Name of the function generating this error. /// The expected type description. /// The description of the type received. /// True if nils were allowed in this call. /// /// The exception to be raised. /// public static ScriptRuntimeException BadArgument(int argNum, string funcName, string expected, string got, bool allowNil) { return new ScriptRuntimeException("bad argument #{0} to '{1}' ({2}{3} expected, got {4})", argNum + 1, funcName, allowNil ? "nil or " : "", expected, got); } /// /// Creates a ScriptRuntimeException with a predefined error message specifying that /// a function was called with no value when a value was required. /// /// This function creates a message like "bad argument #xxx to 'yyy' (zzz expected, got no value)" /// while creates a message like "bad argument #xxx to 'yyy' (value expected)" /// /// The argument number (0-based). /// Name of the function generating this error. /// The expected data type. /// /// The exception to be raised. /// public static ScriptRuntimeException BadArgumentNoValue(int argNum, string funcName, DataType expected) { return new ScriptRuntimeException("bad argument #{0} to '{1}' ({2} expected, got no value)", argNum + 1, funcName, expected.ToErrorTypeString()); } /// /// Creates a ScriptRuntimeException with a predefined error message specifying that /// an out of range index was specified /// /// The argument number (0-based). /// Name of the function generating this error. /// /// The exception to be raised. /// public static ScriptRuntimeException BadArgumentIndexOutOfRange(string funcName, int argNum) { return new ScriptRuntimeException("bad argument #{0} to '{1}' (index out of range)", argNum + 1, funcName); } /// /// Creates a ScriptRuntimeException with a predefined error message specifying that /// a function was called with a negative number when a positive one was expected. /// /// The argument number (0-based). /// Name of the function generating this error. /// /// The exception to be raised. /// public static ScriptRuntimeException BadArgumentNoNegativeNumbers(int argNum, string funcName) { return new ScriptRuntimeException("bad argument #{0} to '{1}' (not a non-negative number in proper range)", argNum + 1, funcName); } /// /// Creates a ScriptRuntimeException with a predefined error message specifying that /// a function was called with no value when a value was required. /// This function creates a message like "bad argument #xxx to 'yyy' (value expected)" /// while creates a message like "bad argument #xxx to 'yyy' (zzz expected, got no value)" /// /// The argument number (0-based). /// Name of the function generating this error. /// /// The exception to be raised. /// public static ScriptRuntimeException BadArgumentValueExpected(int argNum, string funcName) { return new ScriptRuntimeException("bad argument #{0} to '{1}' (value expected)", argNum + 1, funcName); } /// /// Creates a ScriptRuntimeException with a predefined error message specifying that /// an invalid attempt to index the specified object was made /// /// The object. /// /// The exception to be raised. /// public static ScriptRuntimeException IndexType(DynValue obj) { return new ScriptRuntimeException("attempt to index a {0} value", obj.Type.ToLuaTypeString()); } /// /// Creates a ScriptRuntimeException with a predefined error message specifying that /// a loop was detected when performing __index over metatables. /// /// /// The exception to be raised. /// public static ScriptRuntimeException LoopInIndex() { return new ScriptRuntimeException("loop in gettable"); } /// /// Creates a ScriptRuntimeException with a predefined error message specifying that /// a loop was detected when performing __newindex over metatables. /// /// /// The exception to be raised. /// public static ScriptRuntimeException LoopInNewIndex() { return new ScriptRuntimeException("loop in settable"); } /// /// Creates a ScriptRuntimeException with a predefined error message specifying that /// a loop was detected when performing __call over metatables. /// /// /// The exception to be raised. /// public static ScriptRuntimeException LoopInCall() { return new ScriptRuntimeException("loop in call"); } /// /// Creates a ScriptRuntimeException with a predefined error message specifying that /// a table indexing operation used nil as the key. /// /// /// The exception to be raised. /// public static ScriptRuntimeException TableIndexIsNil() { return new ScriptRuntimeException("table index is nil"); } /// /// Creates a ScriptRuntimeException with a predefined error message specifying that /// a table indexing operation used a NaN as the key. /// /// /// The exception to be raised. /// public static ScriptRuntimeException TableIndexIsNaN() { return new ScriptRuntimeException("table index is NaN"); } /// /// Creates a ScriptRuntimeException with a predefined error message specifying that /// a conversion to number failed. /// /// /// Selects the correct error message: /// 0 - "value must be a number" /// 1 - "'for' initial value must be a number" /// 2 - "'for' step must be a number" /// 3 - "'for' limit must be a number" /// /// /// The exception to be raised. /// public static ScriptRuntimeException ConvertToNumberFailed(int stage) { switch (stage) { case 1: return new ScriptRuntimeException("'for' initial value must be a number"); case 2: return new ScriptRuntimeException("'for' step must be a number"); case 3: return new ScriptRuntimeException("'for' limit must be a number"); default: return new ScriptRuntimeException("value must be a number"); } } /// /// Creates a ScriptRuntimeException with a predefined error message specifying that /// a conversion of a CLR type to a Lua type has failed. /// /// The object which could not be converted. /// /// The exception to be raised. /// public static ScriptRuntimeException ConvertObjectFailed(object obj) { return new ScriptRuntimeException("cannot convert clr type {0}", obj.GetType()); } /// /// Creates a ScriptRuntimeException with a predefined error message specifying that /// a conversion of a Lua type to a CLR type has failed. /// /// The Lua type. /// /// The exception to be raised. /// public static ScriptRuntimeException ConvertObjectFailed(DataType t) { return new ScriptRuntimeException("cannot convert a {0} to a clr type", t.ToString().ToLowerInvariant()); } /// /// Creates a ScriptRuntimeException with a predefined error message specifying that /// a constrained conversion of a Lua type to a CLR type has failed. /// /// The Lua type. /// The expected CLR type. /// /// The exception to be raised. /// public static ScriptRuntimeException ConvertObjectFailed(DataType t, Type t2) { return new ScriptRuntimeException("cannot convert a {0} to a clr type {1}", t.ToString().ToLowerInvariant(), t2.FullName); } /// /// Creates a ScriptRuntimeException with a predefined error message specifying that /// a userdata of a specific CLR type was expected and a non-userdata type was passed. /// /// The Lua type. /// The expected CLR type. /// /// The exception to be raised. /// public static ScriptRuntimeException UserDataArgumentTypeMismatch(DataType t, Type clrType) { return new ScriptRuntimeException("cannot find a conversion from a MoonSharp {0} to a clr {1}", t.ToString().ToLowerInvariant(), clrType.FullName); } /// /// Creates a ScriptRuntimeException with a predefined error message specifying that /// an attempt to index an invalid member of a userdata was done. /// /// The name of the userdata type. /// The field name. /// /// The exception to be raised. /// public static ScriptRuntimeException UserDataMissingField(string typename, string fieldname) { return new ScriptRuntimeException("cannot access field {0} of userdata<{1}>", fieldname, typename); } /// /// Creates a ScriptRuntimeException with a predefined error message specifying that /// an attempt resume a coroutine in an invalid state was done. /// /// The state of the coroutine. /// /// The exception to be raised. /// public static ScriptRuntimeException CannotResumeNotSuspended(CoroutineState state) { if (state == CoroutineState.Dead) return new ScriptRuntimeException("cannot resume dead coroutine"); else return new ScriptRuntimeException("cannot resume non-suspended coroutine"); } /// /// Creates a ScriptRuntimeException with a predefined error message specifying that /// an attempt to yield across a CLR boundary was made. /// /// /// The exception to be raised. /// public static ScriptRuntimeException CannotYield() { return new ScriptRuntimeException("attempt to yield across a CLR-call boundary"); } /// /// Creates a ScriptRuntimeException with a predefined error message specifying that /// an attempt to yield from the main coroutine was made. /// /// /// The exception to be raised. /// public static ScriptRuntimeException CannotYieldMain() { return new ScriptRuntimeException("attempt to yield from outside a coroutine"); } /// /// Creates a ScriptRuntimeException with a predefined error message specifying that /// an attempt to call a non-function was made /// /// The lua non-function data type. /// The debug text to aid location (appears as "near 'xxx'"). /// public static ScriptRuntimeException AttemptToCallNonFunc(DataType type, string debugText = null) { string functype = type.ToErrorTypeString(); if (debugText != null) return new ScriptRuntimeException("attempt to call a {0} value near '{1}'", functype, debugText); else return new ScriptRuntimeException("attempt to call a {0} value", functype); } /// /// Creates a ScriptRuntimeException with a predefined error message specifying that /// an attempt to access a non-static member from a static userdata was made /// /// The member descriptor. public static ScriptRuntimeException AccessInstanceMemberOnStatics(IMemberDescriptor desc) { return new ScriptRuntimeException("attempt to access instance member {0} from a static userdata", desc.Name); } /// /// Creates a ScriptRuntimeException with a predefined error message specifying that /// an attempt to access a non-static member from a static userdata was made /// /// The type descriptor. /// The member descriptor. /// public static ScriptRuntimeException AccessInstanceMemberOnStatics(IUserDataDescriptor typeDescr, IMemberDescriptor desc) { return new ScriptRuntimeException("attempt to access instance member {0}.{1} from a static userdata", typeDescr.Name, desc.Name); } public static ScriptRuntimeException CallFromAnotherScript() { return new ScriptRuntimeException("Attempt to call a function from another script. Please use the \"script.Call()\" function instead."); } /// /// Rethrows this instance if /// /// public override void Rethrow() { if (Script.GlobalOptions.RethrowExceptionNested) throw new ScriptRuntimeException(this); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Errors/ScriptRuntimeException.cs.meta ================================================ fileFormatVersion: 2 guid: 26a7dcece733f9943b4599d65aef9371 timeCreated: 1518177916 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Errors/SyntaxErrorException.cs ================================================ using System; using MoonSharp.Interpreter.Debugging; using MoonSharp.Interpreter.Tree; namespace MoonSharp.Interpreter { /// /// Exception for all parsing/lexing errors. /// #if !(PCL || ((!UNITY_EDITOR) && (ENABLE_DOTNET)) || NETFX_CORE) [Serializable] #endif public class SyntaxErrorException : InterpreterException { internal Token Token { get; private set; } /// /// Gets or sets a value indicating whether this exception was caused by premature stream termination (that is, unexpected EOF). /// This can be used in REPL interfaces to tell between unrecoverable errors and those which can be recovered by extra input. /// public bool IsPrematureStreamTermination { get; set; } internal SyntaxErrorException(Token t, string format, params object[] args) : base(format, args) { Token = t; } internal SyntaxErrorException(Token t, string message) : base(message) { Token = t; } internal SyntaxErrorException(Script script, SourceRef sref, string format, params object[] args) : base(format, args) { DecorateMessage(script, sref); } internal SyntaxErrorException(Script script, SourceRef sref, string message) : base(message) { DecorateMessage(script, sref); } private SyntaxErrorException(SyntaxErrorException syntaxErrorException) : base(syntaxErrorException, syntaxErrorException.DecoratedMessage) { this.Token = syntaxErrorException.Token; this.DecoratedMessage = Message; } internal void DecorateMessage(Script script) { if (Token != null) { DecorateMessage(script, Token.GetSourceRef(false)); } } /// /// Rethrows this instance if /// /// public override void Rethrow() { if (Script.GlobalOptions.RethrowExceptionNested) throw new SyntaxErrorException(this); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Errors/SyntaxErrorException.cs.meta ================================================ fileFormatVersion: 2 guid: daab8eee971bfbd4e9dea302587f11c9 timeCreated: 1518177924 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Errors.meta ================================================ fileFormatVersion: 2 guid: 233f3151931fcca41af2b56f4980380d folderAsset: yes timeCreated: 1518177911 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/DynamicExpression.cs ================================================ using MoonSharp.Interpreter.Tree.Expressions; namespace MoonSharp.Interpreter { /// /// Represents a dynamic expression in the script /// public class DynamicExpression : IScriptPrivateResource { DynamicExprExpression m_Exp; DynValue m_Constant; /// /// The code which generated this expression /// public readonly string ExpressionCode; internal DynamicExpression(Script S, string strExpr, DynamicExprExpression expr) { ExpressionCode = strExpr; OwnerScript = S; m_Exp = expr; } internal DynamicExpression(Script S, string strExpr, DynValue constant) { ExpressionCode = strExpr; OwnerScript = S; m_Constant = constant; } /// /// Evaluates the expression /// /// The context. /// public DynValue Evaluate(ScriptExecutionContext context = null) { context = context ?? OwnerScript.CreateDynamicExecutionContext(); this.CheckScriptOwnership(context.GetScript()); if (m_Constant != null) return m_Constant; return m_Exp.Eval(context); } /// /// Finds a symbol in the expression /// /// The context. /// public SymbolRef FindSymbol(ScriptExecutionContext context) { this.CheckScriptOwnership(context.GetScript()); if (m_Exp != null) return m_Exp.FindDynamic(context); else return null; } /// /// Gets the script owning this resource. /// /// /// The script owning this resource. /// public Script OwnerScript { get; private set; } /// /// Determines whether this instance is a constant expression /// /// public bool IsConstant() { return m_Constant != null; } /// /// Returns a hash code for this instance. /// /// /// A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. /// public override int GetHashCode() { return ExpressionCode.GetHashCode(); } /// /// Determines whether the specified , is equal to this instance. /// /// The to compare with this instance. /// /// true if the specified is equal to this instance; otherwise, false. /// public override bool Equals(object obj) { DynamicExpression o = obj as DynamicExpression; if (o == null) return false; return o.ExpressionCode == this.ExpressionCode; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/DynamicExpression.cs.meta ================================================ fileFormatVersion: 2 guid: e7de3c30fbb7b114fa245d202543667c timeCreated: 1518177925 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/InstructionFieldUsage.cs ================================================ using System; using MoonSharp.Interpreter.Execution.VM; namespace MoonSharp.Interpreter.Execution { [Flags] internal enum InstructionFieldUsage { None = 0, Symbol = 0x1, SymbolList = 0x2, Name = 0x4, Value = 0x8, NumVal = 0x10, NumVal2 = 0x20, NumValAsCodeAddress = 0x8010 } internal static class InstructionFieldUsage_Extensions { internal static InstructionFieldUsage GetFieldUsage(this OpCode op) { switch (op) { case OpCode.TblInitN: case OpCode.Scalar: case OpCode.IterUpd: case OpCode.IterPrep: case OpCode.NewTable: case OpCode.Concat: case OpCode.LessEq: case OpCode.Less: case OpCode.Eq: case OpCode.Add: case OpCode.Sub: case OpCode.Mul: case OpCode.Div: case OpCode.Mod: case OpCode.Not: case OpCode.Len: case OpCode.Neg: case OpCode.Power: case OpCode.CNot: case OpCode.ToBool: return InstructionFieldUsage.None; case OpCode.Pop: case OpCode.Copy: case OpCode.TblInitI: case OpCode.ExpTuple: case OpCode.Incr: case OpCode.ToNum: case OpCode.Ret: case OpCode.MkTuple: return InstructionFieldUsage.NumVal; case OpCode.Jump: case OpCode.Jf: case OpCode.JNil: case OpCode.JFor: case OpCode.JtOrPop: case OpCode.JfOrPop: return InstructionFieldUsage.NumValAsCodeAddress; case OpCode.Swap: case OpCode.Clean: return InstructionFieldUsage.NumVal | InstructionFieldUsage.NumVal2; case OpCode.Local: case OpCode.Upvalue: return InstructionFieldUsage.Symbol; case OpCode.IndexSet: case OpCode.IndexSetN: case OpCode.IndexSetL: return InstructionFieldUsage.Symbol | InstructionFieldUsage.Value | InstructionFieldUsage.NumVal | InstructionFieldUsage.NumVal2; case OpCode.StoreLcl: case OpCode.StoreUpv: return InstructionFieldUsage.Symbol | InstructionFieldUsage.NumVal | InstructionFieldUsage.NumVal2; case OpCode.Index: case OpCode.IndexL: case OpCode.IndexN: case OpCode.Literal: return InstructionFieldUsage.Value; case OpCode.Args: return InstructionFieldUsage.SymbolList; case OpCode.BeginFn: return InstructionFieldUsage.SymbolList | InstructionFieldUsage.NumVal | InstructionFieldUsage.NumVal2; case OpCode.Closure: return InstructionFieldUsage.SymbolList | InstructionFieldUsage.NumVal; case OpCode.Nop: case OpCode.Debug: case OpCode.Invalid: return InstructionFieldUsage.Name; case OpCode.Call: case OpCode.ThisCall: return InstructionFieldUsage.NumVal | InstructionFieldUsage.Name; case OpCode.Meta: return InstructionFieldUsage.NumVal | InstructionFieldUsage.NumVal2 | InstructionFieldUsage.Value | InstructionFieldUsage.Name; default: throw new NotImplementedException(string.Format("InstructionFieldUsage for instruction {0}", (int)op)); } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/InstructionFieldUsage.cs.meta ================================================ fileFormatVersion: 2 guid: 1a35837fe3a68ee41bc0f148e7167bd4 timeCreated: 1518177915 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/Scopes/BuildTimeScope.cs ================================================ using System.Collections.Generic; using System.Linq; using MoonSharp.Interpreter.Execution.Scopes; using MoonSharp.Interpreter.Tree.Statements; namespace MoonSharp.Interpreter.Execution { internal class BuildTimeScope { List m_Frames = new List(); List m_ClosureBuilders = new List(); public void PushFunction(IClosureBuilder closureBuilder, bool hasVarArgs) { m_ClosureBuilders.Add(closureBuilder); m_Frames.Add(new BuildTimeScopeFrame(hasVarArgs)); } public void PushBlock() { m_Frames.Last().PushBlock(); } public RuntimeScopeBlock PopBlock() { return m_Frames.Last().PopBlock(); } public RuntimeScopeFrame PopFunction() { var last = m_Frames.Last(); last.ResolveLRefs(); m_Frames.RemoveAt(m_Frames.Count - 1); m_ClosureBuilders.RemoveAt(m_ClosureBuilders.Count - 1); return last.GetRuntimeFrameData(); } public SymbolRef Find(string name) { SymbolRef local = m_Frames.Last().Find(name); if (local != null) return local; for (int i = m_Frames.Count - 2; i >= 0; i--) { SymbolRef symb = m_Frames[i].Find(name); if (symb != null) { symb = CreateUpValue(this, symb, i, m_Frames.Count - 2); if (symb != null) return symb; } } return CreateGlobalReference(name); } public SymbolRef CreateGlobalReference(string name) { if (name == WellKnownSymbols.ENV) throw new InternalErrorException("_ENV passed in CreateGlobalReference"); SymbolRef env = Find(WellKnownSymbols.ENV); return SymbolRef.Global(name, env); } public void ForceEnvUpValue() { Find(WellKnownSymbols.ENV); } private SymbolRef CreateUpValue(BuildTimeScope buildTimeScope, SymbolRef symb, int closuredFrame, int currentFrame) { // it's a 0-level upvalue. Just create it and we're done. if (closuredFrame == currentFrame) return m_ClosureBuilders[currentFrame + 1].CreateUpvalue(this, symb); SymbolRef upvalue = CreateUpValue(buildTimeScope, symb, closuredFrame, currentFrame - 1); return m_ClosureBuilders[currentFrame + 1].CreateUpvalue(this, upvalue); } public SymbolRef DefineLocal(string name) { return m_Frames.Last().DefineLocal(name); } public SymbolRef TryDefineLocal(string name) { return m_Frames.Last().TryDefineLocal(name); } public bool CurrentFunctionHasVarArgs() { return m_Frames.Last().HasVarArgs; } internal void DefineLabel(LabelStatement label) { m_Frames.Last().DefineLabel(label); } internal void RegisterGoto(GotoStatement gotostat) { m_Frames.Last().RegisterGoto(gotostat); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/Scopes/BuildTimeScope.cs.meta ================================================ fileFormatVersion: 2 guid: 656100351955cab448fe831781592e1e timeCreated: 1518177919 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/Scopes/BuildTimeScopeBlock.cs ================================================ using System; using System.Collections.Generic; using MoonSharp.Interpreter.Tree.Statements; namespace MoonSharp.Interpreter.Execution.Scopes { internal class BuildTimeScopeBlock { internal BuildTimeScopeBlock Parent { get; private set; } internal List ChildNodes { get; private set; } internal RuntimeScopeBlock ScopeBlock { get; private set; } Dictionary m_DefinedNames = new Dictionary(); internal void Rename(string name) { SymbolRef sref = m_DefinedNames[name]; m_DefinedNames.Remove(name); m_DefinedNames.Add(string.Format("@{0}_{1}", name, Guid.NewGuid().ToString("N")), sref); } internal BuildTimeScopeBlock(BuildTimeScopeBlock parent) { Parent = parent; ChildNodes = new List(); ScopeBlock = new RuntimeScopeBlock(); } internal BuildTimeScopeBlock AddChild() { BuildTimeScopeBlock block = new BuildTimeScopeBlock(this); ChildNodes.Add(block); return block; } internal SymbolRef Find(string name) { return m_DefinedNames.GetOrDefault(name); } internal SymbolRef Define(string name) { SymbolRef l = SymbolRef.Local(name, -1); m_DefinedNames.Add(name, l); m_LastDefinedName = name; return l; } internal int ResolveLRefs(BuildTimeScopeFrame buildTimeScopeFrame) { int firstVal = -1; int lastVal = -1; foreach (SymbolRef lref in m_DefinedNames.Values) { int pos = buildTimeScopeFrame.AllocVar(lref); if (firstVal < 0) firstVal = pos; lastVal = pos; } this.ScopeBlock.From = firstVal; this.ScopeBlock.ToInclusive = this.ScopeBlock.To = lastVal; if (firstVal < 0) this.ScopeBlock.From = buildTimeScopeFrame.GetPosForNextVar(); foreach (var child in ChildNodes) { this.ScopeBlock.ToInclusive = Math.Max(this.ScopeBlock.ToInclusive, child.ResolveLRefs(buildTimeScopeFrame)); } if (m_LocalLabels != null) foreach (var label in m_LocalLabels.Values) label.SetScope(this.ScopeBlock); return this.ScopeBlock.ToInclusive; } List m_PendingGotos; Dictionary m_LocalLabels; string m_LastDefinedName; internal void DefineLabel(LabelStatement label) { if (m_LocalLabels == null) m_LocalLabels = new Dictionary(); if (m_LocalLabels.ContainsKey(label.Label)) { throw new SyntaxErrorException(label.NameToken, "label '{0}' already defined on line {1}", label.Label, m_LocalLabels[label.Label].SourceRef.FromLine); } else { m_LocalLabels.Add(label.Label, label); label.SetDefinedVars(m_DefinedNames.Count, m_LastDefinedName); } } internal void RegisterGoto(GotoStatement gotostat) { if (m_PendingGotos == null) m_PendingGotos = new List(); m_PendingGotos.Add(gotostat); gotostat.SetDefinedVars(m_DefinedNames.Count, m_LastDefinedName); } internal void ResolveGotos() { if (m_PendingGotos == null) return; foreach (GotoStatement gotostat in m_PendingGotos) { LabelStatement label; if (m_LocalLabels != null && m_LocalLabels.TryGetValue(gotostat.Label, out label)) { if (label.DefinedVarsCount > gotostat.DefinedVarsCount) throw new SyntaxErrorException(gotostat.GotoToken, " at line {1} jumps into the scope of local '{2}'", gotostat.Label, gotostat.GotoToken.FromLine, label.LastDefinedVarName); label.RegisterGoto(gotostat); } else { if (Parent == null) throw new SyntaxErrorException(gotostat.GotoToken, "no visible label '{0}' for at line {1}", gotostat.Label, gotostat.GotoToken.FromLine); Parent.RegisterGoto(gotostat); } } m_PendingGotos.Clear(); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/Scopes/BuildTimeScopeBlock.cs.meta ================================================ fileFormatVersion: 2 guid: 3de7cc3199055414b89f58615db67704 timeCreated: 1518177917 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/Scopes/BuildTimeScopeFrame.cs ================================================ using MoonSharp.Interpreter.Tree.Statements; namespace MoonSharp.Interpreter.Execution.Scopes { internal class BuildTimeScopeFrame { BuildTimeScopeBlock m_ScopeTreeRoot; BuildTimeScopeBlock m_ScopeTreeHead; RuntimeScopeFrame m_ScopeFrame = new RuntimeScopeFrame(); public bool HasVarArgs { get; private set;} internal BuildTimeScopeFrame(bool hasVarArgs) { HasVarArgs = hasVarArgs; m_ScopeTreeHead = m_ScopeTreeRoot = new BuildTimeScopeBlock(null); } internal void PushBlock() { m_ScopeTreeHead = m_ScopeTreeHead.AddChild(); } internal RuntimeScopeBlock PopBlock() { var tree = m_ScopeTreeHead; m_ScopeTreeHead.ResolveGotos(); m_ScopeTreeHead = m_ScopeTreeHead.Parent; if (m_ScopeTreeHead == null) throw new InternalErrorException("Can't pop block - stack underflow"); return tree.ScopeBlock; } internal RuntimeScopeFrame GetRuntimeFrameData() { if (m_ScopeTreeHead != m_ScopeTreeRoot) throw new InternalErrorException("Misaligned scope frames/blocks!"); m_ScopeFrame.ToFirstBlock = m_ScopeTreeRoot.ScopeBlock.To; return m_ScopeFrame; } internal SymbolRef Find(string name) { for (var tree = m_ScopeTreeHead; tree != null; tree = tree.Parent) { SymbolRef l = tree.Find(name); if (l != null) return l; } return null; } internal SymbolRef DefineLocal(string name) { return m_ScopeTreeHead.Define(name); } internal SymbolRef TryDefineLocal(string name) { if (m_ScopeTreeHead.Find(name) != null) { m_ScopeTreeHead.Rename(name); } return m_ScopeTreeHead.Define(name); } internal void ResolveLRefs() { m_ScopeTreeRoot.ResolveGotos(); m_ScopeTreeRoot.ResolveLRefs(this); } internal int AllocVar(SymbolRef var) { var.i_Index = m_ScopeFrame.DebugSymbols.Count; m_ScopeFrame.DebugSymbols.Add(var); return var.i_Index; } internal int GetPosForNextVar() { return m_ScopeFrame.DebugSymbols.Count; } internal void DefineLabel(LabelStatement label) { m_ScopeTreeHead.DefineLabel(label); } internal void RegisterGoto(GotoStatement gotostat) { m_ScopeTreeHead.RegisterGoto(gotostat); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/Scopes/BuildTimeScopeFrame.cs.meta ================================================ fileFormatVersion: 2 guid: 44c34e40e2fdb5a4581d86049083d368 timeCreated: 1518177918 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/Scopes/ClosureContext.cs ================================================ using System.Collections.Generic; using System.Linq; namespace MoonSharp.Interpreter.Execution { /// /// The scope of a closure (container of upvalues) /// internal class ClosureContext : List { /// /// Gets the symbols. /// public string[] Symbols { get; private set; } internal ClosureContext(SymbolRef[] symbols, IEnumerable values) { Symbols = symbols.Select(s => s.i_Name).ToArray(); this.AddRange(values); } internal ClosureContext() { Symbols = new string[0]; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/Scopes/ClosureContext.cs.meta ================================================ fileFormatVersion: 2 guid: de68965d389c0994787b7aefdf4a601b timeCreated: 1518177925 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/Scopes/IClosureBuilder.cs ================================================  namespace MoonSharp.Interpreter.Execution { internal interface IClosureBuilder { SymbolRef CreateUpvalue(BuildTimeScope scope, SymbolRef symbol); } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/Scopes/IClosureBuilder.cs.meta ================================================ fileFormatVersion: 2 guid: 61fb1926829f1f94297003e9ed64674e timeCreated: 1518177919 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/Scopes/LoopTracker.cs ================================================ using MoonSharp.Interpreter.DataStructs; using MoonSharp.Interpreter.Execution.VM; namespace MoonSharp.Interpreter.Execution { interface ILoop { void CompileBreak(ByteCode bc); bool IsBoundary(); } internal class LoopTracker { public FastStack Loops = new FastStack(16384); } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/Scopes/LoopTracker.cs.meta ================================================ fileFormatVersion: 2 guid: 039739f2cb64b0346a6b16c829aff7b2 timeCreated: 1518177914 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/Scopes/RuntimeScopeBlock.cs ================================================ using System; namespace MoonSharp.Interpreter.Execution { internal class RuntimeScopeBlock { public int From { get; internal set; } public int To { get; internal set; } public int ToInclusive { get; internal set; } public override string ToString() { return String.Format("ScopeBlock : {0} -> {1} --> {2}", From, To, ToInclusive); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/Scopes/RuntimeScopeBlock.cs.meta ================================================ fileFormatVersion: 2 guid: 75e32a781114ed3418cce637bf357917 timeCreated: 1518177920 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/Scopes/RuntimeScopeFrame.cs ================================================ using System.Collections.Generic; namespace MoonSharp.Interpreter.Execution { internal class RuntimeScopeFrame { public List DebugSymbols { get; private set; } public int Count { get { return DebugSymbols.Count; } } public int ToFirstBlock { get; internal set; } public RuntimeScopeFrame() { DebugSymbols = new List(); } public override string ToString() { return string.Format("ScopeFrame : #{0}", Count); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/Scopes/RuntimeScopeFrame.cs.meta ================================================ fileFormatVersion: 2 guid: e880efb91803b9945a38f9ad2fd1ca17 timeCreated: 1518177925 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/Scopes.meta ================================================ fileFormatVersion: 2 guid: 2aab2a2443933394d87cedc1e439d765 folderAsset: yes timeCreated: 1518177912 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/ScriptExecutionContext.cs ================================================ using System; using MoonSharp.Interpreter.Debugging; using MoonSharp.Interpreter.Execution.VM; using MoonSharp.Interpreter.Interop.LuaStateInterop; namespace MoonSharp.Interpreter { /// /// Class giving access to details of the environment where the script is executing /// public class ScriptExecutionContext : IScriptPrivateResource { Processor m_Processor; CallbackFunction m_Callback; internal ScriptExecutionContext(Processor p, CallbackFunction callBackFunction, SourceRef sourceRef, bool isDynamic = false) { IsDynamicExecution = isDynamic; m_Processor = p; m_Callback = callBackFunction; CallingLocation = sourceRef; } /// /// Gets a value indicating whether this instance is running a dynamic execution. /// Under a dynamic execution, most methods of ScriptExecutionContext are not reliable as the /// processing engine of the script is not "really" running or is not available. /// public bool IsDynamicExecution { get; private set; } /// /// Gets the location of the code calling back /// public SourceRef CallingLocation { get; private set; } /// /// Gets or sets the additional data associated to this CLR function call. /// public object AdditionalData { get { return (m_Callback != null) ? m_Callback.AdditionalData : null; } set { if (m_Callback == null) throw new InvalidOperationException("Cannot set additional data on a context which has no callback"); m_Callback.AdditionalData = value; } } /// /// Gets the metatable associated with the given value. /// /// The value. /// public Table GetMetatable(DynValue value) { return m_Processor.GetMetatable(value); } /// /// Gets the specified metamethod associated with the given value. /// /// The value. /// The metamethod name. /// public DynValue GetMetamethod(DynValue value, string metamethod) { return m_Processor.GetMetamethod(value, metamethod); } /// /// prepares a tail call request for the specified metamethod, or null if no metamethod is found. /// public DynValue GetMetamethodTailCall(DynValue value, string metamethod, params DynValue[] args) { DynValue meta = this.GetMetamethod(value, metamethod); if (meta == null) return null; return DynValue.NewTailCallReq(meta, args); } /// /// Gets the metamethod to be used for a binary operation using op1 and op2. /// public DynValue GetBinaryMetamethod(DynValue op1, DynValue op2, string eventName) { return m_Processor.GetBinaryMetamethod(op1, op2, eventName); } /// /// Gets the script object associated with this request /// /// public Script GetScript() { return m_Processor.GetScript(); } /// /// Gets the coroutine which is performing the call /// public Coroutine GetCallingCoroutine() { return m_Processor.AssociatedCoroutine; } /// /// Calls a callback function implemented in "classic way". /// Useful to port C code from Lua, or C# code from UniLua and KopiLua. /// Lua : http://www.lua.org/ /// UniLua : http://github.com/xebecnan/UniLua /// KopiLua : http://github.com/NLua/KopiLua /// /// The arguments. /// Name of the function - for error messages. /// The callback. /// public DynValue EmulateClassicCall(CallbackArguments args, string functionName, Func callback) { LuaState L = new LuaState(this, args, functionName); int retvals = callback(L); return L.GetReturnValue(retvals); } /// /// Calls the specified function, supporting most cases. The called function must not yield. /// /// The function; it must be a Function or ClrFunction or have a call metamethod defined. /// The arguments. /// /// If the function yields, returns a tail call request with continuations/handlers or, of course, if it encounters errors. public DynValue Call(DynValue func, params DynValue[] args) { if (func.Type == DataType.Function) { return this.GetScript().Call(func, args); } else if (func.Type == DataType.ClrFunction) { while (true) { DynValue ret = func.Callback.Invoke(this, args, false); if (ret.Type == DataType.YieldRequest) { throw ScriptRuntimeException.CannotYield(); } else if (ret.Type == DataType.TailCallRequest) { var tail = ret.TailCallData; if (tail.Continuation != null || tail.ErrorHandler != null) { throw new ScriptRuntimeException("the function passed cannot be called directly. wrap in a script function instead."); } else { args = tail.Args; func = tail.Function; } } else { return ret; } } } else { int maxloops = 10; while (maxloops > 0) { DynValue v = this.GetMetamethod(func, "__call"); if (v == null && v.IsNil()) { throw ScriptRuntimeException.AttemptToCallNonFunc(func.Type); } func = v; if (func.Type == DataType.Function || func.Type == DataType.ClrFunction) { return Call(func, args); } } throw ScriptRuntimeException.LoopInCall(); } } /// /// Tries to get the reference of a symbol in the current execution state /// public DynValue EvaluateSymbol(SymbolRef symref) { if (symref == null) return DynValue.Nil; return m_Processor.GetGenericSymbol(symref); } /// /// Tries to get the value of a symbol in the current execution state /// public DynValue EvaluateSymbolByName(string symbol) { return this.EvaluateSymbol(this.FindSymbolByName(symbol)); } /// /// Finds a symbol by name in the current execution state /// public SymbolRef FindSymbolByName(string symbol) { return m_Processor.FindSymbolByName(symbol); } /// /// Gets the current global env, or null if not found. /// public Table CurrentGlobalEnv { get { DynValue env = EvaluateSymbolByName(WellKnownSymbols.ENV); if (env == null || env.Type != DataType.Table) return null; else return env.Table; } } /// /// Performs a message decoration before unwinding after an error. To be used in the implementation of xpcall like functions. /// /// The message handler. /// The exception. public void PerformMessageDecorationBeforeUnwind(DynValue messageHandler, ScriptRuntimeException exception) { if (messageHandler != null) exception.DecoratedMessage = m_Processor.PerformMessageDecorationBeforeUnwind(messageHandler, exception.Message, CallingLocation); else exception.DecoratedMessage = exception.Message; } /// /// Gets the script owning this resource. /// /// /// The script owning this resource. /// public Script OwnerScript { get { return this.GetScript(); } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/ScriptExecutionContext.cs.meta ================================================ fileFormatVersion: 2 guid: 47fd291ae16207f4db750c0f7c283660 timeCreated: 1518177918 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/ScriptLoadingContext.cs ================================================ using MoonSharp.Interpreter.Debugging; using MoonSharp.Interpreter.Tree; namespace MoonSharp.Interpreter.Execution { class ScriptLoadingContext { public Script Script { get; private set; } public BuildTimeScope Scope { get; set; } public SourceCode Source { get; set; } public bool Anonymous { get; set; } public bool IsDynamicExpression { get; set; } public Lexer Lexer { get; set; } public ScriptLoadingContext(Script s) { Script = s; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/ScriptLoadingContext.cs.meta ================================================ fileFormatVersion: 2 guid: f9505a4d9cfb2634cae01de1131d99c6 timeCreated: 1518177926 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/ByteCode.cs ================================================ #define EMIT_DEBUG_OPS using System; using System.Collections.Generic; using System.Diagnostics; using System.IO; using System.Text; using MoonSharp.Interpreter.Debugging; namespace MoonSharp.Interpreter.Execution.VM { internal class ByteCode : RefIdObject { public List Code = new List(); public Script Script { get; private set; } private List m_SourceRefStack = new List(); private SourceRef m_CurrentSourceRef = null; internal LoopTracker LoopTracker = new LoopTracker(); public ByteCode(Script script) { Script = script; } public IDisposable EnterSource(SourceRef sref) { return new SourceCodeStackGuard(sref, this); } private class SourceCodeStackGuard : IDisposable { ByteCode m_Bc; public SourceCodeStackGuard(SourceRef sref, ByteCode bc) { m_Bc = bc; m_Bc.PushSourceRef(sref); } public void Dispose() { m_Bc.PopSourceRef(); } } public void PushSourceRef(SourceRef sref) { m_SourceRefStack.Add(sref); m_CurrentSourceRef = sref; } public void PopSourceRef() { m_SourceRefStack.RemoveAt(m_SourceRefStack.Count - 1); m_CurrentSourceRef = (m_SourceRefStack.Count > 0) ? m_SourceRefStack[m_SourceRefStack.Count - 1] : null; } #if (!PCL) && ((!UNITY_5) || UNITY_STANDALONE) && (!(NETFX_CORE)) public void Dump(string file) { StringBuilder sb = new StringBuilder(); for (int i = 0; i < Code.Count; i++) { if (Code[i].OpCode == OpCode.Debug) sb.AppendFormat(" {0}\n", Code[i]); else sb.AppendFormat("{0:X8} {1}\n", i, Code[i]); } File.WriteAllText(file, sb.ToString()); } #endif public int GetJumpPointForNextInstruction() { return Code.Count; } public int GetJumpPointForLastInstruction() { return Code.Count - 1; } public Instruction GetLastInstruction() { return Code[Code.Count - 1]; } private Instruction AppendInstruction(Instruction c) { Code.Add(c); return c; } public Instruction Emit_Nop(string comment) { return AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.Nop, Name = comment }); } public Instruction Emit_Invalid(string type) { return AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.Invalid, Name = type }); } public Instruction Emit_Pop(int num = 1) { return AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.Pop, NumVal = num }); } public void Emit_Call(int argCount, string debugName) { AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.Call, NumVal = argCount, Name = debugName }); } public void Emit_ThisCall(int argCount, string debugName) { AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.ThisCall, NumVal = argCount, Name = debugName }); } public Instruction Emit_Literal(DynValue value) { return AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.Literal, Value = value }); } public Instruction Emit_Jump(OpCode jumpOpCode, int idx, int optPar = 0) { return AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = jumpOpCode, NumVal = idx, NumVal2 = optPar }); } public Instruction Emit_MkTuple(int cnt) { return AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.MkTuple, NumVal = cnt }); } public Instruction Emit_Operator(OpCode opcode) { var i = AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = opcode }); if (opcode == OpCode.LessEq) AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.CNot }); if (opcode == OpCode.Eq || opcode == OpCode.Less) AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.ToBool }); return i; } [Conditional("EMIT_DEBUG_OPS")] public void Emit_Debug(string str) { AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.Debug, Name = str.Substring(0, Math.Min(32, str.Length)) }); } public Instruction Emit_Enter(RuntimeScopeBlock runtimeScopeBlock) { return AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.Clean, NumVal = runtimeScopeBlock.From, NumVal2 = runtimeScopeBlock.ToInclusive }); } public Instruction Emit_Leave(RuntimeScopeBlock runtimeScopeBlock) { return AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.Clean, NumVal = runtimeScopeBlock.From, NumVal2 = runtimeScopeBlock.To }); } public Instruction Emit_Exit(RuntimeScopeBlock runtimeScopeBlock) { return AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.Clean, NumVal = runtimeScopeBlock.From, NumVal2 = runtimeScopeBlock.ToInclusive }); } public Instruction Emit_Clean(RuntimeScopeBlock runtimeScopeBlock) { return AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.Clean, NumVal = runtimeScopeBlock.To + 1, NumVal2 = runtimeScopeBlock.ToInclusive }); } public Instruction Emit_Closure(SymbolRef[] symbols, int jmpnum) { return AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.Closure, SymbolList = symbols, NumVal = jmpnum }); } public Instruction Emit_Args(params SymbolRef[] symbols) { return AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.Args, SymbolList = symbols }); } public Instruction Emit_Ret(int retvals) { return AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.Ret, NumVal = retvals }); } public Instruction Emit_ToNum(int stage = 0) { return AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.ToNum, NumVal = stage }); } public Instruction Emit_Incr(int i) { return AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.Incr, NumVal = i }); } public Instruction Emit_NewTable(bool shared) { return AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.NewTable, NumVal = shared ? 1 : 0 }); } public Instruction Emit_IterPrep() { return AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.IterPrep }); } public Instruction Emit_ExpTuple(int stackOffset) { return AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.ExpTuple, NumVal = stackOffset }); } public Instruction Emit_IterUpd() { return AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.IterUpd }); } public Instruction Emit_Meta(string funcName, OpCodeMetadataType metaType, DynValue value = null) { return AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.Meta, Name = funcName, NumVal2 = (int)metaType, Value = value }); } public Instruction Emit_BeginFn(RuntimeScopeFrame stackFrame) { return AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.BeginFn, SymbolList = stackFrame.DebugSymbols.ToArray(), NumVal = stackFrame.Count, NumVal2 = stackFrame.ToFirstBlock, }); } public Instruction Emit_Scalar() { return AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.Scalar }); } public int Emit_Load(SymbolRef sym) { switch (sym.Type) { case SymbolRefType.Global: Emit_Load(sym.i_Env); AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.Index, Value = DynValue.NewString(sym.i_Name) }); return 2; case SymbolRefType.Local: AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.Local, Symbol = sym }); return 1; case SymbolRefType.Upvalue: AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.Upvalue, Symbol = sym }); return 1; default: throw new InternalErrorException("Unexpected symbol type : {0}", sym); } } public int Emit_Store(SymbolRef sym, int stackofs, int tupleidx) { switch (sym.Type) { case SymbolRefType.Global: Emit_Load(sym.i_Env); AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.IndexSet, Symbol = sym, NumVal = stackofs, NumVal2 = tupleidx, Value = DynValue.NewString(sym.i_Name) }); return 2; case SymbolRefType.Local: AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.StoreLcl, Symbol = sym, NumVal = stackofs, NumVal2 = tupleidx }); return 1; case SymbolRefType.Upvalue: AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.StoreUpv, Symbol = sym, NumVal = stackofs, NumVal2 = tupleidx }); return 1; default: throw new InternalErrorException("Unexpected symbol type : {0}", sym); } } public Instruction Emit_TblInitN() { return AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.TblInitN }); } public Instruction Emit_TblInitI(bool lastpos) { return AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.TblInitI, NumVal = lastpos ? 1 : 0 }); } public Instruction Emit_Index(DynValue index = null, bool isNameIndex = false, bool isExpList = false) { OpCode o; if (isNameIndex) o = OpCode.IndexN; else if (isExpList) o = OpCode.IndexL; else o = OpCode.Index; return AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = o, Value = index }); } public Instruction Emit_IndexSet(int stackofs, int tupleidx, DynValue index = null, bool isNameIndex = false, bool isExpList = false) { OpCode o; if (isNameIndex) o = OpCode.IndexSetN; else if (isExpList) o = OpCode.IndexSetL; else o = OpCode.IndexSet; return AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = o, NumVal = stackofs, NumVal2 = tupleidx, Value = index }); } public Instruction Emit_Copy(int numval) { return AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.Copy, NumVal = numval }); } public Instruction Emit_Swap(int p1, int p2) { return AppendInstruction(new Instruction(m_CurrentSourceRef) { OpCode = OpCode.Swap, NumVal = p1, NumVal2 = p2 }); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/ByteCode.cs.meta ================================================ fileFormatVersion: 2 guid: bd6d75dc325cf654cb03878acbc72525 timeCreated: 1518177923 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/CallStackItem.cs ================================================ using MoonSharp.Interpreter.Debugging; namespace MoonSharp.Interpreter.Execution.VM { internal class CallStackItem { public int Debug_EntryPoint; public SymbolRef[] Debug_Symbols; public SourceRef CallingSourceRef; public CallbackFunction ClrFunction; public CallbackFunction Continuation; public CallbackFunction ErrorHandler; public DynValue ErrorHandlerBeforeUnwind; public int BasePointer; public int ReturnAddress; public DynValue[] LocalScope; public ClosureContext ClosureScope; public Closure Function; public CallStackItemFlags Flags; } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/CallStackItem.cs.meta ================================================ fileFormatVersion: 2 guid: 5cb5fd7c6527ad84da6099facb71a3db timeCreated: 1518177918 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/CallStackItemFlags.cs ================================================ using System; namespace MoonSharp.Interpreter.Execution.VM { [Flags] internal enum CallStackItemFlags { None = 0, EntryPoint = 1, ResumeEntryPoint = 3, CallEntryPoint = 5, TailCall = 0x10, MethodCall = 0x20, } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/CallStackItemFlags.cs.meta ================================================ fileFormatVersion: 2 guid: 05bf169cec5ada846a76b6d10fff324b timeCreated: 1518177914 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/ExecutionState.cs ================================================ using MoonSharp.Interpreter.DataStructs; namespace MoonSharp.Interpreter.Execution.VM { internal sealed class ExecutionState { public FastStack ValueStack = new FastStack(131072); public FastStack ExecutionStack = new FastStack(131072); public int InstructionPtr = 0; public CoroutineState State = CoroutineState.NotStarted; } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/ExecutionState.cs.meta ================================================ fileFormatVersion: 2 guid: f94e1b86cda29b44f961ba3aedf8dc87 timeCreated: 1518177926 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/Instruction.cs ================================================ using System; using System.Collections.Generic; using System.IO; using System.Linq; using MoonSharp.Interpreter.Debugging; namespace MoonSharp.Interpreter.Execution.VM { internal class Instruction { internal OpCode OpCode; internal SymbolRef Symbol; internal SymbolRef[] SymbolList; internal string Name; internal DynValue Value; internal int NumVal; internal int NumVal2; internal SourceRef SourceCodeRef; internal Instruction(SourceRef sourceref) { SourceCodeRef = sourceref; } public override string ToString() { string append = this.OpCode.ToString().ToUpperInvariant(); int usage = (int)OpCode.GetFieldUsage(); if (usage != 0) append += GenSpaces(); if ((this.OpCode == VM.OpCode.Meta) ||((usage & ((int)InstructionFieldUsage.NumValAsCodeAddress)) == (int)InstructionFieldUsage.NumValAsCodeAddress)) append += " " + NumVal.ToString("X8"); else if ((usage & ((int)InstructionFieldUsage.NumVal)) != 0) append += " " + NumVal.ToString(); if ((usage & ((int)InstructionFieldUsage.NumVal2)) != 0) append += " " + NumVal2.ToString(); if ((usage & ((int)InstructionFieldUsage.Name)) != 0) append += " " + Name; if ((usage & ((int)InstructionFieldUsage.Value)) != 0) append += " " + PurifyFromNewLines(Value); if ((usage & ((int)InstructionFieldUsage.Symbol)) != 0) append += " " + Symbol; if (((usage & ((int)InstructionFieldUsage.SymbolList)) != 0) && (SymbolList != null)) append += " " + string.Join(",", SymbolList.Select(s => s.ToString()).ToArray()); return append; } private string PurifyFromNewLines(DynValue Value) { if (Value == null) return ""; return Value.ToString().Replace('\n', ' ').Replace('\r', ' '); } private string GenSpaces() { return new string(' ', 10 - this.OpCode.ToString().Length); } internal void WriteBinary(BinaryWriter wr, int baseAddress, Dictionary symbolMap) { wr.Write((byte)this.OpCode); int usage = (int)OpCode.GetFieldUsage(); if ((usage & ((int)InstructionFieldUsage.NumValAsCodeAddress)) == (int)InstructionFieldUsage.NumValAsCodeAddress) wr.Write(this.NumVal - baseAddress); else if ((usage & ((int)InstructionFieldUsage.NumVal)) != 0) wr.Write(this.NumVal); if ((usage & ((int)InstructionFieldUsage.NumVal2)) != 0) wr.Write(this.NumVal2); if ((usage & ((int)InstructionFieldUsage.Name)) != 0) wr.Write(Name ?? ""); if ((usage & ((int)InstructionFieldUsage.Value)) != 0) DumpValue(wr, Value); if ((usage & ((int)InstructionFieldUsage.Symbol)) != 0) WriteSymbol(wr, Symbol, symbolMap); if ((usage & ((int)InstructionFieldUsage.SymbolList)) != 0) { wr.Write(this.SymbolList.Length); for (int i = 0; i < this.SymbolList.Length; i++) WriteSymbol(wr, SymbolList[i], symbolMap); } } private static void WriteSymbol(BinaryWriter wr, SymbolRef symbolRef, Dictionary symbolMap) { int id = (symbolRef == null) ? -1 : symbolMap[symbolRef]; wr.Write(id); } private static SymbolRef ReadSymbol(BinaryReader rd, SymbolRef[] deserializedSymbols) { int id = rd.ReadInt32(); if (id < 0) return null; return deserializedSymbols[id]; } internal static Instruction ReadBinary(SourceRef chunkRef, BinaryReader rd, int baseAddress, Table envTable, SymbolRef[] deserializedSymbols) { Instruction that = new Instruction(chunkRef); that.OpCode = (OpCode)rd.ReadByte(); int usage = (int)that.OpCode.GetFieldUsage(); if ((usage & ((int)InstructionFieldUsage.NumValAsCodeAddress)) == (int)InstructionFieldUsage.NumValAsCodeAddress) that.NumVal = rd.ReadInt32() + baseAddress; else if ((usage & ((int)InstructionFieldUsage.NumVal)) != 0) that.NumVal = rd.ReadInt32(); if ((usage & ((int)InstructionFieldUsage.NumVal2)) != 0) that.NumVal2 = rd.ReadInt32(); if ((usage & ((int)InstructionFieldUsage.Name)) != 0) that.Name = rd.ReadString(); if ((usage & ((int)InstructionFieldUsage.Value)) != 0) that.Value = ReadValue(rd, envTable); if ((usage & ((int)InstructionFieldUsage.Symbol)) != 0) that.Symbol = ReadSymbol(rd, deserializedSymbols); if ((usage & ((int)InstructionFieldUsage.SymbolList)) != 0) { int len = rd.ReadInt32(); that.SymbolList = new SymbolRef[len]; for (int i = 0; i < that.SymbolList.Length; i++) that.SymbolList[i] = ReadSymbol(rd, deserializedSymbols); } return that; } private static DynValue ReadValue(BinaryReader rd, Table envTable) { bool isnull = !rd.ReadBoolean(); if (isnull) return null; DataType dt = (DataType)rd.ReadByte(); switch (dt) { case DataType.Nil: return DynValue.NewNil(); case DataType.Void: return DynValue.Void; case DataType.Boolean: return DynValue.NewBoolean(rd.ReadBoolean()); case DataType.Number: return DynValue.NewNumber(rd.ReadDouble()); case DataType.String: return DynValue.NewString(rd.ReadString()); case DataType.Table : return DynValue.NewTable(envTable); default: throw new NotSupportedException(string.Format("Unsupported type in chunk dump : {0}", dt)); } } private void DumpValue(BinaryWriter wr, DynValue value) { if (value == null) { wr.Write(false); return; } wr.Write(true); wr.Write((byte)value.Type); switch (value.Type) { case DataType.Nil: case DataType.Void: case DataType.Table: break; case DataType.Boolean: wr.Write(value.Boolean); break; case DataType.Number: wr.Write(value.Number); break; case DataType.String: wr.Write(value.String); break; default: throw new NotSupportedException(string.Format("Unsupported type in chunk dump : {0}", value.Type)); } } internal void GetSymbolReferences(out SymbolRef[] symbolList, out SymbolRef symbol) { int usage = (int)OpCode.GetFieldUsage(); symbol = null; symbolList = null; if ((usage & ((int)InstructionFieldUsage.Symbol)) != 0) symbol = this.Symbol; if ((usage & ((int)InstructionFieldUsage.SymbolList)) != 0) symbolList = this.SymbolList; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/Instruction.cs.meta ================================================ fileFormatVersion: 2 guid: 7fa0afd1c5bac13499c14d81c34171d5 timeCreated: 1518177921 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/OpCode.cs ================================================  namespace MoonSharp.Interpreter.Execution.VM { internal enum OpCode { // Meta-opcodes Nop, // Does not perform any operation. Debug, // Does not perform any operation. Used to help debugging. // Stack ops and assignment Pop, // Discards the topmost n elements from the v-stack. Copy, // Copies the n-th value of the stack on the top Swap, // Swaps two entries relative to the v-stack Literal, // Pushes a literal (constant value) on the stack. Closure, // Creates a closure on the top of the v-stack, using the symbols for upvalues and num-val for entry point of the function. NewTable, // Creates a new empty table on the stack TblInitN, // Initializes a table named entry TblInitI, // Initializes a table positional entry StoreLcl, Local, StoreUpv, Upvalue, IndexSet, Index, IndexSetN, IndexN, IndexSetL, IndexL, // Stack-frame ops and calls Clean, // Cleansup locals setting them as null Meta, // Injects function metadata used for reflection things (dumping, debugging) BeginFn, // Adjusts for start of function, taking in parameters and allocating locals Args, // Takes the arguments passed to a function and sets the appropriate symbols in the local scope Call, // Calls the function specified on the specified element from the top of the v-stack. If the function is a MoonSharp function, it pushes its numeric value on the v-stack, then pushes the current PC onto the x-stack, enters the function closure and jumps to the function first instruction. If the function is a CLR function, it pops the function value from the v-stack, then invokes the function synchronously and finally pushes the result on the v-stack. ThisCall, // Same as call, but the call is a ':' method invocation Ret, // Pops the top n values of the v-stack. Then pops an X value from the v-stack. Then pops X values from the v-stack. Afterwards, it pushes the top n values popped in the first step, pops the top of the x-stack and jumps to that location. // Jumps Jump, // Jumps to the specified PC Jf, // Pops the top of the v-stack and jumps to the specified location if it's false JNil, // Jumps if the top of the stack is nil JFor, // Peeks at the top, top-1 and top-2 values of the v-stack which it assumes to be numbers. Then if top-1 is less than zero, checks if top is <= top-2, otherwise it checks that top is >= top-2. Then if the condition is false, it jumps. JtOrPop, // Peeks at the topmost value of the v-stack as a boolean. If true, it performs a jump, otherwise it removes the topmost value from the v-stack. JfOrPop, // Peeks at the topmost value of the v-stack as a boolean. If false, it performs a jump, otherwise it removes the topmost value from the v-stack. // Operators Concat, // Concatenation of the two topmost operands on the v-stack LessEq, // Compare <= of the two topmost operands on the v-stack Less, // Compare < of the two topmost operands on the v-stack Eq, // Compare == of the two topmost operands on the v-stack Add, // Addition of the two topmost operands on the v-stack Sub, // Subtraction of the two topmost operands on the v-stack Mul, // Multiplication of the two topmost operands on the v-stack Div, // Division of the two topmost operands on the v-stack Mod, // Modulus of the two topmost operands on the v-stack Not, // Logical inversion of the topmost operand on the v-stack Len, // Size operator of the topmost operand on the v-stack Neg, // Negation (unary minus) operator of the topmost operand on the v-stack Power, // Power of the two topmost operands on the v-stack CNot, // Conditional NOT - takes second operand from the v-stack (must be bool), if true execs a NOT otherwise execs a TOBOOL // Type conversions and manipulations MkTuple, // Creates a tuple from the topmost n values Scalar, // Converts the topmost tuple to a scalar Incr, // Performs an add operation, without extracting the operands from the v-stack and assuming the operands are numbers. ToNum, // Converts the top of the stack to a number ToBool, // Converts the top of the stack to a boolean ExpTuple, // Expands a tuple on the stack // Iterators IterPrep, // Prepares an iterator for execution IterUpd, // Updates the var part of an iterator // Meta Invalid, // Crashes the executor with an unrecoverable NotImplementedException. This MUST always be the last opcode in enum } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/OpCode.cs.meta ================================================ fileFormatVersion: 2 guid: 7be749243873ce04db5c692ab841bf37 timeCreated: 1518177921 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/OpCodeMetadataType.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace MoonSharp.Interpreter.Execution.VM { public enum OpCodeMetadataType { ChunkEntrypoint, FunctionEntrypoint, } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/OpCodeMetadataType.cs.meta ================================================ fileFormatVersion: 2 guid: 0ced3b86c1d91c84cba6bb445cf95ec0 timeCreated: 1518177914 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/Processor/DebugContext.cs ================================================ using System.Collections.Generic; using MoonSharp.Interpreter.Debugging; namespace MoonSharp.Interpreter.Execution.VM { sealed partial class Processor { private class DebugContext { public bool DebuggerEnabled = true; public IDebugger DebuggerAttached = null; public DebuggerAction.ActionType DebuggerCurrentAction = DebuggerAction.ActionType.None; public int DebuggerCurrentActionTarget = -1; public SourceRef LastHlRef = null; public int ExStackDepthAtStep = -1; public List BreakPoints = new List(); public bool LineBasedBreakPoints = false; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/Processor/DebugContext.cs.meta ================================================ fileFormatVersion: 2 guid: ec564610136c0f24ab396884b0f92b68 timeCreated: 1518177925 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/Processor/Processor.cs ================================================ using System; using System.Collections.Generic; using System.Threading; using MoonSharp.Interpreter.DataStructs; using MoonSharp.Interpreter.Debugging; namespace MoonSharp.Interpreter.Execution.VM { sealed partial class Processor { public ByteCode m_RootChunk; public Instruction m_doFileRequireHack; public FastStack m_ValueStack = new FastStack(131072); public FastStack m_ExecutionStack = new FastStack(131072); List m_CoroutinesStack; Table m_GlobalTable; Script m_Script; Processor m_Parent = null; CoroutineState m_State; bool m_CanYield = true; int m_SavedInstructionPtr = -1; DebugContext m_Debug; public Processor(Script script, Table globalContext, ByteCode byteCode) { m_CoroutinesStack = new List(); m_Debug = new DebugContext(); m_RootChunk = byteCode; m_GlobalTable = globalContext; m_Script = script; m_State = CoroutineState.Main; DynValue.NewCoroutine(new Coroutine(this)); // creates an associated coroutine for the main processor } private Processor(Processor parentProcessor) { m_Debug = parentProcessor.m_Debug; m_RootChunk = parentProcessor.m_RootChunk; m_GlobalTable = parentProcessor.m_GlobalTable; m_Script = parentProcessor.m_Script; m_Parent = parentProcessor; m_State = CoroutineState.NotStarted; } public DynValue Call(DynValue function, DynValue[] args) { List coroutinesStack = m_Parent != null ? m_Parent.m_CoroutinesStack : this.m_CoroutinesStack; if (coroutinesStack.Count > 0 && coroutinesStack[coroutinesStack.Count - 1] != this) return coroutinesStack[coroutinesStack.Count - 1].Call(function, args); EnterProcessor(); try { var stopwatch = this.m_Script.PerformanceStats.StartStopwatch(Diagnostics.PerformanceCounter.Execution); m_CanYield = false; int entrypoint = 0; try { entrypoint = PushClrToScriptStackFrame(CallStackItemFlags.CallEntryPoint, function, args); return Processing_Loop(entrypoint); } catch (ArgumentOutOfRangeException ex) { if (!ex.StackTrace.StartsWith("at Processor")) throw; ScriptRuntimeException e = ScriptRuntimeException.CallFromAnotherScript(); FillDebugData(e, entrypoint); throw e; } finally { m_CanYield = true; if (stopwatch != null) stopwatch.Dispose(); } } finally { LeaveProcessor(); } } // pushes all what's required to perform a clr-to-script function call. function can be null if it's already // at vstack top. private int PushClrToScriptStackFrame(CallStackItemFlags flags, DynValue function, DynValue[] args) { if (function == null) function = m_ValueStack.Peek(); else m_ValueStack.Push(function); // func val args = Internal_AdjustTuple(args); for (int i = 0; i < args.Length; i++) m_ValueStack.Push(args[i]); m_ValueStack.Push(DynValue.NewNumber(args.Length)); // func args count m_ExecutionStack.Push(new CallStackItem() { BasePointer = m_ValueStack.Count, Debug_EntryPoint = function.Function.EntryPointByteCodeLocation, ReturnAddress = -1, ClosureScope = function.Function.ClosureContext, CallingSourceRef = SourceRef.GetClrLocation(), Flags = flags, Function = function.Function }); return function.Function.EntryPointByteCodeLocation; } int m_OwningThreadID = -1; int m_ExecutionNesting = 0; private void LeaveProcessor() { m_ExecutionNesting -= 1; m_OwningThreadID = -1; if (m_Parent != null) { m_Parent.m_CoroutinesStack.RemoveAt(m_Parent.m_CoroutinesStack.Count - 1); } if (m_ExecutionNesting == 0 && m_Debug != null && m_Debug.DebuggerEnabled && m_Debug.DebuggerAttached != null) { m_Debug.DebuggerAttached.SignalExecutionEnded(); } } int GetThreadId() { #if ENABLE_DOTNET || NETFX_CORE return 1; #else return Thread.CurrentThread.ManagedThreadId; #endif } private void EnterProcessor() { int threadID = GetThreadId(); if (m_OwningThreadID >= 0 && m_OwningThreadID != threadID && m_Script.Options.CheckThreadAccess) { string msg = string.Format("Cannot enter the same MoonSharp processor from two different threads : {0} and {1}", m_OwningThreadID, threadID); throw new InvalidOperationException(msg); } m_OwningThreadID = threadID; m_ExecutionNesting += 1; if (m_Parent != null) { m_Parent.m_CoroutinesStack.Add(this); } } internal SourceRef GetCoroutineSuspendedLocation() { return GetCurrentSourceRef(m_SavedInstructionPtr); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/Processor/Processor.cs.meta ================================================ fileFormatVersion: 2 guid: 56f8834543a4d334ea64cbc30cfb7b65 timeCreated: 1518177918 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/Processor/Processor_BinaryDump.cs ================================================ using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using MoonSharp.Interpreter.Debugging; using MoonSharp.Interpreter.IO; namespace MoonSharp.Interpreter.Execution.VM { sealed partial class Processor { const ulong DUMP_CHUNK_MAGIC = 0x1A0D234E4F4F4D1D; const int DUMP_CHUNK_VERSION = 0x150; internal static bool IsDumpStream(Stream stream) { if (stream.Length >= 8) { using (BinaryReader br = new BinaryReader(stream, Encoding.UTF8)) { ulong magic = br.ReadUInt64(); stream.Seek(-8, SeekOrigin.Current); return magic == DUMP_CHUNK_MAGIC; } } return false; } internal int Dump(Stream stream, int baseAddress, bool hasUpvalues) { using (BinaryWriter bw = new BinDumpBinaryWriter(stream, Encoding.UTF8)) { Dictionary symbolMap = new Dictionary(); Instruction meta = FindMeta(ref baseAddress); if (meta == null) throw new ArgumentException("baseAddress"); bw.Write(DUMP_CHUNK_MAGIC); bw.Write(DUMP_CHUNK_VERSION); bw.Write(hasUpvalues); bw.Write(meta.NumVal); for (int i = 0; i <= meta.NumVal; i++) { SymbolRef[] symbolList; SymbolRef symbol; m_RootChunk.Code[baseAddress + i].GetSymbolReferences(out symbolList, out symbol); if (symbol != null) AddSymbolToMap(symbolMap, symbol); if (symbolList != null) foreach (var s in symbolList) AddSymbolToMap(symbolMap, s); } foreach (SymbolRef sr in symbolMap.Keys.ToArray()) { if (sr.i_Env != null) AddSymbolToMap(symbolMap, sr.i_Env); } SymbolRef[] allSymbols = new SymbolRef[symbolMap.Count]; foreach (KeyValuePair pair in symbolMap) { allSymbols[pair.Value] = pair.Key; } bw.Write(symbolMap.Count); foreach (SymbolRef sym in allSymbols) sym.WriteBinary(bw); foreach (SymbolRef sym in allSymbols) sym.WriteBinaryEnv(bw, symbolMap); for (int i = 0; i <= meta.NumVal; i++) m_RootChunk.Code[baseAddress + i].WriteBinary(bw, baseAddress, symbolMap); return meta.NumVal + baseAddress + 1; } } private void AddSymbolToMap(Dictionary symbolMap, SymbolRef s) { if (!symbolMap.ContainsKey(s)) symbolMap.Add(s, symbolMap.Count); } internal int Undump(Stream stream, int sourceID, Table envTable, out bool hasUpvalues) { int baseAddress = m_RootChunk.Code.Count; SourceRef sourceRef = new SourceRef(sourceID, 0, 0, 0, 0, false); using (BinaryReader br = new BinDumpBinaryReader(stream, Encoding.UTF8)) { ulong headerMark = br.ReadUInt64(); if (headerMark != DUMP_CHUNK_MAGIC) throw new ArgumentException("Not a MoonSharp chunk"); int version = br.ReadInt32(); if (version != DUMP_CHUNK_VERSION) throw new ArgumentException("Invalid version"); hasUpvalues = br.ReadBoolean(); int len = br.ReadInt32(); int numSymbs = br.ReadInt32(); SymbolRef[] allSymbs = new SymbolRef[numSymbs]; for (int i = 0; i < numSymbs; i++) allSymbs[i] = SymbolRef.ReadBinary(br); for (int i = 0; i < numSymbs; i++) allSymbs[i].ReadBinaryEnv(br, allSymbs); for (int i = 0; i <= len; i++) { Instruction I = Instruction.ReadBinary(sourceRef, br, baseAddress, envTable, allSymbs); m_RootChunk.Code.Add(I); } return baseAddress; } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/Processor/Processor_BinaryDump.cs.meta ================================================ fileFormatVersion: 2 guid: 2bf9da06387d2634d894ab9388f6e0e2 timeCreated: 1518177916 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/Processor/Processor_Coroutines.cs ================================================ using System; namespace MoonSharp.Interpreter.Execution.VM { // This part is practically written procedural style - it looks more like C than C#. // This is intentional so to avoid this-calls and virtual-calls as much as possible. // Same reason for the "sealed" declaration. sealed partial class Processor { public DynValue Coroutine_Create(Closure closure) { // create a processor instance Processor P = new Processor(this); // Put the closure as first value on the stack, for future reference P.m_ValueStack.Push(DynValue.NewClosure(closure)); // Return the coroutine handle return DynValue.NewCoroutine(new Coroutine(P)); } public CoroutineState State { get { return m_State; } } public Coroutine AssociatedCoroutine { get; set; } public DynValue Coroutine_Resume(DynValue[] args) { EnterProcessor(); try { int entrypoint = 0; if (m_State != CoroutineState.NotStarted && m_State != CoroutineState.Suspended && m_State != CoroutineState.ForceSuspended) throw ScriptRuntimeException.CannotResumeNotSuspended(m_State); if (m_State == CoroutineState.NotStarted) { entrypoint = PushClrToScriptStackFrame(CallStackItemFlags.ResumeEntryPoint, null, args); } else if (m_State == CoroutineState.Suspended) { m_ValueStack.Push(DynValue.NewTuple(args)); entrypoint = m_SavedInstructionPtr; } else if (m_State == CoroutineState.ForceSuspended) { if (args != null && args.Length > 0) throw new ArgumentException("When resuming a force-suspended coroutine, args must be empty."); entrypoint = m_SavedInstructionPtr; } m_State = CoroutineState.Running; DynValue retVal = Processing_Loop(entrypoint); if (retVal.Type == DataType.YieldRequest) { if (retVal.YieldRequest.Forced) { m_State = CoroutineState.ForceSuspended; return retVal; } else { m_State = CoroutineState.Suspended; return DynValue.NewTuple(retVal.YieldRequest.ReturnValues); } } else { m_State = CoroutineState.Dead; return retVal; } } catch (Exception) { // Unhandled exception - move to dead m_State = CoroutineState.Dead; throw; } finally { LeaveProcessor(); } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/Processor/Processor_Coroutines.cs.meta ================================================ fileFormatVersion: 2 guid: 6110a3b3862cbbd43912d82ab08492ce timeCreated: 1518177919 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/Processor/Processor_Debugger.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using MoonSharp.Interpreter.Debugging; namespace MoonSharp.Interpreter.Execution.VM { // This part is practically written procedural style - it looks more like C than C#. // This is intentional so to avoid this-calls and virtual-calls as much as possible. // Same reason for the "sealed" declaration. sealed partial class Processor { internal Instruction FindMeta(ref int baseAddress) { Instruction meta = m_RootChunk.Code[baseAddress]; // skip nops while (meta.OpCode == OpCode.Nop) { baseAddress++; meta = m_RootChunk.Code[baseAddress]; } if (meta.OpCode != OpCode.Meta) return null; return meta; } internal void AttachDebugger(IDebugger debugger) { m_Debug.DebuggerAttached = debugger; m_Debug.LineBasedBreakPoints = (debugger.GetDebuggerCaps() & DebuggerCaps.HasLineBasedBreakpoints) != 0; debugger.SetDebugService(new DebugService(m_Script, this)); } internal bool DebuggerEnabled { get { return m_Debug.DebuggerEnabled; } set { m_Debug.DebuggerEnabled = value; } } private void ListenDebugger(Instruction instr, int instructionPtr) { bool isOnDifferentRef = false; if (instr.SourceCodeRef != null && m_Debug.LastHlRef != null) { if (m_Debug.LineBasedBreakPoints) { isOnDifferentRef = instr.SourceCodeRef.SourceIdx != m_Debug.LastHlRef.SourceIdx || instr.SourceCodeRef.FromLine != m_Debug.LastHlRef.FromLine; } else { isOnDifferentRef = instr.SourceCodeRef != m_Debug.LastHlRef; } } else if (m_Debug.LastHlRef == null) { isOnDifferentRef = instr.SourceCodeRef != null; } if (m_Debug.DebuggerAttached.IsPauseRequested() || (instr.SourceCodeRef != null && instr.SourceCodeRef.Breakpoint && isOnDifferentRef)) { m_Debug.DebuggerCurrentAction = DebuggerAction.ActionType.None; m_Debug.DebuggerCurrentActionTarget = -1; } switch (m_Debug.DebuggerCurrentAction) { case DebuggerAction.ActionType.Run: if (m_Debug.LineBasedBreakPoints) m_Debug.LastHlRef = instr.SourceCodeRef; return; case DebuggerAction.ActionType.ByteCodeStepOver: if (m_Debug.DebuggerCurrentActionTarget != instructionPtr) return; break; case DebuggerAction.ActionType.ByteCodeStepOut: case DebuggerAction.ActionType.StepOut: if (m_ExecutionStack.Count >= m_Debug.ExStackDepthAtStep) return; break; case DebuggerAction.ActionType.StepIn: if ((m_ExecutionStack.Count >= m_Debug.ExStackDepthAtStep) && (instr.SourceCodeRef == null || instr.SourceCodeRef == m_Debug.LastHlRef)) return; break; case DebuggerAction.ActionType.StepOver: if (instr.SourceCodeRef == null || instr.SourceCodeRef == m_Debug.LastHlRef || m_ExecutionStack.Count > m_Debug.ExStackDepthAtStep) return; break; } RefreshDebugger(false, instructionPtr); while (true) { var action = m_Debug.DebuggerAttached.GetAction(instructionPtr, instr.SourceCodeRef); switch (action.Action) { case DebuggerAction.ActionType.StepIn: case DebuggerAction.ActionType.StepOver: case DebuggerAction.ActionType.StepOut: case DebuggerAction.ActionType.ByteCodeStepOut: m_Debug.DebuggerCurrentAction = action.Action; m_Debug.LastHlRef = instr.SourceCodeRef; m_Debug.ExStackDepthAtStep = m_ExecutionStack.Count; return; case DebuggerAction.ActionType.ByteCodeStepIn: m_Debug.DebuggerCurrentAction = DebuggerAction.ActionType.ByteCodeStepIn; m_Debug.DebuggerCurrentActionTarget = -1; return; case DebuggerAction.ActionType.ByteCodeStepOver: m_Debug.DebuggerCurrentAction = DebuggerAction.ActionType.ByteCodeStepOver; m_Debug.DebuggerCurrentActionTarget = instructionPtr + 1; return; case DebuggerAction.ActionType.Run: m_Debug.DebuggerCurrentAction = DebuggerAction.ActionType.Run; m_Debug.LastHlRef = instr.SourceCodeRef; m_Debug.DebuggerCurrentActionTarget = -1; return; case DebuggerAction.ActionType.ToggleBreakpoint: ToggleBreakPoint(action, null); RefreshDebugger(true, instructionPtr); break; case DebuggerAction.ActionType.ResetBreakpoints: ResetBreakPoints(action); RefreshDebugger(true, instructionPtr); break; case DebuggerAction.ActionType.SetBreakpoint: ToggleBreakPoint(action, true); RefreshDebugger(true, instructionPtr); break; case DebuggerAction.ActionType.ClearBreakpoint: ToggleBreakPoint(action, false); RefreshDebugger(true, instructionPtr); break; case DebuggerAction.ActionType.Refresh: RefreshDebugger(false, instructionPtr); break; case DebuggerAction.ActionType.HardRefresh: RefreshDebugger(true, instructionPtr); break; case DebuggerAction.ActionType.None: default: break; } } } private void ResetBreakPoints(DebuggerAction action) { SourceCode src = m_Script.GetSourceCode(action.SourceID); ResetBreakPoints(src, new HashSet(action.Lines)); } internal HashSet ResetBreakPoints(SourceCode src, HashSet lines) { HashSet result = new HashSet(); foreach (SourceRef srf in src.Refs) { if (srf.CannotBreakpoint) continue; srf.Breakpoint = lines.Contains(srf.FromLine); if (srf.Breakpoint) result.Add(srf.FromLine); } return result; } private bool ToggleBreakPoint(DebuggerAction action, bool? state) { SourceCode src = m_Script.GetSourceCode(action.SourceID); bool found = false; foreach (SourceRef srf in src.Refs) { if (srf.CannotBreakpoint) continue; if (srf.IncludesLocation(action.SourceID, action.SourceLine, action.SourceCol)) { found = true; //System.Diagnostics.Debug.WriteLine(string.Format("BRK: found {0} for {1} on contains", srf, srf.Type)); if (state == null) srf.Breakpoint = !srf.Breakpoint; else srf.Breakpoint = state.Value; if (srf.Breakpoint) { m_Debug.BreakPoints.Add(srf); } else { m_Debug.BreakPoints.Remove(srf); } } } if (!found) { int minDistance = int.MaxValue; SourceRef nearest = null; foreach (SourceRef srf in src.Refs) { if (srf.CannotBreakpoint) continue; int dist = srf.GetLocationDistance(action.SourceID, action.SourceLine, action.SourceCol); if (dist < minDistance) { minDistance = dist; nearest = srf; } } if (nearest != null) { //System.Diagnostics.Debug.WriteLine(string.Format("BRK: found {0} for {1} on distance {2}", nearest, nearest.Type, minDistance)); if (state == null) nearest.Breakpoint = !nearest.Breakpoint; else nearest.Breakpoint = state.Value; if (nearest.Breakpoint) { m_Debug.BreakPoints.Add(nearest); } else { m_Debug.BreakPoints.Remove(nearest); } return true; } else return false; } else return true; } private void RefreshDebugger(bool hard, int instructionPtr) { SourceRef sref = GetCurrentSourceRef(instructionPtr); ScriptExecutionContext context = new ScriptExecutionContext(this, null, sref); List watchList = m_Debug.DebuggerAttached.GetWatchItems(); List callStack = Debugger_GetCallStack(sref); List watches = Debugger_RefreshWatches(context, watchList); List vstack = Debugger_RefreshVStack(); List locals = Debugger_RefreshLocals(context); List threads = Debugger_RefreshThreads(context); m_Debug.DebuggerAttached.Update(WatchType.CallStack, callStack); m_Debug.DebuggerAttached.Update(WatchType.Watches, watches); m_Debug.DebuggerAttached.Update(WatchType.VStack, vstack); m_Debug.DebuggerAttached.Update(WatchType.Locals, locals); m_Debug.DebuggerAttached.Update(WatchType.Threads, threads); if (hard) m_Debug.DebuggerAttached.RefreshBreakpoints(m_Debug.BreakPoints); } private List Debugger_RefreshThreads(ScriptExecutionContext context) { List coroutinesStack = m_Parent != null ? m_Parent.m_CoroutinesStack : this.m_CoroutinesStack; return coroutinesStack.Select(c => new WatchItem() { Address = c.AssociatedCoroutine.ReferenceID, Name = "coroutine #" + c.AssociatedCoroutine.ReferenceID.ToString() }).ToList(); } private List Debugger_RefreshVStack() { List lwi = new List(); for (int i = 0; i < Math.Min(32, m_ValueStack.Count); i++) { lwi.Add(new WatchItem() { Address = i, Value = m_ValueStack.Peek(i) }); } return lwi; } private List Debugger_RefreshWatches(ScriptExecutionContext context, List watchList) { return watchList.Select(w => Debugger_RefreshWatch(context, w)).ToList(); } private List Debugger_RefreshLocals(ScriptExecutionContext context) { List locals = new List(); var top = this.m_ExecutionStack.Peek(); if (top != null && top.Debug_Symbols != null && top.LocalScope != null) { int len = Math.Min(top.Debug_Symbols.Length, top.LocalScope.Length); for (int i = 0; i < len; i++) { locals.Add(new WatchItem() { IsError = false, LValue = top.Debug_Symbols[i], Value = top.LocalScope[i], Name = top.Debug_Symbols[i].i_Name }); } } return locals; } private WatchItem Debugger_RefreshWatch(ScriptExecutionContext context, DynamicExpression dynExpr) { try { SymbolRef L = dynExpr.FindSymbol(context); DynValue v = dynExpr.Evaluate(context); return new WatchItem() { IsError = dynExpr.IsConstant(), LValue = L, Value = v, Name = dynExpr.ExpressionCode }; } catch (Exception ex) { return new WatchItem() { IsError = true, Value = DynValue.NewString(ex.Message), Name = dynExpr.ExpressionCode }; } } internal List Debugger_GetCallStack(SourceRef startingRef) { List wis = new List(); for (int i = 0; i < m_ExecutionStack.Count; i++) { var c = m_ExecutionStack.Peek(i); var I = m_RootChunk.Code[c.Debug_EntryPoint]; string callname = I.OpCode == OpCode.Meta ? I.Name : null; if (c.ClrFunction != null) { wis.Add(new WatchItem() { Address = -1, BasePtr = -1, RetAddress = c.ReturnAddress, Location = startingRef, Name = c.ClrFunction.Name, Value = DynValue.NewCallback(c.ClrFunction) }); } else { wis.Add(new WatchItem() { Address = c.Debug_EntryPoint, BasePtr = c.BasePointer, RetAddress = c.ReturnAddress, Name = callname, Location = startingRef, Value = DynValue.NewClosure(c.Function) }); } startingRef = c.CallingSourceRef; if (c.Continuation != null) { wis.Add(new WatchItem() { Name = c.Continuation.Name, Location = SourceRef.GetClrLocation() }); } } return wis; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/Processor/Processor_Debugger.cs.meta ================================================ fileFormatVersion: 2 guid: 1f0bc31ef31000a4e8eedd67225c1196 timeCreated: 1518177915 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/Processor/Processor_Errors.cs ================================================ using System; using MoonSharp.Interpreter.Debugging; namespace MoonSharp.Interpreter.Execution.VM { sealed partial class Processor { private SourceRef GetCurrentSourceRef(int instructionPtr) { if (m_doFileRequireHack != null) return m_doFileRequireHack.SourceCodeRef; else if (instructionPtr >= 0 && instructionPtr < m_RootChunk.Code.Count) return m_RootChunk.Code[instructionPtr].SourceCodeRef; return null; } private void FillDebugData(InterpreterException ex, int ip) { // adjust IP if (ip == YIELD_SPECIAL_TRAP) ip = m_SavedInstructionPtr; else ip -= 1; ex.InstructionPtr = ip; SourceRef sref = GetCurrentSourceRef(ip); ex.DecorateMessage(m_Script, sref, ip); try { ex.CallStack = Debugger_GetCallStack(sref); } catch (ArgumentOutOfRangeException) { } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/Processor/Processor_Errors.cs.meta ================================================ fileFormatVersion: 2 guid: 6968d91d98b0a424faee8c0a4314ccf0 timeCreated: 1518177919 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/Processor/Processor_IExecutionContext.cs ================================================  namespace MoonSharp.Interpreter.Execution.VM { sealed partial class Processor { internal Table GetMetatable(DynValue value) { if (value.Type == DataType.Table) { return value.Table.MetaTable; } else if (value.Type.CanHaveTypeMetatables()) { return m_Script.GetTypeMetatable(value.Type); } else { return null; } } internal DynValue GetBinaryMetamethod(DynValue op1, DynValue op2, string eventName) { var op1_MetaTable = GetMetatable(op1); if (op1_MetaTable != null) { DynValue meta1 = op1_MetaTable.RawGet(eventName); if (meta1 != null && meta1.IsNotNil()) return meta1; } var op2_MetaTable = GetMetatable(op2); if (op2_MetaTable != null) { DynValue meta2 = op2_MetaTable.RawGet(eventName); if (meta2 != null && meta2.IsNotNil()) return meta2; } if (op1.Type == DataType.UserData) { DynValue meta = op1.UserData.Descriptor.MetaIndex(this.m_Script, op1.UserData.Object, eventName); if (meta != null) return meta; } if (op2.Type == DataType.UserData) { DynValue meta = op2.UserData.Descriptor.MetaIndex(this.m_Script, op2.UserData.Object, eventName); if (meta != null) return meta; } return null; } internal DynValue GetMetamethod(DynValue value, string metamethod) { if (value.Type == DataType.UserData) { DynValue v = value.UserData.Descriptor.MetaIndex(m_Script, value.UserData.Object, metamethod); if (v != null) return v; } return GetMetamethodRaw(value, metamethod); } internal DynValue GetMetamethodRaw(DynValue value, string metamethod) { var metatable = GetMetatable(value); if (metatable == null) return null; var metameth = metatable.RawGet(metamethod); if (metameth == null || metameth.IsNil()) return null; return metameth; } internal Script GetScript() { return m_Script; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/Processor/Processor_IExecutionContext.cs.meta ================================================ fileFormatVersion: 2 guid: c31e290c00b668d43891402fab21f857 timeCreated: 1518177924 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/Processor/Processor_InstructionLoop.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using MoonSharp.Interpreter.DataStructs; using MoonSharp.Interpreter.Debugging; using MoonSharp.Interpreter.Interop; namespace MoonSharp.Interpreter.Execution.VM { sealed partial class Processor { const int YIELD_SPECIAL_TRAP = -99; internal long AutoYieldCounter = 0; private bool exceptionHijack; private int lastInstrPtr = 0; private DynValue Processing_Loop(int instructionPtr) { // This is the main loop of the processor, has a weird control flow and needs to be as fast as possible. // This sentence is just a convoluted way to say "don't complain about gotos". long executedInstructions = 0; bool canAutoYield = (AutoYieldCounter > 0) && m_CanYield && (this.State != CoroutineState.Main); repeat_execution: try { if (exceptionHijack) throw ScriptRuntimeException.CallFromAnotherScript(); while (true) { Instruction i = m_RootChunk.Code[instructionPtr]; if (m_Debug.DebuggerAttached != null) { ListenDebugger(i, instructionPtr); } ++executedInstructions; if (canAutoYield && executedInstructions > AutoYieldCounter) { m_SavedInstructionPtr = instructionPtr; return DynValue.NewForcedYieldReq(); } ++instructionPtr; switch (i.OpCode) { case OpCode.Nop: case OpCode.Debug: case OpCode.Meta: break; case OpCode.Pop: m_ValueStack.RemoveLast(i.NumVal); break; case OpCode.Copy: m_ValueStack.Push(m_ValueStack.Peek(i.NumVal)); break; case OpCode.Swap: ExecSwap(i); break; case OpCode.Literal: m_ValueStack.Push(i.Value); break; case OpCode.Add: instructionPtr = ExecAdd(i, instructionPtr); if (instructionPtr == YIELD_SPECIAL_TRAP) goto yield_to_calling_coroutine; break; case OpCode.Concat: instructionPtr = ExecConcat(i, instructionPtr); if (instructionPtr == YIELD_SPECIAL_TRAP) goto yield_to_calling_coroutine; break; case OpCode.Neg: instructionPtr = ExecNeg(i, instructionPtr); if (instructionPtr == YIELD_SPECIAL_TRAP) goto yield_to_calling_coroutine; break; case OpCode.Sub: instructionPtr = ExecSub(i, instructionPtr); if (instructionPtr == YIELD_SPECIAL_TRAP) goto yield_to_calling_coroutine; break; case OpCode.Mul: instructionPtr = ExecMul(i, instructionPtr); if (instructionPtr == YIELD_SPECIAL_TRAP) goto yield_to_calling_coroutine; break; case OpCode.Div: instructionPtr = ExecDiv(i, instructionPtr); if (instructionPtr == YIELD_SPECIAL_TRAP) goto yield_to_calling_coroutine; break; case OpCode.Mod: instructionPtr = ExecMod(i, instructionPtr); if (instructionPtr == YIELD_SPECIAL_TRAP) goto yield_to_calling_coroutine; break; case OpCode.Power: instructionPtr = ExecPower(i, instructionPtr); if (instructionPtr == YIELD_SPECIAL_TRAP) goto yield_to_calling_coroutine; break; case OpCode.Eq: instructionPtr = ExecEq(i, instructionPtr); if (instructionPtr == YIELD_SPECIAL_TRAP) goto yield_to_calling_coroutine; break; case OpCode.LessEq: instructionPtr = ExecLessEq(i, instructionPtr); if (instructionPtr == YIELD_SPECIAL_TRAP) goto yield_to_calling_coroutine; break; case OpCode.Less: instructionPtr = ExecLess(i, instructionPtr); if (instructionPtr == YIELD_SPECIAL_TRAP) goto yield_to_calling_coroutine; break; case OpCode.Len: instructionPtr = ExecLen(i, instructionPtr); if (instructionPtr == YIELD_SPECIAL_TRAP) goto yield_to_calling_coroutine; break; case OpCode.Call: case OpCode.ThisCall: lastInstrPtr = instructionPtr; instructionPtr = Internal_ExecCall(i.NumVal, instructionPtr, null, null, i.OpCode == OpCode.ThisCall, i.Name); if (instructionPtr == YIELD_SPECIAL_TRAP) goto yield_to_calling_coroutine; break; case OpCode.Scalar: m_ValueStack.Push(m_ValueStack.Pop().ToScalar()); break; case OpCode.Not: ExecNot(i); break; case OpCode.CNot: ExecCNot(i); break; case OpCode.JfOrPop: case OpCode.JtOrPop: instructionPtr = ExecShortCircuitingOperator(i, instructionPtr); if (instructionPtr == YIELD_SPECIAL_TRAP) goto yield_to_calling_coroutine; break; case OpCode.JNil: { DynValue v = m_ValueStack.Pop().ToScalar(); if (v.Type == DataType.Nil || v.Type == DataType.Void) instructionPtr = i.NumVal; } if (instructionPtr == YIELD_SPECIAL_TRAP) goto yield_to_calling_coroutine; break; case OpCode.Jf: instructionPtr = JumpBool(i, false, instructionPtr); if (instructionPtr == YIELD_SPECIAL_TRAP) goto yield_to_calling_coroutine; break; case OpCode.Jump: instructionPtr = i.NumVal; if (instructionPtr == YIELD_SPECIAL_TRAP) goto yield_to_calling_coroutine; break; case OpCode.MkTuple: ExecMkTuple(i); break; case OpCode.Clean: ClearBlockData(i); break; case OpCode.Closure: ExecClosure(i); break; case OpCode.BeginFn: ExecBeginFn(i); break; case OpCode.ToBool: m_ValueStack.Push(DynValue.NewBoolean(m_ValueStack.Pop().ToScalar().CastToBool())); break; case OpCode.Args: ExecArgs(i); break; case OpCode.Ret: instructionPtr = ExecRet(i); if (instructionPtr == YIELD_SPECIAL_TRAP) goto yield_to_calling_coroutine; if (instructionPtr < 0) goto return_to_native_code; break; case OpCode.Incr: ExecIncr(i); break; case OpCode.ToNum: ExecToNum(i); break; case OpCode.JFor: instructionPtr = ExecJFor(i, instructionPtr); if (instructionPtr == YIELD_SPECIAL_TRAP) goto yield_to_calling_coroutine; break; case OpCode.NewTable: if (i.NumVal == 0) m_ValueStack.Push(DynValue.NewTable(this.m_Script)); else m_ValueStack.Push(DynValue.NewPrimeTable()); break; case OpCode.IterPrep: ExecIterPrep(i); break; case OpCode.IterUpd: ExecIterUpd(i); break; case OpCode.ExpTuple: ExecExpTuple(i); break; case OpCode.Local: var scope = m_ExecutionStack.Peek().LocalScope; var index = i.Symbol.i_Index; m_ValueStack.Push(scope[index].AsReadOnly()); break; case OpCode.Upvalue: m_ValueStack.Push(m_ExecutionStack.Peek().ClosureScope[i.Symbol.i_Index].AsReadOnly()); break; case OpCode.StoreUpv: ExecStoreUpv(i); break; case OpCode.StoreLcl: ExecStoreLcl(i); break; case OpCode.TblInitN: ExecTblInitN(i); break; case OpCode.TblInitI: ExecTblInitI(i); break; case OpCode.Index: case OpCode.IndexN: case OpCode.IndexL: instructionPtr = ExecIndex(i, instructionPtr); if (instructionPtr == YIELD_SPECIAL_TRAP) goto yield_to_calling_coroutine; break; case OpCode.IndexSet: case OpCode.IndexSetN: case OpCode.IndexSetL: instructionPtr = ExecIndexSet(i, instructionPtr); if (instructionPtr == YIELD_SPECIAL_TRAP) goto yield_to_calling_coroutine; break; case OpCode.Invalid: throw new NotImplementedException(string.Format("Invalid opcode : {0}", i.Name)); default: throw new NotImplementedException(string.Format("Execution for {0} not implented yet!", i.OpCode)); } } yield_to_calling_coroutine: DynValue yieldRequest = m_ValueStack.Pop().ToScalar(); if (m_CanYield) return yieldRequest; else if (this.State == CoroutineState.Main) throw ScriptRuntimeException.CannotYieldMain(); else throw ScriptRuntimeException.CannotYield(); } catch (NullReferenceException e) { if (!e.StackTrace.StartsWith("at Processor")) throw; exceptionHijack = true; instructionPtr = lastInstrPtr; goto repeat_execution; } catch (ArgumentOutOfRangeException e) { if (!e.StackTrace.StartsWith("at Processor")) throw; exceptionHijack = true; instructionPtr = lastInstrPtr; goto repeat_execution; } catch (InterpreterException ex) { FillDebugData(ex, instructionPtr); if (!(ex is ScriptRuntimeException)) { ex.Rethrow(); throw; } if (m_Debug.DebuggerAttached != null) { if (m_Debug.DebuggerAttached.SignalRuntimeException((ScriptRuntimeException)ex)) { if (instructionPtr >= 0 && instructionPtr < this.m_RootChunk.Code.Count) { ListenDebugger(m_RootChunk.Code[instructionPtr], instructionPtr); } } } for (int i = 0; i < m_ExecutionStack.Count; i++) { var c = m_ExecutionStack.Peek(i); if (c.ErrorHandlerBeforeUnwind != null) ex.DecoratedMessage = PerformMessageDecorationBeforeUnwind(c.ErrorHandlerBeforeUnwind, ex.DecoratedMessage, GetCurrentSourceRef(instructionPtr)); } while (m_ExecutionStack.Count > 0) { CallStackItem csi = PopToBasePointer(); if (csi.ErrorHandler != null) { instructionPtr = csi.ReturnAddress; if (csi.ClrFunction == null) { var argscnt = (int)(m_ValueStack.Pop().Number); m_ValueStack.RemoveLast(argscnt + 1); } var cbargs = new DynValue[] { DynValue.NewString(ex.DecoratedMessage) }; DynValue handled = csi.ErrorHandler.Invoke(new ScriptExecutionContext(this, csi.ErrorHandler, GetCurrentSourceRef(instructionPtr)), cbargs); m_ValueStack.Push(handled); goto repeat_execution; } else if ((csi.Flags & CallStackItemFlags.EntryPoint) != 0) { ex.Rethrow(); throw; } } ex.Rethrow(); throw; } return_to_native_code: return m_ValueStack.Pop(); } internal string PerformMessageDecorationBeforeUnwind(DynValue messageHandler, string decoratedMessage, SourceRef sourceRef) { try { DynValue[] args = new DynValue[] { DynValue.NewString(decoratedMessage) }; DynValue ret = DynValue.Nil; if (messageHandler.Type == DataType.Function) { ret = this.Call(messageHandler, args); } else if (messageHandler.Type == DataType.ClrFunction) { ScriptExecutionContext ctx = new ScriptExecutionContext(this, messageHandler.Callback, sourceRef); ret = messageHandler.Callback.Invoke(ctx, args); } else { throw new ScriptRuntimeException("error handler not set to a function"); } string newmsg = ret.ToPrintString(); if (newmsg != null) return newmsg; } catch (ScriptRuntimeException innerEx) { return innerEx.Message + "\n" + decoratedMessage; } return decoratedMessage; } private void AssignLocal(SymbolRef symref, DynValue value) { var stackframe = m_ExecutionStack.Peek(); DynValue v = stackframe.LocalScope[symref.i_Index]; if (v == null) stackframe.LocalScope[symref.i_Index] = v = DynValue.NewNil(); v.Assign(value); } private void ExecStoreLcl(Instruction i) { DynValue value = GetStoreValue(i); SymbolRef symref = i.Symbol; AssignLocal(symref, value); } private void ExecStoreUpv(Instruction i) { DynValue value = GetStoreValue(i); SymbolRef symref = i.Symbol; var stackframe = m_ExecutionStack.Peek(); DynValue v = stackframe.ClosureScope[symref.i_Index]; if (v == null) stackframe.ClosureScope[symref.i_Index] = v = DynValue.NewNil(); v.Assign(value); } private void ExecSwap(Instruction i) { DynValue v1 = m_ValueStack.Peek(i.NumVal); DynValue v2 = m_ValueStack.Peek(i.NumVal2); m_ValueStack.Set(i.NumVal, v2); m_ValueStack.Set(i.NumVal2, v1); } private DynValue GetStoreValue(Instruction i) { int stackofs = i.NumVal; int tupleidx = i.NumVal2; DynValue v = m_ValueStack.Peek(stackofs); if (v.Type == DataType.Tuple) { return (tupleidx < v.Tuple.Length) ? v.Tuple[tupleidx] : DynValue.NewNil(); } else { return (tupleidx == 0) ? v : DynValue.NewNil(); } } private void ExecClosure(Instruction i) { Closure c = new Closure(this.m_Script, i.NumVal, i.SymbolList, i.SymbolList.Select(s => this.GetUpvalueSymbol(s)).ToList()); m_ValueStack.Push(DynValue.NewClosure(c)); } private DynValue GetUpvalueSymbol(SymbolRef s) { if (s.Type == SymbolRefType.Local) return m_ExecutionStack.Peek().LocalScope[s.i_Index]; else if (s.Type == SymbolRefType.Upvalue) return m_ExecutionStack.Peek().ClosureScope[s.i_Index]; else throw new Exception("unsupported symbol type"); } private void ExecMkTuple(Instruction i) { Slice slice = new Slice(m_ValueStack, m_ValueStack.Count - i.NumVal, i.NumVal, false); var v = Internal_AdjustTuple(slice); m_ValueStack.RemoveLast(i.NumVal); m_ValueStack.Push(DynValue.NewTuple(v)); } private void ExecToNum(Instruction i) { double? v = m_ValueStack.Pop().ToScalar().CastToNumber(); if (v.HasValue) m_ValueStack.Push(DynValue.NewNumber(v.Value)); else throw ScriptRuntimeException.ConvertToNumberFailed(i.NumVal); } private void ExecIterUpd(Instruction i) { DynValue v = m_ValueStack.Peek(0); DynValue t = m_ValueStack.Peek(1); t.Tuple[2] = v; } private void ExecExpTuple(Instruction i) { DynValue t = m_ValueStack.Peek(i.NumVal); if (t.Type == DataType.Tuple) { for (int idx = 0; idx < t.Tuple.Length; idx++) m_ValueStack.Push(t.Tuple[idx]); } else { m_ValueStack.Push(t); } } private void ExecIterPrep(Instruction i) { DynValue v = m_ValueStack.Pop(); if (v.Type != DataType.Tuple) { v = DynValue.NewTuple(v, DynValue.Nil, DynValue.Nil); } DynValue f = v.Tuple.Length >= 1 ? v.Tuple[0] : DynValue.Nil; DynValue s = v.Tuple.Length >= 2 ? v.Tuple[1] : DynValue.Nil; DynValue var = v.Tuple.Length >= 3 ? v.Tuple[2] : DynValue.Nil; // MoonSharp additions - given f, s, var // 1) if f is not a function and has a __iterator metamethod, call __iterator to get the triplet // 2) if f is a table with no __call metamethod, use a default table iterator if (f.Type != DataType.Function && f.Type != DataType.ClrFunction) { DynValue meta = this.GetMetamethod(f, "__iterator"); if (meta != null && !meta.IsNil()) { if (meta.Type != DataType.Tuple) v = this.GetScript().Call(meta, f, s, var); else v = meta; f = v.Tuple.Length >= 1 ? v.Tuple[0] : DynValue.Nil; s = v.Tuple.Length >= 2 ? v.Tuple[1] : DynValue.Nil; var = v.Tuple.Length >= 3 ? v.Tuple[2] : DynValue.Nil; m_ValueStack.Push(DynValue.NewTuple(f, s, var)); } else if (f.Type == DataType.Table) { DynValue callmeta = this.GetMetamethod(f, "__call"); if (callmeta == null || callmeta.IsNil()) { m_ValueStack.Push(EnumerableWrapper.ConvertTable(f.Table)); } } } m_ValueStack.Push(DynValue.NewTuple(f, s, var)); } private int ExecJFor(Instruction i, int instructionPtr) { double val = m_ValueStack.Peek(0).Number; double step = m_ValueStack.Peek(1).Number; double stop = m_ValueStack.Peek(2).Number; bool whileCond = (step > 0) ? val <= stop : val >= stop; if (!whileCond) return i.NumVal; else return instructionPtr; } private void ExecIncr(Instruction i) { DynValue top = m_ValueStack.Peek(0); DynValue btm = m_ValueStack.Peek(i.NumVal); if (top.ReadOnly) { m_ValueStack.Pop(); if (top.ReadOnly) top = top.CloneAsWritable(); m_ValueStack.Push(top); } top.AssignNumber(top.Number + btm.Number); } private void ExecCNot(Instruction i) { DynValue v = m_ValueStack.Pop().ToScalar(); DynValue not = m_ValueStack.Pop().ToScalar(); if (not.Type != DataType.Boolean) throw new InternalErrorException("CNOT had non-bool arg"); if (not.CastToBool()) m_ValueStack.Push(DynValue.NewBoolean(!(v.CastToBool()))); else m_ValueStack.Push(DynValue.NewBoolean(v.CastToBool())); } private void ExecNot(Instruction i) { DynValue v = m_ValueStack.Pop().ToScalar(); m_ValueStack.Push(DynValue.NewBoolean(!(v.CastToBool()))); } private void ExecBeginFn(Instruction i) { CallStackItem cur = m_ExecutionStack.Peek(); cur.Debug_Symbols = i.SymbolList; cur.LocalScope = new DynValue[i.NumVal]; ClearBlockData(i); } private CallStackItem PopToBasePointer() { var csi = m_ExecutionStack.Pop(); if (csi.BasePointer >= 0) m_ValueStack.CropAtCount(csi.BasePointer); return csi; } private int PopExecStackAndCheckVStack(int vstackguard) { var xs = m_ExecutionStack.Pop(); if (vstackguard != xs.BasePointer) throw new InternalErrorException("StackGuard violation"); return xs.ReturnAddress; } private IList CreateArgsListForFunctionCall(int numargs, int offsFromTop) { if (numargs == 0) return new DynValue[0]; DynValue lastParam = m_ValueStack.Peek(offsFromTop); if (lastParam.Type == DataType.Tuple && lastParam.Tuple.Length > 1) { List values = new List(); for (int idx = 0; idx < numargs - 1; idx++) values.Add(m_ValueStack.Peek(numargs - idx - 1 + offsFromTop)); for (int idx = 0; idx < lastParam.Tuple.Length; idx++) values.Add(lastParam.Tuple[idx]); return values; } else { return new Slice(m_ValueStack, m_ValueStack.Count - numargs - offsFromTop, numargs, false); } } private void ExecArgs(Instruction I) { int numargs = (int)m_ValueStack.Peek(0).Number; // unpacks last tuple arguments to simplify a lot of code down under var argsList = CreateArgsListForFunctionCall(numargs, 1); for (int i = 0; i < I.SymbolList.Length; i++) { if (i >= argsList.Count) { this.AssignLocal(I.SymbolList[i], DynValue.NewNil()); } else if ((i == I.SymbolList.Length - 1) && (I.SymbolList[i].i_Name == WellKnownSymbols.VARARGS)) { int len = argsList.Count - i; DynValue[] varargs = new DynValue[len]; for (int ii = 0; ii < len; ii++, i++) { varargs[ii] = argsList[i].ToScalar().CloneAsWritable(); } this.AssignLocal(I.SymbolList[I.SymbolList.Length - 1], DynValue.NewTuple(Internal_AdjustTuple(varargs))); } else { this.AssignLocal(I.SymbolList[i], argsList[i].ToScalar().CloneAsWritable()); } } } private int Internal_ExecCall(int argsCount, int instructionPtr, CallbackFunction handler = null, CallbackFunction continuation = null, bool thisCall = false, string debugText = null, DynValue unwindHandler = null) { DynValue fn = m_ValueStack.Peek(argsCount); CallStackItemFlags flags = (thisCall ? CallStackItemFlags.MethodCall : CallStackItemFlags.None); // if TCO threshold reached if ((m_ExecutionStack.Count > this.m_Script.Options.TailCallOptimizationThreshold && m_ExecutionStack.Count > 1) || (m_ValueStack.Count > this.m_Script.Options.TailCallOptimizationThreshold && m_ValueStack.Count > 1)) { // and the "will-be" return address is valid (we don't want to crash here) if (instructionPtr >= 0 && instructionPtr < this.m_RootChunk.Code.Count) { Instruction I = this.m_RootChunk.Code[instructionPtr]; // and we are followed *exactly* by a RET 1 if (I.OpCode == OpCode.Ret && I.NumVal == 1) { CallStackItem csi = m_ExecutionStack.Peek(); // if the current stack item has no "odd" things pending and neither has the new coming one.. if (csi.ClrFunction == null && csi.Continuation == null && csi.ErrorHandler == null && csi.ErrorHandlerBeforeUnwind == null && continuation == null && unwindHandler == null && handler == null) { instructionPtr = PerformTCO(instructionPtr, argsCount); flags |= CallStackItemFlags.TailCall; } } } } if (fn.Type == DataType.ClrFunction) { //IList args = new Slice(m_ValueStack, m_ValueStack.Count - argsCount, argsCount, false); IList args = CreateArgsListForFunctionCall(argsCount, 0); // we expand tuples before callbacks // args = DynValue.ExpandArgumentsToList(args); // instructionPtr - 1: instructionPtr already points to the next instruction at this moment // but we need the current instruction here SourceRef sref = GetCurrentSourceRef(instructionPtr - 1); m_ExecutionStack.Push(new CallStackItem() { ClrFunction = fn.Callback, ReturnAddress = instructionPtr, CallingSourceRef = sref, BasePointer = -1, ErrorHandler = handler, Continuation = continuation, ErrorHandlerBeforeUnwind = unwindHandler, Flags = flags, }); var ret = fn.Callback.Invoke(new ScriptExecutionContext(this, fn.Callback, sref), args, isMethodCall: thisCall); m_ValueStack.RemoveLast(argsCount + 1); m_ValueStack.Push(ret); m_ExecutionStack.Pop(); return Internal_CheckForTailRequests(null, instructionPtr); } else if (fn.Type == DataType.Function) { if (fn.Function.OwnerScript != m_Script) throw ScriptRuntimeException.CallFromAnotherScript(); m_ValueStack.Push(DynValue.NewNumber(argsCount)); m_ExecutionStack.Push(new CallStackItem() { BasePointer = m_ValueStack.Count, ReturnAddress = instructionPtr, Debug_EntryPoint = fn.Function.EntryPointByteCodeLocation, CallingSourceRef = GetCurrentSourceRef(instructionPtr - 1), // See right above in GetCurrentSourceRef(instructionPtr - 1) ClosureScope = fn.Function.ClosureContext, ErrorHandler = handler, Continuation = continuation, ErrorHandlerBeforeUnwind = unwindHandler, Flags = flags, Function = fn.Function }); return fn.Function.EntryPointByteCodeLocation; } // fallback to __call metamethod var m = GetMetamethod(fn, "__call"); if (m != null && m.IsNotNil()) { DynValue[] tmp = new DynValue[argsCount + 1]; for (int i = 0; i < argsCount + 1; i++) tmp[i] = m_ValueStack.Pop(); m_ValueStack.Push(m); for (int i = argsCount; i >= 0; i--) m_ValueStack.Push(tmp[i]); return Internal_ExecCall(argsCount + 1, instructionPtr, handler, continuation); } throw ScriptRuntimeException.AttemptToCallNonFunc(fn.Type, debugText); } private int PerformTCO(int instructionPtr, int argsCount) { DynValue[] args = new DynValue[argsCount + 1]; // Remove all cur args and func ptr for (int i = 0; i <= argsCount; i++) args[i] = m_ValueStack.Pop(); // perform a fake RET CallStackItem csi = PopToBasePointer(); int retpoint = csi.ReturnAddress; var argscnt = (int)(m_ValueStack.Pop().Number); m_ValueStack.RemoveLast(argscnt + 1); // Re-push all cur args and func ptr for (int i = argsCount; i >= 0; i--) m_ValueStack.Push(args[i]); return retpoint; } private int ExecRet(Instruction i) { CallStackItem csi; int retpoint = 0; if (i.NumVal == 0) { csi = PopToBasePointer(); retpoint = csi.ReturnAddress; var argscnt = (int)(m_ValueStack.Pop().Number); m_ValueStack.RemoveLast(argscnt + 1); m_ValueStack.Push(DynValue.Void); } else if (i.NumVal == 1) { var retval = m_ValueStack.Pop(); csi = PopToBasePointer(); retpoint = csi.ReturnAddress; var argscnt = (int)(m_ValueStack.Pop().Number); m_ValueStack.RemoveLast(argscnt + 1); m_ValueStack.Push(retval); retpoint = Internal_CheckForTailRequests(i, retpoint); } else { throw new InternalErrorException("RET supports only 0 and 1 ret val scenarios"); } if (csi.Continuation != null) m_ValueStack.Push(csi.Continuation.Invoke(new ScriptExecutionContext(this, csi.Continuation, i.SourceCodeRef), new DynValue[1] { m_ValueStack.Pop() })); return retpoint; } private int Internal_CheckForTailRequests(Instruction i, int instructionPtr) { DynValue tail = m_ValueStack.Peek(0); if (tail.Type == DataType.TailCallRequest) { m_ValueStack.Pop(); // discard tail call request TailCallData tcd = tail.TailCallData; m_ValueStack.Push(tcd.Function); for (int ii = 0; ii < tcd.Args.Length; ii++) m_ValueStack.Push(tcd.Args[ii]); return Internal_ExecCall(tcd.Args.Length, instructionPtr, tcd.ErrorHandler, tcd.Continuation, false, null, tcd.ErrorHandlerBeforeUnwind); } else if (tail.Type == DataType.YieldRequest) { m_SavedInstructionPtr = instructionPtr; return YIELD_SPECIAL_TRAP; } return instructionPtr; } private int JumpBool(Instruction i, bool expectedValueForJump, int instructionPtr) { DynValue op = m_ValueStack.Pop().ToScalar(); if (op.CastToBool() == expectedValueForJump) return i.NumVal; return instructionPtr; } private int ExecShortCircuitingOperator(Instruction i, int instructionPtr) { bool expectedValToShortCircuit = i.OpCode == OpCode.JtOrPop; DynValue op = m_ValueStack.Peek().ToScalar(); if (op.CastToBool() == expectedValToShortCircuit) { return i.NumVal; } else { m_ValueStack.Pop(); return instructionPtr; } } private int ExecAdd(Instruction i, int instructionPtr) { DynValue r = m_ValueStack.Pop().ToScalar(); DynValue l = m_ValueStack.Pop().ToScalar(); double? rn = r.CastToNumber(); double? ln = l.CastToNumber(); if (ln.HasValue && rn.HasValue) { m_ValueStack.Push(DynValue.NewNumber(ln.Value + rn.Value)); return instructionPtr; } else { int ip = Internal_InvokeBinaryMetaMethod(l, r, "__add", instructionPtr); if (ip >= 0) return ip; else throw ScriptRuntimeException.ArithmeticOnNonNumber(l, r); } } private int ExecSub(Instruction i, int instructionPtr) { DynValue r = m_ValueStack.Pop().ToScalar(); DynValue l = m_ValueStack.Pop().ToScalar(); double? rn = r.CastToNumber(); double? ln = l.CastToNumber(); if (ln.HasValue && rn.HasValue) { m_ValueStack.Push(DynValue.NewNumber(ln.Value - rn.Value)); return instructionPtr; } else { int ip = Internal_InvokeBinaryMetaMethod(l, r, "__sub", instructionPtr); if (ip >= 0) return ip; else throw ScriptRuntimeException.ArithmeticOnNonNumber(l, r); } } private int ExecMul(Instruction i, int instructionPtr) { DynValue r = m_ValueStack.Pop().ToScalar(); DynValue l = m_ValueStack.Pop().ToScalar(); double? rn = r.CastToNumber(); double? ln = l.CastToNumber(); if (ln.HasValue && rn.HasValue) { m_ValueStack.Push(DynValue.NewNumber(ln.Value * rn.Value)); return instructionPtr; } else { int ip = Internal_InvokeBinaryMetaMethod(l, r, "__mul", instructionPtr); if (ip >= 0) return ip; else throw ScriptRuntimeException.ArithmeticOnNonNumber(l, r); } } private int ExecMod(Instruction i, int instructionPtr) { DynValue r = m_ValueStack.Pop().ToScalar(); DynValue l = m_ValueStack.Pop().ToScalar(); double? rn = r.CastToNumber(); double? ln = l.CastToNumber(); if (ln.HasValue && rn.HasValue) { double mod = Math.IEEERemainder(ln.Value, rn.Value); if (mod < 0) mod += rn.Value; m_ValueStack.Push(DynValue.NewNumber(mod)); return instructionPtr; } else { int ip = Internal_InvokeBinaryMetaMethod(l, r, "__mod", instructionPtr); if (ip >= 0) return ip; else throw ScriptRuntimeException.ArithmeticOnNonNumber(l, r); } } private int ExecDiv(Instruction i, int instructionPtr) { DynValue r = m_ValueStack.Pop().ToScalar(); DynValue l = m_ValueStack.Pop().ToScalar(); double? rn = r.CastToNumber(); double? ln = l.CastToNumber(); if (ln.HasValue && rn.HasValue) { m_ValueStack.Push(DynValue.NewNumber(ln.Value / rn.Value)); return instructionPtr; } else { int ip = Internal_InvokeBinaryMetaMethod(l, r, "__div", instructionPtr); if (ip >= 0) return ip; else throw ScriptRuntimeException.ArithmeticOnNonNumber(l, r); } } private int ExecPower(Instruction i, int instructionPtr) { DynValue r = m_ValueStack.Pop().ToScalar(); DynValue l = m_ValueStack.Pop().ToScalar(); double? rn = r.CastToNumber(); double? ln = l.CastToNumber(); if (ln.HasValue && rn.HasValue) { m_ValueStack.Push(DynValue.NewNumber(Math.Pow(ln.Value, rn.Value))); return instructionPtr; } else { int ip = Internal_InvokeBinaryMetaMethod(l, r, "__pow", instructionPtr); if (ip >= 0) return ip; else throw ScriptRuntimeException.ArithmeticOnNonNumber(l, r); } } private int ExecNeg(Instruction i, int instructionPtr) { DynValue r = m_ValueStack.Pop().ToScalar(); double? rn = r.CastToNumber(); if (rn.HasValue) { m_ValueStack.Push(DynValue.NewNumber(-rn.Value)); return instructionPtr; } else { int ip = Internal_InvokeUnaryMetaMethod(r, "__unm", instructionPtr); if (ip >= 0) return ip; else throw ScriptRuntimeException.ArithmeticOnNonNumber(r); } } private int ExecEq(Instruction i, int instructionPtr) { DynValue r = m_ValueStack.Pop().ToScalar(); DynValue l = m_ValueStack.Pop().ToScalar(); // first we do a brute force equals over the references if (object.ReferenceEquals(r, l)) { m_ValueStack.Push(DynValue.True); return instructionPtr; } // then if they are userdatas, attempt meta if (l.Type == DataType.UserData || r.Type == DataType.UserData) { int ip = Internal_InvokeBinaryMetaMethod(l, r, "__eq", instructionPtr); if (ip >= 0) return ip; } // then if types are different, ret false if (r.Type != l.Type) { if ((l.Type == DataType.Nil && r.Type == DataType.Void) || (l.Type == DataType.Void && r.Type == DataType.Nil)) m_ValueStack.Push(DynValue.True); else m_ValueStack.Push(DynValue.False); return instructionPtr; } // then attempt metatables for tables if ((l.Type == DataType.Table) && (GetMetatable(l) != null) && (GetMetatable(l) == GetMetatable(r))) { int ip = Internal_InvokeBinaryMetaMethod(l, r, "__eq", instructionPtr); if (ip >= 0) return ip; } // else perform standard comparison m_ValueStack.Push(DynValue.NewBoolean(r.Equals(l))); return instructionPtr; } private int ExecLess(Instruction i, int instructionPtr) { DynValue r = m_ValueStack.Pop().ToScalar(); DynValue l = m_ValueStack.Pop().ToScalar(); if (l.Type == DataType.Number && r.Type == DataType.Number) { m_ValueStack.Push(DynValue.NewBoolean(l.Number < r.Number)); } else if (l.Type == DataType.String && r.Type == DataType.String) { m_ValueStack.Push(DynValue.NewBoolean(l.String.CompareTo(r.String) < 0)); } else { int ip = Internal_InvokeBinaryMetaMethod(l, r, "__lt", instructionPtr); if (ip < 0) throw ScriptRuntimeException.CompareInvalidType(l, r); else return ip; } return instructionPtr; } private int ExecLessEq(Instruction i, int instructionPtr) { DynValue r = m_ValueStack.Pop().ToScalar(); DynValue l = m_ValueStack.Pop().ToScalar(); if (l.Type == DataType.Number && r.Type == DataType.Number) { m_ValueStack.Push(DynValue.False); m_ValueStack.Push(DynValue.NewBoolean(l.Number <= r.Number)); } else if (l.Type == DataType.String && r.Type == DataType.String) { m_ValueStack.Push(DynValue.False); m_ValueStack.Push(DynValue.NewBoolean(l.String.CompareTo(r.String) <= 0)); } else { int ip = Internal_InvokeBinaryMetaMethod(l, r, "__le", instructionPtr, DynValue.False); if (ip < 0) { ip = Internal_InvokeBinaryMetaMethod(r, l, "__lt", instructionPtr, DynValue.True); if (ip < 0) throw ScriptRuntimeException.CompareInvalidType(l, r); else return ip; } else return ip; } return instructionPtr; } private int ExecLen(Instruction i, int instructionPtr) { DynValue r = m_ValueStack.Pop().ToScalar(); if (r.Type == DataType.String) m_ValueStack.Push(DynValue.NewNumber(r.String.Length)); else { int ip = Internal_InvokeUnaryMetaMethod(r, "__len", instructionPtr); if (ip >= 0) return ip; else if (r.Type == DataType.Table) m_ValueStack.Push(DynValue.NewNumber(r.Table.Length)); else throw ScriptRuntimeException.LenOnInvalidType(r); } return instructionPtr; } private int ExecConcat(Instruction i, int instructionPtr) { DynValue r = m_ValueStack.Pop().ToScalar(); DynValue l = m_ValueStack.Pop().ToScalar(); string rs = r.CastToString(); string ls = l.CastToString(); if (rs != null && ls != null) { m_ValueStack.Push(DynValue.NewString(ls + rs)); return instructionPtr; } else { int ip = Internal_InvokeBinaryMetaMethod(l, r, "__concat", instructionPtr); if (ip >= 0) return ip; else throw ScriptRuntimeException.ConcatOnNonString(l, r); } } private void ExecTblInitI(Instruction i) { // stack: tbl - val DynValue val = m_ValueStack.Pop(); DynValue tbl = m_ValueStack.Peek(); if (tbl.Type != DataType.Table) throw new InternalErrorException("Unexpected type in table ctor : {0}", tbl); tbl.Table.InitNextArrayKeys(val, i.NumVal != 0); } private void ExecTblInitN(Instruction i) { // stack: tbl - key - val DynValue val = m_ValueStack.Pop(); DynValue key = m_ValueStack.Pop(); DynValue tbl = m_ValueStack.Peek(); if (tbl.Type != DataType.Table) throw new InternalErrorException("Unexpected type in table ctor : {0}", tbl); tbl.Table.Set(key, val.ToScalar()); } private int ExecIndexSet(Instruction i, int instructionPtr) { int nestedMetaOps = 100; // sanity check, to avoid potential infinite loop here // stack: vals.. - base - index bool isNameIndex = i.OpCode == OpCode.IndexSetN; bool isMultiIndex = (i.OpCode == OpCode.IndexSetL); DynValue originalIdx = i.Value ?? m_ValueStack.Pop(); DynValue idx = originalIdx.ToScalar(); DynValue obj = m_ValueStack.Pop().ToScalar(); var value = GetStoreValue(i); DynValue h = null; while (nestedMetaOps > 0) { --nestedMetaOps; if (obj.Type == DataType.Table) { if (!isMultiIndex) { if (!obj.Table.Get(idx).IsNil()) { obj.Table.Set(idx, value); return instructionPtr; } } h = GetMetamethodRaw(obj, "__newindex"); if (h == null || h.IsNil()) { if (isMultiIndex) throw new ScriptRuntimeException("cannot multi-index a table. userdata expected"); obj.Table.Set(idx, value); return instructionPtr; } } else if (obj.Type == DataType.UserData) { UserData ud = obj.UserData; if (!ud.Descriptor.SetIndex(this.GetScript(), ud.Object, originalIdx, value, isNameIndex)) { throw ScriptRuntimeException.UserDataMissingField(ud.Descriptor.Name, idx.String); } return instructionPtr; } else { h = GetMetamethodRaw(obj, "__newindex"); if (h == null || h.IsNil()) throw ScriptRuntimeException.IndexType(obj); } if (h.Type == DataType.Function || h.Type == DataType.ClrFunction) { if (isMultiIndex) throw new ScriptRuntimeException("cannot multi-index through metamethods. userdata expected"); m_ValueStack.Pop(); // burn extra value ? m_ValueStack.Push(h); m_ValueStack.Push(obj); m_ValueStack.Push(idx); m_ValueStack.Push(value); return Internal_ExecCall(3, instructionPtr); } else { obj = h; h = null; } } throw ScriptRuntimeException.LoopInNewIndex(); } private int ExecIndex(Instruction i, int instructionPtr) { int nestedMetaOps = 100; // sanity check, to avoid potential infinite loop here // stack: base - index bool isNameIndex = i.OpCode == OpCode.IndexN; bool isMultiIndex = (i.OpCode == OpCode.IndexL); DynValue originalIdx = i.Value ?? m_ValueStack.Pop(); DynValue idx = originalIdx.ToScalar(); DynValue obj = m_ValueStack.Pop().ToScalar(); DynValue h = null; while (nestedMetaOps > 0) { --nestedMetaOps; if (obj.Type == DataType.Table) { if (!isMultiIndex) { var v = obj.Table.Get(idx); if (!v.IsNil()) { m_ValueStack.Push(v.AsReadOnly()); return instructionPtr; } } h = GetMetamethodRaw(obj, "__index"); if (h == null || h.IsNil()) { if (isMultiIndex) throw new ScriptRuntimeException("cannot multi-index a table. userdata expected"); m_ValueStack.Push(DynValue.Nil); return instructionPtr; } } else if (obj.Type == DataType.UserData) { UserData ud = obj.UserData; var v = ud.Descriptor.Index(this.GetScript(), ud.Object, originalIdx, isNameIndex); if (v == null) { throw ScriptRuntimeException.UserDataMissingField(ud.Descriptor.Name, idx.String); } m_ValueStack.Push(v.AsReadOnly()); return instructionPtr; } else { h = GetMetamethodRaw(obj, "__index"); if (h == null || h.IsNil()) throw ScriptRuntimeException.IndexType(obj); } if (h.Type == DataType.Function || h.Type == DataType.ClrFunction) { if (isMultiIndex) throw new ScriptRuntimeException("cannot multi-index through metamethods. userdata expected"); m_ValueStack.Push(h); m_ValueStack.Push(obj); m_ValueStack.Push(idx); return Internal_ExecCall(2, instructionPtr); } else { obj = h; h = null; } } throw ScriptRuntimeException.LoopInIndex(); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/Processor/Processor_InstructionLoop.cs.meta ================================================ fileFormatVersion: 2 guid: fc1a0990fe885f3499ec93cd6f03a1b1 timeCreated: 1518177926 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/Processor/Processor_Scope.cs ================================================ using System; namespace MoonSharp.Interpreter.Execution.VM { sealed partial class Processor { private void ClearBlockData(Instruction I) { int from = I.NumVal; int to = I.NumVal2; var array = this.m_ExecutionStack.Peek().LocalScope; if (to >= 0 && from >= 0 && to >= from) { Array.Clear(array, from, to - from + 1); } } public DynValue GetGenericSymbol(SymbolRef symref) { switch (symref.i_Type) { case SymbolRefType.DefaultEnv: return DynValue.NewTable(this.GetScript().Globals); case SymbolRefType.Global: return GetGlobalSymbol(GetGenericSymbol(symref.i_Env), symref.i_Name); case SymbolRefType.Local: return GetTopNonClrFunction().LocalScope[symref.i_Index]; case SymbolRefType.Upvalue: return GetTopNonClrFunction().ClosureScope[symref.i_Index]; default: throw new InternalErrorException("Unexpected {0} LRef at resolution: {1}", symref.i_Type, symref.i_Name); } } private DynValue GetGlobalSymbol(DynValue dynValue, string name) { if (dynValue.Type != DataType.Table) throw new InvalidOperationException(string.Format("_ENV is not a table but a {0}", dynValue.Type)); return dynValue.Table.Get(name); } private void SetGlobalSymbol(DynValue dynValue, string name, DynValue value) { if (dynValue.Type != DataType.Table) throw new InvalidOperationException(string.Format("_ENV is not a table but a {0}", dynValue.Type)); dynValue.Table.Set(name, value ?? DynValue.Nil); } public void AssignGenericSymbol(SymbolRef symref, DynValue value) { switch (symref.i_Type) { case SymbolRefType.Global: SetGlobalSymbol(GetGenericSymbol(symref.i_Env), symref.i_Name, value); break; case SymbolRefType.Local: { var stackframe = GetTopNonClrFunction(); DynValue v = stackframe.LocalScope[symref.i_Index]; if (v == null) stackframe.LocalScope[symref.i_Index] = v = DynValue.NewNil(); v.Assign(value); } break; case SymbolRefType.Upvalue: { var stackframe = GetTopNonClrFunction(); DynValue v = stackframe.ClosureScope[symref.i_Index]; if (v == null) stackframe.ClosureScope[symref.i_Index] = v = DynValue.NewNil(); v.Assign(value); } break; case SymbolRefType.DefaultEnv: { throw new ArgumentException("Can't AssignGenericSymbol on a DefaultEnv symbol"); } default: throw new InternalErrorException("Unexpected {0} LRef at resolution: {1}", symref.i_Type, symref.i_Name); } } CallStackItem GetTopNonClrFunction() { CallStackItem stackframe = null; for (int i = 0; i < m_ExecutionStack.Count; i++) { stackframe = m_ExecutionStack.Peek(i); if (stackframe.ClrFunction == null) break; } return stackframe; } public SymbolRef FindSymbolByName(string name) { if (m_ExecutionStack.Count > 0) { CallStackItem stackframe = GetTopNonClrFunction(); if (stackframe != null) { if (stackframe.Debug_Symbols != null) { for (int i = stackframe.Debug_Symbols.Length - 1; i >= 0; i--) { var l = stackframe.Debug_Symbols[i]; if (l.i_Name == name && stackframe.LocalScope[i] != null) return l; } } var closure = stackframe.ClosureScope; if (closure != null) { for (int i = 0; i < closure.Symbols.Length; i++) if (closure.Symbols[i] == name) return SymbolRef.Upvalue(name, i); } } } if (name != WellKnownSymbols.ENV) { SymbolRef env = FindSymbolByName(WellKnownSymbols.ENV); return SymbolRef.Global(name, env); } else { return SymbolRef.DefaultEnv; } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/Processor/Processor_Scope.cs.meta ================================================ fileFormatVersion: 2 guid: 55d6c173f35ba0f459e0f1ec64bf97f4 timeCreated: 1518177918 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/Processor/Processor_UtilityFunctions.cs ================================================ using System.Collections.Generic; namespace MoonSharp.Interpreter.Execution.VM { sealed partial class Processor { private DynValue[] Internal_AdjustTuple(IList values) { if (values == null || values.Count == 0) return new DynValue[0]; if (values[values.Count - 1].Type == DataType.Tuple) { int baseLen = values.Count - 1 + values[values.Count - 1].Tuple.Length; DynValue[] result = new DynValue[baseLen]; for (int i = 0; i < values.Count - 1; i++) { result[i] = values[i].ToScalar(); } for (int i = 0; i < values[values.Count - 1].Tuple.Length; i++) { result[values.Count + i - 1] = values[values.Count - 1].Tuple[i]; } if (result[result.Length - 1].Type == DataType.Tuple) return Internal_AdjustTuple(result); else return result; } else { DynValue[] result = new DynValue[values.Count]; for (int i = 0; i < values.Count; i++) { result[i] = values[i].ToScalar(); } return result; } } private int Internal_InvokeUnaryMetaMethod(DynValue op1, string eventName, int instructionPtr) { DynValue m = null; if (op1.Type == DataType.UserData) { m = op1.UserData.Descriptor.MetaIndex(m_Script, op1.UserData.Object, eventName); } if (m == null) { var op1_MetaTable = GetMetatable(op1); if (op1_MetaTable != null) { DynValue meta1 = op1_MetaTable.RawGet(eventName); if (meta1 != null && meta1.IsNotNil()) m = meta1; } } if (m != null) { m_ValueStack.Push(m); m_ValueStack.Push(op1); return Internal_ExecCall(1, instructionPtr); } else { return -1; } } private int Internal_InvokeBinaryMetaMethod(DynValue l, DynValue r, string eventName, int instructionPtr, DynValue extraPush = null) { var m = GetBinaryMetamethod(l, r, eventName); if (m != null) { if (extraPush != null) m_ValueStack.Push(extraPush); m_ValueStack.Push(m); m_ValueStack.Push(l); m_ValueStack.Push(r); return Internal_ExecCall(2, instructionPtr); } else { return -1; } } private DynValue[] StackTopToArray(int items, bool pop) { DynValue[] values = new DynValue[items]; if (pop) { for (int i = 0; i < items; i++) { values[i] = m_ValueStack.Pop(); } } else { for (int i = 0; i < items; i++) { values[i] = m_ValueStack[m_ValueStack.Count - 1 - i]; } } return values; } private DynValue[] StackTopToArrayReverse(int items, bool pop) { DynValue[] values = new DynValue[items]; if (pop) { for (int i = 0; i < items; i++) { values[items - 1 - i] = m_ValueStack.Pop(); } } else { for (int i = 0; i < items; i++) { values[items - 1 - i] = m_ValueStack[m_ValueStack.Count - 1 - i]; } } return values; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/Processor/Processor_UtilityFunctions.cs.meta ================================================ fileFormatVersion: 2 guid: 04708aee5ff4a964789c50381d2e07a2 timeCreated: 1518177914 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM/Processor.meta ================================================ fileFormatVersion: 2 guid: 76900540e5441b54fbe0e922eba0f52f folderAsset: yes timeCreated: 1518177913 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution/VM.meta ================================================ fileFormatVersion: 2 guid: 3294263a06616d34b92498d44b594f6f folderAsset: yes timeCreated: 1518177912 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Execution.meta ================================================ fileFormatVersion: 2 guid: 1e47dba2632d6934a98d79d2ae5da12c folderAsset: yes timeCreated: 1518177911 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/IO/BinDumpBinaryReader.cs ================================================ using System.Collections.Generic; using System.IO; using System.Text; namespace MoonSharp.Interpreter.IO { /// /// "Optimized" BinaryReader which shares strings and use a dumb compression for integers /// public class BinDumpBinaryReader : BinaryReader { public BinDumpBinaryReader(Stream s) : base(s) { } public BinDumpBinaryReader(Stream s, Encoding e) : base(s, e) { } List m_Strings = new List(); public override int ReadInt32() { sbyte b = base.ReadSByte(); if (b == 0x7F) return (int)base.ReadInt16(); else if (b == 0x7E) return (int)base.ReadInt32(); else return (int)b; } public override uint ReadUInt32() { byte b = base.ReadByte(); if (b == 0x7F) return (uint)base.ReadUInt16(); else if (b == 0x7E) return (uint)base.ReadUInt32(); else return (uint)b; } public override string ReadString() { int pos = ReadInt32(); if (pos < m_Strings.Count) { return m_Strings[pos]; } else if (pos == m_Strings.Count) { string str = base.ReadString(); m_Strings.Add(str); return str; } else { throw new IOException("string map failure"); } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/IO/BinDumpBinaryReader.cs.meta ================================================ fileFormatVersion: 2 guid: 92bf47d6eb5a06542ba542405e84b66e timeCreated: 1518177922 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/IO/BinDumpBinaryWriter.cs ================================================ using System.Collections.Generic; using System.IO; using System.Text; namespace MoonSharp.Interpreter.IO { /// /// "Optimized" BinaryWriter which shares strings and use a dumb compression for integers /// public class BinDumpBinaryWriter : BinaryWriter { Dictionary m_StringMap = new Dictionary(); public BinDumpBinaryWriter(Stream s) : base(s) { } public BinDumpBinaryWriter(Stream s, Encoding e) : base(s, e) { } public override void Write(uint value) { byte v8 = (byte)value; if ((uint)v8 == value && (v8 != 0x7F) && (v8 != 0x7E)) { base.Write(v8); } else { ushort v16 = (ushort)value; if ((uint)v16 == value) { base.Write((byte)0x7F); base.Write(v16); } else { base.Write((byte)0x7E); base.Write(value); } } } public override void Write(int value) { sbyte vsbyte = (sbyte)value; if ((int)vsbyte == value && (vsbyte != 0x7F) && (vsbyte != 0x7E)) { base.Write(vsbyte); } else { short vshort = (short)value; if ((int)vshort == value) { base.Write((sbyte)0x7F); base.Write(vshort); } else { base.Write((sbyte)0x7E); base.Write(value); } } } public override void Write(string value) { int pos; if (m_StringMap.TryGetValue(value, out pos)) { this.Write(m_StringMap[value]); } else { pos = m_StringMap.Count; m_StringMap[value] = pos; this.Write(pos); base.Write(value); } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/IO/BinDumpBinaryWriter.cs.meta ================================================ fileFormatVersion: 2 guid: 723d02675ffe0fa45ac6cd3910dae8d4 timeCreated: 1518177920 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/IO/UndisposableStream.cs ================================================ using System; using System.IO; namespace MoonSharp.Interpreter.IO { /// /// An adapter over Stream which bypasses the Dispose and Close methods. /// Used to work around the pesky wrappers .NET has over Stream (BinaryReader, StreamWriter, etc.) which think they /// own the Stream and close them when they shouldn't. Damn. /// public class UndisposableStream : Stream { Stream m_Stream; public UndisposableStream(Stream stream) { m_Stream = stream; } protected override void Dispose(bool disposing) { } #if !(PCL || ENABLE_DOTNET || NETFX_CORE) public override void Close() { } #endif public override bool CanRead { get { return m_Stream.CanRead; } } public override bool CanSeek { get { return m_Stream.CanSeek; } } public override bool CanWrite { get { return m_Stream.CanWrite; } } public override void Flush() { m_Stream.Flush(); } public override long Length { get { return m_Stream.Length; } } public override long Position { get { return m_Stream.Position; } set { m_Stream.Position = value; } } public override int Read(byte[] buffer, int offset, int count) { return m_Stream.Read(buffer, offset, count); } public override long Seek(long offset, SeekOrigin origin) { return m_Stream.Seek(offset, origin); } public override void SetLength(long value) { m_Stream.SetLength(value); } public override void Write(byte[] buffer, int offset, int count) { m_Stream.Write(buffer, offset, count); } #if (!(NETFX_CORE)) public override IAsyncResult BeginRead(byte[] buffer, int offset, int count, AsyncCallback callback, object state) { return m_Stream.BeginRead(buffer, offset, count, callback, state); } public override IAsyncResult BeginWrite(byte[] buffer, int offset, int count, AsyncCallback callback, object state) { return m_Stream.BeginWrite(buffer, offset, count, callback, state); } public override void EndWrite(IAsyncResult asyncResult) { m_Stream.EndWrite(asyncResult); } public override int EndRead(IAsyncResult asyncResult) { return m_Stream.EndRead(asyncResult); } #endif public override bool CanTimeout { get { return m_Stream.CanTimeout; } } public override bool Equals(object obj) { return m_Stream.Equals(obj); } public override int GetHashCode() { return m_Stream.GetHashCode(); } public override int ReadByte() { return m_Stream.ReadByte(); } public override int ReadTimeout { get { return m_Stream.ReadTimeout; } set { m_Stream.ReadTimeout = value; } } public override string ToString() { return m_Stream.ToString(); } public override void WriteByte(byte value) { m_Stream.WriteByte(value); } public override int WriteTimeout { get { return m_Stream.WriteTimeout; } set { m_Stream.WriteTimeout = value; } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/IO/UndisposableStream.cs.meta ================================================ fileFormatVersion: 2 guid: b356e082aada7724fa8fb24ce060fbad timeCreated: 1518177923 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/IO.meta ================================================ fileFormatVersion: 2 guid: 541e50f788b0980418f728749293713e folderAsset: yes timeCreated: 1518177911 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/Attributes/MoonSharpHiddenAttribute.cs ================================================ using System; namespace MoonSharp.Interpreter { /// /// Forces a class member visibility to scripts. Can be used to hide public members. Equivalent to MoonSharpVisible(false). /// [AttributeUsage(AttributeTargets.Method | AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Constructor | AttributeTargets.Event, Inherited = true, AllowMultiple = false)] public sealed class MoonSharpHiddenAttribute : Attribute { } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/Attributes/MoonSharpHiddenAttribute.cs.meta ================================================ fileFormatVersion: 2 guid: e0ee76c7d18c9b6438818414112a6237 timeCreated: 1518177925 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/Attributes/MoonSharpHideMemberAttribute.cs ================================================ using System; namespace MoonSharp.Interpreter { /// /// Lists a userdata member not to be exposed to scripts referencing it by name. /// [AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct, Inherited = true, AllowMultiple = true)] public sealed class MoonSharpHideMemberAttribute : Attribute { /// /// Gets the name of the member to be hidden. /// public string MemberName { get; private set; } /// /// Initializes a new instance of the class. /// /// Name of the member to hide. public MoonSharpHideMemberAttribute(string memberName) { MemberName = memberName; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/Attributes/MoonSharpHideMemberAttribute.cs.meta ================================================ fileFormatVersion: 2 guid: edb3596d553f78149861df66c052b563 timeCreated: 1518177925 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/Attributes/MoonSharpPropertyAttribute.cs ================================================ using System; namespace MoonSharp.Interpreter { /// /// Marks a property as a configruation property /// [AttributeUsage(AttributeTargets.Property, Inherited = true, AllowMultiple = true)] public sealed class MoonSharpPropertyAttribute : Attribute { /// /// The metamethod name (like '__div', '__ipairs', etc.) /// public string Name { get; private set; } /// /// Initializes a new instance of the class. /// public MoonSharpPropertyAttribute() { } /// /// Initializes a new instance of the class. /// /// The name for this property public MoonSharpPropertyAttribute(string name) { Name = name; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/Attributes/MoonSharpPropertyAttribute.cs.meta ================================================ fileFormatVersion: 2 guid: 7fa826797e1590140a5f92b668855e05 timeCreated: 1518177921 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/Attributes/MoonSharpUserDataAttribute.cs ================================================ using System; namespace MoonSharp.Interpreter { /// /// Marks a type of automatic registration as userdata (which happens only if UserData.RegisterAssembly is called). /// [AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct, Inherited = false, AllowMultiple = false)] public sealed class MoonSharpUserDataAttribute : Attribute { /// /// The interop access mode /// public InteropAccessMode AccessMode { get; set; } /// /// Initializes a new instance of the class. /// public MoonSharpUserDataAttribute() { AccessMode = InteropAccessMode.Default; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/Attributes/MoonSharpUserDataAttribute.cs.meta ================================================ fileFormatVersion: 2 guid: 4187df726795f1944896f6399482a064 timeCreated: 1518177918 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/Attributes/MoonSharpUserDataMetamethodAttribute.cs ================================================ using System; namespace MoonSharp.Interpreter { /// /// Marks a method as the handler of metamethods of a userdata type /// [AttributeUsage(AttributeTargets.Method, Inherited = true, AllowMultiple = true)] public sealed class MoonSharpUserDataMetamethodAttribute : Attribute { /// /// The metamethod name (like '__div', '__ipairs', etc.) /// public string Name { get; private set; } /// /// Initializes a new instance of the class. /// /// The metamethod name (like '__div', '__ipairs', etc.) public MoonSharpUserDataMetamethodAttribute(string name) { Name = name; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/Attributes/MoonSharpUserDataMetamethodAttribute.cs.meta ================================================ fileFormatVersion: 2 guid: 31130bda222831445a4ae8a897e68836 timeCreated: 1518177916 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/Attributes/MoonSharpVisibleAttribute.cs ================================================ using System; namespace MoonSharp.Interpreter.Interop { /// /// Forces a class member visibility to scripts. Can be used to hide public members or to expose non-public ones. /// [AttributeUsage(AttributeTargets.Method | AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Constructor | AttributeTargets.Event, Inherited = true, AllowMultiple = false)] public sealed class MoonSharpVisibleAttribute : Attribute { /// /// Gets a value indicating whether this is set to "visible". /// public bool Visible { get; private set; } /// /// Initializes a new instance of the class. /// /// if set to true the member will be exposed to scripts, if false the member will be hidden. public MoonSharpVisibleAttribute(bool visible) { Visible = visible; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/Attributes/MoonSharpVisibleAttribute.cs.meta ================================================ fileFormatVersion: 2 guid: 973024d24a154e84fb18cfe951286985 timeCreated: 1518177922 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/Attributes.meta ================================================ fileFormatVersion: 2 guid: a2020bc390bd70f44bd604893a1252d3 folderAsset: yes timeCreated: 1518177913 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/BasicDescriptors/DispatchingUserDataDescriptor.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using MoonSharp.Interpreter.Compatibility; using MoonSharp.Interpreter.Interop.Converters; namespace MoonSharp.Interpreter.Interop.BasicDescriptors { /// /// An abstract user data descriptor which accepts members described by objects and /// correctly dispatches to them. /// Metamethods are also by default dispatched to operator overloads and other similar methods - see /// . /// public abstract class DispatchingUserDataDescriptor : IUserDataDescriptor, IOptimizableDescriptor { private int m_ExtMethodsVersion = 0; private Dictionary m_MetaMembers = new Dictionary(); private Dictionary m_Members = new Dictionary(); /// /// The special name used by CLR for indexer getters /// protected const string SPECIALNAME_INDEXER_GET = "get_Item"; /// /// The special name used by CLR for indexer setters /// protected const string SPECIALNAME_INDEXER_SET = "set_Item"; /// /// The special name used by CLR for explicit cast conversions /// protected const string SPECIALNAME_CAST_EXPLICIT = "op_Explicit"; /// /// The special name used by CLR for implicit cast conversions /// protected const string SPECIALNAME_CAST_IMPLICIT = "op_Implicit"; /// /// Gets the name of the descriptor (usually, the name of the type described). /// public string Name { get; private set; } /// /// Gets the type this descriptor refers to /// public Type Type { get; private set; } /// /// Gets a human readable friendly name of the descriptor /// public string FriendlyName { get; private set; } /// /// Initializes a new instance of the class. /// /// The type this descriptor refers to. /// A friendly name for the type, or null. protected DispatchingUserDataDescriptor(Type type, string friendlyName = null) { Type = type; Name = type.FullName; FriendlyName = friendlyName ?? type.Name; } /// /// Adds a member to the meta-members list. /// /// The name of the metamethod. /// The desc. /// /// Thrown if a name conflict is detected and one of the conflicting members does not support overloads. /// public void AddMetaMember(string name, IMemberDescriptor desc) { if (desc != null) AddMemberTo(m_MetaMembers, name, desc); } /// /// Adds a DynValue as a member /// /// The name. /// The value. public void AddDynValue(string name, DynValue value) { var desc = new DynValueMemberDescriptor(name, value); AddMemberTo(m_Members, name, desc); } /// /// Adds a property to the member list /// /// The name. /// The descriptor. /// /// Thrown if a name conflict is detected and one of the conflicting members does not support overloads. /// public void AddMember(string name, IMemberDescriptor desc) { if (desc != null) AddMemberTo(m_Members, name, desc); } /// /// Gets the member names. /// public IEnumerable MemberNames { get { return m_Members.Keys; } } /// /// Gets the members. /// public IEnumerable> Members { get { return m_Members; } } /// /// Finds the member with a given name. If not found, null is returned. /// /// Name of the member. /// public IMemberDescriptor FindMember(string memberName) { return m_Members.GetOrDefault(memberName); } /// /// Removes the member with a given name. In case of overloaded functions, all overloads are removed. /// /// Name of the member. public void RemoveMember(string memberName) { m_Members.Remove(memberName); } /// /// Gets the meta member names. /// public IEnumerable MetaMemberNames { get { return m_MetaMembers.Keys; } } /// /// Gets the meta members. /// public IEnumerable> MetaMembers { get { return m_MetaMembers; } } /// /// Finds the meta member with a given name. If not found, null is returned. /// /// Name of the member. public IMemberDescriptor FindMetaMember(string memberName) { return m_MetaMembers.GetOrDefault(memberName); } /// /// Removes the meta member with a given name. In case of overloaded functions, all overloads are removed. /// /// Name of the member. public void RemoveMetaMember(string memberName) { m_MetaMembers.Remove(memberName); } private void AddMemberTo(Dictionary members, string name, IMemberDescriptor desc) { IOverloadableMemberDescriptor odesc = desc as IOverloadableMemberDescriptor; if (odesc != null) { if (members.ContainsKey(name)) { OverloadedMethodMemberDescriptor overloads = members[name] as OverloadedMethodMemberDescriptor; if (overloads != null) overloads.AddOverload(odesc); else throw new ArgumentException(string.Format("Multiple members named {0} are being added to type {1} and one or more of these members do not support overloads.", name, this.Type.FullName)); } else { members.Add(name, new OverloadedMethodMemberDescriptor(name, this.Type, odesc)); } } else { if (members.ContainsKey(name)) { throw new ArgumentException(string.Format("Multiple members named {0} are being added to type {1} and one or more of these members do not support overloads.", name, this.Type.FullName)); } else { members.Add(name, desc); } } } /// /// Performs an "index" "get" operation. This tries to resolve minor variations of member names. /// /// The script originating the request /// The object (null if a static request is done) /// The index. /// If set to true, it's indexed with a name, if false it's indexed through brackets. /// public virtual DynValue Index(Script script, object obj, DynValue index, bool isDirectIndexing) { if (!isDirectIndexing) { IMemberDescriptor mdesc = m_Members .GetOrDefault(SPECIALNAME_INDEXER_GET) .WithAccessOrNull(MemberDescriptorAccess.CanExecute); if (mdesc != null) return ExecuteIndexer(mdesc, script, obj, index, null); } index = index.ToScalar(); if (index.Type != DataType.String) return null; DynValue v = TryIndex(script, obj, index.String); if (v == null) v = TryIndex(script, obj, UpperFirstLetter(index.String)); if (v == null) v = TryIndex(script, obj, Camelify(index.String)); if (v == null) v = TryIndex(script, obj, UpperFirstLetter(Camelify(index.String))); if (v == null && m_ExtMethodsVersion < UserData.GetExtensionMethodsChangeVersion()) { m_ExtMethodsVersion = UserData.GetExtensionMethodsChangeVersion(); v = TryIndexOnExtMethod(script, obj, index.String); if (v == null) v = TryIndexOnExtMethod(script, obj, UpperFirstLetter(index.String)); if (v == null) v = TryIndexOnExtMethod(script, obj, Camelify(index.String)); if (v == null) v = TryIndexOnExtMethod(script, obj, UpperFirstLetter(Camelify(index.String))); } return v; } /// /// Tries to perform an indexing operation by checking newly added extension methods for the given indexName. /// /// The script. /// The object. /// Member name to be indexed. /// /// private DynValue TryIndexOnExtMethod(Script script, object obj, string indexName) { List methods = UserData.GetExtensionMethodsByNameAndType(indexName, this.Type); if (methods != null && methods.Count > 0) { var ext = new OverloadedMethodMemberDescriptor(indexName, this.Type); ext.SetExtensionMethodsSnapshot(UserData.GetExtensionMethodsChangeVersion(), methods); m_Members.Add(indexName, ext); return DynValue.NewCallback(ext.GetCallback(script, obj)); } return null; } /// /// Determines whether the descriptor contains the specified member (by exact name) /// /// Name of the member. /// public bool HasMember(string exactName) { return m_Members.ContainsKey(exactName); } /// /// Determines whether the descriptor contains the specified member in the meta list (by exact name) /// /// Name of the meta-member. /// public bool HasMetaMember(string exactName) { return m_MetaMembers.ContainsKey(exactName); } /// /// Tries to perform an indexing operation by checking methods and properties for the given indexName /// /// The script. /// The object. /// Member name to be indexed. /// protected virtual DynValue TryIndex(Script script, object obj, string indexName) { IMemberDescriptor desc; if (m_Members.TryGetValue(indexName, out desc)) { return desc.GetValue(script, obj); } return null; } /// /// Performs an "index" "set" operation. This tries to resolve minor variations of member names. /// /// The script originating the request /// The object (null if a static request is done) /// The index. /// The value to be set /// If set to true, it's indexed with a name, if false it's indexed through brackets. /// public virtual bool SetIndex(Script script, object obj, DynValue index, DynValue value, bool isDirectIndexing) { if (!isDirectIndexing) { IMemberDescriptor mdesc = m_Members .GetOrDefault(SPECIALNAME_INDEXER_SET) .WithAccessOrNull(MemberDescriptorAccess.CanExecute); if (mdesc != null) { ExecuteIndexer(mdesc, script, obj, index, value); return true; } } index = index.ToScalar(); if (index.Type != DataType.String) return false; bool v = TrySetIndex(script, obj, index.String, value); if (!v) v = TrySetIndex(script, obj, UpperFirstLetter(index.String), value); if (!v) v = TrySetIndex(script, obj, Camelify(index.String), value); if (!v) v = TrySetIndex(script, obj, UpperFirstLetter(Camelify(index.String)), value); return v; } /// /// Tries to perform an indexing "set" operation by checking methods and properties for the given indexName /// /// The script. /// The object. /// Member name to be indexed. /// The value. /// protected virtual bool TrySetIndex(Script script, object obj, string indexName, DynValue value) { IMemberDescriptor descr = m_Members.GetOrDefault(indexName); if (descr != null) { descr.SetValue(script, obj, value); return true; } else { return false; } } void IOptimizableDescriptor.Optimize() { foreach (var m in this.m_MetaMembers.Values.OfType()) m.Optimize(); foreach (var m in this.m_Members.Values.OfType()) m.Optimize(); } /// /// Converts the specified name from underscore_case to camelCase. /// Just a wrapper over the method with the same name, /// /// The name. /// protected static string Camelify(string name) { return DescriptorHelpers.Camelify(name); } /// /// Converts the specified name to one with an uppercase first letter (something to Something). /// Just a wrapper over the method with the same name, /// /// The name. /// protected static string UpperFirstLetter(string name) { return DescriptorHelpers.UpperFirstLetter(name); } /// /// Converts this userdata to string /// /// The object. /// public virtual string AsString(object obj) { return (obj != null) ? obj.ToString() : null; } /// /// Executes the specified indexer method. /// /// The method descriptor /// The script. /// The object. /// The indexer parameter /// The dynvalue to set on a setter, or null. /// /// protected virtual DynValue ExecuteIndexer(IMemberDescriptor mdesc, Script script, object obj, DynValue index, DynValue value) { IList values; if (index.Type == DataType.Tuple) { if (value == null) { values = index.Tuple; } else { values = new List(index.Tuple); values.Add(value); } } else { if (value == null) { values = new DynValue[] { index }; } else { values = new DynValue[] { index, value }; } } CallbackArguments args = new CallbackArguments(values, false); ScriptExecutionContext execCtx = script.CreateDynamicExecutionContext(); DynValue v = mdesc.GetValue(script, obj); if (v.Type != DataType.ClrFunction) throw new ScriptRuntimeException("a clr callback was expected in member {0}, while a {1} was found", mdesc.Name, v.Type); return v.Callback.ClrCallback(execCtx, args); } /// /// Gets a "meta" operation on this userdata. If a descriptor does not support this functionality, /// it should return "null" (not a nil). /// See for further details. /// /// If a method exists marked with for the specific /// metamethod requested, that method is returned. /// /// If the above fails, the following dispatching occur: /// /// __add, __sub, __mul, __div, __mod and __unm are dispatched to C# operator overloads (if they exist) /// __eq is dispatched to System.Object.Equals. /// __lt and __le are dispatched IComparable.Compare, if the type implements IComparable or IComparable{object} /// __len is dispatched to Length and Count properties, if those exist. /// __iterator is handled if the object implements IEnumerable or IEnumerator. /// __tonumber is dispatched to implicit or explicit conversion operators to standard numeric types. /// __tobool is dispatched to an implicit or explicit conversion operator to bool. If that fails, operator true is used. /// /// The script originating the request /// The object (null if a static request is done) /// The name of the metamember. /// /// public virtual DynValue MetaIndex(Script script, object obj, string metaname) { IMemberDescriptor desc = m_MetaMembers.GetOrDefault(metaname); if (desc != null) { return desc.GetValue(script, obj); } switch (metaname) { case "__add": return DispatchMetaOnMethod(script, obj, "op_Addition"); case "__sub": return DispatchMetaOnMethod(script, obj, "op_Subtraction"); case "__mul": return DispatchMetaOnMethod(script, obj, "op_Multiply"); case "__div": return DispatchMetaOnMethod(script, obj, "op_Division"); case "__mod": return DispatchMetaOnMethod(script, obj, "op_Modulus"); case "__unm": return DispatchMetaOnMethod(script, obj, "op_UnaryNegation"); case "__eq": return MultiDispatchEqual(script, obj); case "__lt": return MultiDispatchLessThan(script, obj); case "__le": return MultiDispatchLessThanOrEqual(script, obj); case "__len": return TryDispatchLength(script, obj); case "__tonumber": return TryDispatchToNumber(script, obj); case "__tobool": return TryDispatchToBool(script, obj); case "__iterator": return ClrToScriptConversions.EnumerationToDynValue(script, obj); default: return null; } } #region MetaMethodsDispatching private int PerformComparison(object obj, object p1, object p2) { IComparable comp = (IComparable)obj; if (comp != null) { if (object.ReferenceEquals(obj, p1)) return comp.CompareTo(p2); else if (object.ReferenceEquals(obj, p2)) return -comp.CompareTo(p1); } throw new InternalErrorException("unexpected case"); } private DynValue MultiDispatchLessThanOrEqual(Script script, object obj) { IComparable comp = obj as IComparable; if (comp != null) { return DynValue.NewCallback( (context, args) => DynValue.NewBoolean(PerformComparison(obj, args[0].ToObject(), args[1].ToObject()) <= 0)); } return null; } private DynValue MultiDispatchLessThan(Script script, object obj) { IComparable comp = obj as IComparable; if (comp != null) { return DynValue.NewCallback( (context, args) => DynValue.NewBoolean(PerformComparison(obj, args[0].ToObject(), args[1].ToObject()) < 0)); } return null; } private DynValue TryDispatchLength(Script script, object obj) { if (obj == null) return null; var lenprop = m_Members.GetOrDefault("Length"); if (lenprop != null && lenprop.CanRead() && !lenprop.CanExecute()) return lenprop.GetGetterCallbackAsDynValue(script, obj); var countprop = m_Members.GetOrDefault("Count"); if (countprop != null && countprop.CanRead() && !countprop.CanExecute()) return countprop.GetGetterCallbackAsDynValue(script, obj); return null; } private DynValue MultiDispatchEqual(Script script, object obj) { return DynValue.NewCallback( (context, args) => DynValue.NewBoolean(CheckEquality(obj, args[0].ToObject(), args[1].ToObject()))); } private bool CheckEquality(object obj, object p1, object p2) { if (obj != null) { if (object.ReferenceEquals(obj, p1)) return obj.Equals(p2); else if (object.ReferenceEquals(obj, p2)) return obj.Equals(p1); } if (p1 != null) return p1.Equals(p2); else if (p2 != null) return p2.Equals(p1); else return true; } private DynValue DispatchMetaOnMethod(Script script, object obj, string methodName) { IMemberDescriptor desc = m_Members.GetOrDefault(methodName); if (desc != null) { return desc.GetValue(script, obj); } else return null; } private DynValue TryDispatchToNumber(Script script, object obj) { foreach (Type t in NumericConversions.NumericTypesOrdered) { var name = t.GetConversionMethodName(); var v = DispatchMetaOnMethod(script, obj, name); if (v != null) return v; } return null; } private DynValue TryDispatchToBool(Script script, object obj) { var name = typeof(bool).GetConversionMethodName(); var v = DispatchMetaOnMethod(script, obj, name); if (v != null) return v; return DispatchMetaOnMethod(script, obj, "op_True"); } #endregion /// /// Determines whether the specified object is compatible with the specified type. /// Unless a very specific behaviour is needed, the correct implementation is a /// simple " return type.IsInstanceOfType(obj); " /// /// The type. /// The object. /// public virtual bool IsTypeCompatible(Type type, object obj) { return Framework.Do.IsInstanceOfType(type, obj); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/BasicDescriptors/DispatchingUserDataDescriptor.cs.meta ================================================ fileFormatVersion: 2 guid: 0fc723db98663654eba3cce564952aac timeCreated: 1518177914 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/BasicDescriptors/IMemberDescriptor.cs ================================================  namespace MoonSharp.Interpreter.Interop.BasicDescriptors { /// /// Base interface to describe access to members of a given type. /// While it's not infrastructural to implement custom type descriptors, it's needed for /// classes extending . /// public interface IMemberDescriptor { /// /// Gets a value indicating whether the described member is static. /// bool IsStatic { get; } /// /// Gets the name of the member /// string Name { get; } /// /// Gets the types of access supported by this member /// MemberDescriptorAccess MemberAccess { get; } /// /// Gets the value of this member as a to be exposed to scripts. /// Implementors should raise exceptions if the value cannot be read or if access to an /// instance member through a static userdata is attempted. /// /// The script. /// The object owning this member, or null if static. /// The value of this member as a . DynValue GetValue(Script script, object obj); /// /// Sets the value of this member from a . /// Implementors should raise exceptions if the value cannot be read or if access to an /// instance member through a static userdata is attempted. /// /// The script. /// The object owning this member, or null if static. /// The value to be set. void SetValue(Script script, object obj, DynValue value); } /// /// Extension methods for and . /// public static class MemberDescriptor { /// /// Determines whether the specified MemberDescriptorAccess has ALL the specified flags. /// /// The access. /// The flag. /// public static bool HasAllFlags(this MemberDescriptorAccess access, MemberDescriptorAccess flag) { return (access & flag) == flag; } /// /// Determines whether this instance can be read /// /// The descriptor instance. /// public static bool CanRead(this IMemberDescriptor desc) { return desc.MemberAccess.HasAllFlags(MemberDescriptorAccess.CanRead); } /// /// Determines whether this instance can be written to /// /// The descriptor instance. /// public static bool CanWrite(this IMemberDescriptor desc) { return desc.MemberAccess.HasAllFlags(MemberDescriptorAccess.CanWrite); } /// /// Determines whether this instance can be executed (called as a function) /// /// The descriptor instance. /// public static bool CanExecute(this IMemberDescriptor desc) { return desc.MemberAccess.HasAllFlags(MemberDescriptorAccess.CanExecute); } /// /// Gets the getter of the member as a DynValue containing a callback /// /// The descriptor instance. /// The script. /// The object. /// public static DynValue GetGetterCallbackAsDynValue(this IMemberDescriptor desc, Script script, object obj) { return DynValue.NewCallback((p1, p2) => desc.GetValue(script, obj)); } /// /// Returns the specified descriptor if it supports all the specified access modes, otherwise returns null. /// /// The descriptor instance. /// The access mode(s). /// public static IMemberDescriptor WithAccessOrNull(this IMemberDescriptor desc, MemberDescriptorAccess access) { if (desc == null) return null; if (desc.MemberAccess.HasAllFlags(access)) return desc; return null; } /// /// Raises an appropriate ScriptRuntimeException if the specified access is not supported. /// Checks are made for the MemberDescriptorAccess permissions AND for the access of instance /// members through static userdatas. /// /// The desc. /// The access. /// The object to be checked for access. public static void CheckAccess(this IMemberDescriptor desc, MemberDescriptorAccess access, object obj) { if (!desc.IsStatic && obj == null) throw ScriptRuntimeException.AccessInstanceMemberOnStatics(desc); if (access.HasAllFlags(MemberDescriptorAccess.CanExecute) && !desc.CanExecute()) throw new ScriptRuntimeException("userdata member {0} cannot be called.", desc.Name); if (access.HasAllFlags(MemberDescriptorAccess.CanWrite) && !desc.CanWrite()) throw new ScriptRuntimeException("userdata member {0} cannot be assigned to.", desc.Name); if (access.HasAllFlags(MemberDescriptorAccess.CanRead) && !desc.CanRead()) throw new ScriptRuntimeException("userdata member {0} cannot be read from.", desc.Name); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/BasicDescriptors/IMemberDescriptor.cs.meta ================================================ fileFormatVersion: 2 guid: e6cc0cadd9af9954e976c4f2f57f6e97 timeCreated: 1518177925 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/BasicDescriptors/IOptimizableDescriptor.cs ================================================  namespace MoonSharp.Interpreter.Interop.BasicDescriptors { /// /// Interface for descriptors of any kind which support optimizations of their implementation according to InteropAccessMode /// modes. This should seldom - if ever - be implemented in user code. /// public interface IOptimizableDescriptor { /// /// Called by standard descriptors when background optimization or preoptimization needs to be performed. /// void Optimize(); } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/BasicDescriptors/IOptimizableDescriptor.cs.meta ================================================ fileFormatVersion: 2 guid: 3d6d05a93e02a7e469a0344eb6d64bb4 timeCreated: 1518177917 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/BasicDescriptors/IOverloadableMemberDescriptor.cs ================================================ using System; namespace MoonSharp.Interpreter.Interop.BasicDescriptors { /// /// Specialized for members supporting overloads resolution. /// public interface IOverloadableMemberDescriptor : IMemberDescriptor { /// /// Invokes the member from script. /// Implementors should raise exceptions if the value cannot be executed or if access to an /// instance member through a static userdata is attempted. /// /// The script. /// The object. /// The context. /// The arguments. /// DynValue Execute(Script script, object obj, ScriptExecutionContext context, CallbackArguments args); /// /// Gets the type which this extension method extends, null if this is not an extension method. /// Type ExtensionMethodType { get; } /// /// Gets the type of the arguments of the underlying CLR function /// ParameterDescriptor[] Parameters { get; } /// /// Gets a value indicating the type of the ParamArray parameter of a var-args function. If the function is not var-args, /// null is returned. /// Type VarArgsArrayType { get; } /// /// Gets a value indicating the type of the elements of the ParamArray parameter of a var-args function. If the function is not var-args, /// null is returned. /// Type VarArgsElementType { get; } /// /// Gets a sort discriminant to give consistent overload resolution matching in case of perfectly equal scores /// string SortDiscriminant { get; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/BasicDescriptors/IOverloadableMemberDescriptor.cs.meta ================================================ fileFormatVersion: 2 guid: efb94b23973bde04badff2e5b4bbe1c0 timeCreated: 1518177925 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/BasicDescriptors/MemberDescriptorAccess.cs ================================================ using System; namespace MoonSharp.Interpreter.Interop.BasicDescriptors { /// /// Permissions for members access /// [Flags] public enum MemberDescriptorAccess { /// /// The member can be read from /// CanRead = 1, /// /// The member can be written to /// CanWrite = 2, /// /// The can be invoked /// CanExecute = 4 } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/BasicDescriptors/MemberDescriptorAccess.cs.meta ================================================ fileFormatVersion: 2 guid: d575fbeb6616f5b4bae83a51bf4d8ba0 timeCreated: 1518177924 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/BasicDescriptors/ParameterDescriptor.cs ================================================ using System; using System.Linq; using System.Reflection; using MoonSharp.Interpreter.Compatibility; namespace MoonSharp.Interpreter.Interop.BasicDescriptors { /// /// Descriptor of parameters used in implementations. /// public sealed class ParameterDescriptor : IWireableDescriptor { /// /// Gets the name of the parameter /// public string Name { get; private set; } /// /// Gets the type of the parameter /// public Type Type { get; private set; } /// /// Gets a value indicating whether this instance has a default value. /// public bool HasDefaultValue { get; private set; } /// /// Gets the default value /// public object DefaultValue { get; private set; } /// /// Gets a value indicating whether this instance is an out parameter /// public bool IsOut { get; private set; } /// /// Gets a value indicating whether this instance is a "ref" parameter /// public bool IsRef { get; private set; } /// /// Gets a value indicating whether this instance is a variable arguments param /// public bool IsVarArgs { get; private set; } /// /// Gets a value indicating whether this instance has been restricted. /// public bool HasBeenRestricted { get { return m_OriginalType != null; } } /// /// Gets the original type of the parameter before any restriction has been applied. /// public Type OriginalType { get { return m_OriginalType ?? Type; } } /// /// If the type got restricted, the original type before the restriction. /// private Type m_OriginalType = null; /// /// Initializes a new instance of the class. /// /// The name. /// The type. /// if set to true the parameter has default value. /// The default value. /// if set to true, is an out param. /// if set to true is a ref param. /// if set to true is variable arguments param. public ParameterDescriptor(string name, Type type, bool hasDefaultValue = false, object defaultValue = null, bool isOut = false, bool isRef = false, bool isVarArgs = false) { Name = name; Type = type; HasDefaultValue = hasDefaultValue; DefaultValue = defaultValue; IsOut = isOut; IsRef = isRef; IsVarArgs = isVarArgs; } /// /// Initializes a new instance of the class. /// /// The name. /// The type. /// if set to true the parameter has default value. /// The default value. /// if set to true, is an out param. /// if set to true is a ref param. /// if set to true is variable arguments param. /// The type restriction, or nll. public ParameterDescriptor(string name, Type type, bool hasDefaultValue, object defaultValue, bool isOut, bool isRef, bool isVarArgs, Type typeRestriction) { Name = name; Type = type; HasDefaultValue = hasDefaultValue; DefaultValue = defaultValue; IsOut = isOut; IsRef = isRef; IsVarArgs = isVarArgs; if (typeRestriction != null) { RestrictType(typeRestriction); } } /// /// Initializes a new instance of the class. /// /// A ParameterInfo taken from reflection. public ParameterDescriptor(ParameterInfo pi) { Name = pi.Name; Type = pi.ParameterType; HasDefaultValue = !(Framework.Do.IsDbNull(pi.DefaultValue)); DefaultValue = pi.DefaultValue; IsOut = pi.IsOut; IsRef = pi.ParameterType.IsByRef; IsVarArgs = (pi.ParameterType.IsArray && pi.GetCustomAttributes(typeof(ParamArrayAttribute), true).Any()); } /// /// Returns a that represents this instance. /// /// /// A that represents this instance. /// public override string ToString() { return string.Format("{0} {1}{2}", Type.Name, Name, HasDefaultValue ? " = ..." : ""); } /// /// Restricts the type of this parameter to a tighter constraint. /// Restrictions must be applied before the containing this /// parameter is used in any way. /// /// The new type. /// /// Cannot restrict a ref/out or varargs param /// or /// Specified operation is not a restriction /// public void RestrictType(Type type) { if (IsOut || IsRef || IsVarArgs) throw new InvalidOperationException("Cannot restrict a ref/out or varargs param"); if (!Framework.Do.IsAssignableFrom(Type, type)) throw new InvalidOperationException("Specified operation is not a restriction"); m_OriginalType = Type; Type = type; } /// /// Prepares the descriptor for hard-wiring. /// The descriptor fills the passed table with all the needed data for hardwire generators to generate the appropriate code. /// /// The table to be filled public void PrepareForWiring(Table table) { table.Set("name", DynValue.NewString(Name)); if (Type.IsByRef) table.Set("type", DynValue.NewString(Type.GetElementType().FullName)); else table.Set("type", DynValue.NewString(Type.FullName)); if (OriginalType.IsByRef) table.Set("origtype", DynValue.NewString(OriginalType.GetElementType().FullName)); else table.Set("origtype", DynValue.NewString(OriginalType.FullName)); table.Set("default", DynValue.NewBoolean(HasDefaultValue)); table.Set("out", DynValue.NewBoolean(IsOut)); table.Set("ref", DynValue.NewBoolean(IsRef)); table.Set("varargs", DynValue.NewBoolean(IsVarArgs)); table.Set("restricted", DynValue.NewBoolean(HasBeenRestricted)); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/BasicDescriptors/ParameterDescriptor.cs.meta ================================================ fileFormatVersion: 2 guid: d94cdf20ed67b194e91d823075079657 timeCreated: 1518177924 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/BasicDescriptors.meta ================================================ fileFormatVersion: 2 guid: 2979185ea35ff8a4b8c22c45ab457468 folderAsset: yes timeCreated: 1518177912 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/Converters/ClrToScriptConversions.cs ================================================ using System; using System.Reflection; using System.Text; using MoonSharp.Interpreter.Interop.RegistrationPolicies; namespace MoonSharp.Interpreter.Interop.Converters { internal static class ClrToScriptConversions { /// /// Tries to convert a CLR object to a MoonSharp value, using "trivial" logic. /// Skips on custom conversions, etc. /// Does NOT throw on failure. /// internal static DynValue TryObjectToTrivialDynValue(Script script, object obj) { if (obj == null) return DynValue.Nil; if (obj is DynValue) return (DynValue)obj; Type t = obj.GetType(); if (obj is bool) return DynValue.NewBoolean((bool)obj); if (obj is string || obj is StringBuilder || obj is char) return DynValue.NewString(obj.ToString()); if (NumericConversions.NumericTypes.Contains(t)) return DynValue.NewNumber(NumericConversions.TypeToDouble(t, obj)); if (obj is Table) return DynValue.NewTable((Table)obj); return null; } /// /// Tries to convert a CLR object to a MoonSharp value, using "simple" logic. /// Does NOT throw on failure. /// internal static DynValue TryObjectToSimpleDynValue(Script script, object obj) { if (obj == null) return DynValue.Nil; if (obj is DynValue) return (DynValue)obj; var converter = Script.GlobalOptions.CustomConverters.GetClrToScriptCustomConversion(obj.GetType()); if (converter != null) { var v = converter(script, obj); if (v != null) return v; } Type t = obj.GetType(); if (obj is bool) return DynValue.NewBoolean((bool)obj); if (obj is string || obj is StringBuilder || obj is char) return DynValue.NewString(obj.ToString()); if (obj is Closure) return DynValue.NewClosure((Closure)obj); if (NumericConversions.NumericTypes.Contains(t)) return DynValue.NewNumber(NumericConversions.TypeToDouble(t, obj)); if (obj is Table) return DynValue.NewTable((Table)obj); if (obj is CallbackFunction) return DynValue.NewCallback((CallbackFunction)obj); if (obj is Delegate) { Delegate d = (Delegate)obj; #if NETFX_CORE MethodInfo mi = d.GetMethodInfo(); #else MethodInfo mi = d.Method; #endif if (CallbackFunction.CheckCallbackSignature(mi, false)) return DynValue.NewCallback((Func)d); } return null; } /// /// Tries to convert a CLR object to a MoonSharp value, using more in-depth analysis /// internal static DynValue ObjectToDynValue(Script script, object obj) { DynValue v = TryObjectToSimpleDynValue(script, obj); if (v != null) return v; v = UserData.Create(obj); if (v != null) return v; if (obj is Type) v = UserData.CreateStatic(obj as Type); // unregistered enums go as integers if (obj is Enum) return DynValue.NewNumber(NumericConversions.TypeToDouble(Enum.GetUnderlyingType(obj.GetType()), obj)); if (v != null) return v; if (obj is Delegate) return DynValue.NewCallback(CallbackFunction.FromDelegate(script, (Delegate)obj)); if (obj is MethodInfo) { MethodInfo mi = (MethodInfo)obj; if (mi.IsStatic) { return DynValue.NewCallback(CallbackFunction.FromMethodInfo(script, mi)); } } if (obj is System.Collections.IList) { Table t = TableConversions.ConvertIListToTable(script, (System.Collections.IList)obj); return DynValue.NewTable(t); } if (obj is System.Collections.IDictionary) { Table t = TableConversions.ConvertIDictionaryToTable(script, (System.Collections.IDictionary)obj); return DynValue.NewTable(t); } var enumerator = EnumerationToDynValue(script, obj); if (enumerator != null) return enumerator; throw ScriptRuntimeException.ConvertObjectFailed(obj); } /// /// Converts an IEnumerable or IEnumerator to a DynValue /// /// The script. /// The object. /// public static DynValue EnumerationToDynValue(Script script, object obj) { if (obj is System.Collections.IEnumerable) { var enumer = (System.Collections.IEnumerable)obj; return EnumerableWrapper.ConvertIterator(script, enumer.GetEnumerator()); } if (obj is System.Collections.IEnumerator) { var enumer = (System.Collections.IEnumerator)obj; return EnumerableWrapper.ConvertIterator(script, enumer); } return null; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/Converters/ClrToScriptConversions.cs.meta ================================================ fileFormatVersion: 2 guid: 647ec2e5a9acc6243add05d83acc55cb timeCreated: 1518177919 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/Converters/NumericConversions.cs ================================================ using System; using System.Collections.Generic; namespace MoonSharp.Interpreter.Interop.Converters { /// /// Static functions to handle conversions of numeric types /// internal static class NumericConversions { static NumericConversions() { NumericTypesOrdered = new Type[] { typeof(double), typeof(decimal), typeof(float), typeof(long), typeof(int), typeof(short), typeof(sbyte), typeof(ulong), typeof(uint), typeof(ushort), typeof(byte), }; NumericTypes = new HashSet(NumericTypesOrdered); } /// /// HashSet of numeric types /// internal static readonly HashSet NumericTypes; /// /// Array of numeric types in order used for some conversions /// internal static readonly Type[] NumericTypesOrdered; /// /// Converts a double to another type /// internal static object DoubleToType(Type type, double d) { type = Nullable.GetUnderlyingType(type) ?? type; if (type == typeof(double)) return d; if (type == typeof(sbyte)) return (sbyte)d; if (type == typeof(byte)) return (byte)d; if (type == typeof(short)) return (short)d; if (type == typeof(ushort)) return (ushort)d; if (type == typeof(int)) return (int)d; if (type == typeof(uint)) return (uint)d; if (type == typeof(long)) return (long)d; if (type == typeof(ulong)) return (ulong)d; if (type == typeof(float)) return (float)d; if (type == typeof(decimal)) return (decimal)d; return d; } /// /// Converts a type to double /// internal static double TypeToDouble(Type type, object d) { if (type == typeof(double)) return (double)d; if (type == typeof(sbyte)) return (double)(sbyte)d; if (type == typeof(byte)) return (double)(byte)d; if (type == typeof(short)) return (double)(short)d; if (type == typeof(ushort)) return (double)(ushort)d; if (type == typeof(int)) return (double)(int)d; if (type == typeof(uint)) return (double)(uint)d; if (type == typeof(long)) return (double)(long)d; if (type == typeof(ulong)) return (double)(ulong)d; if (type == typeof(float)) return (double)(float)d; if (type == typeof(decimal)) return (double)(decimal)d; return (double)d; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/Converters/NumericConversions.cs.meta ================================================ fileFormatVersion: 2 guid: 934ffb0c06752494a9fa852c3b39ccc3 timeCreated: 1518177922 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/Converters/ScriptToClrConversions.cs ================================================ using System; using MoonSharp.Interpreter.Compatibility; namespace MoonSharp.Interpreter.Interop.Converters { internal static class ScriptToClrConversions { internal const int WEIGHT_MAX_VALUE = 100; internal const int WEIGHT_CUSTOM_CONVERTER_MATCH = 100; internal const int WEIGHT_EXACT_MATCH = 100; internal const int WEIGHT_STRING_TO_STRINGBUILDER = 99; internal const int WEIGHT_STRING_TO_CHAR = 98; internal const int WEIGHT_NIL_TO_NULLABLE = 100; internal const int WEIGHT_NIL_TO_REFTYPE = 100; internal const int WEIGHT_VOID_WITH_DEFAULT = 50; internal const int WEIGHT_VOID_WITHOUT_DEFAULT = 25; internal const int WEIGHT_NIL_WITH_DEFAULT = 25; internal const int WEIGHT_BOOL_TO_STRING = 5; internal const int WEIGHT_NUMBER_TO_STRING = 50; internal const int WEIGHT_NUMBER_TO_ENUM = 90; internal const int WEIGHT_USERDATA_TO_STRING = 5; internal const int WEIGHT_TABLE_CONVERSION = 90; internal const int WEIGHT_NUMBER_DOWNCAST = 99; internal const int WEIGHT_NO_MATCH = 0; internal const int WEIGHT_NO_EXTRA_PARAMS_BONUS = 100; internal const int WEIGHT_EXTRA_PARAMS_MALUS = 2; internal const int WEIGHT_BYREF_BONUSMALUS = -10; internal const int WEIGHT_VARARGS_MALUS = 1; internal const int WEIGHT_VARARGS_EMPTY = 40; /// /// Converts a DynValue to a CLR object [simple conversion] /// internal static object DynValueToObject(DynValue value) { var converter = Script.GlobalOptions.CustomConverters.GetScriptToClrCustomConversion(value.Type, typeof(System.Object)); if (converter != null) { var v = converter(value); if (v != null) return v; } switch (value.Type) { case DataType.Void: case DataType.Nil: return null; case DataType.Boolean: return value.Boolean; case DataType.Number: return value.Number; case DataType.String: return value.String; case DataType.Function: return value.Function; case DataType.Table: return value.Table; case DataType.Tuple: return value.Tuple; case DataType.UserData: if (value.UserData.Object != null) return value.UserData.Object; else if (value.UserData.Descriptor != null) return value.UserData.Descriptor.Type; else return null; case DataType.ClrFunction: return value.Callback; default: throw ScriptRuntimeException.ConvertObjectFailed(value.Type); } } /// /// Converts a DynValue to a CLR object of a specific type /// internal static object DynValueToObjectOfType(DynValue value, Type desiredType, object defaultValue, bool isOptional) { if (desiredType.IsByRef) desiredType = desiredType.GetElementType(); var converter = Script.GlobalOptions.CustomConverters.GetScriptToClrCustomConversion(value.Type, desiredType); if (converter != null) { var v = converter(value); if (v != null) return v; } if (desiredType == typeof(DynValue)) return value; if (desiredType == typeof(object)) return DynValueToObject(value); StringConversions.StringSubtype stringSubType = StringConversions.GetStringSubtype(desiredType); string str = null; Type nt = Nullable.GetUnderlyingType(desiredType); Type nullableType = null; if (nt != null) { nullableType = desiredType; desiredType = nt; } switch (value.Type) { case DataType.Void: if (isOptional) return defaultValue; else if ((!Framework.Do.IsValueType(desiredType)) || (nullableType != null)) return null; break; case DataType.Nil: if (Framework.Do.IsValueType(desiredType)) { if (nullableType != null) return null; if (isOptional) return defaultValue; } else { return null; } break; case DataType.Boolean: if (desiredType == typeof(bool)) return value.Boolean; if (stringSubType != StringConversions.StringSubtype.None) str = value.Boolean.ToString(); break; case DataType.Number: if (Framework.Do.IsEnum(desiredType)) { // number to enum conv Type underType = Enum.GetUnderlyingType(desiredType); return NumericConversions.DoubleToType(underType, value.Number); } if (NumericConversions.NumericTypes.Contains(desiredType)) return NumericConversions.DoubleToType(desiredType, value.Number); if (stringSubType != StringConversions.StringSubtype.None) str = value.Number.ToString(); break; case DataType.String: if (stringSubType != StringConversions.StringSubtype.None) str = value.String; break; case DataType.Function: if (desiredType == typeof(Closure)) return value.Function; else if (desiredType == typeof(ScriptFunctionDelegate)) return value.Function.GetDelegate(); break; case DataType.ClrFunction: if (desiredType == typeof(CallbackFunction)) return value.Callback; else if (desiredType == typeof(Func)) return value.Callback.ClrCallback; break; case DataType.UserData: if (value.UserData.Object != null) { var udObj = value.UserData.Object; var udDesc = value.UserData.Descriptor; if (udDesc.IsTypeCompatible(desiredType, udObj)) return udObj; if (stringSubType != StringConversions.StringSubtype.None) str = udDesc.AsString(udObj); } break; case DataType.Table: if (desiredType == typeof(Table) || Framework.Do.IsAssignableFrom(desiredType, typeof(Table))) return value.Table; else { object o = TableConversions.ConvertTableToType(value.Table, desiredType); if (o != null) return o; } break; case DataType.Tuple: break; } if (stringSubType != StringConversions.StringSubtype.None && str != null) return StringConversions.ConvertString(stringSubType, str, desiredType, value.Type); throw ScriptRuntimeException.ConvertObjectFailed(value.Type, desiredType); } /// /// Gets a relative weight of how much the conversion is matching the given types. /// Implementation must follow that of DynValueToObjectOfType.. it's not very DRY in that sense. /// However here we are in perf-sensitive path.. TODO : double-check the gain and see if a DRY impl is better. /// internal static int DynValueToObjectOfTypeWeight(DynValue value, Type desiredType, bool isOptional) { if (desiredType.IsByRef) desiredType = desiredType.GetElementType(); var customConverter = Script.GlobalOptions.CustomConverters.GetScriptToClrCustomConversion(value.Type, desiredType); if (customConverter != null) return WEIGHT_CUSTOM_CONVERTER_MATCH; if (desiredType == typeof(DynValue)) return WEIGHT_EXACT_MATCH; if (desiredType == typeof(object)) return WEIGHT_EXACT_MATCH; StringConversions.StringSubtype stringSubType = StringConversions.GetStringSubtype(desiredType); Type nt = Nullable.GetUnderlyingType(desiredType); Type nullableType = null; if (nt != null) { nullableType = desiredType; desiredType = nt; } switch (value.Type) { case DataType.Void: if (isOptional) return WEIGHT_VOID_WITH_DEFAULT; else if ((!Framework.Do.IsValueType(desiredType)) || (nullableType != null)) return WEIGHT_VOID_WITHOUT_DEFAULT; break; case DataType.Nil: if (Framework.Do.IsValueType(desiredType)) { if (nullableType != null) return WEIGHT_NIL_TO_NULLABLE; if (isOptional) return WEIGHT_NIL_WITH_DEFAULT; } else { return WEIGHT_NIL_TO_REFTYPE; } break; case DataType.Boolean: if (desiredType == typeof(bool)) return WEIGHT_EXACT_MATCH; if (stringSubType != StringConversions.StringSubtype.None) return WEIGHT_BOOL_TO_STRING; break; case DataType.Number: if (Framework.Do.IsEnum(desiredType)) { // number to enum conv return WEIGHT_NUMBER_TO_ENUM; } if (NumericConversions.NumericTypes.Contains(desiredType)) return GetNumericTypeWeight(desiredType); if (stringSubType != StringConversions.StringSubtype.None) return WEIGHT_NUMBER_TO_STRING; break; case DataType.String: if (stringSubType == StringConversions.StringSubtype.String) return WEIGHT_EXACT_MATCH; else if (stringSubType == StringConversions.StringSubtype.StringBuilder) return WEIGHT_STRING_TO_STRINGBUILDER; else if (stringSubType == StringConversions.StringSubtype.Char) return WEIGHT_STRING_TO_CHAR; break; case DataType.Function: if (desiredType == typeof(Closure)) return WEIGHT_EXACT_MATCH; else if (desiredType == typeof(ScriptFunctionDelegate)) return WEIGHT_EXACT_MATCH; break; case DataType.ClrFunction: if (desiredType == typeof(CallbackFunction)) return WEIGHT_EXACT_MATCH; else if (desiredType == typeof(Func)) return WEIGHT_EXACT_MATCH; break; case DataType.UserData: if (value.UserData.Object != null) { var udObj = value.UserData.Object; var udDesc = value.UserData.Descriptor; if (udDesc.IsTypeCompatible(desiredType, udObj)) return WEIGHT_EXACT_MATCH; if (stringSubType != StringConversions.StringSubtype.None) return WEIGHT_USERDATA_TO_STRING; } break; case DataType.Table: if (desiredType == typeof(Table) || Framework.Do.IsAssignableFrom(desiredType, typeof(Table))) return WEIGHT_EXACT_MATCH; else if (TableConversions.CanConvertTableToType(value.Table, desiredType)) return WEIGHT_TABLE_CONVERSION; break; case DataType.Tuple: break; } return WEIGHT_NO_MATCH; } private static int GetNumericTypeWeight(Type desiredType) { if (desiredType == typeof(double) || desiredType == typeof(decimal)) return WEIGHT_EXACT_MATCH; else return WEIGHT_NUMBER_DOWNCAST; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/Converters/ScriptToClrConversions.cs.meta ================================================ fileFormatVersion: 2 guid: 76ec775f317578b4d8030e67285be821 timeCreated: 1518177920 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/Converters/StringConversions.cs ================================================ using System; using System.Text; namespace MoonSharp.Interpreter.Interop.Converters { internal static class StringConversions { internal enum StringSubtype { None, String, StringBuilder, Char } internal static StringSubtype GetStringSubtype(Type desiredType) { if (desiredType == typeof(string)) return StringSubtype.String; else if (desiredType == typeof(StringBuilder)) return StringSubtype.StringBuilder; else if (desiredType == typeof(char)) return StringSubtype.Char; else return StringSubtype.None; } internal static object ConvertString(StringSubtype stringSubType, string str, Type desiredType, DataType dataType) { switch (stringSubType) { case StringSubtype.String: return str; case StringSubtype.StringBuilder: return new StringBuilder(str); case StringSubtype.Char: if (!string.IsNullOrEmpty(str)) return str[0]; break; case StringSubtype.None: default: break; } throw ScriptRuntimeException.ConvertObjectFailed(dataType, desiredType); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/Converters/StringConversions.cs.meta ================================================ fileFormatVersion: 2 guid: a8e73cba33a50974195a8085320631bd timeCreated: 1518177922 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/Converters/TableConversions.cs ================================================ using System; using System.Collections.Generic; using MoonSharp.Interpreter.Compatibility; namespace MoonSharp.Interpreter.Interop.Converters { internal static class TableConversions { /// /// Converts an IList to a Lua table. /// internal static Table ConvertIListToTable(Script script, System.Collections.IList list) { Table t = new Table(script); for (int i = 0; i < list.Count; i++) { t[i + 1] = ClrToScriptConversions.ObjectToDynValue(script, list[i]); } return t; } /// /// Converts an IDictionary to a Lua table. /// internal static Table ConvertIDictionaryToTable(Script script, System.Collections.IDictionary dict) { Table t = new Table(script); foreach (System.Collections.DictionaryEntry kvp in dict) { DynValue key = ClrToScriptConversions.ObjectToDynValue(script, kvp.Key); DynValue val = ClrToScriptConversions.ObjectToDynValue(script, kvp.Value); t.Set(key, val); } return t; } /// /// Determines whether the specified table can be converted to the specified type /// /// The table. /// The type. /// internal static bool CanConvertTableToType(Table table, Type t) { if (Framework.Do.IsAssignableFrom(t, typeof(Dictionary))) return true; else if (Framework.Do.IsAssignableFrom(t, typeof(Dictionary))) return true; else if (Framework.Do.IsAssignableFrom(t, typeof(List))) return true; else if (Framework.Do.IsAssignableFrom(t, typeof(List))) return true; else if (Framework.Do.IsAssignableFrom(t, typeof(object[]))) return true; else if (Framework.Do.IsAssignableFrom(t, typeof(DynValue[]))) return true; if (Framework.Do.IsGenericType(t)) { Type generic = t.GetGenericTypeDefinition(); if ((generic == typeof(List<>)) || (generic == typeof(IList<>)) || (generic == typeof(ICollection<>)) || (generic == typeof(IEnumerable<>))) { return true; } else if ((generic == typeof(Dictionary<,>)) || (generic == typeof(IDictionary<,>))) { return true; } } if (t.IsArray && t.GetArrayRank() == 1) return true; return false; } /// /// Converts a table to a CLR object of a given type /// internal static object ConvertTableToType(Table table, Type t) { if (Framework.Do.IsAssignableFrom(t, typeof(Dictionary))) return TableToDictionary(table, v => v.ToObject(), v => v.ToObject()); else if (Framework.Do.IsAssignableFrom(t, typeof(Dictionary))) return TableToDictionary(table, v => v, v => v); else if (Framework.Do.IsAssignableFrom(t, typeof(List))) return TableToList(table, v => v.ToObject()); else if (Framework.Do.IsAssignableFrom(t, typeof(List))) return TableToList(table, v => v); else if (Framework.Do.IsAssignableFrom(t, typeof(object[]))) return TableToList(table, v => v.ToObject()).ToArray(); else if (Framework.Do.IsAssignableFrom(t, typeof(DynValue[]))) return TableToList(table, v => v).ToArray(); if (Framework.Do.IsGenericType(t)) { Type generic = t.GetGenericTypeDefinition(); if ((generic == typeof(List<>)) || (generic == typeof(IList<>)) || (generic == typeof(ICollection<>)) || (generic == typeof(IEnumerable<>))) { return ConvertTableToListOfGenericType(t, Framework.Do.GetGenericArguments(t)[0], table); } else if ((generic == typeof(Dictionary<,>)) || (generic == typeof(IDictionary<,>))) { return ConvertTableToDictionaryOfGenericType(t, Framework.Do.GetGenericArguments(t)[0], Framework.Do.GetGenericArguments(t)[1], table); } } if (t.IsArray && t.GetArrayRank() == 1) return ConvertTableToArrayOfGenericType(t, t.GetElementType(), table); return null; } /// /// Converts a table to a /// internal static object ConvertTableToDictionaryOfGenericType(Type dictionaryType, Type keyType, Type valueType, Table table) { if (dictionaryType.GetGenericTypeDefinition() != typeof(Dictionary<,>)) { dictionaryType = typeof(Dictionary<,>); dictionaryType = dictionaryType.MakeGenericType(keyType, valueType); } System.Collections.IDictionary dic = (System.Collections.IDictionary)Activator.CreateInstance(dictionaryType); foreach (var kvp in table.Pairs) { object key = ScriptToClrConversions.DynValueToObjectOfType(kvp.Key, keyType, null, false); object val = ScriptToClrConversions.DynValueToObjectOfType(kvp.Value, valueType, null, false); dic.Add(key, val); } return dic; } /// /// Converts a table to a T[] /// internal static object ConvertTableToArrayOfGenericType(Type arrayType, Type itemType, Table table) { List lst = new List(); for (int i = 1, l = table.Length; i <= l; i++) { DynValue v = table.Get(i); object o = ScriptToClrConversions.DynValueToObjectOfType(v, itemType, null, false); lst.Add(o); } System.Collections.IList array = (System.Collections.IList)Activator.CreateInstance(arrayType, new object[] { lst.Count }); for (int i = 0; i < lst.Count; i++) array[i] = lst[i]; return array; } /// /// Converts a table to a /// internal static object ConvertTableToListOfGenericType(Type listType, Type itemType, Table table) { if (listType.GetGenericTypeDefinition() != typeof(List<>)) { listType = typeof(List<>); listType = listType.MakeGenericType(itemType); } System.Collections.IList lst = (System.Collections.IList)Activator.CreateInstance(listType); for (int i = 1, l = table.Length; i <= l; i++) { DynValue v = table.Get(i); object o = ScriptToClrConversions.DynValueToObjectOfType(v, itemType, null, false); lst.Add(o); } return lst; } /// /// Converts a table to a , known in advance /// internal static List TableToList(Table table, Func converter) { List lst = new List(); for (int i = 1, l = table.Length; i <= l; i++) { DynValue v = table.Get(i); T o = converter(v); lst.Add(o); } return lst; } /// /// Converts a table to a Dictionary, known in advance /// internal static Dictionary TableToDictionary(Table table, Func keyconverter, Func valconverter) { Dictionary dict = new Dictionary(); foreach (var kvp in table.Pairs) { TK key = keyconverter(kvp.Key); TV val = valconverter(kvp.Value); dict.Add(key, val); } return dict; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/Converters/TableConversions.cs.meta ================================================ fileFormatVersion: 2 guid: b4e88d4cad81515489d15a65f1dca584 timeCreated: 1518177923 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/Converters.meta ================================================ fileFormatVersion: 2 guid: 078764af7f2da2846a2813c79f769390 folderAsset: yes timeCreated: 1518177912 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/CustomConvertersCollection.cs ================================================ using System; using System.Collections.Generic; namespace MoonSharp.Interpreter.Interop { /// /// A collection of custom converters between MoonSharp types and CLR types. /// If a converter function is not specified or returns null, the standard conversion path applies. /// public class CustomConvertersCollection { private Dictionary>[] m_Script2Clr = new Dictionary>[(int)LuaTypeExtensions.MaxConvertibleTypes + 1]; private Dictionary> m_Clr2Script = new Dictionary>(); internal CustomConvertersCollection() { for (int i = 0; i < m_Script2Clr.Length; i++) m_Script2Clr[i] = new Dictionary>(); } // This needs to be evaluated further (doesn't work well with inheritance) // // private Dictionary>> m_Script2ClrUserData = new Dictionary>>(); // //public void SetScriptToClrUserDataSpecificCustomConversion(Type destType, Type userDataType, Func converter = null) //{ // var destTypeMap = m_Script2ClrUserData.GetOrCreate(destType, () => new Dictionary>()); // destTypeMap[userDataType] = converter; // SetScriptToClrCustomConversion(DataType.UserData, destType, v => DispatchUserDataCustomConverter(destTypeMap, v)); //} //private object DispatchUserDataCustomConverter(Dictionary> destTypeMap, DynValue v) //{ // if (v.Type != DataType.UserData) // return null; // if (v.UserData.Object == null) // return null; // Func converter; // for (Type userDataType = v.UserData.Object.GetType(); // userDataType != typeof(object); // userDataType = userDataType.BaseType) // { // if (destTypeMap.TryGetValue(userDataType, out converter)) // { // return converter(v.UserData.Object); // } // } // return null; //} //public Func GetScriptToClrUserDataSpecificCustomConversion(Type destType, Type userDataType) //{ // Dictionary> destTypeMap; // if (m_Script2ClrUserData.TryGetValue(destType, out destTypeMap)) // { // Func converter; // if (destTypeMap.TryGetValue(userDataType, out converter)) // { // return converter; // } // } // return null; //} /// /// Sets a custom converter from a script data type to a CLR data type. Set null to remove a previous custom converter. /// /// The script data type /// The CLR data type. /// The converter, or null. public void SetScriptToClrCustomConversion(DataType scriptDataType, Type clrDataType, Func converter = null) { if ((int)scriptDataType > m_Script2Clr.Length) throw new ArgumentException("scriptDataType"); Dictionary> map = m_Script2Clr[(int)scriptDataType]; if (converter == null) { if (map.ContainsKey(clrDataType)) map.Remove(clrDataType); } else { map[clrDataType] = converter; } } /// /// Gets a custom converter from a script data type to a CLR data type, or null /// /// The script data type /// The CLR data type. /// The converter function, or null if not found public Func GetScriptToClrCustomConversion(DataType scriptDataType, Type clrDataType) { if ((int)scriptDataType > m_Script2Clr.Length) return null; Dictionary> map = m_Script2Clr[(int)scriptDataType]; return map.GetOrDefault(clrDataType); } /// /// Sets a custom converter from a CLR data type. Set null to remove a previous custom converter. /// /// The CLR data type. /// The converter, or null. public void SetClrToScriptCustomConversion(Type clrDataType, Func converter = null) { if (converter == null) { if (m_Clr2Script.ContainsKey(clrDataType)) m_Clr2Script.Remove(clrDataType); } else { m_Clr2Script[clrDataType] = converter; } } /// /// Sets a custom converter from a CLR data type. Set null to remove a previous custom converter. /// /// The CLR data type. /// The converter, or null. public void SetClrToScriptCustomConversion(Func converter = null) { SetClrToScriptCustomConversion(typeof(T), (s, o) => converter(s, (T)o)); } /// /// Gets a custom converter from a CLR data type, or null /// /// Type of the color data. /// The converter function, or null if not found public Func GetClrToScriptCustomConversion(Type clrDataType) { return m_Clr2Script.GetOrDefault(clrDataType); } /// Sets a custom converter from a CLR data type. Set null to remove a previous custom converter. /// /// The CLR data type. /// The converter, or null. [Obsolete("This method is deprecated. Use the overloads accepting functions with a Script argument.")] public void SetClrToScriptCustomConversion(Type clrDataType, Func converter = null) { SetClrToScriptCustomConversion(clrDataType, (s, o) => converter(o)); } /// /// Sets a custom converter from a CLR data type. Set null to remove a previous custom converter. /// /// The CLR data type. /// The converter, or null. [Obsolete("This method is deprecated. Use the overloads accepting functions with a Script argument.")] public void SetClrToScriptCustomConversion(Func converter = null) { SetClrToScriptCustomConversion(typeof(T), o => converter((T)o)); } /// /// Removes all converters. /// public void Clear() { m_Clr2Script.Clear(); for (int i = 0; i < m_Script2Clr.Length; i++) m_Script2Clr[i].Clear(); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/CustomConvertersCollection.cs.meta ================================================ fileFormatVersion: 2 guid: 0ee23701a9d8984488ba615ae7582397 timeCreated: 1518177914 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/DescriptorHelpers.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using System.Reflection; using System.Text; using MoonSharp.Interpreter.Compatibility; namespace MoonSharp.Interpreter.Interop { /// /// Helper extension methods used to simplify some parts of userdata descriptor implementations /// public static class DescriptorHelpers { /// /// Determines whether a /// or a is changing visibility of a member /// to scripts. /// /// The member to check. /// /// true if visibility is forced visible, /// false if visibility is forced hidden or the specified MemberInfo is null, /// if no attribute was found /// /// If both MoonSharpHiddenAttribute and MoonSharpVisibleAttribute are specified and they convey different messages. public static bool? GetVisibilityFromAttributes(this MemberInfo mi) { if (mi == null) return false; MoonSharpVisibleAttribute va = mi.GetCustomAttributes(true).OfType().SingleOrDefault(); MoonSharpHiddenAttribute ha = mi.GetCustomAttributes(true).OfType().SingleOrDefault(); if (va != null && ha != null && va.Visible) throw new InvalidOperationException(string.Format("A member ('{0}') can't have discording MoonSharpHiddenAttribute and MoonSharpVisibleAttribute.", mi.Name)); else if (ha != null) return false; else if (va != null) return va.Visible; else return null; } public static bool IsDelegateType(this Type t) { return Framework.Do.IsAssignableFrom(typeof(Delegate), t); } /// /// Gets the visibility of the type as a string /// public static string GetClrVisibility(this Type type) { #if NETFX_CORE var t = type.GetTypeInfo(); #else Type t = type; #endif if (t.IsPublic || t.IsNestedPublic) return "public"; if ((t.IsNotPublic && (!t.IsNested)) || (t.IsNestedAssembly)) return "internal"; if (t.IsNestedFamORAssem) return "protected-internal"; if (t.IsNestedFamANDAssem || t.IsNestedFamily) return "protected"; if (t.IsNestedPrivate) return "private"; return "unknown"; } /// /// Gets a string representing visibility of the given member type /// public static string GetClrVisibility(this FieldInfo info) { if (info.IsPublic) return "public"; if (info.IsAssembly) return "internal"; if (info.IsFamilyOrAssembly) return "protected-internal"; if (info.IsFamilyAndAssembly || info.IsFamily) return "protected"; if (info.IsPrivate) return "private"; return "unknown"; } /// /// Gets a string representing visibility of the given member type /// public static string GetClrVisibility(this PropertyInfo info) { MethodInfo gm = Framework.Do.GetGetMethod(info); MethodInfo sm = Framework.Do.GetSetMethod(info); string gv = (gm != null) ? GetClrVisibility(gm) : "private"; string sv = (sm != null) ? GetClrVisibility(sm) : "private"; if (gv == "public" || sv == "public") return "public"; else if (gv == "internal" || sv == "internal") return "internal"; else return gv; } /// /// Gets a string representing visibility of the given member type /// public static string GetClrVisibility(this MethodBase info) { if (info.IsPublic) return "public"; if (info.IsAssembly) return "internal"; if (info.IsFamilyOrAssembly) return "protected-internal"; if (info.IsFamilyAndAssembly || info.IsFamily) return "protected"; if (info.IsPrivate) return "private"; return "unknown"; } /// /// Determines whether the specified PropertyInfo is visible publicly (either the getter or the setter is public). /// /// The PropertyInfo. /// public static bool IsPropertyInfoPublic(this PropertyInfo pi) { MethodInfo getter = Framework.Do.GetGetMethod(pi); MethodInfo setter = Framework.Do.GetSetMethod(pi); return (getter != null && getter.IsPublic) || (setter != null && setter.IsPublic); } /// /// Gets the list of metamethod names from attributes - in practice the list of metamethods declared through /// . /// /// The mi. /// public static List GetMetaNamesFromAttributes(this MethodInfo mi) { return mi.GetCustomAttributes(typeof(MoonSharpUserDataMetamethodAttribute), true) .OfType() .Select(a => a.Name) .ToList(); } /// /// Gets the Types implemented in the assembly, catching the ReflectionTypeLoadException just in case.. /// /// The assebly /// public static Type[] SafeGetTypes(this Assembly asm) { try { return Framework.Do.GetAssemblyTypes(asm); } catch (ReflectionTypeLoadException) { return new Type[0]; } } /// /// Gets the name of a conversion method to be exposed to Lua scripts /// /// The type. /// public static string GetConversionMethodName(this Type type) { StringBuilder sb = new StringBuilder(type.Name); for (int i = 0; i < sb.Length; i++) if (!char.IsLetterOrDigit(sb[i])) sb[i] = '_'; return "__to" + sb.ToString(); } /// /// Gets all implemented types by a given type /// /// The t. /// public static IEnumerable GetAllImplementedTypes(this Type t) { for (Type ot = t; ot != null; ot = Framework.Do.GetBaseType(ot)) yield return ot; foreach (Type it in Framework.Do.GetInterfaces(t)) yield return it; } /// /// Determines whether the string is a valid simple identifier (starts with letter or underscore /// and contains only letters, digits and underscores). /// public static bool IsValidSimpleIdentifier(string str) { if (string.IsNullOrEmpty(str)) return false; if (str[0] != '_' && !char.IsLetter(str[0])) return false; for (int i = 1; i < str.Length; i++) if (str[i] != '_' && !char.IsLetterOrDigit(str[i])) return false; return true; } /// /// Converts the string to a valid simple identifier (starts with letter or underscore /// and contains only letters, digits and underscores). /// public static string ToValidSimpleIdentifier(string str) { if (string.IsNullOrEmpty(str)) return "_"; if (str[0] != '_' && !char.IsLetter(str[0])) str = "_" + str; StringBuilder sb = new StringBuilder(str); for (int i = 0; i < sb.Length; i++) if (sb[i] != '_' && !char.IsLetterOrDigit(sb[i])) sb[i] = '_'; return sb.ToString(); } /// /// Converts the specified name from underscore_case to camelCase. /// /// The name. /// public static string Camelify(string name) { StringBuilder sb = new StringBuilder(name.Length); bool lastWasUnderscore = false; for (int i = 0; i < name.Length; i++) { if (name[i] == '_' && i != 0) { lastWasUnderscore = true; } else { if (lastWasUnderscore) sb.Append(char.ToUpperInvariant(name[i])); else sb.Append(name[i]); lastWasUnderscore = false; } } return sb.ToString(); } /// /// Converts the specified name to one with an uppercase first letter (something to Something). /// /// The name. /// public static string UpperFirstLetter(string name) { if (!string.IsNullOrEmpty(name)) return char.ToUpperInvariant(name[0]) + name.Substring(1); return name; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/DescriptorHelpers.cs.meta ================================================ fileFormatVersion: 2 guid: 9d496c2cf9de43d468a876f8eb542010 timeCreated: 1518177922 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/IGeneratorUserDataDescriptor.cs ================================================ using System; namespace MoonSharp.Interpreter.Interop { /// /// An interface for type descriptors having the ability to generate other descriptors on the fly. /// public interface IGeneratorUserDataDescriptor : IUserDataDescriptor { /// /// /// Generates a new descriptor for the specified type. /// /// The purpose is to allow a mechanism by which a type descriptor can replace itself with another /// descriptor for a specific type. For example, descriptors can be created on the fly to support /// generic types through this mechanism. /// /// The return value should be: /// null - if this descriptor is simply skipped for the specified type /// this - acts as if the descriptor was a vanilla descriptor /// a new descriptor - if a new descriptor should be used in place of this one /// /// It's recommended that instances of descriptors are cached for future references. One possible way, /// to do the caching is to have the generator register the descriptor through . /// In that case, it should query whether the type is exactly registered, through /// /// NOTE-1 : the search for descriptors does NOT stop with the descriptor returned by this type, but /// other descriptors (e.g. for interfaces) might still be added. /// /// NOTE-2 : the descriptor generation mechanism is not triggered on an exact match of types. /// /// NOTE-3 : the method is called in the context of a lock over the descriptors registry so no unpredictable changes to the /// registry can come from other threads during the execution of this method. However this method should not take other /// locks, to avoid deadlocks. /// /// /// The type. /// Null, this object instance or a new descriptor. IUserDataDescriptor Generate(Type type); } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/IGeneratorUserDataDescriptor.cs.meta ================================================ fileFormatVersion: 2 guid: 4c1bfacedd1f5a74a9b98a3e6d9d68b1 timeCreated: 1518177918 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/IUserDataDescriptor.cs ================================================ using System; namespace MoonSharp.Interpreter.Interop { /// /// Interface used by MoonSharp to access objects of a given type from scripts. /// public interface IUserDataDescriptor { /// /// Gets the name of the descriptor (usually, the name of the type described). /// string Name { get; } /// /// Gets the type this descriptor refers to /// Type Type { get; } /// /// Performs an "index" "get" operation. /// /// The script originating the request /// The object (null if a static request is done) /// The index. /// If set to true, it's indexed with a name, if false it's indexed through brackets. /// DynValue Index(Script script, object obj, DynValue index, bool isDirectIndexing); /// /// Performs an "index" "set" operation. /// /// The script originating the request /// The object (null if a static request is done) /// The index. /// The value to be set /// If set to true, it's indexed with a name, if false it's indexed through brackets. /// bool SetIndex(Script script, object obj, DynValue index, DynValue value, bool isDirectIndexing); /// /// Converts this userdata to string /// /// The object. /// string AsString(object obj); /// /// /// Gets a "meta" operation on this userdata. If a descriptor does not support this functionality, /// it should return "null" (not a nil). /// /// These standard metamethods can be supported (the return value should be a function accepting the /// classic parameters of the corresponding metamethod): /// __add, __sub, __mul, __div, __div, __pow, __unm, __eq, __lt, __le, __lt, __len, __concat, /// __pairs, __ipairs, __iterator, __call /// /// These standard metamethods are supported through other calls for efficiency: /// __index, __newindex, __tostring /// /// /// The script originating the request /// The object (null if a static request is done) /// The name of the metamember. /// DynValue MetaIndex(Script script, object obj, string metaname); /// /// Determines whether the specified object is compatible with the specified type. /// Unless a very specific behaviour is needed, the correct implementation is a /// simple " return type.IsInstanceOfType(obj); " /// /// The type. /// The object. /// bool IsTypeCompatible(Type type, object obj); } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/IUserDataDescriptor.cs.meta ================================================ fileFormatVersion: 2 guid: c0844fdd4c212c744ae29fe2aae91875 timeCreated: 1518177923 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/IUserDataMemberDescriptor.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace MoonSharp.Interpreter.Interop { /// /// Interface used by standard descriptors to access members of a given type from scripts. /// public interface IUserDataMemberDescriptor { /// /// Gets the name of the descriptor (usually, the name of the type described). /// string Name { get; } /// /// Gets the type this descriptor refers to /// Type Type { get; } /// /// Gets the value of the member /// /// The script. /// The object. /// DynValue GetValue(Script script, object obj); /// /// Sets the value of the member /// /// The script. /// The object. /// The value. /// bool SetValue(Script script, object obj, DynValue value); /// /// Gets the type of the member. /// /// /// The type of the member. /// UserDataMemberType MemberType { get; } void Optimize(); bool IsStatic { get; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/IUserDataMemberDescriptor.cs.meta ================================================ fileFormatVersion: 2 guid: 31cd495019c79954d8a38ecbce8799fa timeCreated: 1518177916 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/IUserDataType.cs ================================================  namespace MoonSharp.Interpreter.Interop { /// /// As a convenience, every type deriving from IUserDataType is "self-described". That is, no descriptor is needed/generated /// and the object itself is used to describe the type for interop. See also , /// and . /// public interface IUserDataType { /// /// Performs an "index" "get" operation. /// /// The script originating the request /// The index. /// If set to true, it's indexed with a name, if false it's indexed through brackets. /// DynValue Index(Script script, DynValue index, bool isDirectIndexing); /// /// Performs an "index" "set" operation. /// /// The script originating the request /// The index. /// The value to be set /// If set to true, it's indexed with a name, if false it's indexed through brackets. /// bool SetIndex(Script script, DynValue index, DynValue value, bool isDirectIndexing); /// /// /// Gets a "meta" operation on this userdata. If a descriptor does not support this functionality, /// it should return "null" (not a nil). /// /// These standard metamethods can be supported (the return value should be a function accepting the /// classic parameters of the corresponding metamethod): /// __add, __sub, __mul, __div, __div, __pow, __unm, __eq, __lt, __le, __lt, __len, __concat, /// __pairs, __ipairs, __iterator, __call /// /// These standard metamethods are supported through other calls for efficiency: /// __index, __newindex, __tostring /// /// /// The script originating the request /// The name of the metamember. /// DynValue MetaIndex(Script script, string metaname); } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/IUserDataType.cs.meta ================================================ fileFormatVersion: 2 guid: 381df7419b6159e4ca6f53160d3f6311 timeCreated: 1518177917 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/IWireableDescriptor.cs ================================================  namespace MoonSharp.Interpreter.Interop.BasicDescriptors { /// /// Interface for descriptors with the capability of being serialized /// for later hardwiring. /// public interface IWireableDescriptor { /// /// Prepares the descriptor for hard-wiring. /// The descriptor fills the passed table with all the needed data for hardwire generators to generate the appropriate code. /// /// The table to be filled void PrepareForWiring(Table t); } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/IWireableDescriptor.cs.meta ================================================ fileFormatVersion: 2 guid: 10a1dc8ad29c16947887ce1810ea5280 timeCreated: 1518177914 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/InteropAccessMode.cs ================================================  namespace MoonSharp.Interpreter { /// /// Enumerations of the possible strategies to marshal CLR objects to MoonSharp userdata and functions /// when using automatic descriptors. /// Note that these are "hints" and MoonSharp is free to ignore the access mode specified (if different from /// HideMembers) and downgrade the access mode to "Reflection". /// This particularly happens when running on AOT platforms like iOS. /// See also : and . /// public enum InteropAccessMode { /// /// Optimization is not performed and reflection is used everytime to access members. /// This is the slowest approach but saves a lot of memory if members are seldomly used. /// Reflection, /// /// Optimization is done on the fly the first time a member is accessed. /// This saves memory for all members that are never accessed, at the cost of an increased script execution time. /// LazyOptimized, /// /// Optimization is done at registration time. /// Preoptimized, /// /// Optimization is done in a background thread which starts at registration time. /// If a member is accessed before optimization is completed, reflection is used. /// BackgroundOptimized, /// /// Use the hardwired descriptor(s) /// Hardwired, /// /// No optimization is done, and members are not accessible at all. /// HideMembers, /// /// No reflection is allowed, nor code generation. This is used as a safeguard when registering types which should not /// use a standard reflection based descriptor - for example for types implementing /// NoReflectionAllowed, /// /// Use the default access mode /// Default } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/InteropAccessMode.cs.meta ================================================ fileFormatVersion: 2 guid: 84e79b09bef234245b9ff462815afdea timeCreated: 1518177921 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/InteropRegistrationPolicy.cs ================================================ using System; using MoonSharp.Interpreter.Interop.RegistrationPolicies; namespace MoonSharp.Interpreter.Interop { /// /// Collection of the standard policies to handle UserData type registrations. /// Provided mostly for compile-time backward compatibility with old code. /// See also : . /// public static class InteropRegistrationPolicy { /// /// The default registration policy used by MoonSharp unless explicitely replaced. /// Deregistrations are allowed, but registration of a new descriptor are not allowed /// if a descriptor is already registered for that type. /// /// Types must be explicitly registered. /// public static IRegistrationPolicy Default { get { return new DefaultRegistrationPolicy(); }} /// /// The default registration policy used by MoonSharp unless explicitely replaced. /// Deregistrations are allowed, but registration of a new descriptor are not allowed /// if a descriptor is already registered for that type. /// /// Types must be explicitly registered. /// [Obsolete("Please use InteropRegistrationPolicy.Default instead.")] public static IRegistrationPolicy Explicit { get { return new DefaultRegistrationPolicy(); } } /// /// Types are automatically registered if not found in the registry. This is easier to use but potentially unsafe. /// public static IRegistrationPolicy Automatic { get { return new AutomaticRegistrationPolicy(); } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/InteropRegistrationPolicy.cs.meta ================================================ fileFormatVersion: 2 guid: 7a781c8e2e475484aaee0c471051b61f timeCreated: 1518177920 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/LuaStateInterop/CharPtr.cs ================================================ #pragma warning disable 1591 // // This part taken from KopiLua - https://github.com/NLua/KopiLua // // ========================================================================================================= // // Kopi Lua License // ---------------- // MIT License for KopiLua // Copyright (c) 2012 LoDC // Permission is hereby granted, free of charge, to any person obtaining a copy of this software and // associated documentation files (the "Software"), to deal in the Software without restriction, // including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, // and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, // subject to the following conditions: // The above copyright notice and this permission notice shall be included in all copies or substantial // portions of the Software. // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. // IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE // SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. // =============================================================================== // Lua License // ----------- // Lua is licensed under the terms of the MIT license reproduced below. // This means that Lua is free software and can be used for both academic // and commercial purposes at absolutely no cost. // For details and rationale, see http://www.lua.org/license.html . // =============================================================================== // Copyright (C) 1994-2008 Lua.org, PUC-Rio. // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal // in the Software without restriction, including without limitation the rights // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the Software is // furnished to do so, subject to the following conditions: // The above copyright notice and this permission notice shall be included in // all copies or substantial portions of the Software. // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN // THE SOFTWARE. using System; using System.Diagnostics; namespace MoonSharp.Interpreter.Interop.LuaStateInterop { public class CharPtr { public char[] chars; public int index; public char this[int offset] { get { return chars[index + offset]; } set { chars[index + offset] = value; } } public char this[uint offset] { get { return chars[index + offset]; } set { chars[index + offset] = value; } } public char this[long offset] { get { return chars[index + (int)offset]; } set { chars[index + (int)offset] = value; } } public static implicit operator CharPtr(string str) { return new CharPtr(str); } public static implicit operator CharPtr(char[] chars) { return new CharPtr(chars); } public static implicit operator CharPtr(byte[] bytes) { return new CharPtr(bytes); } public CharPtr() { this.chars = null; this.index = 0; } public CharPtr(string str) { this.chars = (str + '\0').ToCharArray(); this.index = 0; } public CharPtr(CharPtr ptr) { this.chars = ptr.chars; this.index = ptr.index; } public CharPtr(CharPtr ptr, int index) { this.chars = ptr.chars; this.index = index; } public CharPtr(char[] chars) { this.chars = chars; this.index = 0; } public CharPtr(char[] chars, int index) { this.chars = chars; this.index = index; } public CharPtr(byte[] bytes) { this.chars = new char[bytes.Length]; for (int i = 0; i < bytes.Length; i++) { this.chars[i] = (char)bytes[i]; } this.index = 0; } public CharPtr(IntPtr ptr) { this.chars = new char[0]; this.index = 0; } public static CharPtr operator +(CharPtr ptr, int offset) { return new CharPtr(ptr.chars, ptr.index + offset); } public static CharPtr operator -(CharPtr ptr, int offset) { return new CharPtr(ptr.chars, ptr.index - offset); } public static CharPtr operator +(CharPtr ptr, uint offset) { return new CharPtr(ptr.chars, ptr.index + (int)offset); } public static CharPtr operator -(CharPtr ptr, uint offset) { return new CharPtr(ptr.chars, ptr.index - (int)offset); } public void inc() { this.index++; } public void dec() { this.index--; } public CharPtr next() { return new CharPtr(this.chars, this.index + 1); } public CharPtr prev() { return new CharPtr(this.chars, this.index - 1); } public CharPtr add(int ofs) { return new CharPtr(this.chars, this.index + ofs); } public CharPtr sub(int ofs) { return new CharPtr(this.chars, this.index - ofs); } public static bool operator ==(CharPtr ptr, char ch) { return ptr[0] == ch; } public static bool operator ==(char ch, CharPtr ptr) { return ptr[0] == ch; } public static bool operator !=(CharPtr ptr, char ch) { return ptr[0] != ch; } public static bool operator !=(char ch, CharPtr ptr) { return ptr[0] != ch; } public static CharPtr operator +(CharPtr ptr1, CharPtr ptr2) { string result = ""; for (int i = 0; ptr1[i] != '\0'; i++) result += ptr1[i]; for (int i = 0; ptr2[i] != '\0'; i++) result += ptr2[i]; return new CharPtr(result); } public static int operator -(CharPtr ptr1, CharPtr ptr2) { Debug.Assert(ptr1.chars == ptr2.chars); return ptr1.index - ptr2.index; } public static bool operator <(CharPtr ptr1, CharPtr ptr2) { Debug.Assert(ptr1.chars == ptr2.chars); return ptr1.index < ptr2.index; } public static bool operator <=(CharPtr ptr1, CharPtr ptr2) { Debug.Assert(ptr1.chars == ptr2.chars); return ptr1.index <= ptr2.index; } public static bool operator >(CharPtr ptr1, CharPtr ptr2) { Debug.Assert(ptr1.chars == ptr2.chars); return ptr1.index > ptr2.index; } public static bool operator >=(CharPtr ptr1, CharPtr ptr2) { Debug.Assert(ptr1.chars == ptr2.chars); return ptr1.index >= ptr2.index; } public static bool operator ==(CharPtr ptr1, CharPtr ptr2) { object o1 = ptr1 as CharPtr; object o2 = ptr2 as CharPtr; if ((o1 == null) && (o2 == null)) return true; if (o1 == null) return false; if (o2 == null) return false; return (ptr1.chars == ptr2.chars) && (ptr1.index == ptr2.index); } public static bool operator !=(CharPtr ptr1, CharPtr ptr2) { return !(ptr1 == ptr2); } public override bool Equals(object o) { return this == (o as CharPtr); } public override int GetHashCode() { return 0; } public override string ToString() { System.Text.StringBuilder result = new System.Text.StringBuilder(); for (int i = index; (i < chars.Length) && (chars[i] != '\0'); i++) result.Append(chars[i]); return result.ToString(); } public string ToString(int length) { System.Text.StringBuilder result = new System.Text.StringBuilder(); for (int i = index; (i < chars.Length) && i < (length + index); i++) result.Append(chars[i]); return result.ToString(); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/LuaStateInterop/CharPtr.cs.meta ================================================ fileFormatVersion: 2 guid: 802f229ee40af27429fe9f44aa00b47d timeCreated: 1518177921 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/LuaStateInterop/LuaBase.cs ================================================ // Disable warnings about XML documentation #pragma warning disable 1591 using System; using lua_Integer = System.Int32; namespace MoonSharp.Interpreter.Interop.LuaStateInterop { /// /// Classes using the classic interface should inherit from this class. /// This class defines only static methods and is really meant to be used only /// from C# and not other .NET languages. /// /// For easier operation they should also define: /// using ptrdiff_t = System.Int32; /// using lua_Integer = System.Int32; /// using LUA_INTFRM_T = System.Int64; /// using UNSIGNED_LUA_INTFRM_T = System.UInt64; /// public partial class LuaBase { protected const int LUA_TNONE = -1; protected const int LUA_TNIL = 0; protected const int LUA_TBOOLEAN = 1; protected const int LUA_TLIGHTUSERDATA = 2; protected const int LUA_TNUMBER = 3; protected const int LUA_TSTRING = 4; protected const int LUA_TTABLE = 5; protected const int LUA_TFUNCTION = 6; protected const int LUA_TUSERDATA = 7; protected const int LUA_TTHREAD = 8; protected const int LUA_MULTRET = -1; protected const string LUA_INTFRMLEN = "l"; protected static DynValue GetArgument(LuaState L, lua_Integer pos) { return L.At(pos); } protected static DynValue ArgAsType(LuaState L, lua_Integer pos, DataType type, bool allowNil = false) { return GetArgument(L, pos).CheckType(L.FunctionName, type, pos - 1, allowNil ? TypeValidationFlags.AllowNil | TypeValidationFlags.AutoConvert : TypeValidationFlags.AutoConvert); } protected static lua_Integer LuaType(LuaState L, lua_Integer p) { switch (GetArgument(L, p).Type) { case DataType.Void: return LUA_TNONE; case DataType.Nil: return LUA_TNIL; case DataType.Boolean: return LUA_TNIL; case DataType.Number: return LUA_TNUMBER; case DataType.String: return LUA_TSTRING; case DataType.Function: return LUA_TFUNCTION; case DataType.Table: return LUA_TTABLE; case DataType.UserData: return LUA_TUSERDATA; case DataType.Thread: return LUA_TTHREAD; case DataType.ClrFunction: return LUA_TFUNCTION; case DataType.TailCallRequest: case DataType.YieldRequest: case DataType.Tuple: default: throw new ScriptRuntimeException("Can't call LuaType on any type"); } } protected static string LuaLCheckLString(LuaState L, lua_Integer argNum, out uint l) { string str = ArgAsType(L, argNum, DataType.String, false).String; l = (uint)str.Length; return str; } protected static void LuaPushInteger(LuaState L, lua_Integer val) { L.Push(DynValue.NewNumber(val)); } protected static lua_Integer LuaToBoolean(LuaState L, lua_Integer p) { return GetArgument(L, p).CastToBool() ? 1 : 0; } protected static string LuaToLString(LuaState luaState, lua_Integer p, out uint l) { return LuaLCheckLString(luaState, p, out l); } protected static string LuaToString(LuaState luaState, lua_Integer p) { uint l; return LuaLCheckLString(luaState, p, out l); } protected static void LuaLAddValue(LuaLBuffer b) { b.StringBuilder.Append(b.LuaState.Pop().ToPrintString()); } protected static void LuaLAddLString(LuaLBuffer b, CharPtr s, uint p) { b.StringBuilder.Append(s.ToString((int)p)); } protected static void LuaLAddString(LuaLBuffer b, string s) { b.StringBuilder.Append(s.ToString()); } protected static lua_Integer LuaLOptInteger(LuaState L, lua_Integer pos, lua_Integer def) { DynValue v = ArgAsType(L, pos, DataType.Number, true); if (v.IsNil()) return def; else return (int)v.Number; } protected static lua_Integer LuaLCheckInteger(LuaState L, lua_Integer pos) { DynValue v = ArgAsType(L, pos, DataType.Number, false); return (int)v.Number; } protected static void LuaLArgCheck(LuaState L, bool condition, lua_Integer argNum, string message) { if (!condition) LuaLArgError(L, argNum, message); } protected static lua_Integer LuaLCheckInt(LuaState L, lua_Integer argNum) { return LuaLCheckInteger(L, argNum); } protected static lua_Integer LuaGetTop(LuaState L) { return L.Count; } protected static lua_Integer LuaLError(LuaState luaState, string message, params object[] args) { throw new ScriptRuntimeException(message, args); } protected static void LuaLAddChar(LuaLBuffer b, char p) { b.StringBuilder.Append(p); } protected static void LuaLBuffInit(LuaState L, LuaLBuffer b) { } protected static void LuaPushLiteral(LuaState L, string literalString) { L.Push(DynValue.NewString(literalString)); } protected static void LuaLPushResult(LuaLBuffer b) { LuaPushLiteral(b.LuaState, b.StringBuilder.ToString()); } protected static void LuaPushLString(LuaState L, CharPtr s, uint len) { string ss = s.ToString((int)len); L.Push(DynValue.NewString(ss)); } protected static void LuaLCheckStack(LuaState L, lua_Integer n, string message) { // nop ? } protected static string LUA_QL(string p) { return "'" + p + "'"; } protected static void LuaPushNil(LuaState L) { L.Push(DynValue.Nil); } protected static void LuaAssert(bool p) { // ??! // A lot of KopiLua methods fall here in valid state! //if (!p) // throw new InternalErrorException("LuaAssert failed!"); } protected static string LuaLTypeName(LuaState L, lua_Integer p) { return L.At(p).Type.ToErrorTypeString(); } protected static lua_Integer LuaIsString(LuaState L, lua_Integer p) { var v = L.At(p); return (v.Type == DataType.String || v.Type == DataType.Number) ? 1 : 0; } protected static void LuaPop(LuaState L, lua_Integer p) { for (int i = 0; i < p; i++) L.Pop(); } protected static void LuaGetTable(LuaState L, lua_Integer p) { // DEBT: this should call metamethods, now it performs raw access DynValue key = L.Pop(); DynValue table = L.At(p); if (table.Type != DataType.Table) throw new NotImplementedException(); var v = table.Table.Get(key); L.Push(v); } protected static int LuaLOptInt(LuaState L, lua_Integer pos, lua_Integer def) { return LuaLOptInteger(L, pos, def); } protected static CharPtr LuaLCheckString(LuaState L, lua_Integer p) { uint dummy; return LuaLCheckLString(L, p, out dummy); } protected static string LuaLCheckStringStr(LuaState L, lua_Integer p) { uint dummy; return LuaLCheckLString(L, p, out dummy); } protected static void LuaLArgError(LuaState L, lua_Integer arg, string p) { throw ScriptRuntimeException.BadArgument(arg - 1, L.FunctionName, p); } protected static double LuaLCheckNumber(LuaState L, lua_Integer pos) { DynValue v = ArgAsType(L, pos, DataType.Number, false); return v.Number; } protected static void LuaPushValue(LuaState L, lua_Integer arg) { DynValue v = L.At(arg); L.Push(v); } /// /// Calls a function. /// To call a function you must use the following protocol: first, the function to be called is pushed onto the stack; then, /// the arguments to the function are pushed in direct order; that is, the first argument is pushed first. Finally you call /// lua_call; nargs is the number of arguments that you pushed onto the stack. All arguments and the function value are /// popped from the stack when the function is called. The function results are pushed onto the stack when the function /// returns. The number of results is adjusted to nresults, unless nresults is LUA_MULTRET. In this case, all results from /// the function are pushed. Lua takes care that the returned values fit into the stack space. The function results are /// pushed onto the stack in direct order (the first result is pushed first), so that after the call the last result is on /// the top of the stack. /// /// The LuaState /// The number of arguments. /// The number of expected results. /// protected static void LuaCall(LuaState L, lua_Integer nargs, lua_Integer nresults = LUA_MULTRET) { DynValue[] args = L.GetTopArray(nargs); L.Discard(nargs); DynValue func = L.Pop(); DynValue ret = L.ExecutionContext.Call(func, args); if (nresults != 0) { if (nresults == -1) { nresults = (ret.Type == DataType.Tuple) ? ret.Tuple.Length : 1; } DynValue[] vals = (ret.Type == DataType.Tuple) ? ret.Tuple : new DynValue[1] { ret }; int copied = 0; for (int i = 0; i < vals.Length && copied < nresults; i++, copied++) { L.Push(vals[i]); } while (copied < nresults) { L.Push(DynValue.Nil); } } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/LuaStateInterop/LuaBase.cs.meta ================================================ fileFormatVersion: 2 guid: 0dc4e1e8bd0068f40a35a96269eb66d1 timeCreated: 1518177914 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/LuaStateInterop/LuaBase_CLib.cs ================================================ // Disable warnings about XML documentation #pragma warning disable 1591 using System; using lua_Integer = System.Int32; namespace MoonSharp.Interpreter.Interop.LuaStateInterop { public partial class LuaBase { protected static lua_Integer memcmp(CharPtr ptr1, CharPtr ptr2, uint size) { return memcmp(ptr1, ptr2, (int)size); } protected static int memcmp(CharPtr ptr1, CharPtr ptr2, int size) { for (int i = 0; i < size; i++) if (ptr1[i] != ptr2[i]) { if (ptr1[i] < ptr2[i]) return -1; else return 1; } return 0; } protected static CharPtr memchr(CharPtr ptr, char c, uint count) { for (uint i = 0; i < count; i++) if (ptr[i] == c) return new CharPtr(ptr.chars, (int)(ptr.index + i)); return null; } protected static CharPtr strpbrk(CharPtr str, CharPtr charset) { for (int i = 0; str[i] != '\0'; i++) for (int j = 0; charset[j] != '\0'; j++) if (str[i] == charset[j]) return new CharPtr(str.chars, str.index + i); return null; } protected static bool isalpha(char c) { return Char.IsLetter(c); } protected static bool iscntrl(char c) { return Char.IsControl(c); } protected static bool isdigit(char c) { return Char.IsDigit(c); } protected static bool islower(char c) { return Char.IsLower(c); } protected static bool ispunct(char c) { return Char.IsPunctuation(c); } protected static bool isspace(char c) { return (c == ' ') || (c >= (char)0x09 && c <= (char)0x0D); } protected static bool isupper(char c) { return Char.IsUpper(c); } protected static bool isalnum(char c) { return Char.IsLetterOrDigit(c); } protected static bool isxdigit(char c) { return "0123456789ABCDEFabcdef".IndexOf(c) >= 0; } protected static bool isgraph(char c) { return !Char.IsControl(c) && !Char.IsWhiteSpace(c); } protected static bool isalpha(int c) { return Char.IsLetter((char)c); } protected static bool iscntrl(int c) { return Char.IsControl((char)c); } protected static bool isdigit(int c) { return Char.IsDigit((char)c); } protected static bool islower(int c) { return Char.IsLower((char)c); } protected static bool ispunct(int c) { return ((char)c != ' ') && !isalnum((char)c); } // *not* the same as Char.IsPunctuation protected static bool isspace(int c) { return ((char)c == ' ') || ((char)c >= (char)0x09 && (char)c <= (char)0x0D); } protected static bool isupper(int c) { return Char.IsUpper((char)c); } protected static bool isalnum(int c) { return Char.IsLetterOrDigit((char)c); } protected static bool isgraph(int c) { return !Char.IsControl((char)c) && !Char.IsWhiteSpace((char)c); } protected static char tolower(char c) { return Char.ToLower(c); } protected static char toupper(char c) { return Char.ToUpper(c); } protected static char tolower(int c) { return Char.ToLower((char)c); } protected static char toupper(int c) { return Char.ToUpper((char)c); } // find c in str protected static CharPtr strchr(CharPtr str, char c) { for (int index = str.index; str.chars[index] != 0; index++) if (str.chars[index] == c) return new CharPtr(str.chars, index); return null; } protected static CharPtr strcpy(CharPtr dst, CharPtr src) { int i; for (i = 0; src[i] != '\0'; i++) dst[i] = src[i]; dst[i] = '\0'; return dst; } protected static CharPtr strncpy(CharPtr dst, CharPtr src, int length) { int index = 0; while ((src[index] != '\0') && (index < length)) { dst[index] = src[index]; index++; } while (index < length) dst[index++] = '\0'; return dst; } protected static int strlen(CharPtr str) { int index = 0; while (str[index] != '\0') index++; return index; } public static void sprintf(CharPtr buffer, CharPtr str, params object[] argv) { string temp = Tools.sprintf(str.ToString(), argv); strcpy(buffer, temp); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/LuaStateInterop/LuaBase_CLib.cs.meta ================================================ fileFormatVersion: 2 guid: 3c7796488a1ee064aac5874030f8ea33 timeCreated: 1518177917 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/LuaStateInterop/LuaLBuffer.cs ================================================ // Disable warnings about XML documentation #pragma warning disable 1591 using System.Text; namespace MoonSharp.Interpreter.Interop.LuaStateInterop { public class LuaLBuffer { public StringBuilder StringBuilder { get; private set; } public LuaState LuaState { get; private set; } public LuaLBuffer(LuaState l) { StringBuilder = new StringBuilder(); LuaState = l; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/LuaStateInterop/LuaLBuffer.cs.meta ================================================ fileFormatVersion: 2 guid: 13a3e29adbb014346ad74b150730731a timeCreated: 1518177915 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/LuaStateInterop/LuaState.cs ================================================ // Disable warnings about XML documentation #pragma warning disable 1591 using System.Collections.Generic; namespace MoonSharp.Interpreter.Interop.LuaStateInterop { /// /// /// public class LuaState { private List m_Stack; public ScriptExecutionContext ExecutionContext { get; private set; } public string FunctionName { get; private set; } internal LuaState(ScriptExecutionContext executionContext, CallbackArguments args, string functionName) { ExecutionContext = executionContext; m_Stack = new List(16); for (int i = 0; i < args.Count; i++) m_Stack.Add(args[i]); FunctionName = functionName; } public DynValue Top(int pos = 0) { return m_Stack[m_Stack.Count - 1 - pos]; } public DynValue At(int pos) { if (pos < 0) pos = m_Stack.Count + pos + 1; if (pos > m_Stack.Count) return DynValue.Void; return m_Stack[pos - 1]; } public int Count { get { return m_Stack.Count; } } public void Push(DynValue v) { m_Stack.Add(v); } public DynValue Pop() { var v = Top(); m_Stack.RemoveAt(m_Stack.Count - 1); return v; } public DynValue[] GetTopArray(int num) { DynValue[] rets = new DynValue[num]; for (int i = 0; i < num; i++) rets[num - i - 1] = Top(i); return rets; } public DynValue GetReturnValue(int retvals) { if (retvals == 0) return DynValue.Nil; else if (retvals == 1) return Top(); else { DynValue[] rets = GetTopArray(retvals); return DynValue.NewTupleNested(rets); } } public void Discard(int nargs) { for(int i = 0; i < nargs; i++) m_Stack.RemoveAt(m_Stack.Count - 1); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/LuaStateInterop/LuaState.cs.meta ================================================ fileFormatVersion: 2 guid: fadf678f9b07ade48b4c6bc3eb000fca timeCreated: 1518177926 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/LuaStateInterop/Tools.cs ================================================ // // This part taken from KopiLua - https://github.com/NLua/KopiLua // // ========================================================================================================= // // Kopi Lua License // ---------------- // MIT License for KopiLua // Copyright (c) 2012 LoDC // Permission is hereby granted, free of charge, to any person obtaining a copy of this software and // associated documentation files (the "Software"), to deal in the Software without restriction, // including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, // and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, // subject to the following conditions: // The above copyright notice and this permission notice shall be included in all copies or substantial // portions of the Software. // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. // IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, // WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE // SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. // =============================================================================== // Lua License // ----------- // Lua is licensed under the terms of the MIT license reproduced below. // This means that Lua is free software and can be used for both academic // and commercial purposes at absolutely no cost. // For details and rationale, see http://www.lua.org/license.html . // =============================================================================== // Copyright (C) 1994-2008 Lua.org, PUC-Rio. // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal // in the Software without restriction, including without limitation the rights // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the Software is // furnished to do so, subject to the following conditions: // The above copyright notice and this permission notice shall be included in // all copies or substantial portions of the Software. // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN // THE SOFTWARE. #region Usings using System; using System.Globalization; using System.IO; using System.Text; using System.Text.RegularExpressions; #endregion namespace MoonSharp.Interpreter.Interop.LuaStateInterop { internal static class Tools { #region Public Methods #region IsNumericType /// /// Determines whether the specified value is of numeric type. /// /// The object to check. /// /// true if o is a numeric type; otherwise, false. /// public static bool IsNumericType(object o) { return (o is byte || o is sbyte || o is short || o is ushort || o is int || o is uint || o is long || o is ulong || o is float || o is double || o is decimal); } #endregion #region IsPositive /// /// Determines whether the specified value is positive. /// /// The value. /// if set to true treats 0 as positive. /// /// true if the specified value is positive; otherwise, false. /// public static bool IsPositive(object Value, bool ZeroIsPositive) { Type t = Value.GetType(); if (t == typeof(sbyte)) return (ZeroIsPositive ? (sbyte)Value >= 0 : (sbyte)Value > 0); if (t == typeof(short)) return (ZeroIsPositive ? (short)Value >= 0 : (short)Value > 0); if (t == typeof(int)) return (ZeroIsPositive ? (int)Value >= 0 : (int)Value > 0); if (t == typeof(long)) return (ZeroIsPositive ? (long)Value >= 0 : (long)Value > 0); if (t == typeof(byte)) return (ZeroIsPositive ? true : (byte)Value > 0); if (t == typeof(ushort)) return (ZeroIsPositive ? true : (ushort)Value > 0); if (t == typeof(uint)) return (ZeroIsPositive ? true : (uint)Value > 0); if (t == typeof(ulong)) return (ZeroIsPositive ? true : (ulong)Value > 0); if (t == typeof(float)) return (ZeroIsPositive ? (float)Value >= 0 : (float)Value > 0); if (t == typeof(double)) return (ZeroIsPositive ? (double)Value >= 0 : (double)Value > 0); if (t == typeof(decimal)) return (ZeroIsPositive ? (decimal)Value >= 0 : (decimal)Value > 0); if (t == typeof(char)) return (ZeroIsPositive ? true : (char)Value != '\0'); return ZeroIsPositive; } #endregion #region ToUnsigned /// /// Converts the specified values boxed type to its correpsonding unsigned /// type. /// /// The value. /// A boxed numeric object whos type is unsigned. public static object ToUnsigned(object Value) { Type t = Value.GetType(); if (t == typeof(sbyte)) return (byte)((sbyte)Value); if (t == typeof(short)) return (ushort)((short)Value); if (t == typeof(int)) return (uint)((int)Value); if (t == typeof(long)) return (ulong)((long)Value); if (t == typeof(byte)) return Value; if (t == typeof(ushort)) return Value; if (t == typeof(uint)) return Value; if (t == typeof(ulong)) return Value; if (t == typeof(float)) return (uint)((float)Value); if (t == typeof(double)) return (ulong)((double)Value); if (t == typeof(decimal)) return (ulong)((decimal)Value); return null; } #endregion #region ToInteger /// /// Converts the specified values boxed type to its correpsonding integer /// type. /// /// The value. /// if set to true [round]. /// /// A boxed numeric object whos type is an integer type. /// public static object ToInteger(object Value, bool Round) { Type t = Value.GetType(); if (t == typeof(sbyte)) return Value; if (t == typeof(short)) return Value; if (t == typeof(int)) return Value; if (t == typeof(long)) return Value; if (t == typeof(byte)) return Value; if (t == typeof(ushort)) return Value; if (t == typeof(uint)) return Value; if (t == typeof(ulong)) return Value; if (t == typeof(float)) return (Round ? (int)Math.Round((float)Value) : (int)((float)Value)); if (t == typeof(double)) return (Round ? (long)Math.Round((double)Value) : (long)((double)Value)); if (t == typeof(decimal)) return (Round ? Math.Round((decimal)Value) : (decimal)Value); return null; } #endregion #region UnboxToLong public static long UnboxToLong(object Value, bool Round) { Type t = Value.GetType(); if (t == typeof(sbyte)) return (long)((sbyte)Value); if (t == typeof(short)) return (long)((short)Value); if (t == typeof(int)) return (long)((int)Value); if (t == typeof(long)) return (long)Value; if (t == typeof(byte)) return (long)((byte)Value); if (t == typeof(ushort)) return (long)((ushort)Value); if (t == typeof(uint)) return (long)((uint)Value); if (t == typeof(ulong)) return (long)((ulong)Value); if (t == typeof(float)) return (Round ? (long)Math.Round((float)Value) : (long)((float)Value)); if (t == typeof(double)) return (Round ? (long)Math.Round((double)Value) : (long)((double)Value)); if (t == typeof(decimal)) return (Round ? (long)Math.Round((decimal)Value) : (long)((decimal)Value)); return 0; } #endregion #region ReplaceMetaChars /// /// Replaces the string representations of meta chars with their corresponding /// character values. /// /// The input. /// A string with all string meta chars are replaced public static string ReplaceMetaChars(string input) { return Regex.Replace(input, @"(\\)(\d{3}|[^\d])?", new MatchEvaluator(ReplaceMetaCharsMatch)); } private static string ReplaceMetaCharsMatch(Match m) { // convert octal quotes (like \040) if (m.Groups[2].Length == 3) return Convert.ToChar(Convert.ToByte(m.Groups[2].Value, 8)).ToString(); else { // convert all other special meta characters //TODO: \xhhh hex and possible dec !! switch (m.Groups[2].Value) { case "0": // null return "\0"; case "a": // alert (beep) return "\a"; case "b": // BS return "\b"; case "f": // FF return "\f"; case "v": // vertical tab return "\v"; case "r": // CR return "\r"; case "n": // LF return "\n"; case "t": // Tab return "\t"; default: // if neither an octal quote nor a special meta character // so just remove the backslash return m.Groups[2].Value; } } } #endregion #region fprintf public static void fprintf(TextWriter Destination, string Format, params object[] Parameters) { Destination.Write(Tools.sprintf(Format, Parameters)); } #endregion #region sprintf internal static Regex r = new Regex(@"\%(\d*\$)?([\'\#\-\+ ]*)(\d*)(?:\.(\d+))?([hl])?([dioxXucsfeEgGpn%])"); public static string sprintf(string Format, params object[] Parameters) { #region Variables StringBuilder f = new StringBuilder(); //Regex r = new Regex( @"\%(\d*\$)?([\'\#\-\+ ]*)(\d*)(?:\.(\d+))?([hl])?([dioxXucsfeEgGpn%])" ); //"%[parameter][flags][width][.precision][length]type" Match m = null; string w = String.Empty; int defaultParamIx = 0; int paramIx; object o = null; bool flagLeft2Right = false; bool flagAlternate = false; bool flagPositiveSign = false; bool flagPositiveSpace = false; bool flagZeroPadding = false; bool flagGroupThousands = false; int fieldLength = 0; int fieldPrecision = 0; char shortLongIndicator = '\0'; char formatSpecifier = '\0'; char paddingCharacter = ' '; #endregion // find all format parameters in format string f.Append(Format); m = r.Match(f.ToString()); while (m.Success) { #region parameter index paramIx = defaultParamIx; if (m.Groups[1] != null && m.Groups[1].Value.Length > 0) { string val = m.Groups[1].Value.Substring(0, m.Groups[1].Value.Length - 1); paramIx = Convert.ToInt32(val) - 1; }; #endregion #region format flags // extract format flags flagAlternate = false; flagLeft2Right = false; flagPositiveSign = false; flagPositiveSpace = false; flagZeroPadding = false; flagGroupThousands = false; if (m.Groups[2] != null && m.Groups[2].Value.Length > 0) { string flags = m.Groups[2].Value; flagAlternate = (flags.IndexOf('#') >= 0); flagLeft2Right = (flags.IndexOf('-') >= 0); flagPositiveSign = (flags.IndexOf('+') >= 0); flagPositiveSpace = (flags.IndexOf(' ') >= 0); flagGroupThousands = (flags.IndexOf('\'') >= 0); // positive + indicator overrides a // positive space character if (flagPositiveSign && flagPositiveSpace) flagPositiveSpace = false; } #endregion #region field length // extract field length and // pading character paddingCharacter = ' '; fieldLength = int.MinValue; if (m.Groups[3] != null && m.Groups[3].Value.Length > 0) { fieldLength = Convert.ToInt32(m.Groups[3].Value); flagZeroPadding = (m.Groups[3].Value[0] == '0'); } #endregion if (flagZeroPadding) paddingCharacter = '0'; // left2right allignment overrides zero padding if (flagLeft2Right && flagZeroPadding) { flagZeroPadding = false; paddingCharacter = ' '; } #region field precision // extract field precision fieldPrecision = int.MinValue; if (m.Groups[4] != null && m.Groups[4].Value.Length > 0) fieldPrecision = Convert.ToInt32(m.Groups[4].Value); #endregion #region short / long indicator // extract short / long indicator shortLongIndicator = Char.MinValue; if (m.Groups[5] != null && m.Groups[5].Value.Length > 0) shortLongIndicator = m.Groups[5].Value[0]; #endregion #region format specifier // extract format formatSpecifier = Char.MinValue; if (m.Groups[6] != null && m.Groups[6].Value.Length > 0) formatSpecifier = m.Groups[6].Value[0]; #endregion // default precision is 6 digits if none is specified except if (fieldPrecision == int.MinValue && formatSpecifier != 's' && formatSpecifier != 'c' && Char.ToUpper(formatSpecifier) != 'X' && formatSpecifier != 'o') fieldPrecision = 6; #region get next value parameter // get next value parameter and convert value parameter depending on short / long indicator if (Parameters == null || paramIx >= Parameters.Length) o = null; else { o = Parameters[paramIx]; if (shortLongIndicator == 'h') { if (o is int) o = (short)((int)o); else if (o is long) o = (short)((long)o); else if (o is uint) o = (ushort)((uint)o); else if (o is ulong) o = (ushort)((ulong)o); } else if (shortLongIndicator == 'l') { if (o is short) o = (long)((short)o); else if (o is int) o = (long)((int)o); else if (o is ushort) o = (ulong)((ushort)o); else if (o is uint) o = (ulong)((uint)o); } } #endregion // convert value parameters to a string depending on the formatSpecifier w = String.Empty; switch (formatSpecifier) { #region % - character case '%': // % character w = "%"; break; #endregion #region d - integer case 'd': // integer w = FormatNumber((flagGroupThousands ? "n" : "d"), flagAlternate, fieldLength, int.MinValue, flagLeft2Right, flagPositiveSign, flagPositiveSpace, paddingCharacter, o); defaultParamIx++; break; #endregion #region i - integer case 'i': // integer goto case 'd'; #endregion #region o - octal integer case 'o': // octal integer - no leading zero w = FormatOct("o", flagAlternate, fieldLength, int.MinValue, flagLeft2Right, paddingCharacter, o); defaultParamIx++; break; #endregion #region x - hex integer case 'x': // hex integer - no leading zero w = FormatHex("x", flagAlternate, fieldLength, fieldPrecision, flagLeft2Right, paddingCharacter, o); defaultParamIx++; break; #endregion #region X - hex integer case 'X': // same as x but with capital hex characters w = FormatHex("X", flagAlternate, fieldLength, fieldPrecision, flagLeft2Right, paddingCharacter, o); defaultParamIx++; break; #endregion #region u - unsigned integer case 'u': // unsigned integer w = FormatNumber((flagGroupThousands ? "n" : "d"), flagAlternate, fieldLength, int.MinValue, flagLeft2Right, false, false, paddingCharacter, ToUnsigned(o)); defaultParamIx++; break; #endregion #region c - character case 'c': // character if (IsNumericType(o)) w = Convert.ToChar(o).ToString(); else if (o is char) w = ((char)o).ToString(); else if (o is string && ((string)o).Length > 0) w = ((string)o)[0].ToString(); defaultParamIx++; break; #endregion #region s - string case 's': // string //string t = "{0" + ( fieldLength != int.MinValue ? "," + ( flagLeft2Right ? "-" : String.Empty ) + fieldLength.ToString() : String.Empty ) + ":s}"; w = o.ToString(); if (fieldPrecision >= 0) w = w.Substring(0, fieldPrecision); if (fieldLength != int.MinValue) if (flagLeft2Right) w = w.PadRight(fieldLength, paddingCharacter); else w = w.PadLeft(fieldLength, paddingCharacter); defaultParamIx++; break; #endregion #region f - double number case 'f': // double w = FormatNumber((flagGroupThousands ? "n" : "f"), flagAlternate, fieldLength, fieldPrecision, flagLeft2Right, flagPositiveSign, flagPositiveSpace, paddingCharacter, o); defaultParamIx++; break; #endregion #region e - exponent number case 'e': // double / exponent w = FormatNumber("e", flagAlternate, fieldLength, fieldPrecision, flagLeft2Right, flagPositiveSign, flagPositiveSpace, paddingCharacter, o); defaultParamIx++; break; #endregion #region E - exponent number case 'E': // double / exponent w = FormatNumber("E", flagAlternate, fieldLength, fieldPrecision, flagLeft2Right, flagPositiveSign, flagPositiveSpace, paddingCharacter, o); defaultParamIx++; break; #endregion #region g - general number case 'g': // double / exponent w = FormatNumber("g", flagAlternate, fieldLength, fieldPrecision, flagLeft2Right, flagPositiveSign, flagPositiveSpace, paddingCharacter, o); defaultParamIx++; break; #endregion #region G - general number case 'G': // double / exponent w = FormatNumber("G", flagAlternate, fieldLength, fieldPrecision, flagLeft2Right, flagPositiveSign, flagPositiveSpace, paddingCharacter, o); defaultParamIx++; break; #endregion #region p - pointer case 'p': // pointer if (o is IntPtr) #if PCL || ENABLE_DOTNET w = ( (IntPtr)o ).ToString(); #else w = "0x" + ((IntPtr)o).ToString("x"); #endif defaultParamIx++; break; #endregion #region n - number of processed chars so far case 'n': // number of characters so far w = FormatNumber("d", flagAlternate, fieldLength, int.MinValue, flagLeft2Right, flagPositiveSign, flagPositiveSpace, paddingCharacter, m.Index); break; #endregion default: w = String.Empty; defaultParamIx++; break; } // replace format parameter with parameter value // and start searching for the next format parameter // AFTER the position of the current inserted value // to prohibit recursive matches if the value also // includes a format specifier f.Remove(m.Index, m.Length); f.Insert(m.Index, w); m = r.Match(f.ToString(), m.Index + w.Length); } return f.ToString(); } #endregion #endregion #region Private Methods #region FormatOCT private static string FormatOct(string NativeFormat, bool Alternate, int FieldLength, int FieldPrecision, bool Left2Right, char Padding, object Value) { string w = String.Empty; string lengthFormat = "{0" + (FieldLength != int.MinValue ? "," + (Left2Right ? "-" : String.Empty) + FieldLength.ToString() : String.Empty) + "}"; if (IsNumericType(Value)) { w = Convert.ToString(UnboxToLong(Value, true), 8); if (Left2Right || Padding == ' ') { if (Alternate && w != "0") w = "0" + w; w = String.Format(lengthFormat, w); } else { if (FieldLength != int.MinValue) w = w.PadLeft(FieldLength - (Alternate && w != "0" ? 1 : 0), Padding); if (Alternate && w != "0") w = "0" + w; } } return w; } #endregion #region FormatHEX private static string FormatHex(string NativeFormat, bool Alternate, int FieldLength, int FieldPrecision, bool Left2Right, char Padding, object Value) { string w = String.Empty; string lengthFormat = "{0" + (FieldLength != int.MinValue ? "," + (Left2Right ? "-" : String.Empty) + FieldLength.ToString() : String.Empty) + "}"; string numberFormat = "{0:" + NativeFormat + (FieldPrecision != int.MinValue ? FieldPrecision.ToString() : String.Empty) + "}"; if (IsNumericType(Value)) { w = String.Format(numberFormat, Value); if (Left2Right || Padding == ' ') { if (Alternate) w = (NativeFormat == "x" ? "0x" : "0X") + w; w = String.Format(lengthFormat, w); } else { if (FieldLength != int.MinValue) w = w.PadLeft(FieldLength - (Alternate ? 2 : 0), Padding); if (Alternate) w = (NativeFormat == "x" ? "0x" : "0X") + w; } } return w; } #endregion #region FormatNumber private static string FormatNumber(string NativeFormat, bool Alternate, int FieldLength, int FieldPrecision, bool Left2Right, bool PositiveSign, bool PositiveSpace, char Padding, object Value) { string w = String.Empty; string lengthFormat = "{0" + (FieldLength != int.MinValue ? "," + (Left2Right ? "-" : String.Empty) + FieldLength.ToString() : String.Empty) + "}"; string numberFormat = "{0:" + NativeFormat + (FieldPrecision != int.MinValue ? FieldPrecision.ToString() : "0") + "}"; if (IsNumericType(Value)) { w = String.Format(CultureInfo.InvariantCulture, numberFormat, Value); if (Left2Right || Padding == ' ') { if (IsPositive(Value, true)) w = (PositiveSign ? "+" : (PositiveSpace ? " " : String.Empty)) + w; w = String.Format(lengthFormat, w); } else { if (w.StartsWith("-")) w = w.Substring(1); if (FieldLength != int.MinValue) if (PositiveSign) // xan - change here w = w.PadLeft(FieldLength - 1, Padding); else w = w.PadLeft(FieldLength, Padding); if (IsPositive(Value, true)) w = (PositiveSign ? "+" : "") + w; // xan - change here else w = "-" + w; } } return w; } #endregion #endregion } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/LuaStateInterop/Tools.cs.meta ================================================ fileFormatVersion: 2 guid: 6e740f4f4cf34594fa5566cea0e4fa19 timeCreated: 1518177920 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/LuaStateInterop.meta ================================================ fileFormatVersion: 2 guid: f343abf3775ad54418ecaae0b45e10a8 folderAsset: yes timeCreated: 1518177913 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/PredefinedUserData/AnonWrapper.cs ================================================  namespace MoonSharp.Interpreter.Interop { /// /// Internal type used by for registration /// public class AnonWrapper { } /// /// Wrapper which allows for easier management of userdata without registering a new userdata type - useful /// if a type which is not exposed to scripts but can be managed as a "black box" by scripts is desired. /// /// The type to wrap public class AnonWrapper : AnonWrapper { /// /// Initializes a new instance of the class. /// public AnonWrapper() { } /// /// Initializes a new instance of the class. /// /// The o. public AnonWrapper(T o) { Value = o; } /// /// Gets or sets the value this instance wraps. /// public T Value { get; set; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/PredefinedUserData/AnonWrapper.cs.meta ================================================ fileFormatVersion: 2 guid: f83bb3761aa649f4f974f865999cd684 timeCreated: 1518177926 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/PredefinedUserData/EnumerableWrapper.cs ================================================ using System.Collections; using MoonSharp.Interpreter.Interop.Converters; namespace MoonSharp.Interpreter.Interop { /// /// Wrappers for enumerables as return types /// internal class EnumerableWrapper : IUserDataType { IEnumerator m_Enumerator; Script m_Script; DynValue m_Prev = DynValue.Nil; bool m_HasTurnOnce = false; private EnumerableWrapper(Script script, IEnumerator enumerator) { m_Script = script; m_Enumerator = enumerator; } public void Reset() { if (m_HasTurnOnce) m_Enumerator.Reset(); m_HasTurnOnce = true; } private DynValue GetNext(DynValue prev) { if (prev.IsNil()) Reset(); while (m_Enumerator.MoveNext()) { DynValue v = ClrToScriptConversions.ObjectToDynValue(m_Script, m_Enumerator.Current); if (!v.IsNil()) return v; } return DynValue.Nil; } private DynValue LuaIteratorCallback(ScriptExecutionContext executionContext, CallbackArguments args) { m_Prev = this.GetNext(m_Prev); return m_Prev; } internal static DynValue ConvertIterator(Script script, IEnumerator enumerator) { EnumerableWrapper ei = new EnumerableWrapper(script, enumerator); return DynValue.NewTuple(UserData.Create(ei), DynValue.Nil, DynValue.Nil); } internal static DynValue ConvertTable(Table table) { return ConvertIterator(table.OwnerScript, table.Values.GetEnumerator()); } public DynValue Index(Script script, DynValue index, bool isDirectIndexing) { if (index.Type == DataType.String) { string idx = index.String; if (idx == "Current" || idx == "current") { return DynValue.FromObject(script, m_Enumerator.Current); } else if (idx == "MoveNext" || idx == "moveNext" || idx == "move_next") { return DynValue.NewCallback((ctx, args) => DynValue.NewBoolean(m_Enumerator.MoveNext())); } else if (idx == "Reset" || idx == "reset") { return DynValue.NewCallback((ctx, args) => { Reset(); return DynValue.Nil; }); } } return null; } public bool SetIndex(Script script, DynValue index, DynValue value, bool isDirectIndexing) { return false; } public DynValue MetaIndex(Script script, string metaname) { if (metaname == "__call") return DynValue.NewCallback(LuaIteratorCallback); else return null; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/PredefinedUserData/EnumerableWrapper.cs.meta ================================================ fileFormatVersion: 2 guid: a8d5f078cb1be514ebfffd37f579d82d timeCreated: 1518177922 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/PredefinedUserData.meta ================================================ fileFormatVersion: 2 guid: 4ddeeefd207e0bb49bf335b8300d5519 folderAsset: yes timeCreated: 1518177912 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/PropertyTableAssigner.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using System.Reflection; using MoonSharp.Interpreter.Compatibility; namespace MoonSharp.Interpreter.Interop { /// /// Utility class which may be used to set properties on an object of type T, from values contained in a Lua table. /// Properties must be decorated with the . /// This is a generic version of . /// /// The type of the object. public class PropertyTableAssigner : IPropertyTableAssigner { PropertyTableAssigner m_InternalAssigner; /// /// Initializes a new instance of the class. /// /// The expected missing properties, that is expected fields in the table with no corresponding property in the object. public PropertyTableAssigner(params string[] expectedMissingProperties) { m_InternalAssigner = new PropertyTableAssigner(typeof(T), expectedMissingProperties); } /// /// Adds an expected missing property, that is an expected field in the table with no corresponding property in the object. /// /// The name. public void AddExpectedMissingProperty(string name) { m_InternalAssigner.AddExpectedMissingProperty(name); } /// /// Assigns properties from tables to an object. /// /// The object. /// The table. /// Object is null /// A field does not correspond to any property and that property is not one of the expected missing ones. public void AssignObject(T obj, Table data) { m_InternalAssigner.AssignObject(obj, data); } /// /// Gets the type-unsafe assigner corresponding to this object. /// /// public PropertyTableAssigner GetTypeUnsafeAssigner() { return m_InternalAssigner; } /// /// Sets the subassigner for the given type. Pass null to remove usage of subassigner for the given type. /// /// Type of the property for which the subassigner will be used. /// The property assigner. public void SetSubassignerForType(Type propertyType, IPropertyTableAssigner assigner) { m_InternalAssigner.SetSubassignerForType(propertyType, assigner); } /// /// Sets the subassigner for the given type /// /// Type of the property for which the subassigner will be used. /// The property assigner. public void SetSubassigner(PropertyTableAssigner assigner) { m_InternalAssigner.SetSubassignerForType(typeof(SubassignerType), assigner); } /// /// Assigns the properties of the specified object without checking the type. /// /// The object. /// The data. void IPropertyTableAssigner.AssignObjectUnchecked(object o, Table data) { AssignObject((T)o, data); } } /// /// Utility class which may be used to set properties on an object from values contained in a Lua table. /// Properties must be decorated with the . /// See for a generic compile time type-safe version. /// public class PropertyTableAssigner : IPropertyTableAssigner { Type m_Type; Dictionary m_PropertyMap = new Dictionary(); Dictionary m_SubAssigners = new Dictionary(); /// /// Initializes a new instance of the class. /// /// The type of the object. /// The expected missing properties, that is expected fields in the table with no corresponding property in the object. /// /// Type cannot be a value type. /// public PropertyTableAssigner(Type type, params string[] expectedMissingProperties) { m_Type = type; if (Framework.Do.IsValueType(m_Type)) throw new ArgumentException("Type cannot be a value type."); foreach(string property in expectedMissingProperties) { m_PropertyMap.Add(property, null); } foreach (PropertyInfo pi in Framework.Do.GetProperties(m_Type)) { foreach (MoonSharpPropertyAttribute attr in pi.GetCustomAttributes(true).OfType()) { string name = attr.Name ?? pi.Name; if (m_PropertyMap.ContainsKey(name)) { throw new ArgumentException(string.Format("Type {0} has two definitions for MoonSharp property {1}", m_Type.FullName, name)); } else { m_PropertyMap.Add(name, pi); } } } } /// /// Adds an expected missing property, that is an expected field in the table with no corresponding property in the object. /// /// The name. public void AddExpectedMissingProperty(string name) { m_PropertyMap.Add(name, null); } private bool TryAssignProperty(object obj, string name, DynValue value) { if (m_PropertyMap.ContainsKey(name)) { PropertyInfo pi = m_PropertyMap[name]; if (pi != null) { object o; if (value.Type == DataType.Table && m_SubAssigners.ContainsKey(pi.PropertyType)) { var subassigner = m_SubAssigners[pi.PropertyType]; o = Activator.CreateInstance(pi.PropertyType); subassigner.AssignObjectUnchecked(o, value.Table); } else { o = Interop.Converters.ScriptToClrConversions.DynValueToObjectOfType(value, pi.PropertyType, null, false); } Framework.Do.GetSetMethod(pi).Invoke(obj, new object[] { o }); } return true; } return false; } private void AssignProperty(object obj, string name, DynValue value) { if (TryAssignProperty(obj, name, value)) return; if (TryAssignProperty(obj, DescriptorHelpers.UpperFirstLetter(name), value)) return; if (TryAssignProperty(obj, DescriptorHelpers.Camelify(name), value)) return; if (TryAssignProperty(obj, DescriptorHelpers.UpperFirstLetter(DescriptorHelpers.Camelify(name)), value)) return; throw new ScriptRuntimeException("Invalid property {0}", name); } /// /// Assigns properties from tables to an object. /// /// The object. /// The table. /// Object is null /// The object is of an incompatible type. /// A field does not correspond to any property and that property is not one of the expected missing ones. public void AssignObject(object obj, Table data) { if (obj == null) throw new ArgumentNullException("Object is null"); if (!Framework.Do.IsInstanceOfType(m_Type, obj)) throw new ArgumentException(string.Format("Invalid type of object : got '{0}', expected {1}", obj.GetType().FullName, m_Type.FullName)); foreach (var pair in data.Pairs) { if (pair.Key.Type != DataType.String) { throw new ScriptRuntimeException("Invalid property of type {0}", pair.Key.Type.ToErrorTypeString()); } AssignProperty(obj, pair.Key.String, pair.Value); } } /// /// Sets the subassigner for the given type. Pass null to remove usage of subassigner for the given type. /// /// Type of the property for which the subassigner will be used. /// The property assigner. public void SetSubassignerForType(Type propertyType, IPropertyTableAssigner assigner) { if ( Framework.Do.IsAbstract(propertyType) || Framework.Do.IsGenericType(propertyType) || Framework.Do.IsInterface(propertyType) || Framework.Do.IsValueType(propertyType)) { throw new ArgumentException("propertyType must be a concrete, reference type"); } m_SubAssigners[propertyType] = assigner; } /// /// Assigns the properties of the specified object without checking the type. /// /// The object. /// The data. void IPropertyTableAssigner.AssignObjectUnchecked(object obj, Table data) { this.AssignObject(obj, data); } } /// /// Common interface for property assigners - basically used for sub-assigners /// public interface IPropertyTableAssigner { /// /// Assigns the properties of the specified object without checking the type. /// /// The object. /// The data. void AssignObjectUnchecked(object o, Table data); } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/PropertyTableAssigner.cs.meta ================================================ fileFormatVersion: 2 guid: d70f2330673f87d40a7050ed068459d2 timeCreated: 1518177924 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/ProxyObjects/DelegateProxyFactory.cs ================================================ using System; namespace MoonSharp.Interpreter.Interop { /// /// Implementation of IProxyFactory taking two delegates for simple instancing of proxies. /// /// The type of the proxy. /// The type of the target. public class DelegateProxyFactory : IProxyFactory where TProxy : class where TTarget : class { Func wrapDelegate; /// /// Initializes a new instance of the class. /// /// The proxy. /// The deproxy. public DelegateProxyFactory(Func wrapDelegate) { this.wrapDelegate = wrapDelegate; } /// /// Takes an instance of a target object and returns a proxy object wrapping it /// public TProxy CreateProxyObject(TTarget target) { return wrapDelegate(target); } /// /// Takes an instance of a target object and returns a proxy object wrapping it /// /// /// public object CreateProxyObject(object o) { return CreateProxyObject((TTarget)o); } /// /// Gets the proxied type /// /// public Type TargetType { get { return typeof(TTarget); } } /// /// Gets the proxy type /// public Type ProxyType { get { return typeof(TProxy); } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/ProxyObjects/DelegateProxyFactory.cs.meta ================================================ fileFormatVersion: 2 guid: e04fa6ffaa6b0c145a36393c683eef22 timeCreated: 1518177925 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/ProxyObjects/IProxyFactory.cs ================================================ using System; namespace MoonSharp.Interpreter.Interop { /// /// Interface for proxy objects (type unsafe version) /// public interface IProxyFactory { /// /// Takes an instance of a target object and returns a proxy object wrapping it /// object CreateProxyObject(object o); /// /// Gets the proxied type /// Type TargetType { get; } /// /// Gets the proxy type /// Type ProxyType { get; } } /// /// Interface for proxy objects (type safe version) /// /// The type of the proxy. /// The type of the target. public interface IProxyFactory : IProxyFactory where TProxy : class where TTarget : class { /// /// Takes an instance of a target object and returns a proxy object wrapping it /// TProxy CreateProxyObject(TTarget target); } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/ProxyObjects/IProxyFactory.cs.meta ================================================ fileFormatVersion: 2 guid: 027dfacdd7b45eb418067fcd6ddbce1f timeCreated: 1518177914 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/ProxyObjects.meta ================================================ fileFormatVersion: 2 guid: bd30b236ac985dc46b12ae546c4440da folderAsset: yes timeCreated: 1518177913 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/ReflectionSpecialNames.cs ================================================ using System.Linq; namespace MoonSharp.Interpreter.Interop { /// /// Helps identifying a reflection special name /// public enum ReflectionSpecialNameType { IndexGetter, IndexSetter, ImplicitCast, ExplicitCast, OperatorTrue, OperatorFalse, PropertyGetter, PropertySetter, AddEvent, RemoveEvent, OperatorAdd, OperatorAnd, OperatorOr, OperatorDec, OperatorDiv, OperatorEq, OperatorXor, OperatorGt, OperatorGte, OperatorInc, OperatorNeq, OperatorLt, OperatorLte, OperatorNot, OperatorMod, OperatorMul, OperatorCompl, OperatorSub, OperatorNeg, OperatorUnaryPlus, } /// /// Class helping identifying special names found with reflection /// public struct ReflectionSpecialName { public ReflectionSpecialNameType Type { get; private set; } public string Argument { get; private set; } public ReflectionSpecialName(ReflectionSpecialNameType type, string argument = null) : this() { Type = type; Argument = argument; } public ReflectionSpecialName(string name) : this() { if (name.Contains(".")) { string[] split = name.Split('.'); name = split[split.Length - 1]; } switch (name) { case "op_Explicit": Type = ReflectionSpecialNameType.ExplicitCast; return; case "op_Implicit": Type = ReflectionSpecialNameType.ImplicitCast; return; case "set_Item": Type = ReflectionSpecialNameType.IndexSetter; return; case "get_Item": Type = ReflectionSpecialNameType.IndexGetter; return; case "op_Addition": Type = ReflectionSpecialNameType.OperatorAdd; Argument = "+"; return; case "op_BitwiseAnd": Type = ReflectionSpecialNameType.OperatorAnd; Argument = "&"; return; case "op_BitwiseOr": Type = ReflectionSpecialNameType.OperatorOr; Argument = "|"; return; case "op_Decrement": Type = ReflectionSpecialNameType.OperatorDec; Argument = "--"; return; case "op_Division": Type = ReflectionSpecialNameType.OperatorDiv; Argument = "/"; return; case "op_Equality": Type = ReflectionSpecialNameType.OperatorEq; Argument = "=="; return; case "op_ExclusiveOr": Type = ReflectionSpecialNameType.OperatorXor; Argument = "^"; return; case "op_False": Type = ReflectionSpecialNameType.OperatorFalse; return; case "op_GreaterThan": Type = ReflectionSpecialNameType.OperatorGt; Argument = ">"; return; case "op_GreaterThanOrEqual": Type = ReflectionSpecialNameType.OperatorGte; Argument = ">="; return; case "op_Increment": Type = ReflectionSpecialNameType.OperatorInc; Argument = "++"; return; case "op_Inequality": Type = ReflectionSpecialNameType.OperatorNeq; Argument = "!="; return; case "op_LessThan": Type = ReflectionSpecialNameType.OperatorLt; Argument = "<"; return; case "op_LessThanOrEqual": Type = ReflectionSpecialNameType.OperatorLte; Argument = "<="; return; case "op_LogicalNot": Type = ReflectionSpecialNameType.OperatorNot; Argument = "!"; return; case "op_Modulus": Type = ReflectionSpecialNameType.OperatorMod; Argument = "%"; return; case "op_Multiply": Type = ReflectionSpecialNameType.OperatorMul; Argument = "*"; return; case "op_OnesComplement": Type = ReflectionSpecialNameType.OperatorCompl; Argument = "~"; return; case "op_Subtraction": Type = ReflectionSpecialNameType.OperatorSub; Argument = "-"; return; case "op_True": Type = ReflectionSpecialNameType.OperatorTrue; return; case "op_UnaryNegation": Type = ReflectionSpecialNameType.OperatorNeg; Argument = "-"; return; case "op_UnaryPlus": Type = ReflectionSpecialNameType.OperatorUnaryPlus; Argument = "+"; return; } if (name.StartsWith("get_")) { Type = ReflectionSpecialNameType.PropertyGetter; Argument = name.Substring(4); } else if (name.StartsWith("set_")) { Type = ReflectionSpecialNameType.PropertySetter; Argument = name.Substring(4); } else if (name.StartsWith("add_")) { Type = ReflectionSpecialNameType.AddEvent; Argument = name.Substring(4); } else if (name.StartsWith("remove_")) { Type = ReflectionSpecialNameType.RemoveEvent; Argument = name.Substring(7); } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/ReflectionSpecialNames.cs.meta ================================================ fileFormatVersion: 2 guid: a6210800c27f7b549bea8e659e9ce490 timeCreated: 1518177922 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/RegistrationPolicies/AutomaticRegistrationPolicy.cs ================================================ using System; namespace MoonSharp.Interpreter.Interop.RegistrationPolicies { /// /// Similar to , but with automatic type registration is disabled. /// public class AutomaticRegistrationPolicy : DefaultRegistrationPolicy { /// /// Allows type automatic registration for the specified type. /// NOTE: automatic type registration is NOT recommended. /// /// The type. /// /// True to register the type automatically, false otherwise. /// public override bool AllowTypeAutoRegistration(Type type) { return true; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/RegistrationPolicies/AutomaticRegistrationPolicy.cs.meta ================================================ fileFormatVersion: 2 guid: 3838af496be59bb4a8d282576af8d878 timeCreated: 1518177917 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/RegistrationPolicies/DefaultRegistrationPolicy.cs ================================================ using System; using MoonSharp.Interpreter.Interop.StandardDescriptors.HardwiredDescriptors; namespace MoonSharp.Interpreter.Interop.RegistrationPolicies { /// /// The default registration policy used by MoonSharp unless explicitely replaced. /// Deregistrations are allowed, but registration of a new descriptor are not allowed /// if a descriptor is already registered for that type. /// /// Automatic type registration is disabled. /// public class DefaultRegistrationPolicy : IRegistrationPolicy { /// /// Called to handle the registration or deregistration of a type descriptor. Must return the type descriptor to be registered, or null to remove the registration. /// /// The new descriptor, or null if this is a deregistration. /// The old descriptor, or null if no descriptor was previously registered for this type. /// public IUserDataDescriptor HandleRegistration(IUserDataDescriptor newDescriptor, IUserDataDescriptor oldDescriptor) { if (newDescriptor == null) return null; else return oldDescriptor ?? newDescriptor; } /// /// Allows type automatic registration for the specified type. /// NOTE: automatic type registration is NOT recommended. /// /// The type. /// /// True to register the type automatically, false otherwise. /// public virtual bool AllowTypeAutoRegistration(Type type) { return false; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/RegistrationPolicies/DefaultRegistrationPolicy.cs.meta ================================================ fileFormatVersion: 2 guid: cfcff3cb7b9d4604ca878461b67cb77a timeCreated: 1518177924 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/RegistrationPolicies/IRegistrationPolicy.cs ================================================ using System; namespace MoonSharp.Interpreter.Interop.RegistrationPolicies { /// /// Interface for managing how to handle /// public interface IRegistrationPolicy { /// /// Called to handle the registration or deregistration of a type descriptor. Must return the type descriptor to be registered, or null to remove the registration. /// /// The new descriptor, or null if this is a deregistration. /// The old descriptor, or null if no descriptor was previously registered for this type. /// IUserDataDescriptor HandleRegistration(IUserDataDescriptor newDescriptor, IUserDataDescriptor oldDescriptor); /// /// Allows type automatic registration for the specified type. /// NOTE: automatic type registration is NOT recommended. /// /// The type. /// True to register the type automatically, false otherwise. bool AllowTypeAutoRegistration(Type type); } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/RegistrationPolicies/IRegistrationPolicy.cs.meta ================================================ fileFormatVersion: 2 guid: 049c8ad8682787b4e86a665b7a2d58d5 timeCreated: 1518177914 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/RegistrationPolicies/PermanentRegistrationPolicy.cs ================================================ using System; namespace MoonSharp.Interpreter.Interop.RegistrationPolicies { /// /// A registration policy which makes registration permanent and not deletable. /// Deregistrations are not allowed and registrations of a new descriptor are not allowed /// if a descriptor is already registered for that type. /// public class PermanentRegistrationPolicy : IRegistrationPolicy { /// /// Called to handle the registration or deregistration of a type descriptor. Must return the type descriptor to be registered, or null to remove the registration. /// /// The new descriptor, or null if this is a deregistration. /// The old descriptor, or null if no descriptor was previously registered for this type. /// public IUserDataDescriptor HandleRegistration(IUserDataDescriptor newDescriptor, IUserDataDescriptor oldDescriptor) { return oldDescriptor ?? newDescriptor; } /// /// Allows type automatic registration for the specified type. /// NOTE: automatic type registration is NOT recommended. /// /// The type. /// /// True to register the type automatically, false otherwise. /// /// public bool AllowTypeAutoRegistration(Type type) { return false; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/RegistrationPolicies/PermanentRegistrationPolicy.cs.meta ================================================ fileFormatVersion: 2 guid: 5137fef0161d6db4caf9bcd05da38a62 timeCreated: 1518177918 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/RegistrationPolicies.meta ================================================ fileFormatVersion: 2 guid: 3af15aed948a75c42ab6aa30c8073436 folderAsset: yes timeCreated: 1518177912 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/AutoDescribingUserDataDescriptor.cs ================================================ using System; using MoonSharp.Interpreter.Compatibility; using MoonSharp.Interpreter.Interop; namespace MoonSharp.Interpreter { /// /// Descriptor which acts as a non-containing adapter from IUserDataType to IUserDataDescriptor /// internal class AutoDescribingUserDataDescriptor : IUserDataDescriptor { private string m_FriendlyName; private Type m_Type; /// /// Initializes a new instance of the class. /// /// The type. /// Name of the friendly. public AutoDescribingUserDataDescriptor(Type type, string friendlyName) { m_FriendlyName = friendlyName; m_Type = type; } /// /// Gets the name of the descriptor (usually, the name of the type described). /// public string Name { get { return m_FriendlyName; } } /// /// Gets the type this descriptor refers to /// public Type Type { get { return m_Type; } } /// /// Performs an "index" "get" operation. /// /// The script originating the request /// The object (null if a static request is done) /// The index. /// If set to true, it's indexed with a name, if false it's indexed through brackets. /// public DynValue Index(Script script, object obj, DynValue index, bool isDirectIndexing) { IUserDataType u = obj as IUserDataType; if (u != null) return u.Index(script, index, isDirectIndexing); return null; } /// /// Performs an "index" "set" operation. /// /// The script originating the request /// The object (null if a static request is done) /// The index. /// The value to be set /// If set to true, it's indexed with a name, if false it's indexed through brackets. /// public bool SetIndex(Script script, object obj, DynValue index, DynValue value, bool isDirectIndexing) { IUserDataType u = obj as IUserDataType; if (u != null) return u.SetIndex(script, index, value, isDirectIndexing); return false; } /// /// Converts this userdata to string /// /// The object. /// public string AsString(object obj) { if (obj != null) return obj.ToString(); else return null; } /// /// Gets a "meta" operation on this userdata. If a descriptor does not support this functionality, /// it should return "null" (not a nil). /// These standard metamethods can be supported (the return value should be a function accepting the /// classic parameters of the corresponding metamethod): /// __add, __sub, __mul, __div, __div, __pow, __unm, __eq, __lt, __le, __lt, __len, __concat, /// __pairs, __ipairs, __iterator, __call /// These standard metamethods are supported through other calls for efficiency: /// __index, __newindex, __tostring /// /// The script originating the request /// The object (null if a static request is done) /// The name of the metamember. /// public DynValue MetaIndex(Script script, object obj, string metaname) { IUserDataType u = obj as IUserDataType; if (u != null) return u.MetaIndex(script, metaname); return null; } /// /// Determines whether the specified object is compatible with the specified type. /// Unless a very specific behaviour is needed, the correct implementation is a /// simple " return type.IsInstanceOfType(obj); " /// /// The type. /// The object. /// public bool IsTypeCompatible(Type type, object obj) { return Framework.Do.IsInstanceOfType(type, obj); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/AutoDescribingUserDataDescriptor.cs.meta ================================================ fileFormatVersion: 2 guid: 86170e506e5d98b409bccb5bc5747371 timeCreated: 1518177921 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/CompositeUserDataDescriptor.cs ================================================ using System; using System.Collections.Generic; using MoonSharp.Interpreter.Compatibility; namespace MoonSharp.Interpreter.Interop { /// /// A user data descriptor which aggregates multiple descriptors and tries dispatching members /// on them, in order. /// /// Used, for example, for objects implementing multiple interfaces but for which no descriptor is /// specifically registered. /// public class CompositeUserDataDescriptor : IUserDataDescriptor { private List m_Descriptors; private Type m_Type; /// /// Initializes a new instance of the class. /// /// The descriptors. /// The type. public CompositeUserDataDescriptor(List descriptors, Type type) { m_Descriptors = descriptors; m_Type = type; } /// /// Gets the descriptors aggregated by this object, allowing changes to the descriptor list /// public IList Descriptors { get { return m_Descriptors; } } /// /// Gets the name of the descriptor (usually, the name of the type described). /// public string Name { get { return "^" + m_Type.FullName; } } /// /// Gets the type this descriptor refers to /// public Type Type { get { return m_Type; } } /// /// Performs an "index" "get" operation. /// /// The script originating the request /// The object (null if a static request is done) /// The index. /// If set to true, it's indexed with a name, if false it's indexed through brackets. /// public DynValue Index(Script script, object obj, DynValue index, bool isNameIndex) { foreach (IUserDataDescriptor dd in m_Descriptors) { DynValue v = dd.Index(script, obj, index, isNameIndex); if (v != null) return v; } return null; } /// /// Performs an "index" "set" operation. /// /// The script originating the request /// The object (null if a static request is done) /// The index. /// The value to be set /// If set to true, it's indexed with a name, if false it's indexed through brackets. /// public bool SetIndex(Script script, object obj, DynValue index, DynValue value, bool isNameIndex) { foreach (IUserDataDescriptor dd in m_Descriptors) { if (dd.SetIndex(script, obj, index, value, isNameIndex)) return true; } return false; } /// /// Converts this userdata to string /// /// The object. /// public string AsString(object obj) { return (obj != null) ? obj.ToString() : null; } /// /// Gets a "meta" operation on this userdata. If a descriptor does not support this functionality, /// it should return "null" (not a nil). /// These standard metamethods can be supported (the return value should be a function accepting the /// classic parameters of the corresponding metamethod): /// __add, __sub, __mul, __div, __div, __pow, __unm, __eq, __lt, __le, __lt, __len, __concat, /// __pairs, __ipairs, __iterator, __call /// These standard metamethods are supported through other calls for efficiency: /// __index, __newindex, __tostring /// /// The script originating the request /// The object (null if a static request is done) /// The name of the metamember. /// public DynValue MetaIndex(Script script, object obj, string metaname) { foreach (IUserDataDescriptor dd in m_Descriptors) { DynValue v = dd.MetaIndex(script, obj, metaname); if (v != null) return v; } return null; } /// /// Determines whether the specified object is compatible with the specified type. /// Unless a very specific behaviour is needed, the correct implementation is a /// simple " return type.IsInstanceOfType(obj); " /// /// The type. /// The object. /// public bool IsTypeCompatible(Type type, object obj) { return Framework.Do.IsInstanceOfType(type, obj); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/CompositeUserDataDescriptor.cs.meta ================================================ fileFormatVersion: 2 guid: 0ef604cc820cbd646aa3a95049a4a2db timeCreated: 1518177914 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/EventFacade.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace MoonSharp.Interpreter.Interop.StandardDescriptors { internal class EventFacade : IUserDataType { Func m_AddCallback; Func m_RemoveCallback; object m_Object; public EventFacade(EventMemberDescriptor parent, object obj) { m_Object = obj; m_AddCallback = parent.AddCallback; m_RemoveCallback = parent.RemoveCallback; } public EventFacade(Func addCallback, Func removeCallback, object obj) { m_Object = obj; m_AddCallback = addCallback; m_RemoveCallback = removeCallback; } public DynValue Index(Script script, DynValue index, bool isDirectIndexing) { if (index.Type == DataType.String) { if (index.String == "add") return DynValue.NewCallback((c, a) => m_AddCallback(m_Object, c, a)); else if (index.String == "remove") return DynValue.NewCallback((c, a) => m_RemoveCallback(m_Object, c, a)); } throw new ScriptRuntimeException("Events only support add and remove methods"); } public bool SetIndex(Script script, DynValue index, DynValue value, bool isDirectIndexing) { throw new ScriptRuntimeException("Events do not have settable fields"); } public DynValue MetaIndex(Script script, string metaname) { return null; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/EventFacade.cs.meta ================================================ fileFormatVersion: 2 guid: 79fb6355a1e430b49b058f5ab56ff506 timeCreated: 1518177920 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/HardwiredDescriptors/DefaultValue.cs ================================================  namespace MoonSharp.Interpreter.Interop.StandardDescriptors.HardwiredDescriptors { public sealed class DefaultValue { public static readonly DefaultValue Instance = new DefaultValue(); } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/HardwiredDescriptors/DefaultValue.cs.meta ================================================ fileFormatVersion: 2 guid: c5806366c22c98b4e9fa41d0b8cde406 timeCreated: 1518177924 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/HardwiredDescriptors/HardwiredMemberDescriptor.cs ================================================ using System; using MoonSharp.Interpreter.Interop.BasicDescriptors; using MoonSharp.Interpreter.Interop.Converters; namespace MoonSharp.Interpreter.Interop.StandardDescriptors.HardwiredDescriptors { public abstract class HardwiredMemberDescriptor : IMemberDescriptor { public Type MemberType { get; private set; } protected HardwiredMemberDescriptor(Type memberType, string name, bool isStatic, MemberDescriptorAccess access) { IsStatic = isStatic; Name = name; MemberAccess = access; MemberType = memberType; } public bool IsStatic { get; private set; } public string Name { get; private set; } public MemberDescriptorAccess MemberAccess { get; private set; } public DynValue GetValue(Script script, object obj) { this.CheckAccess(MemberDescriptorAccess.CanRead, obj); object result = GetValueImpl(script, obj); return ClrToScriptConversions.ObjectToDynValue(script, result); } public void SetValue(Script script, object obj, DynValue value) { this.CheckAccess(MemberDescriptorAccess.CanWrite, obj); object v = ScriptToClrConversions.DynValueToObjectOfType(value, MemberType, null, false); SetValueImpl(script, obj, v); } protected virtual object GetValueImpl(Script script, object obj) { throw new InvalidOperationException("GetValue on write-only hardwired descriptor " + Name); } protected virtual void SetValueImpl(Script script, object obj, object value) { throw new InvalidOperationException("SetValue on read-only hardwired descriptor " + Name); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/HardwiredDescriptors/HardwiredMemberDescriptor.cs.meta ================================================ fileFormatVersion: 2 guid: 28c70c9a1ffc9d849a3dd4594dc332e8 timeCreated: 1518177916 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/HardwiredDescriptors/HardwiredMethodMemberDescriptor.cs ================================================ using System.Collections.Generic; using MoonSharp.Interpreter.Interop.BasicDescriptors; namespace MoonSharp.Interpreter.Interop.StandardDescriptors.HardwiredDescriptors { public abstract class HardwiredMethodMemberDescriptor : FunctionMemberDescriptorBase { public override DynValue Execute(Script script, object obj, ScriptExecutionContext context, CallbackArguments args) { this.CheckAccess(MemberDescriptorAccess.CanExecute, obj); List outParams = null; object[] pars = base.BuildArgumentList(script, obj, context, args, out outParams); object retv = Invoke(script, obj, pars, CalcArgsCount(pars)); return DynValue.FromObject(script, retv); } private int CalcArgsCount(object[] pars) { int count = pars.Length; for(int i = 0; i < pars.Length; i++) if (Parameters[i].HasDefaultValue && (pars[i] is DefaultValue)) { count -= 1; } return count; } protected abstract object Invoke(Script script, object obj, object[] pars, int argscount); } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/HardwiredDescriptors/HardwiredMethodMemberDescriptor.cs.meta ================================================ fileFormatVersion: 2 guid: 912407d0ff48e01449b51992cce57210 timeCreated: 1518177922 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/HardwiredDescriptors/HardwiredUserDataDescriptor.cs ================================================ using System; using MoonSharp.Interpreter.Interop.BasicDescriptors; namespace MoonSharp.Interpreter.Interop.StandardDescriptors.HardwiredDescriptors { public abstract class HardwiredUserDataDescriptor : DispatchingUserDataDescriptor { protected HardwiredUserDataDescriptor(Type T) : base(T, "::hardwired::" + T.Name) { } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/HardwiredDescriptors/HardwiredUserDataDescriptor.cs.meta ================================================ fileFormatVersion: 2 guid: 84a138e1388fb65429f9b0bbb4a01368 timeCreated: 1518177921 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/HardwiredDescriptors.meta ================================================ fileFormatVersion: 2 guid: 46dcc11f9f9daba4b8c4216980faf464 folderAsset: yes timeCreated: 1518177913 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/MemberDescriptors/ArrayMemberDescriptor.cs ================================================ using System; using MoonSharp.Interpreter.Interop.BasicDescriptors; using MoonSharp.Interpreter.Interop.Converters; namespace MoonSharp.Interpreter.Interop { /// /// Member descriptor for indexer of array types /// public class ArrayMemberDescriptor : ObjectCallbackMemberDescriptor, IWireableDescriptor { bool m_IsSetter; /// /// Initializes a new instance of the class. /// /// The name. /// if set to true is a setter indexer. /// The indexer parameters. public ArrayMemberDescriptor(string name, bool isSetter, ParameterDescriptor[] indexerParams) : base( name, isSetter ? (Func)ArrayIndexerSet : (Func)ArrayIndexerGet, indexerParams) { m_IsSetter = isSetter; } /// /// Initializes a new instance of the class. /// /// The name. /// if set to true [is setter]. public ArrayMemberDescriptor(string name, bool isSetter) : base( name, isSetter ? (Func)ArrayIndexerSet : (Func)ArrayIndexerGet) { m_IsSetter = isSetter; } /// /// Prepares the descriptor for hard-wiring. /// The descriptor fills the passed table with all the needed data for hardwire generators to generate the appropriate code. /// /// The table to be filled public void PrepareForWiring(Table t) { t.Set("class", DynValue.NewString(this.GetType().FullName)); t.Set("name", DynValue.NewString(Name)); t.Set("setter", DynValue.NewBoolean(m_IsSetter)); if (this.Parameters != null) { var pars = DynValue.NewPrimeTable(); t.Set("params", pars); int i = 0; foreach (var p in Parameters) { DynValue pt = DynValue.NewPrimeTable(); pars.Table.Set(++i, pt); p.PrepareForWiring(pt.Table); } } } private static int[] BuildArrayIndices(CallbackArguments args, int count) { int[] indices = new int[count]; for (int i = 0; i < count; i++) indices[i] = args.AsInt(i, "userdata_array_indexer"); return indices; } private static object ArrayIndexerSet(object arrayObj, ScriptExecutionContext ctx, CallbackArguments args) { Array array = (Array)arrayObj; int[] indices = BuildArrayIndices(args, args.Count - 1); DynValue value = args[args.Count - 1]; Type elemType = array.GetType().GetElementType(); object objValue = ScriptToClrConversions.DynValueToObjectOfType(value, elemType, null, false); array.SetValue(objValue, indices); return DynValue.Void; } private static object ArrayIndexerGet(object arrayObj, ScriptExecutionContext ctx, CallbackArguments args) { Array array = (Array)arrayObj; int[] indices = BuildArrayIndices(args, args.Count); return array.GetValue(indices); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/MemberDescriptors/ArrayMemberDescriptor.cs.meta ================================================ fileFormatVersion: 2 guid: c338efe5a6ccfba49a7f9313342dfe20 timeCreated: 1518177924 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/MemberDescriptors/DynValueMemberDescriptor.cs ================================================ using MoonSharp.Interpreter.Interop.BasicDescriptors; namespace MoonSharp.Interpreter.Interop { /// /// Class providing a simple descriptor for constant DynValues in userdata /// public class DynValueMemberDescriptor : IMemberDescriptor, IWireableDescriptor { private DynValue m_Value; /// /// Initializes a new instance of the class. /// /// The name. /// A string containing a table whose first member is the dynvalue to be deserialized (convoluted...). protected DynValueMemberDescriptor(string name, string serializedTableValue) { Script s = new Script(); var exp = s.CreateDynamicExpression(serializedTableValue); DynValue val = exp.Evaluate(null); m_Value = val.Table.Get(1); Name = name; MemberAccess = MemberDescriptorAccess.CanRead; } /// /// Initializes a new instance of the class. /// /// The name. protected DynValueMemberDescriptor(string name) { MemberAccess = MemberDescriptorAccess.CanRead; m_Value = null; Name = name; } /// /// Initializes a new instance of the class. /// /// The name. /// The value. public DynValueMemberDescriptor(string name, DynValue value) { m_Value = value; Name = name; if (value.Type == DataType.ClrFunction) MemberAccess = MemberDescriptorAccess.CanRead | MemberDescriptorAccess.CanExecute; else MemberAccess = MemberDescriptorAccess.CanRead; } /// /// Gets a value indicating whether the described member is static. /// public bool IsStatic { get { return true; } } /// /// Gets the name of the member /// public string Name { get; private set; } /// /// Gets the types of access supported by this member /// public MemberDescriptorAccess MemberAccess { get; private set; } /// /// Gets the value wrapped by this descriptor /// public virtual DynValue Value { get { return m_Value; } } /// /// Gets the value of this member as a to be exposed to scripts. /// /// The script. /// The object owning this member, or null if static. /// /// The value of this member as a . /// public DynValue GetValue(Script script, object obj) { return Value; } /// /// Sets the value of this member from a . /// /// The script. /// The object owning this member, or null if static. /// The value to be set. /// userdata '{0}' cannot be written to. public void SetValue(Script script, object obj, DynValue value) { throw new ScriptRuntimeException("userdata '{0}' cannot be written to.", this.Name); } /// /// Prepares the descriptor for hard-wiring. /// The descriptor fills the passed table with all the needed data for hardwire generators to generate the appropriate code. /// /// The table to be filled public void PrepareForWiring(Table t) { t.Set("class", DynValue.NewString(this.GetType().FullName)); t.Set("name", DynValue.NewString(this.Name)); switch (Value.Type) { case DataType.Nil: case DataType.Void: case DataType.Boolean: case DataType.Number: case DataType.String: case DataType.Tuple: t.Set("value", Value); break; case DataType.Table: if (Value.Table.OwnerScript == null) { t.Set("value", Value); } else { t.Set("error", DynValue.NewString("Wiring of non-prime table value members not supported.")); } break; case DataType.UserData: if (Value.UserData.Object == null) { t.Set("type", DynValue.NewString("userdata")); t.Set("staticType", DynValue.NewString(Value.UserData.Descriptor.Type.FullName)); t.Set("visibility", DynValue.NewString(Value.UserData.Descriptor.Type.GetClrVisibility())); } else { t.Set("error", DynValue.NewString("Wiring of non-static userdata value members not supported.")); } break; default: t.Set("error", DynValue.NewString(string.Format("Wiring of '{0}' value members not supported.", Value.Type.ToErrorTypeString()))); break; } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/MemberDescriptors/DynValueMemberDescriptor.cs.meta ================================================ fileFormatVersion: 2 guid: 807ee7d6dd93d9342bb28d2faf45d127 timeCreated: 1518177921 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/MemberDescriptors/FunctionMemberDescriptorBase.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using System.Reflection; using MoonSharp.Interpreter.Compatibility; using MoonSharp.Interpreter.Interop.BasicDescriptors; using MoonSharp.Interpreter.Interop.Converters; namespace MoonSharp.Interpreter.Interop { /// /// Class providing easier marshalling of CLR functions /// public abstract class FunctionMemberDescriptorBase : IOverloadableMemberDescriptor { /// /// Gets a value indicating whether the described method is static. /// public bool IsStatic { get; private set; } /// /// Gets the name of the described method /// public string Name { get; private set; } /// /// Gets a sort discriminant to give consistent overload resolution matching in case of perfectly equal scores /// public string SortDiscriminant { get; private set; } /// /// Gets the type of the arguments of the underlying CLR function /// public ParameterDescriptor[] Parameters { get; private set; } /// /// Gets the type which this extension method extends, null if this is not an extension method. /// public Type ExtensionMethodType { get; private set; } /// /// Gets a value indicating the type of the ParamArray parameter of a var-args function. If the function is not var-args, /// null is returned. /// public Type VarArgsArrayType { get; private set; } /// /// Gets a value indicating the type of the elements of the ParamArray parameter of a var-args function. If the function is not var-args, /// null is returned. /// public Type VarArgsElementType { get; private set; } /// /// Initializes this instance. /// This *MUST* be called by the constructors extending this class to complete initialization. /// /// Name of the function. /// if set to true [is static]. /// The parameters. /// if set to true [is extension method]. protected void Initialize(string funcName, bool isStatic, ParameterDescriptor[] parameters, bool isExtensionMethod) { this.Name = funcName; this.IsStatic = isStatic; this.Parameters = parameters; if (isExtensionMethod) this.ExtensionMethodType = Parameters[0].Type; if (Parameters.Length > 0 && Parameters[Parameters.Length - 1].IsVarArgs) { VarArgsArrayType = Parameters[Parameters.Length - 1].Type; VarArgsElementType = Parameters[Parameters.Length - 1].Type.GetElementType(); } SortDiscriminant = string.Join(":", Parameters.Select(pi => pi.Type.FullName).ToArray()); } /// /// Gets a callback function as a delegate /// /// The script for which the callback must be generated. /// The object (null for static). /// public Func GetCallback(Script script, object obj = null) { return (c, a) => Execute(script, obj, c, a); } /// /// Gets the callback function. /// /// The script for which the callback must be generated. /// The object (null for static). /// public CallbackFunction GetCallbackFunction(Script script, object obj = null) { return new CallbackFunction(GetCallback(script, obj), this.Name); } /// /// Gets the callback function as a DynValue. /// /// The script for which the callback must be generated. /// The object (null for static). /// public DynValue GetCallbackAsDynValue(Script script, object obj = null) { return DynValue.NewCallback(this.GetCallbackFunction(script, obj)); } /// /// Creates a callback DynValue starting from a MethodInfo. /// /// The script. /// The mi. /// The object. /// public static DynValue CreateCallbackDynValue(Script script, MethodInfo mi, object obj = null) { var desc = new MethodMemberDescriptor(mi); return desc.GetCallbackAsDynValue(script, obj); } /// /// Builds the argument list. /// /// The script. /// The object. /// The context. /// The arguments. /// Output: A list containing the indices of all "out" parameters, or null if no out parameters are specified. /// The arguments, appropriately converted. protected virtual object[] BuildArgumentList(Script script, object obj, ScriptExecutionContext context, CallbackArguments args, out List outParams) { ParameterDescriptor[] parameters = Parameters; object[] pars = new object[parameters.Length]; int j = args.IsMethodCall ? 1 : 0; outParams = null; for (int i = 0; i < pars.Length; i++) { // keep track of out and ref params if (parameters[i].Type.IsByRef) { if (outParams == null) outParams = new List(); outParams.Add(i); } // if an ext method, we have an obj -> fill the first param if (ExtensionMethodType != null && obj != null && i == 0) { pars[i] = obj; continue; } // else, fill types with a supported type else if (parameters[i].Type == typeof(Script)) { pars[i] = script; } else if (parameters[i].Type == typeof(ScriptExecutionContext)) { pars[i] = context; } else if (parameters[i].Type == typeof(CallbackArguments)) { pars[i] = args.SkipMethodCall(); } // else, ignore out params else if (parameters[i].IsOut) { pars[i] = null; } else if (i == parameters.Length - 1 && VarArgsArrayType != null) { List extraArgs = new List(); while (true) { DynValue arg = args.RawGet(j, false); j += 1; if (arg != null) extraArgs.Add(arg); else break; } // here we have to worry we already have an array.. damn. We only support this for userdata. // remains to be analyzed what's the correct behavior here. For example, let's take a params object[].. // given a single table parameter, should it use it as an array or as an object itself ? if (extraArgs.Count == 1) { DynValue arg = extraArgs[0]; if (arg.Type == DataType.UserData && arg.UserData.Object != null) { if (Framework.Do.IsAssignableFrom(VarArgsArrayType, arg.UserData.Object.GetType())) { pars[i] = arg.UserData.Object; continue; } } } // ok let's create an array, and loop Array vararg = Array.CreateInstance(VarArgsElementType, extraArgs.Count); for (int ii = 0; ii < extraArgs.Count; ii++) { vararg.SetValue(ScriptToClrConversions.DynValueToObjectOfType(extraArgs[ii], VarArgsElementType, null, false), ii); } pars[i] = vararg; } // else, convert it else { var arg = args.RawGet(j, false) ?? DynValue.Void; pars[i] = ScriptToClrConversions.DynValueToObjectOfType(arg, parameters[i].Type, parameters[i].DefaultValue, parameters[i].HasDefaultValue); j += 1; } } return pars; } /// /// Builds the return value of a call /// /// The script. /// The out parameters indices, or null. See . /// The parameters passed to the function. /// The return value from the function. Use DynValue.Void if the function returned no value. /// A DynValue to be returned to scripts protected static DynValue BuildReturnValue(Script script, List outParams, object[] pars, object retv) { if (outParams == null) { return ClrToScriptConversions.ObjectToDynValue(script, retv); } else { DynValue[] rets = new DynValue[outParams.Count + 1]; if (retv is DynValue && ((DynValue)retv).IsVoid()) rets[0] = DynValue.Nil; else rets[0] = ClrToScriptConversions.ObjectToDynValue(script, retv); for (int i = 0; i < outParams.Count; i++) rets[i + 1] = ClrToScriptConversions.ObjectToDynValue(script, pars[outParams[i]]); return DynValue.NewTuple(rets); } } /// /// The internal callback which actually executes the method /// /// The script. /// The object. /// The context. /// The arguments. /// public abstract DynValue Execute(Script script, object obj, ScriptExecutionContext context, CallbackArguments args); /// /// Gets the types of access supported by this member /// public MemberDescriptorAccess MemberAccess { get { return MemberDescriptorAccess.CanRead | MemberDescriptorAccess.CanExecute; } } /// /// Gets the value of this member as a to be exposed to scripts. /// /// The script. /// The object owning this member, or null if static. /// /// The value of this member as a . /// public virtual DynValue GetValue(Script script, object obj) { this.CheckAccess(MemberDescriptorAccess.CanRead, obj); return this.GetCallbackAsDynValue(script, obj); } /// /// Sets the value. /// /// The script. /// The object. /// The v. /// public virtual void SetValue(Script script, object obj, DynValue v) { this.CheckAccess(MemberDescriptorAccess.CanWrite, obj); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/MemberDescriptors/FunctionMemberDescriptorBase.cs.meta ================================================ fileFormatVersion: 2 guid: 934d82a582eedf14f9c689e51c571ec0 timeCreated: 1518177922 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/MemberDescriptors/ObjectCallbackMemberDescriptor.cs ================================================ using System; using MoonSharp.Interpreter.Interop.BasicDescriptors; using MoonSharp.Interpreter.Interop.Converters; namespace MoonSharp.Interpreter.Interop { /// /// Member descriptor which allows to define new members which behave similarly to class instance members /// public class ObjectCallbackMemberDescriptor : FunctionMemberDescriptorBase { Func m_CallbackFunc; /// /// Initializes a new instance of the class. /// A new member descriptor is defined, which is a function taking no parameters and returning void, doing nothing. /// /// Name of the function. public ObjectCallbackMemberDescriptor(string funcName) : this(funcName, (o, c, a) => DynValue.Void, new ParameterDescriptor[0]) { } /// /// Initializes a new instance of the class. /// The function described by descriptors created by this callback are defined as if they take no parameters /// and thus don't support overload resolution well (unless they really take no parameters) but can freely be /// used if no overload resolution is required. /// /// Name of the function. /// The callback function. public ObjectCallbackMemberDescriptor(string funcName, Func callBack) : this(funcName, callBack, new ParameterDescriptor[0]) { } /// /// Initializes a new instance of the class. /// Members defined with this constructor will support overload resolution. /// /// Name of the function. /// The call back. /// The parameters. public ObjectCallbackMemberDescriptor(string funcName, Func callBack, ParameterDescriptor[] parameters) { m_CallbackFunc = callBack; Initialize(funcName, false, parameters, false); } /// /// The internal callback which actually executes the method /// /// The script. /// The object. /// The context. /// The arguments. /// public override DynValue Execute(Script script, object obj, ScriptExecutionContext context, CallbackArguments args) { if (m_CallbackFunc != null) { object retv = m_CallbackFunc(obj, context, args); return ClrToScriptConversions.ObjectToDynValue(script, retv); } else { return DynValue.Void; } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/MemberDescriptors/ObjectCallbackMemberDescriptor.cs.meta ================================================ fileFormatVersion: 2 guid: 18debfc3b83ef5c409c63b7cebbecf8c timeCreated: 1518177915 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/MemberDescriptors.meta ================================================ fileFormatVersion: 2 guid: b7665370f7cf9cc4797cd4097f4aff02 folderAsset: yes timeCreated: 1518177913 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/ProxyUserDataDescriptor.cs ================================================ using System; using MoonSharp.Interpreter.Compatibility; namespace MoonSharp.Interpreter.Interop { /// /// Data descriptor used for proxy objects /// public sealed class ProxyUserDataDescriptor : IUserDataDescriptor { IUserDataDescriptor m_ProxyDescriptor; IProxyFactory m_ProxyFactory; internal ProxyUserDataDescriptor(IProxyFactory proxyFactory, IUserDataDescriptor proxyDescriptor, string friendlyName = null) { m_ProxyFactory = proxyFactory; Name = friendlyName ?? (proxyFactory.TargetType.Name + "::proxy"); m_ProxyDescriptor = proxyDescriptor; } /// /// Gets the descriptor which describes the proxy object /// public IUserDataDescriptor InnerDescriptor { get { return m_ProxyDescriptor; } } /// /// Gets the name of the descriptor (usually, the name of the type described). /// public string Name { get; private set; } /// /// Gets the type this descriptor refers to /// public Type Type { get { return m_ProxyFactory.TargetType; } } /// /// Proxies the specified object. /// /// The object. /// private object Proxy(object obj) { return obj != null ? m_ProxyFactory.CreateProxyObject(obj) : null; } /// /// Performs an "index" "get" operation. /// /// The script originating the request /// The object (null if a static request is done) /// The index. /// If set to true, it's indexed with a name, if false it's indexed through brackets. /// public DynValue Index(Script script, object obj, DynValue index, bool isDirectIndexing) { return m_ProxyDescriptor.Index(script, Proxy(obj), index, isDirectIndexing); } /// /// Performs an "index" "set" operation. /// /// The script originating the request /// The object (null if a static request is done) /// The index. /// The value to be set /// If set to true, it's indexed with a name, if false it's indexed through brackets. /// public bool SetIndex(Script script, object obj, DynValue index, DynValue value, bool isDirectIndexing) { return m_ProxyDescriptor.SetIndex(script, Proxy(obj), index, value, isDirectIndexing); } /// /// Converts this userdata to string /// /// The object. /// public string AsString(object obj) { return m_ProxyDescriptor.AsString(Proxy(obj)); } /// /// Gets a "meta" operation on this userdata. If a descriptor does not support this functionality, /// it should return "null" (not a nil). /// These standard metamethods can be supported (the return value should be a function accepting the /// classic parameters of the corresponding metamethod): /// __add, __sub, __mul, __div, __div, __pow, __unm, __eq, __lt, __le, __lt, __len, __concat, /// __pairs, __ipairs, __iterator, __call /// These standard metamethods are supported through other calls for efficiency: /// __index, __newindex, __tostring /// /// The script originating the request /// The object (null if a static request is done) /// The name of the metamember. /// public DynValue MetaIndex(Script script, object obj, string metaname) { return m_ProxyDescriptor.MetaIndex(script, Proxy(obj), metaname); } /// /// Determines whether the specified object is compatible with the specified type. /// Unless a very specific behaviour is needed, the correct implementation is a /// simple " return type.IsInstanceOfType(obj); " /// /// The type. /// The object. /// public bool IsTypeCompatible(Type type, object obj) { return Framework.Do.IsInstanceOfType(type, obj); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/ProxyUserDataDescriptor.cs.meta ================================================ fileFormatVersion: 2 guid: 0c3930e178d84164ba55db2a506d5d9b timeCreated: 1518177914 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/ReflectionMemberDescriptors/EventMemberDescriptor.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using System.Reflection; using MoonSharp.Interpreter.Compatibility; using MoonSharp.Interpreter.DataStructs; using MoonSharp.Interpreter.Interop.BasicDescriptors; using MoonSharp.Interpreter.Interop.StandardDescriptors; namespace MoonSharp.Interpreter.Interop { /// /// Class providing easier marshalling of CLR events. Handling is limited to a narrow range of handler signatures, which, /// however, covers in practice most of all available events. /// public class EventMemberDescriptor : IMemberDescriptor { /// /// The maximum number of arguments supported in an event handler delegate /// public const int MAX_ARGS_IN_DELEGATE = 16; object m_Lock = new object(); MultiDictionary m_Callbacks = new MultiDictionary(new ReferenceEqualityComparer()); Dictionary m_Delegates = new Dictionary(new ReferenceEqualityComparer()); /// /// Tries to create a new StandardUserDataEventDescriptor, returning null in case the method is not /// visible to script code. /// /// The EventInfo. /// The /// A new StandardUserDataEventDescriptor or null. public static EventMemberDescriptor TryCreateIfVisible(EventInfo ei, InteropAccessMode accessMode) { if (!CheckEventIsCompatible(ei, false)) return null; MethodInfo addm = Framework.Do.GetAddMethod(ei); MethodInfo remm = Framework.Do.GetRemoveMethod(ei); if (ei.GetVisibilityFromAttributes() ?? ((remm != null && remm.IsPublic) && (addm != null && addm.IsPublic))) return new EventMemberDescriptor(ei, accessMode); return null; } /// /// Checks if the event is compatible with a standard descriptor /// /// The EventInfo. /// if set to true an exception with the proper error message is thrown if not compatible. /// /// /// Thrown if throwException is true and one of this applies: /// The event is declared in a value type /// or /// The event does not have both add and remove methods /// or /// The event handler type doesn't implement a public Invoke method /// or /// The event handler has a return type which is not System.Void /// or /// The event handler has more than MAX_ARGS_IN_DELEGATE parameters /// or /// The event handler has a value type parameter or a by ref parameter /// or /// The event handler signature is not a valid method according to /// public static bool CheckEventIsCompatible(EventInfo ei, bool throwException) { if (Framework.Do.IsValueType(ei.DeclaringType)) { if (throwException) throw new ArgumentException("Events are not supported on value types"); return false; } if ((Framework.Do.GetAddMethod(ei) == null) || (Framework.Do.GetRemoveMethod(ei) == null)) { if (throwException) throw new ArgumentException("Event must have add and remove methods"); return false; } MethodInfo invoke = Framework.Do.GetMethod(ei.EventHandlerType, "Invoke"); if (invoke == null) { if (throwException) throw new ArgumentException("Event handler type doesn't seem to be a delegate"); return false; } if (!MethodMemberDescriptor.CheckMethodIsCompatible(invoke, throwException)) return false; if (invoke.ReturnType != typeof(void)) { if (throwException) throw new ArgumentException("Event handler cannot have a return type"); return false; } ParameterInfo[] pars = invoke.GetParameters(); if (pars.Length > MAX_ARGS_IN_DELEGATE) { if (throwException) throw new ArgumentException(string.Format("Event handler cannot have more than {0} parameters", MAX_ARGS_IN_DELEGATE)); return false; } foreach (ParameterInfo pi in pars) { if (Framework.Do.IsValueType(pi.ParameterType)) { if (throwException) throw new ArgumentException("Event handler cannot have value type parameters"); return false; } else if (pi.ParameterType.IsByRef) { if (throwException) throw new ArgumentException("Event handler cannot have by-ref type parameters"); return false; } } return true; } /// /// Initializes a new instance of the class. /// /// The ei. /// The access mode. public EventMemberDescriptor(EventInfo ei, InteropAccessMode accessMode = InteropAccessMode.Default) { CheckEventIsCompatible(ei, true); EventInfo = ei; m_Add = Framework.Do.GetAddMethod(ei); m_Remove = Framework.Do.GetRemoveMethod(ei); IsStatic = m_Add.IsStatic; } /// /// Gets the EventInfo object of the event described by this descriptor /// public EventInfo EventInfo { get; private set; } /// /// Gets a value indicating whether the event described by this descriptor is static. /// public bool IsStatic { get; private set; } private MethodInfo m_Add, m_Remove; /// /// Gets a dynvalue which is a facade supporting add/remove methods which is callable from scripts /// /// The script. /// The object for which the facade should be written. /// public DynValue GetValue(Script script, object obj) { this.CheckAccess(MemberDescriptorAccess.CanRead, obj); if (IsStatic) obj = this; return UserData.Create(new EventFacade(this, obj)); } internal DynValue AddCallback(object o, ScriptExecutionContext context, CallbackArguments args) { lock (m_Lock) { Closure closure = args.AsType(0, string.Format("userdata<{0}>.{1}.add", EventInfo.DeclaringType, EventInfo.Name), DataType.Function, false).Function; if (m_Callbacks.Add(o, closure)) RegisterCallback(o); return DynValue.Void; } } internal DynValue RemoveCallback(object o, ScriptExecutionContext context, CallbackArguments args) { lock (m_Lock) { Closure closure = args.AsType(0, string.Format("userdata<{0}>.{1}.remove", EventInfo.DeclaringType, EventInfo.Name), DataType.Function, false).Function; if (m_Callbacks.RemoveValue(o, closure)) UnregisterCallback(o); return DynValue.Void; } } private void RegisterCallback(object o) { m_Delegates.GetOrCreate(o, () => { Delegate d = CreateDelegate(o); #if NETFX_CORE Delegate handler = d.GetMethodInfo().CreateDelegate(EventInfo.EventHandlerType, d.Target); #else Delegate handler = Delegate.CreateDelegate(EventInfo.EventHandlerType, d.Target, d.Method); #endif m_Add.Invoke(o, new object[] { handler }); return handler; }); } private void UnregisterCallback(object o) { Delegate handler = m_Delegates.GetOrDefault(o); if (handler == null) throw new InternalErrorException("can't unregister null delegate"); m_Delegates.Remove(o); m_Remove.Invoke(o, new object[] { handler }); } private Delegate CreateDelegate(object sender) { switch (Framework.Do.GetMethod(EventInfo.EventHandlerType, "Invoke").GetParameters().Length) { case 0: return (EventWrapper00)(() => DispatchEvent(sender)); case 1: return (EventWrapper01)((o1) => DispatchEvent(sender, o1)); case 2: return (EventWrapper02)((o1, o2) => DispatchEvent(sender, o1, o2)); case 3: return (EventWrapper03)((o1, o2, o3) => DispatchEvent(sender, o1, o2, o3)); case 4: return (EventWrapper04)((o1, o2, o3, o4) => DispatchEvent(sender, o1, o2, o3, o4)); case 5: return (EventWrapper05)((o1, o2, o3, o4, o5) => DispatchEvent(sender, o1, o2, o3, o4, o5)); case 6: return (EventWrapper06)((o1, o2, o3, o4, o5, o6) => DispatchEvent(sender, o1, o2, o3, o4, o5, o6)); case 7: return (EventWrapper07)((o1, o2, o3, o4, o5, o6, o7) => DispatchEvent(sender, o1, o2, o3, o4, o5, o6, o7)); case 8: return (EventWrapper08)((o1, o2, o3, o4, o5, o6, o7, o8) => DispatchEvent(sender, o1, o2, o3, o4, o5, o6, o7, o8)); case 9: return (EventWrapper09)((o1, o2, o3, o4, o5, o6, o7, o8, o9) => DispatchEvent(sender, o1, o2, o3, o4, o5, o6, o7, o8, o9)); case 10: return (EventWrapper10)((o1, o2, o3, o4, o5, o6, o7, o8, o9, o10) => DispatchEvent(sender, o1, o2, o3, o4, o5, o6, o7, o8, o9, o10)); case 11: return (EventWrapper11)((o1, o2, o3, o4, o5, o6, o7, o8, o9, o10, o11) => DispatchEvent(sender, o1, o2, o3, o4, o5, o6, o7, o8, o9, o10, o11)); case 12: return (EventWrapper12)((o1, o2, o3, o4, o5, o6, o7, o8, o9, o10, o11, o12) => DispatchEvent(sender, o1, o2, o3, o4, o5, o6, o7, o8, o9, o10, o11, o12)); case 13: return (EventWrapper13)((o1, o2, o3, o4, o5, o6, o7, o8, o9, o10, o11, o12, o13) => DispatchEvent(sender, o1, o2, o3, o4, o5, o6, o7, o8, o9, o10, o11, o12, o13)); case 14: return (EventWrapper14)((o1, o2, o3, o4, o5, o6, o7, o8, o9, o10, o11, o12, o13, o14) => DispatchEvent(sender, o1, o2, o3, o4, o5, o6, o7, o8, o9, o10, o11, o12, o13, o14)); case 15: return (EventWrapper15)((o1, o2, o3, o4, o5, o6, o7, o8, o9, o10, o11, o12, o13, o14, o15) => DispatchEvent(sender, o1, o2, o3, o4, o5, o6, o7, o8, o9, o10, o11, o12, o13, o14, o15)); case 16: return (EventWrapper16)((o1, o2, o3, o4, o5, o6, o7, o8, o9, o10, o11, o12, o13, o14, o15, o16) => DispatchEvent(sender, o1, o2, o3, o4, o5, o6, o7, o8, o9, o10, o11, o12, o13, o14, o15, o16)); default: throw new InternalErrorException("too many args in delegate type"); } } private void DispatchEvent(object sender, object o01 = null, object o02 = null, object o03 = null, object o04 = null, object o05 = null, object o06 = null, object o07 = null, object o08 = null, object o09 = null, object o10 = null, object o11 = null, object o12 = null, object o13 = null, object o14 = null, object o15 = null, object o16 = null) { Closure[] closures = null; lock (m_Lock) { closures = m_Callbacks.Find(sender).ToArray(); } foreach (Closure c in closures) { c.Call(o01, o02, o03, o04, o05, o06, o07, o08, o09, o10, o11, o12, o13, o14, o15, o16); } } private delegate void EventWrapper00(); private delegate void EventWrapper01(object o1); private delegate void EventWrapper02(object o1, object o2); private delegate void EventWrapper03(object o1, object o2, object o3); private delegate void EventWrapper04(object o1, object o2, object o3, object o4); private delegate void EventWrapper05(object o1, object o2, object o3, object o4, object o5); private delegate void EventWrapper06(object o1, object o2, object o3, object o4, object o5, object o6); private delegate void EventWrapper07(object o1, object o2, object o3, object o4, object o5, object o6, object o7); private delegate void EventWrapper08(object o1, object o2, object o3, object o4, object o5, object o6, object o7, object o8); private delegate void EventWrapper09(object o1, object o2, object o3, object o4, object o5, object o6, object o7, object o8, object o9); private delegate void EventWrapper10(object o1, object o2, object o3, object o4, object o5, object o6, object o7, object o8, object o9, object o10); private delegate void EventWrapper11(object o1, object o2, object o3, object o4, object o5, object o6, object o7, object o8, object o9, object o10, object o11); private delegate void EventWrapper12(object o1, object o2, object o3, object o4, object o5, object o6, object o7, object o8, object o9, object o10, object o11, object o12); private delegate void EventWrapper13(object o1, object o2, object o3, object o4, object o5, object o6, object o7, object o8, object o9, object o10, object o11, object o12, object o13); private delegate void EventWrapper14(object o1, object o2, object o3, object o4, object o5, object o6, object o7, object o8, object o9, object o10, object o11, object o12, object o13, object o14); private delegate void EventWrapper15(object o1, object o2, object o3, object o4, object o5, object o6, object o7, object o8, object o9, object o10, object o11, object o12, object o13, object o14, object o15); private delegate void EventWrapper16(object o1, object o2, object o3, object o4, object o5, object o6, object o7, object o8, object o9, object o10, object o11, object o12, object o13, object o14, object o15, object o16); /// /// Gets the name of the member /// public string Name { get { return this.EventInfo.Name; } } /// /// Gets the types of access supported by this member /// public MemberDescriptorAccess MemberAccess { get { return MemberDescriptorAccess.CanRead; } } /// /// Sets the value. /// /// The script. /// The object. /// The v. public void SetValue(Script script, object obj, DynValue v) { this.CheckAccess(MemberDescriptorAccess.CanWrite, obj); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/ReflectionMemberDescriptors/EventMemberDescriptor.cs.meta ================================================ fileFormatVersion: 2 guid: 93934b8ed8f6c94498e180a7d915bad9 timeCreated: 1518177922 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/ReflectionMemberDescriptors/FieldMemberDescriptor.cs ================================================ using System; using System.Linq.Expressions; using System.Reflection; using System.Threading; using MoonSharp.Interpreter.Compatibility; using MoonSharp.Interpreter.Diagnostics; using MoonSharp.Interpreter.Interop.BasicDescriptors; using MoonSharp.Interpreter.Interop.Converters; namespace MoonSharp.Interpreter.Interop { /// /// Class providing easier marshalling of CLR fields /// public class FieldMemberDescriptor : IMemberDescriptor, IOptimizableDescriptor, IWireableDescriptor { /// /// Gets the FieldInfo got by reflection /// public FieldInfo FieldInfo { get; private set; } /// /// Gets the /// public InteropAccessMode AccessMode { get; private set; } /// /// Gets a value indicating whether the described property is static. /// public bool IsStatic { get; private set; } /// /// Gets the name of the property /// public string Name { get; private set; } /// /// Gets a value indicating whether this instance is a constant /// public bool IsConst { get; private set; } /// /// Gets a value indicating whether this instance is readonly /// public bool IsReadonly { get; private set; } object m_ConstValue = null; Func m_OptimizedGetter = null; /// /// Tries to create a new StandardUserDataFieldDescriptor, returning null in case the field is not /// visible to script code. /// /// The FieldInfo. /// The /// A new StandardUserDataFieldDescriptor or null. public static FieldMemberDescriptor TryCreateIfVisible(FieldInfo fi, InteropAccessMode accessMode) { if (fi.GetVisibilityFromAttributes() ?? fi.IsPublic) return new FieldMemberDescriptor(fi, accessMode); return null; } /// /// Initializes a new instance of the class. /// /// The FieldInfo. /// The public FieldMemberDescriptor(FieldInfo fi, InteropAccessMode accessMode) { if (Script.GlobalOptions.Platform.IsRunningOnAOT()) accessMode = InteropAccessMode.Reflection; this.FieldInfo = fi; this.AccessMode = accessMode; this.Name = fi.Name; this.IsStatic = this.FieldInfo.IsStatic; if (this.FieldInfo.IsLiteral) { IsConst = true; m_ConstValue = FieldInfo.GetValue(null); } else { IsReadonly = this.FieldInfo.IsInitOnly; } if (AccessMode == InteropAccessMode.Preoptimized) { this.OptimizeGetter(); } } /// /// Gets the value of the property /// /// The script. /// The object. /// public DynValue GetValue(Script script, object obj) { this.CheckAccess(MemberDescriptorAccess.CanRead, obj); // optimization+workaround of Unity bug.. if (IsConst) return ClrToScriptConversions.ObjectToDynValue(script, m_ConstValue); if (AccessMode == InteropAccessMode.LazyOptimized && m_OptimizedGetter == null) OptimizeGetter(); object result = null; if (m_OptimizedGetter != null) result = m_OptimizedGetter(obj); else result = FieldInfo.GetValue(obj); return ClrToScriptConversions.ObjectToDynValue(script, result); } internal void OptimizeGetter() { if (this.IsConst) return; using (PerformanceStatistics.StartGlobalStopwatch(PerformanceCounter.AdaptersCompilation)) { if (IsStatic) { var paramExp = Expression.Parameter(typeof(object), "dummy"); var propAccess = Expression.Field(null, FieldInfo); var castPropAccess = Expression.Convert(propAccess, typeof(object)); var lambda = Expression.Lambda>(castPropAccess, paramExp); Interlocked.Exchange(ref m_OptimizedGetter, lambda.Compile()); } else { var paramExp = Expression.Parameter(typeof(object), "obj"); var castParamExp = Expression.Convert(paramExp, this.FieldInfo.DeclaringType); var propAccess = Expression.Field(castParamExp, FieldInfo); var castPropAccess = Expression.Convert(propAccess, typeof(object)); var lambda = Expression.Lambda>(castPropAccess, paramExp); Interlocked.Exchange(ref m_OptimizedGetter, lambda.Compile()); } } } /// /// Sets the value of the property /// /// The script. /// The object. /// The value to set. public void SetValue(Script script, object obj, DynValue v) { this.CheckAccess(MemberDescriptorAccess.CanWrite, obj); if (IsReadonly || IsConst) throw new ScriptRuntimeException("userdata field '{0}.{1}' cannot be written to.", this.FieldInfo.DeclaringType.Name, this.Name); object value = ScriptToClrConversions.DynValueToObjectOfType(v, this.FieldInfo.FieldType, null, false); try { if (value is double) value = NumericConversions.DoubleToType(FieldInfo.FieldType, (double)value); FieldInfo.SetValue(IsStatic ? null : obj, value); } catch (ArgumentException) { // non-optimized setters fall here throw ScriptRuntimeException.UserDataArgumentTypeMismatch(v.Type, FieldInfo.FieldType); } catch (InvalidCastException) { // optimized setters fall here throw ScriptRuntimeException.UserDataArgumentTypeMismatch(v.Type, FieldInfo.FieldType); } #if !(PCL || ENABLE_DOTNET || NETFX_CORE) catch (FieldAccessException ex) { throw new ScriptRuntimeException(ex); } #endif } /// /// Gets the types of access supported by this member /// public MemberDescriptorAccess MemberAccess { get { if (IsReadonly || IsConst) return MemberDescriptorAccess.CanRead; else return MemberDescriptorAccess.CanRead | MemberDescriptorAccess.CanWrite; } } void IOptimizableDescriptor.Optimize() { if (m_OptimizedGetter == null) this.OptimizeGetter(); } /// /// Prepares the descriptor for hard-wiring. /// The descriptor fills the passed table with all the needed data for hardwire generators to generate the appropriate code. /// /// The table to be filled public void PrepareForWiring(Table t) { t.Set("class", DynValue.NewString(this.GetType().FullName)); t.Set("visibility", DynValue.NewString(this.FieldInfo.GetClrVisibility())); t.Set("name", DynValue.NewString(this.Name)); t.Set("static", DynValue.NewBoolean(this.IsStatic)); t.Set("const", DynValue.NewBoolean(this.IsConst)); t.Set("readonly", DynValue.NewBoolean(this.IsReadonly)); t.Set("decltype", DynValue.NewString(this.FieldInfo.DeclaringType.FullName)); t.Set("declvtype", DynValue.NewBoolean(Framework.Do.IsValueType(this.FieldInfo.DeclaringType))); t.Set("type", DynValue.NewString(this.FieldInfo.FieldType.FullName)); t.Set("read", DynValue.NewBoolean(true)); t.Set("write", DynValue.NewBoolean(!(this.IsConst || this.IsReadonly))); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/ReflectionMemberDescriptors/FieldMemberDescriptor.cs.meta ================================================ fileFormatVersion: 2 guid: 7153261a57dd5b7488daabf30bb534b2 timeCreated: 1518177920 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/ReflectionMemberDescriptors/MethodMemberDescriptor.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using System.Linq.Expressions; using System.Reflection; using System.Runtime.CompilerServices; using System.Threading; using MoonSharp.Interpreter.Compatibility; using MoonSharp.Interpreter.Diagnostics; using MoonSharp.Interpreter.Interop.BasicDescriptors; namespace MoonSharp.Interpreter.Interop { /// /// Class providing easier marshalling of CLR functions /// public class MethodMemberDescriptor : FunctionMemberDescriptorBase, IOptimizableDescriptor, IWireableDescriptor { /// /// Gets the method information (can be a MethodInfo or ConstructorInfo) /// public MethodBase MethodInfo { get; private set; } /// /// Gets the access mode used for interop /// public InteropAccessMode AccessMode { get; private set; } /// /// Gets a value indicating whether the described method is a constructor /// public bool IsConstructor { get; private set; } private Func m_OptimizedFunc = null; private Action m_OptimizedAction = null; private bool m_IsAction = false; private bool m_IsArrayCtor = false; /// /// Initializes a new instance of the class. /// /// The MethodBase (MethodInfo or ConstructorInfo) got through reflection. /// The interop access mode. /// Invalid accessMode public MethodMemberDescriptor(MethodBase methodBase, InteropAccessMode accessMode = InteropAccessMode.Default) { CheckMethodIsCompatible(methodBase, true); IsConstructor = (methodBase is ConstructorInfo); this.MethodInfo = methodBase; bool isStatic = methodBase.IsStatic || IsConstructor; if (IsConstructor) m_IsAction = false; else m_IsAction = ((MethodInfo)methodBase).ReturnType == typeof(void); ParameterInfo[] reflectionParams = methodBase.GetParameters(); ParameterDescriptor[] parameters; if (this.MethodInfo.DeclaringType.IsArray) { m_IsArrayCtor = true; int rank = this.MethodInfo.DeclaringType.GetArrayRank(); parameters = new ParameterDescriptor[rank]; for (int i = 0; i < rank; i++) parameters[i] = new ParameterDescriptor("idx" + i.ToString(), typeof(int)); } else { parameters = reflectionParams.Select(pi => new ParameterDescriptor(pi)).ToArray(); } bool isExtensionMethod = (methodBase.IsStatic && parameters.Length > 0 && methodBase.GetCustomAttributes(typeof(ExtensionAttribute), false).Any()); base.Initialize(methodBase.Name, isStatic, parameters, isExtensionMethod); // adjust access mode if (Script.GlobalOptions.Platform.IsRunningOnAOT()) accessMode = InteropAccessMode.Reflection; if (accessMode == InteropAccessMode.Default) accessMode = UserData.DefaultAccessMode; if (accessMode == InteropAccessMode.HideMembers) throw new ArgumentException("Invalid accessMode"); if (parameters.Any(p => p.Type.IsByRef)) accessMode = InteropAccessMode.Reflection; this.AccessMode = accessMode; if (AccessMode == InteropAccessMode.Preoptimized) ((IOptimizableDescriptor)this).Optimize(); } /// /// Tries to create a new MethodMemberDescriptor, returning /// null in case the method is not /// visible to script code. /// /// The MethodBase. /// The /// if set to true forces visibility. /// /// A new MethodMemberDescriptor or null. /// public static MethodMemberDescriptor TryCreateIfVisible(MethodBase methodBase, InteropAccessMode accessMode, bool forceVisibility = false) { if (!CheckMethodIsCompatible(methodBase, false)) return null; if (forceVisibility || (methodBase.GetVisibilityFromAttributes() ?? methodBase.IsPublic)) return new MethodMemberDescriptor(methodBase, accessMode); return null; } /// /// Checks if the method is compatible with a standard descriptor /// /// The MethodBase. /// if set to true an exception with the proper error message is thrown if not compatible. /// /// /// Thrown if throwException is true and one of this applies: /// The method contains unresolved generic parameters, or has an unresolved generic return type /// or /// The method contains pointer parameters, or has a pointer return type /// public static bool CheckMethodIsCompatible(MethodBase methodBase, bool throwException) { if (methodBase.ContainsGenericParameters) { if (throwException) throw new ArgumentException("Method cannot contain unresolved generic parameters"); return false; } if (methodBase.GetParameters().Any(p => p.ParameterType.IsPointer)) { if (throwException) throw new ArgumentException("Method cannot contain pointer parameters"); return false; } MethodInfo mi = methodBase as MethodInfo; if (mi != null) { if (mi.ReturnType.IsPointer) { if (throwException) throw new ArgumentException("Method cannot have a pointer return type"); return false; } if (Framework.Do.IsGenericTypeDefinition(mi.ReturnType)) { if (throwException) throw new ArgumentException("Method cannot have an unresolved generic return type"); return false; } } return true; } /// /// The internal callback which actually executes the method /// /// The script. /// The object. /// The context. /// The arguments. /// public override DynValue Execute(Script script, object obj, ScriptExecutionContext context, CallbackArguments args) { this.CheckAccess(MemberDescriptorAccess.CanExecute, obj); if (AccessMode == InteropAccessMode.LazyOptimized && m_OptimizedFunc == null && m_OptimizedAction == null) ((IOptimizableDescriptor)this).Optimize(); List outParams = null; object[] pars = base.BuildArgumentList(script, obj, context, args, out outParams); object retv = null; if (m_OptimizedFunc != null) { retv = m_OptimizedFunc(obj, pars); } else if (m_OptimizedAction != null) { m_OptimizedAction(obj, pars); retv = DynValue.Void; } else if (m_IsAction) { MethodInfo.Invoke(obj, pars); retv = DynValue.Void; } else { if (IsConstructor) retv = ((ConstructorInfo)MethodInfo).Invoke(pars); else retv = MethodInfo.Invoke(obj, pars); } return BuildReturnValue(script, outParams, pars, retv); } /// /// Called by standard descriptors when background optimization or preoptimization needs to be performed. /// /// Out/Ref params cannot be precompiled. void IOptimizableDescriptor.Optimize() { ParameterDescriptor[] parameters = Parameters; if (AccessMode == InteropAccessMode.Reflection) return; MethodInfo methodInfo = this.MethodInfo as MethodInfo; if (methodInfo == null) return; using (PerformanceStatistics.StartGlobalStopwatch(PerformanceCounter.AdaptersCompilation)) { var ep = Expression.Parameter(typeof(object[]), "pars"); var objinst = Expression.Parameter(typeof(object), "instance"); var inst = Expression.Convert(objinst, MethodInfo.DeclaringType); Expression[] args = new Expression[parameters.Length]; for (int i = 0; i < parameters.Length; i++) { if (parameters[i].OriginalType.IsByRef) { throw new InternalErrorException("Out/Ref params cannot be precompiled."); } else { var x = Expression.ArrayIndex(ep, Expression.Constant(i)); args[i] = Expression.Convert(x, parameters[i].OriginalType); } } Expression fn; if (IsStatic) { fn = Expression.Call(methodInfo, args); } else { fn = Expression.Call(inst, methodInfo, args); } if (this.m_IsAction) { var lambda = Expression.Lambda>(fn, objinst, ep); Interlocked.Exchange(ref m_OptimizedAction, lambda.Compile()); } else { var fnc = Expression.Convert(fn, typeof(object)); var lambda = Expression.Lambda>(fnc, objinst, ep); Interlocked.Exchange(ref m_OptimizedFunc, lambda.Compile()); } } } /// /// Prepares the descriptor for hard-wiring. /// The descriptor fills the passed table with all the needed data for hardwire generators to generate the appropriate code. /// /// The table to be filled public void PrepareForWiring(Table t) { t.Set("class", DynValue.NewString(this.GetType().FullName)); t.Set("name", DynValue.NewString(this.Name)); t.Set("ctor", DynValue.NewBoolean(this.IsConstructor)); t.Set("special", DynValue.NewBoolean(this.MethodInfo.IsSpecialName)); t.Set("visibility", DynValue.NewString(this.MethodInfo.GetClrVisibility())); if (this.IsConstructor) t.Set("ret", DynValue.NewString(((ConstructorInfo)this.MethodInfo).DeclaringType.FullName)); else t.Set("ret", DynValue.NewString(((MethodInfo)this.MethodInfo).ReturnType.FullName)); if (m_IsArrayCtor) { t.Set("arraytype", DynValue.NewString(this.MethodInfo.DeclaringType.GetElementType().FullName)); } t.Set("decltype", DynValue.NewString(this.MethodInfo.DeclaringType.FullName)); t.Set("static", DynValue.NewBoolean(this.IsStatic)); t.Set("extension", DynValue.NewBoolean(this.ExtensionMethodType != null)); var pars = DynValue.NewPrimeTable(); t.Set("params", pars); int i = 0; foreach (var p in Parameters) { DynValue pt = DynValue.NewPrimeTable(); pars.Table.Set(++i, pt); p.PrepareForWiring(pt.Table); } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/ReflectionMemberDescriptors/MethodMemberDescriptor.cs.meta ================================================ fileFormatVersion: 2 guid: b9297ea2eab4f114e971b7c76cabb246 timeCreated: 1518177923 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/ReflectionMemberDescriptors/OverloadedMethodMemberDescriptor.cs ================================================ //#define DEBUG_OVERLOAD_RESOLVER using System; using System.Collections.Generic; using System.Linq; using MoonSharp.Interpreter.Compatibility; using MoonSharp.Interpreter.Interop.BasicDescriptors; using MoonSharp.Interpreter.Interop.Converters; namespace MoonSharp.Interpreter.Interop { /// /// Class providing easier marshalling of overloaded CLR functions /// public class OverloadedMethodMemberDescriptor : IOptimizableDescriptor, IMemberDescriptor, IWireableDescriptor { /// /// Comparer class for IOverloadableMemberDescriptor /// private class OverloadableMemberDescriptorComparer : IComparer { public int Compare(IOverloadableMemberDescriptor x, IOverloadableMemberDescriptor y) { return x.SortDiscriminant.CompareTo(y.SortDiscriminant); } } const int CACHE_SIZE = 5; private class OverloadCacheItem { public bool HasObject; public IOverloadableMemberDescriptor Method; public List ArgsDataType; public List ArgsUserDataType; public int HitIndexAtLastHit; } private List m_Overloads = new List(); private List m_ExtOverloads = new List(); private bool m_Unsorted = true; private OverloadCacheItem[] m_Cache = new OverloadCacheItem[CACHE_SIZE]; private int m_CacheHits = 0; private int m_ExtensionMethodVersion = 0; /// /// Gets or sets a value indicating whether this instance ignores extension methods. /// public bool IgnoreExtensionMethods { get; set; } /// /// Initializes a new instance of the class. /// public OverloadedMethodMemberDescriptor(string name, Type declaringType) { Name = name; DeclaringType = declaringType; } /// /// Initializes a new instance of the class. /// /// The name. /// The declaring type. /// The descriptor of the first overloaded method. public OverloadedMethodMemberDescriptor(string name, Type declaringType, IOverloadableMemberDescriptor descriptor) : this(name, declaringType) { m_Overloads.Add(descriptor); } /// /// Initializes a new instance of the class. /// /// The name. /// The declaring type. /// The descriptors of the overloaded methods. public OverloadedMethodMemberDescriptor(string name, Type declaringType, IEnumerable descriptors) : this(name, declaringType) { m_Overloads.AddRange(descriptors); } /// /// Sets the extension methods snapshot. /// /// The version. /// The ext methods. internal void SetExtensionMethodsSnapshot(int version, List extMethods) { m_ExtOverloads = extMethods; m_ExtensionMethodVersion = version; } /// /// Gets the name of the first described overload /// public string Name { get; private set; } /// /// Gets the name of the first described overload /// public Type DeclaringType { get; private set; } /// /// Adds an overload. /// /// The overload. public void AddOverload(IOverloadableMemberDescriptor overload) { m_Overloads.Add(overload); m_Unsorted = true; } /// /// Gets the number of overloaded methods contained in this collection /// /// /// The overload count. /// public int OverloadCount { get { return m_Overloads.Count; } } /// /// Performs the overloaded call. /// /// The script. /// The object. /// The context. /// The arguments. /// /// function call doesn't match any overload private DynValue PerformOverloadedCall(Script script, object obj, ScriptExecutionContext context, CallbackArguments args) { bool extMethodCacheNotExpired = IgnoreExtensionMethods || (obj == null) || m_ExtensionMethodVersion == UserData.GetExtensionMethodsChangeVersion(); // common case, let's optimize for it if (m_Overloads.Count == 1 && m_ExtOverloads.Count == 0 && extMethodCacheNotExpired) return m_Overloads[0].Execute(script, obj, context, args); if (m_Unsorted) { m_Overloads.Sort(new OverloadableMemberDescriptorComparer()); m_Unsorted = false; } if (extMethodCacheNotExpired) { for (int i = 0; i < m_Cache.Length; i++) { if (m_Cache[i] != null && CheckMatch(obj != null, args, m_Cache[i])) { #if DEBUG_OVERLOAD_RESOLVER System.Diagnostics.Debug.WriteLine(string.Format("[OVERLOAD] : CACHED! slot {0}, hits: {1}", i, m_CacheHits)); #endif return m_Cache[i].Method.Execute(script, obj, context, args); } } } // resolve on overloads first int maxScore = 0; IOverloadableMemberDescriptor bestOverload = null; for (int i = 0; i < m_Overloads.Count; i++) { if (obj != null || m_Overloads[i].IsStatic) { int score = CalcScoreForOverload(context, args, m_Overloads[i], false); if (score > maxScore) { maxScore = score; bestOverload = m_Overloads[i]; } } } if (!IgnoreExtensionMethods && (obj != null)) { if (!extMethodCacheNotExpired) { m_ExtensionMethodVersion = UserData.GetExtensionMethodsChangeVersion(); m_ExtOverloads = UserData.GetExtensionMethodsByNameAndType(this.Name, this.DeclaringType); } for (int i = 0; i < m_ExtOverloads.Count; i++) { int score = CalcScoreForOverload(context, args, m_ExtOverloads[i], true); if (score > maxScore) { maxScore = score; bestOverload = m_ExtOverloads[i]; } } } if (bestOverload != null) { Cache(obj != null, args, bestOverload); return bestOverload.Execute(script, obj, context, args); } throw new ScriptRuntimeException("function call doesn't match any overload"); } private void Cache(bool hasObject, CallbackArguments args, IOverloadableMemberDescriptor bestOverload) { int lowestHits = int.MaxValue; OverloadCacheItem found = null; for (int i = 0; i < m_Cache.Length; i++) { if (m_Cache[i] == null) { found = new OverloadCacheItem() { ArgsDataType = new List(), ArgsUserDataType = new List() }; m_Cache[i] = found; break; } else if (m_Cache[i].HitIndexAtLastHit < lowestHits) { lowestHits = m_Cache[i].HitIndexAtLastHit; found = m_Cache[i]; } } if (found == null) { // overflow.. m_Cache = new OverloadCacheItem[CACHE_SIZE]; found = new OverloadCacheItem() { ArgsDataType = new List(), ArgsUserDataType = new List() }; m_Cache[0] = found; m_CacheHits = 0; } found.Method = bestOverload; found.HitIndexAtLastHit = ++m_CacheHits; found.ArgsDataType.Clear(); found.HasObject = hasObject; for (int i = 0; i < args.Count; i++) { found.ArgsDataType.Add(args[i].Type); if (args[i].Type == DataType.UserData) { found.ArgsUserDataType.Add(args[i].UserData.Descriptor.Type); } else { found.ArgsUserDataType.Add(null); } } } private bool CheckMatch(bool hasObject, CallbackArguments args, OverloadCacheItem overloadCacheItem) { if (overloadCacheItem.HasObject && !hasObject) return false; if (args.Count != overloadCacheItem.ArgsDataType.Count) return false; for (int i = 0; i < args.Count; i++) { if (args[i].Type != overloadCacheItem.ArgsDataType[i]) return false; if (args[i].Type == DataType.UserData) { if (args[i].UserData.Descriptor.Type != overloadCacheItem.ArgsUserDataType[i]) return false; } } overloadCacheItem.HitIndexAtLastHit = ++m_CacheHits; return true; } /// /// Calculates the score for the overload. /// /// The context. /// The arguments. /// The method. /// if set to true, is an extension method. /// private int CalcScoreForOverload(ScriptExecutionContext context, CallbackArguments args, IOverloadableMemberDescriptor method, bool isExtMethod) { int totalScore = ScriptToClrConversions.WEIGHT_EXACT_MATCH; int argsBase = args.IsMethodCall ? 1 : 0; int argsCnt = argsBase; bool varArgsUsed = false; for (int i = 0; i < method.Parameters.Length; i++) { if (isExtMethod && i == 0) continue; if (method.Parameters[i].IsOut) continue; Type parameterType = method.Parameters[i].Type; if ((parameterType == typeof(Script)) || (parameterType == typeof(ScriptExecutionContext)) || (parameterType == typeof(CallbackArguments))) continue; if (i == method.Parameters.Length - 1 && method.VarArgsArrayType != null) { int varargCnt = 0; DynValue firstArg = null; int scoreBeforeVargars = totalScore; // update score for varargs while (true) { var arg = args.RawGet(argsCnt, false); if (arg == null) break; if (firstArg == null) firstArg = arg; argsCnt += 1; varargCnt += 1; int score = CalcScoreForSingleArgument(method.Parameters[i], method.VarArgsElementType, arg, isOptional: false); totalScore = Math.Min(totalScore, score); } // check if exact-match if (varargCnt == 1) { if (firstArg.Type == DataType.UserData && firstArg.UserData.Object != null) { if (Framework.Do.IsAssignableFrom(method.VarArgsArrayType, firstArg.UserData.Object.GetType())) { totalScore = scoreBeforeVargars; continue; } } } // apply varargs penalty to score if (varargCnt == 0) totalScore = Math.Min(totalScore, ScriptToClrConversions.WEIGHT_VARARGS_EMPTY); varArgsUsed = true; } else { var arg = args.RawGet(argsCnt, false) ?? DynValue.Void; int score = CalcScoreForSingleArgument(method.Parameters[i], parameterType, arg, method.Parameters[i].HasDefaultValue); totalScore = Math.Min(totalScore, score); argsCnt += 1; } } if (totalScore > 0) { if ((args.Count - argsBase) <= method.Parameters.Length) { totalScore += ScriptToClrConversions.WEIGHT_NO_EXTRA_PARAMS_BONUS; totalScore *= 1000; } else if (varArgsUsed) { totalScore -= ScriptToClrConversions.WEIGHT_VARARGS_MALUS; totalScore *= 1000; } else { totalScore *= 1000; totalScore -= ScriptToClrConversions.WEIGHT_EXTRA_PARAMS_MALUS * ((args.Count - argsBase) - method.Parameters.Length); totalScore = Math.Max(1, totalScore); } } #if DEBUG_OVERLOAD_RESOLVER System.Diagnostics.Debug.WriteLine(string.Format("[OVERLOAD] : Score {0} for method {1}", totalScore, method.SortDiscriminant)); #endif return totalScore; } private static int CalcScoreForSingleArgument(ParameterDescriptor desc, Type parameterType, DynValue arg, bool isOptional) { int score = ScriptToClrConversions.DynValueToObjectOfTypeWeight(arg, parameterType, isOptional); if (parameterType.IsByRef || desc.IsOut || desc.IsRef) score = Math.Max(0, score + ScriptToClrConversions.WEIGHT_BYREF_BONUSMALUS); return score; } /// /// Gets a callback function as a delegate /// /// The script for which the callback must be generated. /// The object (null for static). /// public Func GetCallback(Script script, object obj) { return (context, args) => PerformOverloadedCall(script, obj, context, args); } void IOptimizableDescriptor.Optimize() { foreach (var d in m_Overloads.OfType()) d.Optimize(); } /// /// Gets the callback function. /// /// The script for which the callback must be generated. /// The object (null for static). /// public CallbackFunction GetCallbackFunction(Script script, object obj = null) { return new CallbackFunction(GetCallback(script, obj), this.Name); } /// /// Gets a value indicating whether there is at least one static method in the resolution list /// /// public bool IsStatic { get { return m_Overloads.Any(o => o.IsStatic); } } /// /// Gets the types of access supported by this member /// public MemberDescriptorAccess MemberAccess { get { return MemberDescriptorAccess.CanExecute | MemberDescriptorAccess.CanRead; } } /// /// Gets the value of this member as a to be exposed to scripts. /// /// The script. /// The object owning this member, or null if static. /// /// The value of this member as a . /// public DynValue GetValue(Script script, object obj) { return DynValue.NewCallback(this.GetCallbackFunction(script, obj)); } /// /// Sets the value of this member from a . /// /// The script. /// The object owning this member, or null if static. /// The value to be set. /// public void SetValue(Script script, object obj, DynValue value) { this.CheckAccess(MemberDescriptorAccess.CanWrite, obj); } /// /// Prepares the descriptor for hard-wiring. /// The descriptor fills the passed table with all the needed data for hardwire generators to generate the appropriate code. /// /// The table to be filled public void PrepareForWiring(Table t) { t.Set("class", DynValue.NewString(this.GetType().FullName)); t.Set("name", DynValue.NewString(this.Name)); t.Set("decltype", DynValue.NewString(this.DeclaringType.FullName)); DynValue mst = DynValue.NewPrimeTable(); t.Set("overloads", mst); int i = 0; foreach (var m in this.m_Overloads) { IWireableDescriptor sd = m as IWireableDescriptor; if (sd != null) { DynValue mt = DynValue.NewPrimeTable(); mst.Table.Set(++i, mt); sd.PrepareForWiring(mt.Table); } else { mst.Table.Set(++i, DynValue.NewString(string.Format("unsupported - {0} is not serializable", m.GetType().FullName))); } } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/ReflectionMemberDescriptors/OverloadedMethodMemberDescriptor.cs.meta ================================================ fileFormatVersion: 2 guid: 535aad2b523a4984ca10bf8f0154c756 timeCreated: 1518177918 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/ReflectionMemberDescriptors/PropertyMemberDescriptor.cs ================================================ using System; using System.Linq.Expressions; using System.Reflection; using System.Threading; using MoonSharp.Interpreter.Compatibility; using MoonSharp.Interpreter.Diagnostics; using MoonSharp.Interpreter.Interop.BasicDescriptors; using MoonSharp.Interpreter.Interop.Converters; namespace MoonSharp.Interpreter.Interop { /// /// Class providing easier marshalling of CLR properties /// public class PropertyMemberDescriptor : IMemberDescriptor, IOptimizableDescriptor, IWireableDescriptor { /// /// Gets the PropertyInfo got by reflection /// public PropertyInfo PropertyInfo { get; private set; } /// /// Gets the /// public InteropAccessMode AccessMode { get; private set; } /// /// Gets a value indicating whether the described property is static. /// public bool IsStatic { get; private set; } /// /// Gets the name of the property /// public string Name { get; private set; } /// /// Gets a value indicating whether this instance can be read from /// /// /// true if this instance can be read from; otherwise, false. /// public bool CanRead { get { return m_Getter != null; } } /// /// Gets a value indicating whether this instance can be written to. /// /// /// true if this instance can be written to; otherwise, false. /// public bool CanWrite { get { return m_Setter != null; } } private MethodInfo m_Getter, m_Setter; Func m_OptimizedGetter = null; Action m_OptimizedSetter = null; /// /// Tries to create a new StandardUserDataPropertyDescriptor, returning null in case the property is not /// visible to script code. /// /// The PropertyInfo. /// The /// A new StandardUserDataPropertyDescriptor or null. public static PropertyMemberDescriptor TryCreateIfVisible(PropertyInfo pi, InteropAccessMode accessMode) { MethodInfo getter = Framework.Do.GetGetMethod(pi); MethodInfo setter = Framework.Do.GetSetMethod(pi); bool? pvisible = pi.GetVisibilityFromAttributes(); bool? gvisible = getter.GetVisibilityFromAttributes(); bool? svisible = setter.GetVisibilityFromAttributes(); if (pvisible.HasValue) { return PropertyMemberDescriptor.TryCreate(pi, accessMode, (gvisible ?? pvisible.Value) ? getter : null, (svisible ?? pvisible.Value) ? setter : null); } else { return PropertyMemberDescriptor.TryCreate(pi, accessMode, (gvisible ?? getter.IsPublic) ? getter : null, (svisible ?? setter.IsPublic) ? setter : null); } } private static PropertyMemberDescriptor TryCreate(PropertyInfo pi, InteropAccessMode accessMode, MethodInfo getter, MethodInfo setter) { if (getter == null && setter == null) return null; else return new PropertyMemberDescriptor(pi, accessMode, getter, setter); } /// /// Initializes a new instance of the class. /// NOTE: This constructor gives get/set visibility based exclusively on the CLR visibility of the /// getter and setter methods. /// /// The pi. /// The access mode. public PropertyMemberDescriptor(PropertyInfo pi, InteropAccessMode accessMode) : this(pi, accessMode, Framework.Do.GetGetMethod(pi), Framework.Do.GetSetMethod(pi)) { } /// /// Initializes a new instance of the class. /// /// The PropertyInfo. /// The /// The getter method. Use null to make the property writeonly. /// The setter method. Use null to make the property readonly. public PropertyMemberDescriptor(PropertyInfo pi, InteropAccessMode accessMode, MethodInfo getter, MethodInfo setter) { if (getter == null && setter == null) throw new ArgumentNullException("getter and setter cannot both be null"); if (Script.GlobalOptions.Platform.IsRunningOnAOT()) accessMode = InteropAccessMode.Reflection; this.PropertyInfo = pi; this.AccessMode = accessMode; this.Name = pi.Name; m_Getter = getter; m_Setter = setter; this.IsStatic = (m_Getter ?? m_Setter).IsStatic; if (AccessMode == InteropAccessMode.Preoptimized) { this.OptimizeGetter(); this.OptimizeSetter(); } } /// /// Gets the value of the property /// /// The script. /// The object. /// public DynValue GetValue(Script script, object obj) { this.CheckAccess(MemberDescriptorAccess.CanRead, obj); if (m_Getter == null) throw new ScriptRuntimeException("userdata property '{0}.{1}' cannot be read from.", this.PropertyInfo.DeclaringType.Name, this.Name); if (AccessMode == InteropAccessMode.LazyOptimized && m_OptimizedGetter == null) OptimizeGetter(); object result = null; if (m_OptimizedGetter != null) result = m_OptimizedGetter(obj); else result = m_Getter.Invoke(IsStatic ? null : obj, null); // convoluted workaround for --full-aot Mono execution return ClrToScriptConversions.ObjectToDynValue(script, result); } internal void OptimizeGetter() { using (PerformanceStatistics.StartGlobalStopwatch(PerformanceCounter.AdaptersCompilation)) { if (m_Getter != null) { if (IsStatic) { var paramExp = Expression.Parameter(typeof(object), "dummy"); var propAccess = Expression.Property(null, PropertyInfo); var castPropAccess = Expression.Convert(propAccess, typeof(object)); var lambda = Expression.Lambda>(castPropAccess, paramExp); Interlocked.Exchange(ref m_OptimizedGetter, lambda.Compile()); } else { var paramExp = Expression.Parameter(typeof(object), "obj"); var castParamExp = Expression.Convert(paramExp, this.PropertyInfo.DeclaringType); var propAccess = Expression.Property(castParamExp, PropertyInfo); var castPropAccess = Expression.Convert(propAccess, typeof(object)); var lambda = Expression.Lambda>(castPropAccess, paramExp); Interlocked.Exchange(ref m_OptimizedGetter, lambda.Compile()); } } } } internal void OptimizeSetter() { using (PerformanceStatistics.StartGlobalStopwatch(PerformanceCounter.AdaptersCompilation)) { if (m_Setter != null && !(Framework.Do.IsValueType(PropertyInfo.DeclaringType))) { MethodInfo setterMethod = Framework.Do.GetSetMethod(PropertyInfo); if (IsStatic) { var paramExp = Expression.Parameter(typeof(object), "dummy"); var paramValExp = Expression.Parameter(typeof(object), "val"); var castParamValExp = Expression.Convert(paramValExp, this.PropertyInfo.PropertyType); var callExpression = Expression.Call(setterMethod, castParamValExp); var lambda = Expression.Lambda>(callExpression, paramExp, paramValExp); Interlocked.Exchange(ref m_OptimizedSetter, lambda.Compile()); } else { var paramExp = Expression.Parameter(typeof(object), "obj"); var paramValExp = Expression.Parameter(typeof(object), "val"); var castParamExp = Expression.Convert(paramExp, this.PropertyInfo.DeclaringType); var castParamValExp = Expression.Convert(paramValExp, this.PropertyInfo.PropertyType); var callExpression = Expression.Call(castParamExp, setterMethod, castParamValExp); var lambda = Expression.Lambda>(callExpression, paramExp, paramValExp); Interlocked.Exchange(ref m_OptimizedSetter, lambda.Compile()); } } } } /// /// Sets the value of the property /// /// The script. /// The object. /// The value to set. public void SetValue(Script script, object obj, DynValue v) { this.CheckAccess(MemberDescriptorAccess.CanWrite, obj); if (m_Setter == null) throw new ScriptRuntimeException("userdata property '{0}.{1}' cannot be written to.", this.PropertyInfo.DeclaringType.Name, this.Name); object value = ScriptToClrConversions.DynValueToObjectOfType(v, this.PropertyInfo.PropertyType, null, false); try { if (value is double) value = NumericConversions.DoubleToType(PropertyInfo.PropertyType, (double)value); if (AccessMode == InteropAccessMode.LazyOptimized && m_OptimizedSetter == null) OptimizeSetter(); if (m_OptimizedSetter != null) { m_OptimizedSetter(obj, value); } else { m_Setter.Invoke(IsStatic ? null : obj, new object[] { value }); // convoluted workaround for --full-aot Mono execution } } catch (ArgumentException) { // non-optimized setters fall here throw ScriptRuntimeException.UserDataArgumentTypeMismatch(v.Type, PropertyInfo.PropertyType); } catch (InvalidCastException) { // optimized setters fall here throw ScriptRuntimeException.UserDataArgumentTypeMismatch(v.Type, PropertyInfo.PropertyType); } } /// /// Gets the types of access supported by this member /// public MemberDescriptorAccess MemberAccess { get { MemberDescriptorAccess access = 0; if (m_Setter != null) access |= MemberDescriptorAccess.CanWrite; if (m_Getter != null) access |= MemberDescriptorAccess.CanRead; return access; } } /// /// Called by standard descriptors when background optimization or preoptimization needs to be performed. /// void IOptimizableDescriptor.Optimize() { this.OptimizeGetter(); this.OptimizeSetter(); } /// /// Prepares the descriptor for hard-wiring. /// The descriptor fills the passed table with all the needed data for hardwire generators to generate the appropriate code. /// /// The table to be filled public void PrepareForWiring(Table t) { t.Set("class", DynValue.NewString(this.GetType().FullName)); t.Set("visibility", DynValue.NewString(this.PropertyInfo.GetClrVisibility())); t.Set("name", DynValue.NewString(this.Name)); t.Set("static", DynValue.NewBoolean(this.IsStatic)); t.Set("read", DynValue.NewBoolean(this.CanRead)); t.Set("write", DynValue.NewBoolean(this.CanWrite)); t.Set("decltype", DynValue.NewString(this.PropertyInfo.DeclaringType.FullName)); t.Set("declvtype", DynValue.NewBoolean(Framework.Do.IsValueType(this.PropertyInfo.DeclaringType))); t.Set("type", DynValue.NewString(this.PropertyInfo.PropertyType.FullName)); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/ReflectionMemberDescriptors/PropertyMemberDescriptor.cs.meta ================================================ fileFormatVersion: 2 guid: 1211590f59f1bda4099058ac9f2456e9 timeCreated: 1518177915 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/ReflectionMemberDescriptors/ValueTypeDefaultCtorMemberDescriptor.cs ================================================ using System; using MoonSharp.Interpreter.Compatibility; using MoonSharp.Interpreter.Interop.BasicDescriptors; using MoonSharp.Interpreter.Interop.Converters; namespace MoonSharp.Interpreter.Interop { /// /// Member descriptor for the default constructor of value types. /// public class ValueTypeDefaultCtorMemberDescriptor : IOverloadableMemberDescriptor, IWireableDescriptor { /// /// Gets a value indicating whether the described method is static. /// public bool IsStatic { get { return true; } } /// /// Gets the name of the described method /// public string Name { get; private set; } /// /// This property is equal to the value type to be constructed. /// public Type ValueTypeDefaultCtor { get; private set; } /// /// Gets the type of the arguments of the underlying CLR function /// public ParameterDescriptor[] Parameters { get; private set; } /// /// Gets the type which this extension method extends, null if this is not an extension method. /// public Type ExtensionMethodType { get { return null; } } /// /// Gets a value indicating the type of the ParamArray parameter of a var-args function. If the function is not var-args, /// null is returned. /// public Type VarArgsArrayType { get { return null; } } /// /// Gets a value indicating the type of the elements of the ParamArray parameter of a var-args function. If the function is not var-args, /// null is returned. /// public Type VarArgsElementType { get { return null; } } /// /// Initializes a new instance of the /// class /// representing the default empty ctor for a value type. /// /// Type of the value. /// valueType is not a value type public ValueTypeDefaultCtorMemberDescriptor(Type valueType) { if (!Framework.Do.IsValueType(valueType)) throw new ArgumentException("valueType is not a value type"); this.Name = "__new"; this.Parameters = new ParameterDescriptor[0]; ValueTypeDefaultCtor = valueType; } /// /// Invokes the member from script. /// Implementors should raise exceptions if the value cannot be executed or if access to an /// instance member through a static userdata is attempted. /// /// The script. /// The object. /// The context. /// The arguments. /// public DynValue Execute(Script script, object obj, ScriptExecutionContext context, CallbackArguments args) { this.CheckAccess(MemberDescriptorAccess.CanRead, obj); object vto = Activator.CreateInstance(ValueTypeDefaultCtor); return ClrToScriptConversions.ObjectToDynValue(script, vto); } /// /// Gets a sort discriminant to give consistent overload resolution matching in case of perfectly equal scores /// public string SortDiscriminant { get { return "@.ctor"; } } /// /// Gets the types of access supported by this member /// public MemberDescriptorAccess MemberAccess { get { return MemberDescriptorAccess.CanRead | MemberDescriptorAccess.CanExecute; } } /// /// Gets the value of this member as a /// to be exposed to scripts. /// Implementors should raise exceptions if the value cannot be read or if access to an /// instance member through a static userdata is attempted. /// /// The script. /// The object owning this member, or null if static. /// /// The value of this member as a . /// public DynValue GetValue(Script script, object obj) { this.CheckAccess(MemberDescriptorAccess.CanRead, obj); object vto = Activator.CreateInstance(ValueTypeDefaultCtor); return ClrToScriptConversions.ObjectToDynValue(script, vto); } /// /// Sets the value of this member from a /// . /// Implementors should raise exceptions if the value cannot be read or if access to an /// instance member through a static userdata is attempted. /// /// The script. /// The object owning this member, or null if static. /// The value to be set. public void SetValue(Script script, object obj, DynValue value) { this.CheckAccess(MemberDescriptorAccess.CanWrite, obj); } /// /// Prepares the descriptor for hard-wiring. /// The descriptor fills the passed table with all the needed data for hardwire generators to generate the appropriate code. /// /// The table to be filled public void PrepareForWiring(Table t) { t.Set("class", DynValue.NewString(this.GetType().FullName)); t.Set("type", DynValue.NewString(this.ValueTypeDefaultCtor.FullName)); t.Set("name", DynValue.NewString(this.Name)); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/ReflectionMemberDescriptors/ValueTypeDefaultCtorMemberDescriptor.cs.meta ================================================ fileFormatVersion: 2 guid: 974e8a47ecc6dc945bfaf4c346a1b119 timeCreated: 1518177922 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/ReflectionMemberDescriptors.meta ================================================ fileFormatVersion: 2 guid: 39d6b8c9d32e02741b97321fd5795f9f folderAsset: yes timeCreated: 1518177913 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/StandardEnumUserDataDescriptor.cs ================================================ using System; using System.Linq; using MoonSharp.Interpreter.Compatibility; using MoonSharp.Interpreter.Interop.BasicDescriptors; namespace MoonSharp.Interpreter.Interop { /// /// Standard descriptor for Enum values /// public class StandardEnumUserDataDescriptor : DispatchingUserDataDescriptor { /// /// Gets the underlying type of the enum. /// public Type UnderlyingType { get; private set; } /// /// Gets a value indicating whether underlying type of the enum is unsigned. /// public bool IsUnsigned { get; private set; } /// /// Gets a value indicating whether this instance describes a flags enumeration. /// public bool IsFlags { get; private set; } Func m_EnumToULong = null; Func m_ULongToEnum = null; Func m_EnumToLong = null; Func m_LongToEnum = null; /// /// Initializes a new instance of the class. /// /// Type of the enum. /// Name of the friendly. /// enumType must be an enum! public StandardEnumUserDataDescriptor(Type enumType, string friendlyName = null, string[] names = null, object[] values = null, Type underlyingType = null) : base(enumType, friendlyName) { if (!Framework.Do.IsEnum(enumType)) throw new ArgumentException("enumType must be an enum!"); UnderlyingType = underlyingType ?? Enum.GetUnderlyingType(enumType); IsUnsigned = ((UnderlyingType == typeof(byte)) || (UnderlyingType == typeof(ushort)) || (UnderlyingType == typeof(uint)) || (UnderlyingType == typeof(ulong))); names = names ?? Enum.GetNames(this.Type); values = values ?? Enum.GetValues(this.Type).OfType().ToArray(); FillMemberList(names, values); } /// /// Fills the member list. /// private void FillMemberList(string[] names, object[] values) { for (int i = 0; i < names.Length; i++) { string name = names[i]; object value = values.GetValue(i); DynValue cvalue = UserData.Create(value, this); base.AddDynValue(name, cvalue); } var attrs = Framework.Do.GetCustomAttributes(this.Type, typeof(FlagsAttribute), true); if (attrs != null && attrs.Length > 0) { IsFlags = true; AddEnumMethod("flagsAnd", DynValue.NewCallback(Callback_And)); AddEnumMethod("flagsOr", DynValue.NewCallback(Callback_Or)); AddEnumMethod("flagsXor", DynValue.NewCallback(Callback_Xor)); AddEnumMethod("flagsNot", DynValue.NewCallback(Callback_BwNot)); AddEnumMethod("hasAll", DynValue.NewCallback(Callback_HasAll)); AddEnumMethod("hasAny", DynValue.NewCallback(Callback_HasAny)); } } /// /// Adds an enum method to the object /// /// The name. /// The dyn value. private void AddEnumMethod(string name, DynValue dynValue) { if (!HasMember(name)) AddDynValue(name, dynValue); if (!HasMember("__" + name)) AddDynValue("__" + name, dynValue); } /// /// Gets the value of the enum as a long /// private long GetValueSigned(DynValue dv) { CreateSignedConversionFunctions(); if (dv.Type == DataType.Number) return (long)dv.Number; if ((dv.Type != DataType.UserData) || (dv.UserData.Descriptor != this) || (dv.UserData.Object == null)) throw new ScriptRuntimeException("Enum userdata or number expected, or enum is not of the correct type."); return m_EnumToLong(dv.UserData.Object); } /// /// Gets the value of the enum as a ulong /// private ulong GetValueUnsigned(DynValue dv) { CreateUnsignedConversionFunctions(); if (dv.Type == DataType.Number) return (ulong)dv.Number; if ((dv.Type != DataType.UserData) || (dv.UserData.Descriptor != this) || (dv.UserData.Object == null)) throw new ScriptRuntimeException("Enum userdata or number expected, or enum is not of the correct type."); return m_EnumToULong(dv.UserData.Object); } /// /// Creates an enum value from a long /// private DynValue CreateValueSigned(long value) { CreateSignedConversionFunctions(); return UserData.Create(m_LongToEnum(value), this); } /// /// Creates an enum value from a ulong /// private DynValue CreateValueUnsigned(ulong value) { CreateUnsignedConversionFunctions(); return UserData.Create(m_ULongToEnum(value), this); } /// /// Creates conversion functions for signed enums /// private void CreateSignedConversionFunctions() { if (m_EnumToLong == null || m_LongToEnum == null) { if (UnderlyingType == typeof(sbyte)) { m_EnumToLong = o => (long)((sbyte)o); m_LongToEnum = o => (sbyte)(o); } else if (UnderlyingType == typeof(short)) { m_EnumToLong = o => (long)((short)o); m_LongToEnum = o => (short)(o); } else if (UnderlyingType == typeof(int)) { m_EnumToLong = o => (long)((int)o); m_LongToEnum = o => (int)(o); } else if (UnderlyingType == typeof(long)) { m_EnumToLong = o => (long)(o); m_LongToEnum = o => (long)(o); } else throw new ScriptRuntimeException("Unexpected enum underlying type : {0}", UnderlyingType.FullName); } } /// /// Creates conversion functions for unsigned enums /// private void CreateUnsignedConversionFunctions() { if (m_EnumToULong == null || m_ULongToEnum == null) { if (UnderlyingType == typeof(byte)) { m_EnumToULong = o => (ulong)((byte)o); m_ULongToEnum = o => (byte)(o); } else if (UnderlyingType == typeof(ushort)) { m_EnumToULong = o => (ulong)((ushort)o); m_ULongToEnum = o => (ushort)(o); } else if (UnderlyingType == typeof(uint)) { m_EnumToULong = o => (ulong)((uint)o); m_ULongToEnum = o => (uint)(o); } else if (UnderlyingType == typeof(ulong)) { m_EnumToULong = o => (ulong)(o); m_ULongToEnum = o => (ulong)(o); } else throw new ScriptRuntimeException("Unexpected enum underlying type : {0}", UnderlyingType.FullName); } } private DynValue PerformBinaryOperationS(string funcName, ScriptExecutionContext ctx, CallbackArguments args, Func operation) { if (args.Count != 2) throw new ScriptRuntimeException("Enum.{0} expects two arguments", funcName); long v1 = GetValueSigned(args[0]); long v2 = GetValueSigned(args[1]); return operation(v1, v2); } private DynValue PerformBinaryOperationU(string funcName, ScriptExecutionContext ctx, CallbackArguments args, Func operation) { if (args.Count != 2) throw new ScriptRuntimeException("Enum.{0} expects two arguments", funcName); ulong v1 = GetValueUnsigned(args[0]); ulong v2 = GetValueUnsigned(args[1]); return operation(v1, v2); } private DynValue PerformBinaryOperationS(string funcName, ScriptExecutionContext ctx, CallbackArguments args, Func operation) { return PerformBinaryOperationS(funcName, ctx, args, (v1, v2) => CreateValueSigned(operation(v1, v2))); } private DynValue PerformBinaryOperationU(string funcName, ScriptExecutionContext ctx, CallbackArguments args, Func operation) { return PerformBinaryOperationU(funcName, ctx, args, (v1, v2) => CreateValueUnsigned(operation(v1, v2))); } private DynValue PerformUnaryOperationS(string funcName, ScriptExecutionContext ctx, CallbackArguments args, Func operation) { if (args.Count != 1) throw new ScriptRuntimeException("Enum.{0} expects one argument.", funcName); long v1 = GetValueSigned(args[0]); long r = operation(v1); return CreateValueSigned(r); } private DynValue PerformUnaryOperationU(string funcName, ScriptExecutionContext ctx, CallbackArguments args, Func operation) { if (args.Count != 1) throw new ScriptRuntimeException("Enum.{0} expects one argument.", funcName); ulong v1 = GetValueUnsigned(args[0]); ulong r = operation(v1); return CreateValueUnsigned(r); } internal DynValue Callback_Or(ScriptExecutionContext ctx, CallbackArguments args) { if (IsUnsigned) return PerformBinaryOperationU("or", ctx, args, (v1, v2) => v1 | v2); else return PerformBinaryOperationS("or", ctx, args, (v1, v2) => v1 | v2); } internal DynValue Callback_And(ScriptExecutionContext ctx, CallbackArguments args) { if (IsUnsigned) return PerformBinaryOperationU("and", ctx, args, (v1, v2) => v1 & v2); else return PerformBinaryOperationS("and", ctx, args, (v1, v2) => v1 & v2); } internal DynValue Callback_Xor(ScriptExecutionContext ctx, CallbackArguments args) { if (IsUnsigned) return PerformBinaryOperationU("xor", ctx, args, (v1, v2) => v1 ^ v2); else return PerformBinaryOperationS("xor", ctx, args, (v1, v2) => v1 ^ v2); } internal DynValue Callback_BwNot(ScriptExecutionContext ctx, CallbackArguments args) { if (IsUnsigned) return PerformUnaryOperationU("not", ctx, args, v1 => ~v1); else return PerformUnaryOperationS("not", ctx, args, v1 => ~v1); } internal DynValue Callback_HasAll(ScriptExecutionContext ctx, CallbackArguments args) { if (IsUnsigned) return PerformBinaryOperationU("hasAll", ctx, args, (v1, v2) => DynValue.NewBoolean((v1 & v2) == v2)); else return PerformBinaryOperationS("hasAll", ctx, args, (v1, v2) => DynValue.NewBoolean((v1 & v2) == v2)); } internal DynValue Callback_HasAny(ScriptExecutionContext ctx, CallbackArguments args) { if (IsUnsigned) return PerformBinaryOperationU("hasAny", ctx, args, (v1, v2) => DynValue.NewBoolean((v1 & v2) != 0)); else return PerformBinaryOperationS("hasAny", ctx, args, (v1, v2) => DynValue.NewBoolean((v1 & v2) != 0)); } /// /// Determines whether the specified object is compatible with the specified type. /// /// The type. /// The object. /// public override bool IsTypeCompatible(Type type, object obj) { if (obj != null) return (Type == type); return base.IsTypeCompatible(type, obj); } /// /// Gets a "meta" operation on this userdata. /// In this specific case, only the concat operator is supported, only on flags enums and it implements the /// 'or' operator. /// /// /// /// /// public override DynValue MetaIndex(Script script, object obj, string metaname) { if (metaname == "__concat" && IsFlags) return DynValue.NewCallback(Callback_Or); return null; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/StandardEnumUserDataDescriptor.cs.meta ================================================ fileFormatVersion: 2 guid: 217a02e5d15913c47bc03e9e44b79fd8 timeCreated: 1518177916 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/StandardGenericsUserDataDescriptor.cs ================================================ using System; using MoonSharp.Interpreter.Compatibility; namespace MoonSharp.Interpreter.Interop { /// /// Standard user data descriptor used to instantiate generics. /// public class StandardGenericsUserDataDescriptor : IUserDataDescriptor, IGeneratorUserDataDescriptor { /// /// Gets the interop access mode this descriptor uses for members access /// public InteropAccessMode AccessMode { get; private set; } /// /// Initializes a new instance of the class. /// /// The type this descriptor refers to. /// The interop access mode this descriptor uses for members access public StandardGenericsUserDataDescriptor(Type type, InteropAccessMode accessMode) { if (accessMode == InteropAccessMode.NoReflectionAllowed) throw new ArgumentException("Can't create a StandardGenericsUserDataDescriptor under a NoReflectionAllowed access mode"); AccessMode = accessMode; this.Type = type; this.Name = "@@" + type.FullName; } /// public string Name { get; private set; } /// public Type Type { get; private set; } /// public DynValue Index(Script script, object obj, DynValue index, bool isDirectIndexing) { return null; } /// public bool SetIndex(Script script, object obj, DynValue index, DynValue value, bool isDirectIndexing) { return false; } /// public virtual string AsString(object obj) { return obj.ToString(); } /// public DynValue MetaIndex(Script script, object obj, string metaname) { return null; } /// public bool IsTypeCompatible(Type type, object obj) { return Framework.Do.IsInstanceOfType(type, obj); } /// public IUserDataDescriptor Generate(Type type) { if (UserData.IsTypeRegistered(type)) return null; if (Framework.Do.IsGenericTypeDefinition(type)) return null; return UserData.RegisterType(type, AccessMode); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/StandardGenericsUserDataDescriptor.cs.meta ================================================ fileFormatVersion: 2 guid: fd99cd5ca07c58a499cd906cf5b851ee timeCreated: 1518177926 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/StandardUserDataDescriptor.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using System.Reflection; using MoonSharp.Interpreter.Compatibility; using MoonSharp.Interpreter.Interop.BasicDescriptors; namespace MoonSharp.Interpreter.Interop { /// /// Standard descriptor for userdata types. /// public class StandardUserDataDescriptor : DispatchingUserDataDescriptor, IWireableDescriptor { /// /// Gets the interop access mode this descriptor uses for members access /// public InteropAccessMode AccessMode { get; private set; } /// /// Initializes a new instance of the class. /// /// The type this descriptor refers to. /// The interop access mode this descriptor uses for members access /// A human readable friendly name of the descriptor. public StandardUserDataDescriptor(Type type, InteropAccessMode accessMode, string friendlyName = null) : base(type, friendlyName) { if (accessMode == InteropAccessMode.NoReflectionAllowed) throw new ArgumentException("Can't create a StandardUserDataDescriptor under a NoReflectionAllowed access mode"); if (Script.GlobalOptions.Platform.IsRunningOnAOT()) accessMode = InteropAccessMode.Reflection; if (accessMode == InteropAccessMode.Default) accessMode = UserData.DefaultAccessMode; AccessMode = accessMode; FillMemberList(); } /// /// Fills the member list. /// private void FillMemberList() { HashSet membersToIgnore = new HashSet( Framework.Do.GetCustomAttributes(this.Type, typeof(MoonSharpHideMemberAttribute), true) .OfType() .Select(a => a.MemberName) ); Type type = this.Type; if (AccessMode == InteropAccessMode.HideMembers) return; if (!type.IsDelegateType()) { // add declared constructors foreach (ConstructorInfo ci in Framework.Do.GetConstructors(type)) { if (membersToIgnore.Contains("__new")) continue; AddMember("__new", MethodMemberDescriptor.TryCreateIfVisible(ci, this.AccessMode)); } // valuetypes don't reflect their empty ctor.. actually empty ctors are a perversion, we don't care and implement ours if (Framework.Do.IsValueType(type) && !membersToIgnore.Contains("__new")) AddMember("__new", new ValueTypeDefaultCtorMemberDescriptor(type)); } // add methods to method list and metamethods foreach (MethodInfo mi in Framework.Do.GetMethods(type)) { if (membersToIgnore.Contains(mi.Name)) continue; MethodMemberDescriptor md = MethodMemberDescriptor.TryCreateIfVisible(mi, this.AccessMode); if (md != null) { if (!MethodMemberDescriptor.CheckMethodIsCompatible(mi, false)) continue; // transform explicit/implicit conversions to a friendlier name. string name = mi.Name; if (mi.IsSpecialName && (mi.Name == SPECIALNAME_CAST_EXPLICIT || mi.Name == SPECIALNAME_CAST_IMPLICIT)) { name = mi.ReturnType.GetConversionMethodName(); } AddMember(name, md); foreach (string metaname in mi.GetMetaNamesFromAttributes()) { AddMetaMember(metaname, md); } } } // get properties foreach (PropertyInfo pi in Framework.Do.GetProperties(type)) { if (pi.IsSpecialName || pi.GetIndexParameters().Any() || membersToIgnore.Contains(pi.Name)) continue; AddMember(pi.Name, PropertyMemberDescriptor.TryCreateIfVisible(pi, this.AccessMode)); } // get fields foreach (FieldInfo fi in Framework.Do.GetFields(type)) { if (fi.IsSpecialName || membersToIgnore.Contains(fi.Name)) continue; AddMember(fi.Name, FieldMemberDescriptor.TryCreateIfVisible(fi, this.AccessMode)); } // get events foreach (EventInfo ei in Framework.Do.GetEvents(type)) { if (ei.IsSpecialName || membersToIgnore.Contains(ei.Name)) continue; AddMember(ei.Name, EventMemberDescriptor.TryCreateIfVisible(ei, this.AccessMode)); } // get nested types and create statics foreach (Type nestedType in Framework.Do.GetNestedTypes(type)) { if (membersToIgnore.Contains(nestedType.Name)) continue; if (!Framework.Do.IsGenericTypeDefinition(nestedType)) { if (Framework.Do.IsNestedPublic(nestedType) || Framework.Do.GetCustomAttributes(nestedType, typeof(MoonSharpUserDataAttribute), true).Length > 0) { var descr = UserData.RegisterType(nestedType, this.AccessMode); if (descr != null) AddDynValue(nestedType.Name, UserData.CreateStatic(nestedType)); } } } if (!membersToIgnore.Contains("[this]")) { if (Type.IsArray) { int rank = Type.GetArrayRank(); ParameterDescriptor[] get_pars = new ParameterDescriptor[rank]; ParameterDescriptor[] set_pars = new ParameterDescriptor[rank + 1]; for (int i = 0; i < rank; i++) get_pars[i] = set_pars[i] = new ParameterDescriptor("idx" + i.ToString(), typeof(int)); set_pars[rank] = new ParameterDescriptor("value", Type.GetElementType()); AddMember(SPECIALNAME_INDEXER_SET, new ArrayMemberDescriptor(SPECIALNAME_INDEXER_SET, true, set_pars)); AddMember(SPECIALNAME_INDEXER_GET, new ArrayMemberDescriptor(SPECIALNAME_INDEXER_GET, false, get_pars)); } else if (Type == typeof(Array)) { AddMember(SPECIALNAME_INDEXER_SET, new ArrayMemberDescriptor(SPECIALNAME_INDEXER_SET, true)); AddMember(SPECIALNAME_INDEXER_GET, new ArrayMemberDescriptor(SPECIALNAME_INDEXER_GET, false)); } } } public void PrepareForWiring(Table t) { if (AccessMode == InteropAccessMode.HideMembers || Framework.Do.GetAssembly(Type) == Framework.Do.GetAssembly(this.GetType())) { t.Set("skip", DynValue.NewBoolean(true)); } else { t.Set("visibility", DynValue.NewString(this.Type.GetClrVisibility())); t.Set("class", DynValue.NewString(this.GetType().FullName)); DynValue tm = DynValue.NewPrimeTable(); t.Set("members", tm); DynValue tmm = DynValue.NewPrimeTable(); t.Set("metamembers", tmm); Serialize(tm.Table, Members); Serialize(tmm.Table, MetaMembers); } } private void Serialize(Table t, IEnumerable> members) { foreach (var pair in members) { IWireableDescriptor sd = pair.Value as IWireableDescriptor; if (sd != null) { DynValue mt = DynValue.NewPrimeTable(); t.Set(pair.Key, mt); sd.PrepareForWiring(mt.Table); } else { t.Set(pair.Key, DynValue.NewString("unsupported member type : " + pair.Value.GetType().FullName)); } } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors/StandardUserDataDescriptor.cs.meta ================================================ fileFormatVersion: 2 guid: fcc72a3b9de6de9448aa43dd6a97f1fe timeCreated: 1518177926 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/StandardDescriptors.meta ================================================ fileFormatVersion: 2 guid: 092ce7e0cc2cfe94f9dd57dc34aa161b folderAsset: yes timeCreated: 1518177912 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/UserDataMemberType.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace MoonSharp.Interpreter.Interop { public enum UserDataMemberType { Constructor, Method, Property, Field, Event } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/UserDataMemberType.cs.meta ================================================ fileFormatVersion: 2 guid: d4b34799216db5e4e989a32f77a8cfe1 timeCreated: 1518177924 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/UserDataRegistries/ExtensionMethodsRegistry.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using System.Reflection; using System.Runtime.CompilerServices; using MoonSharp.Interpreter.Compatibility; using MoonSharp.Interpreter.DataStructs; using MoonSharp.Interpreter.Interop.BasicDescriptors; namespace MoonSharp.Interpreter.Interop.UserDataRegistries { /// /// Registry of all extension methods. Use UserData statics to access these. /// internal class ExtensionMethodsRegistry { private static object s_Lock = new object(); private static MultiDictionary s_Registry = new MultiDictionary(); private static MultiDictionary s_UnresolvedGenericsRegistry = new MultiDictionary(); private static int s_ExtensionMethodChangeVersion = 0; private class UnresolvedGenericMethod { public readonly MethodInfo Method; public readonly InteropAccessMode AccessMode; public readonly HashSet AlreadyAddedTypes = new HashSet(); public UnresolvedGenericMethod(MethodInfo mi, InteropAccessMode mode) { AccessMode = mode; Method = mi; } } /// /// Registers an extension Type (that is a type containing extension methods) /// /// The type. /// The InteropAccessMode. public static void RegisterExtensionType(Type type, InteropAccessMode mode = InteropAccessMode.Default) { lock (s_Lock) { bool changesDone = false; foreach (MethodInfo mi in Framework.Do.GetMethods(type).Where(_mi => _mi.IsStatic)) { if (mi.GetCustomAttributes(typeof(ExtensionAttribute), false).Count() == 0) continue; if (mi.ContainsGenericParameters) { s_UnresolvedGenericsRegistry.Add(mi.Name, new UnresolvedGenericMethod(mi, mode)); changesDone = true; continue; } if (!MethodMemberDescriptor.CheckMethodIsCompatible(mi, false)) continue; var desc = new MethodMemberDescriptor(mi, mode); s_Registry.Add(mi.Name, desc); changesDone = true; } if (changesDone) ++s_ExtensionMethodChangeVersion; } } private static object FrameworkGetMethods() { throw new NotImplementedException(); } /// /// Gets all the extension methods which can match a given name /// /// The name. /// public static IEnumerable GetExtensionMethodsByName(string name) { lock (s_Lock) return new List(s_Registry.Find(name)); } /// /// Gets a number which gets incremented everytime the extension methods registry changes. /// Use this to invalidate caches based on extension methods /// /// public static int GetExtensionMethodsChangeVersion() { return s_ExtensionMethodChangeVersion; } /// /// Gets all the extension methods which can match a given name and extending a given Type /// /// The name. /// The extended type. /// public static List GetExtensionMethodsByNameAndType(string name, Type extendedType) { List unresolvedGenerics = null; lock (s_Lock) { unresolvedGenerics = s_UnresolvedGenericsRegistry.Find(name).ToList(); } foreach (UnresolvedGenericMethod ugm in unresolvedGenerics) { ParameterInfo[] args = ugm.Method.GetParameters(); if (args.Length == 0) continue; Type extensionType = args[0].ParameterType; Type genericType = GetGenericMatch(extensionType, extendedType); if (ugm.AlreadyAddedTypes.Add(genericType)) { if (genericType != null) { MethodInfo mi = InstantiateMethodInfo(ugm.Method, extensionType, genericType, extendedType); if (mi != null) { if (!MethodMemberDescriptor.CheckMethodIsCompatible(mi, false)) continue; var desc = new MethodMemberDescriptor(mi, ugm.AccessMode); s_Registry.Add(ugm.Method.Name, desc); ++s_ExtensionMethodChangeVersion; } } } } return s_Registry.Find(name) .Where(d => d.ExtensionMethodType != null && Framework.Do.IsAssignableFrom(d.ExtensionMethodType, extendedType)) .ToList(); } private static MethodInfo InstantiateMethodInfo(MethodInfo mi, Type extensionType, Type genericType, Type extendedType) { Type[] defs = mi.GetGenericArguments(); Type[] tdefs = Framework.Do.GetGenericArguments(genericType); if (tdefs.Length == defs.Length) { return mi.MakeGenericMethod(tdefs); } return null; } private static Type GetGenericMatch(Type extensionType, Type extendedType) { if (!extensionType.IsGenericParameter) { extensionType = extensionType.GetGenericTypeDefinition(); foreach (Type t in extendedType.GetAllImplementedTypes()) { if (Framework.Do.IsGenericType(t) && t.GetGenericTypeDefinition() == extensionType) { return t; } } } return null; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/UserDataRegistries/ExtensionMethodsRegistry.cs.meta ================================================ fileFormatVersion: 2 guid: ace6b4a70f5ea60468c9cce1ce41dfb3 timeCreated: 1518177923 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/UserDataRegistries/TypeDescriptorRegistry.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using System.Reflection; using System.Runtime.CompilerServices; using System.Threading; using MoonSharp.Interpreter.Compatibility; using MoonSharp.Interpreter.Interop.BasicDescriptors; using MoonSharp.Interpreter.Interop.RegistrationPolicies; namespace MoonSharp.Interpreter.Interop.UserDataRegistries { /// /// Registry of all type descriptors. Use UserData statics to access these. /// internal static class TypeDescriptorRegistry { private static object s_Lock = new object(); private static Dictionary s_TypeRegistry = new Dictionary(); private static Dictionary s_TypeRegistryHistory = new Dictionary(); private static InteropAccessMode s_DefaultAccessMode; /// /// Registers all types marked with a MoonSharpUserDataAttribute that ar contained in an assembly. /// /// The assembly. /// if set to true extension types are registered to the appropriate registry. internal static void RegisterAssembly(Assembly asm = null, bool includeExtensionTypes = false) { if (asm == null) { #if NETFX_CORE || DOTNET_CORE throw new NotSupportedException("Assembly.GetCallingAssembly is not supported on target framework."); #else asm = Assembly.GetCallingAssembly(); #endif } if (includeExtensionTypes) { var extensionTypes = from t in asm.SafeGetTypes() let attributes = Framework.Do.GetCustomAttributes(t, typeof(ExtensionAttribute), true) where attributes != null && attributes.Length > 0 select new { Attributes = attributes, DataType = t }; foreach (var extType in extensionTypes) { UserData.RegisterExtensionType(extType.DataType); } } var userDataTypes = from t in asm.SafeGetTypes() let attributes = Framework.Do.GetCustomAttributes(t, typeof(MoonSharpUserDataAttribute), true) where attributes != null && attributes.Length > 0 select new { Attributes = attributes, DataType = t }; foreach (var userDataType in userDataTypes) { UserData.RegisterType(userDataType.DataType, userDataType.Attributes .OfType() .First() .AccessMode); } } /// /// Determines whether the specified type is registered. Note that this should be used only to check if a descriptor /// has been registered EXACTLY. For many types a descriptor can still be created, for example through the descriptor /// of a base type or implemented interfaces. /// /// The type /// internal static bool IsTypeRegistered(Type type) { lock (s_Lock) return s_TypeRegistry.ContainsKey(type); } /// /// Unregisters a type. /// WARNING: unregistering types at runtime is a dangerous practice and may cause unwanted errors. /// Use this only for testing purposes or to re-register the same type in a slightly different way. /// Additionally, it's a good practice to discard all previous loaded scripts after calling this method. /// /// The The type to be unregistered internal static void UnregisterType(Type t) { lock (s_Lock) { if (s_TypeRegistry.ContainsKey(t)) { PerformRegistration(t, null, s_TypeRegistry[t]); } } } /// /// Gets or sets the default access mode to be used in the whole application /// /// /// The default access mode. /// /// InteropAccessMode is InteropAccessMode.Default internal static InteropAccessMode DefaultAccessMode { get { return s_DefaultAccessMode; } set { if (value == InteropAccessMode.Default) throw new ArgumentException("InteropAccessMode is InteropAccessMode.Default"); s_DefaultAccessMode = value; } } /// /// Registers a proxy type. /// /// The proxy factory. /// The access mode. /// Name of the friendly. /// internal static IUserDataDescriptor RegisterProxyType_Impl(IProxyFactory proxyFactory, InteropAccessMode accessMode, string friendlyName) { IUserDataDescriptor proxyDescriptor = RegisterType_Impl(proxyFactory.ProxyType, accessMode, friendlyName, null); return RegisterType_Impl(proxyFactory.TargetType, accessMode, friendlyName, new ProxyUserDataDescriptor(proxyFactory, proxyDescriptor, friendlyName)); } /// /// Registers a type /// /// The type. /// The access mode (used only if a default type descriptor is created). /// Friendly name of the descriptor. /// The descriptor, or null to use a default one. /// internal static IUserDataDescriptor RegisterType_Impl(Type type, InteropAccessMode accessMode, string friendlyName, IUserDataDescriptor descriptor) { accessMode = ResolveDefaultAccessModeForType(accessMode, type); lock (s_Lock) { IUserDataDescriptor oldDescriptor = null; s_TypeRegistry.TryGetValue(type, out oldDescriptor); if (descriptor == null) { if (IsTypeBlacklisted(type)) return null; if (Framework.Do.GetInterfaces(type).Any(ii => ii == typeof(IUserDataType))) { AutoDescribingUserDataDescriptor audd = new AutoDescribingUserDataDescriptor(type, friendlyName); return PerformRegistration(type, audd, oldDescriptor); } else if (Framework.Do.IsGenericTypeDefinition(type)) { StandardGenericsUserDataDescriptor typeGen = new StandardGenericsUserDataDescriptor(type, accessMode); return PerformRegistration(type, typeGen, oldDescriptor); } else if (Framework.Do.IsEnum(type)) { var enumDescr = new StandardEnumUserDataDescriptor(type, friendlyName); return PerformRegistration(type, enumDescr, oldDescriptor); } else { StandardUserDataDescriptor udd = new StandardUserDataDescriptor(type, accessMode, friendlyName); if (accessMode == InteropAccessMode.BackgroundOptimized) { #if NETFX_CORE System.Threading.Tasks.Task.Run(() => ((IOptimizableDescriptor)udd).Optimize()); #else ThreadPool.QueueUserWorkItem(o => ((IOptimizableDescriptor)udd).Optimize()); #endif } return PerformRegistration(type, udd, oldDescriptor); } } else { PerformRegistration(type, descriptor, oldDescriptor); return descriptor; } } } private static IUserDataDescriptor PerformRegistration(Type type, IUserDataDescriptor newDescriptor, IUserDataDescriptor oldDescriptor) { IUserDataDescriptor result = RegistrationPolicy.HandleRegistration(newDescriptor, oldDescriptor); if (result != oldDescriptor) { if (result == null) { s_TypeRegistry.Remove(type); } else { s_TypeRegistry[type] = result; s_TypeRegistryHistory[type] = result; } } return result; } /// /// Resolves the default type of the access mode for the given type /// /// The access mode. /// The type. /// internal static InteropAccessMode ResolveDefaultAccessModeForType(InteropAccessMode accessMode, Type type) { if (accessMode == InteropAccessMode.Default) { MoonSharpUserDataAttribute attr = Framework.Do.GetCustomAttributes(type, true).OfType() .SingleOrDefault(); if (attr != null) accessMode = attr.AccessMode; } if (accessMode == InteropAccessMode.Default) accessMode = s_DefaultAccessMode; return accessMode; } /// /// Gets the best possible type descriptor for a specified CLR type. /// /// The CLR type for which the descriptor is desired. /// if set to true interfaces are used in the search. /// internal static IUserDataDescriptor GetDescriptorForType(Type type, bool searchInterfaces) { lock (s_Lock) { IUserDataDescriptor typeDescriptor = null; // if the type has been explicitly registered, return its descriptor as it's complete if (s_TypeRegistry.ContainsKey(type)) return s_TypeRegistry[type]; if (RegistrationPolicy.AllowTypeAutoRegistration(type)) { // no autoreg of delegates if (!Framework.Do.IsAssignableFrom((typeof(Delegate)), type)) { return RegisterType_Impl(type, DefaultAccessMode, type.FullName, null); } } // search for the base object descriptors for (Type t = type; t != null; t = Framework.Do.GetBaseType(t)) { IUserDataDescriptor u; if (s_TypeRegistry.TryGetValue(t, out u)) { typeDescriptor = u; break; } else if (Framework.Do.IsGenericType(t)) { if (s_TypeRegistry.TryGetValue(t.GetGenericTypeDefinition(), out u)) { typeDescriptor = u; break; } } } if (typeDescriptor is IGeneratorUserDataDescriptor) typeDescriptor = ((IGeneratorUserDataDescriptor)typeDescriptor).Generate(type); // we should not search interfaces (for example, it's just for statics..), no need to look further if (!searchInterfaces) return typeDescriptor; List descriptors = new List(); if (typeDescriptor != null) descriptors.Add(typeDescriptor); if (searchInterfaces) { foreach (Type interfaceType in Framework.Do.GetInterfaces(type)) { IUserDataDescriptor interfaceDescriptor; if (s_TypeRegistry.TryGetValue(interfaceType, out interfaceDescriptor)) { if (interfaceDescriptor is IGeneratorUserDataDescriptor) interfaceDescriptor = ((IGeneratorUserDataDescriptor)interfaceDescriptor).Generate(type); if (interfaceDescriptor != null) descriptors.Add(interfaceDescriptor); } else if (Framework.Do.IsGenericType(interfaceType)) { if (s_TypeRegistry.TryGetValue(interfaceType.GetGenericTypeDefinition(), out interfaceDescriptor)) { if (interfaceDescriptor is IGeneratorUserDataDescriptor) interfaceDescriptor = ((IGeneratorUserDataDescriptor)interfaceDescriptor).Generate(type); if (interfaceDescriptor != null) descriptors.Add(interfaceDescriptor); } } } } if (descriptors.Count == 1) return descriptors[0]; else if (descriptors.Count == 0) return null; else return new CompositeUserDataDescriptor(descriptors, type); } } private static bool FrameworkIsAssignableFrom(Type type) { throw new NotImplementedException(); } /// /// Determines whether the specified type is blacklisted. /// Blacklisted types CANNOT be registered using default descriptors but they can still be registered /// with custom descriptors. Forcing registration of blacklisted types in this way can introduce /// side effects. /// /// The t. /// public static bool IsTypeBlacklisted(Type t) { if (Framework.Do.IsValueType(t) && Framework.Do.GetInterfaces(t).Contains(typeof(System.Collections.IEnumerator))) return true; return false; } /// /// Gets the list of registered types. /// /// /// The registered types. /// public static IEnumerable> RegisteredTypes { get { lock (s_Lock) return s_TypeRegistry.ToArray(); } } /// /// Gets the list of registered types, including unregistered types. /// /// /// The registered types. /// public static IEnumerable> RegisteredTypesHistory { get { lock (s_Lock) return s_TypeRegistryHistory.ToArray(); } } /// /// Gets or sets the registration policy. /// internal static IRegistrationPolicy RegistrationPolicy { get; set; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/UserDataRegistries/TypeDescriptorRegistry.cs.meta ================================================ fileFormatVersion: 2 guid: 32ab984bfd0877f4886662a08e17a65c timeCreated: 1518177916 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop/UserDataRegistries.meta ================================================ fileFormatVersion: 2 guid: e93176920ba1ecb4bae499739904bb6c folderAsset: yes timeCreated: 1518177913 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Interop.meta ================================================ fileFormatVersion: 2 guid: e946664329fbc36438ce147880d5ff81 folderAsset: yes timeCreated: 1518177912 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/LinqHelpers.cs ================================================ using System.Collections.Generic; using System.Linq; namespace MoonSharp.Interpreter { /// /// LINQ helper methods /// public static class LinqHelpers { /// /// Converts the specified enumerable dynvalues of a given script type to objects of a given type /// /// The desired type /// The enumerable. /// The type. public static IEnumerable Convert(this IEnumerable enumerable, DataType type) { return enumerable.Where(v => v.Type == type).Select(v => v.ToObject()); } /// /// Filters an enumeration for items of the given script type /// /// The enumerable. /// The script type. public static IEnumerable OfDataType(this IEnumerable enumerable, DataType type) { return enumerable.Where(v => v.Type == type); } /// /// Converts the elements to CLR objects /// /// The enumerable. public static IEnumerable AsObjects(this IEnumerable enumerable) { return enumerable.Select(v => v.ToObject()); } /// /// Converts the elements to CLR objects of the desired type /// /// The desired type /// The enumerable. public static IEnumerable AsObjects(this IEnumerable enumerable) { return enumerable.Select(v => v.ToObject()); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/LinqHelpers.cs.meta ================================================ fileFormatVersion: 2 guid: 3a01b0abbe2f6714f809a751fdded494 timeCreated: 1518177917 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Loaders/EmbeddedResourcesScriptLoader.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using System.Reflection; namespace MoonSharp.Interpreter.Loaders { /// /// A script loader loading scripts from an assembly resources /// public class EmbeddedResourcesScriptLoader : ScriptLoaderBase { Assembly m_ResourceAssembly; HashSet m_ResourceNames; string m_Namespace; /// /// Initializes a new instance of the class. /// /// The assembly containing the scripts as embedded resources or null to use the calling assembly. public EmbeddedResourcesScriptLoader(Assembly resourceAssembly = null) { if (resourceAssembly == null) { #if NETFX_CORE || DOTNET_CORE throw new NotSupportedException("Assembly.GetCallingAssembly is not supported on target framework."); #else resourceAssembly = Assembly.GetCallingAssembly(); #endif } m_ResourceAssembly = resourceAssembly; m_Namespace = m_ResourceAssembly.FullName.Split(',').First(); m_ResourceNames = new HashSet(m_ResourceAssembly.GetManifestResourceNames()); } private string FileNameToResource(string file) { file = file.Replace('/', '.'); file = file.Replace('\\', '.'); return m_Namespace + "." + file; } /// /// Checks if a script file exists. /// /// The script filename. /// public override bool ScriptFileExists(string name) { name = FileNameToResource(name); return m_ResourceNames.Contains(name); } /// /// Opens a file for reading the script code. /// It can return either a string, a byte[] or a Stream. /// If a byte[] is returned, the content is assumed to be a serialized (dumped) bytecode. If it's a string, it's /// assumed to be either a script or the output of a string.dump call. If a Stream, autodetection takes place. /// /// The file. /// The global context. /// /// A string, a byte[] or a Stream. /// public override object LoadFile(string file, Table globalContext) { file = FileNameToResource(file); return m_ResourceAssembly.GetManifestResourceStream(file); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Loaders/EmbeddedResourcesScriptLoader.cs.meta ================================================ fileFormatVersion: 2 guid: 1ca3071a883351740bba21838aeba04e timeCreated: 1518177915 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Loaders/FileSystemScriptLoader.cs ================================================ #if DOTNET_CORE || (!(PCL || ENABLE_DOTNET || NETFX_CORE)) using System.IO; namespace MoonSharp.Interpreter.Loaders { /// /// A script loader loading scripts directly from the file system (does not go through platform object) /// public class FileSystemScriptLoader : ScriptLoaderBase { /// /// Checks if a script file exists. /// /// The script filename. /// public override bool ScriptFileExists(string name) { return File.Exists(name); } /// /// Opens a file for reading the script code. /// It can return either a string, a byte[] or a Stream. /// If a byte[] is returned, the content is assumed to be a serialized (dumped) bytecode. If it's a string, it's /// assumed to be either a script or the output of a string.dump call. If a Stream, autodetection takes place. /// /// The file. /// The global context. /// /// A string, a byte[] or a Stream. /// public override object LoadFile(string file, Table globalContext) { return new FileStream(file, FileMode.Open, FileAccess.Read, FileShare.ReadWrite); } } } #endif ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Loaders/FileSystemScriptLoader.cs.meta ================================================ fileFormatVersion: 2 guid: 9e2cc77be503dcd45962becfbe72d304 timeCreated: 1518177922 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Loaders/IScriptLoader.cs ================================================ using System; namespace MoonSharp.Interpreter.Loaders { /// /// Class dictating how requests to read scripts from files are handled. /// /// It's recommended that no class implement IScriptLoader directly, and rather extend ScriptLoaderBase. /// public interface IScriptLoader { /// /// Opens a file for reading the script code. /// It can return either a string, a byte[] or a Stream. /// If a byte[] is returned, the content is assumed to be a serialized (dumped) bytecode. If it's a string, it's /// assumed to be either a script or the output of a string.dump call. If a Stream, autodetection takes place. /// /// The file. /// The global context. /// /// A string, a byte[] or a Stream. /// object LoadFile(string file, Table globalContext); /// /// Resolves a filename [applying paths, etc.] /// /// The filename. /// The global context. /// [Obsolete("This serves almost no purpose. Kept here just to preserve backward compatibility.")] string ResolveFileName(string filename, Table globalContext); /// /// Resolves the name of a module to a filename (which will later be passed to OpenScriptFile) /// /// The modname. /// The global context. /// string ResolveModuleName(string modname, Table globalContext); } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Loaders/IScriptLoader.cs.meta ================================================ fileFormatVersion: 2 guid: f58cf78df054a8f4e81083c11a161658 timeCreated: 1518177925 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Loaders/InvalidScriptLoader.cs ================================================ using System; namespace MoonSharp.Interpreter.Loaders { /// /// A script loader used for platforms we cannot initialize in any better way.. /// internal class InvalidScriptLoader : IScriptLoader { string m_Error; internal InvalidScriptLoader(string frameworkname) { m_Error = string.Format( @"Loading scripts from files is not automatically supported on {0}. Please implement your own IScriptLoader (possibly, extending ScriptLoaderBase for easier implementation), use a preexisting loader like EmbeddedResourcesScriptLoader or UnityAssetsScriptLoader or load scripts from strings.", frameworkname); } public object LoadFile(string file, Table globalContext) { throw new PlatformNotSupportedException(m_Error); } public string ResolveFileName(string filename, Table globalContext) { return filename; } public string ResolveModuleName(string modname, Table globalContext) { throw new PlatformNotSupportedException(m_Error); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Loaders/InvalidScriptLoader.cs.meta ================================================ fileFormatVersion: 2 guid: ce32175e286638a4cbfb448895c86652 timeCreated: 1518177924 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Loaders/ScriptLoaderBase.cs ================================================ using System; using System.Linq; namespace MoonSharp.Interpreter.Loaders { /// /// A base implementation of IScriptLoader, offering resolution of module names. /// public abstract class ScriptLoaderBase : IScriptLoader { /// /// Checks if a script file exists. /// /// The script filename. /// public abstract bool ScriptFileExists(string name); /// /// Opens a file for reading the script code. /// It can return either a string, a byte[] or a Stream. /// If a byte[] is returned, the content is assumed to be a serialized (dumped) bytecode. If it's a string, it's /// assumed to be either a script or the output of a string.dump call. If a Stream, autodetection takes place. /// /// The file. /// The global context. /// /// A string, a byte[] or a Stream. /// public abstract object LoadFile(string file, Table globalContext); /// /// Resolves the name of a module on a set of paths. /// /// The modname. /// The paths. /// protected virtual string ResolveModuleName(string modname, string[] paths) { if (paths == null) return null; modname = modname.Replace('.', '/'); foreach (string path in paths) { string file = path.Replace("?", modname); if (ScriptFileExists(file)) return file; } return null; } /// /// Resolves the name of a module to a filename (which will later be passed to OpenScriptFile). /// The resolution happens first on paths included in the LUA_PATH global variable (if and only if /// the IgnoreLuaPathGlobal is false), and - if the variable does not exist - by consulting the /// ScriptOptions.ModulesPaths array. Override to provide a different behaviour. /// /// The modname. /// The global context. /// public virtual string ResolveModuleName(string modname, Table globalContext) { if (!this.IgnoreLuaPathGlobal) { DynValue s = globalContext.RawGet("LUA_PATH"); if (s != null && s.Type == DataType.String) return ResolveModuleName(modname, UnpackStringPaths(s.String)); } return ResolveModuleName(modname, this.ModulePaths); } /// /// Gets or sets the modules paths used by the "require" function. If null, the default paths are used (using /// environment variables etc.). /// public string[] ModulePaths { get; set; } /// /// Unpacks a string path in a form like "?;?.lua" to an array /// public static string[] UnpackStringPaths(string str) { return str.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries) .Select(s => s.Trim()) .Where(s => !string.IsNullOrEmpty(s)) .ToArray(); } /// /// Gets the default environment paths. /// public static string[] GetDefaultEnvironmentPaths() { string[] modulePaths = null; if (modulePaths == null) { string env = Script.GlobalOptions.Platform.GetEnvironmentVariable("MOONSHARP_PATH"); if (!string.IsNullOrEmpty(env)) modulePaths = UnpackStringPaths(env); if (modulePaths == null) { env = Script.GlobalOptions.Platform.GetEnvironmentVariable("LUA_PATH"); if (!string.IsNullOrEmpty(env)) modulePaths = UnpackStringPaths(env); } if (modulePaths == null) modulePaths = UnpackStringPaths("?;?.lua"); } return modulePaths; } /// /// Resolves a filename [applying paths, etc.] /// /// The filename. /// The global context. /// public virtual string ResolveFileName(string filename, Table globalContext) { return filename; } /// /// Gets or sets a value indicating whether the LUA_PATH global is checked or not to get the path where modules are contained. /// If true, the LUA_PATH global is NOT checked. /// public bool IgnoreLuaPathGlobal { get; set; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Loaders/ScriptLoaderBase.cs.meta ================================================ fileFormatVersion: 2 guid: 8109381cf4a3e8342a857495f80acc25 timeCreated: 1518177921 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Loaders/UnityAssetsScriptLoader.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using System.Reflection; using MoonSharp.Interpreter.Compatibility; namespace MoonSharp.Interpreter.Loaders { /// /// A script loader which can load scripts from assets in Unity3D. /// Scripts should be saved as .txt files in a subdirectory of Assets/Resources. /// /// When MoonSharp is activated on Unity3D and the default script loader is used, /// scripts should be saved as .txt files in Assets/Resources/MoonSharp/Scripts. /// public class UnityAssetsScriptLoader : ScriptLoaderBase { Dictionary m_Resources = new Dictionary(); /// /// The default path where scripts are meant to be stored (if not changed) /// public const string DEFAULT_PATH = "MoonSharp/Scripts"; /// /// Initializes a new instance of the class. /// /// The path, relative to Assets/Resources. For example /// if your scripts are stored under Assets/Resources/Scripts, you should /// pass the value "Scripts". If null, "MoonSharp/Scripts" is used. public UnityAssetsScriptLoader(string assetsPath = null) { assetsPath = assetsPath ?? DEFAULT_PATH; #if UNITY_5 LoadResourcesUnityNative(assetsPath); #else LoadResourcesWithReflection(assetsPath); #endif } /// /// Initializes a new instance of the class. /// /// A dictionary mapping filenames to the proper Lua script code. public UnityAssetsScriptLoader(Dictionary scriptToCodeMap) { m_Resources = scriptToCodeMap; } #if UNITY_5 void LoadResourcesUnityNative(string assetsPath) { try { UnityEngine.Object[] array = UnityEngine.Resources.LoadAll(assetsPath, typeof(UnityEngine.TextAsset)); for (int i = 0; i < array.Length; i++) { UnityEngine.TextAsset o = (UnityEngine.TextAsset)array[i]; string name = o.name; string text = o.text; m_Resources.Add(name, text); } } catch (Exception ex) { UnityEngine.Debug.LogErrorFormat("Error initializing UnityScriptLoader : {0}", ex); } } #else void LoadResourcesWithReflection(string assetsPath) { try { Type resourcesType = Type.GetType("UnityEngine.Resources, UnityEngine"); Type textAssetType = Type.GetType("UnityEngine.TextAsset, UnityEngine"); MethodInfo textAssetNameGet = Framework.Do.GetGetMethod(Framework.Do.GetProperty(textAssetType, "name")); MethodInfo textAssetTextGet = Framework.Do.GetGetMethod(Framework.Do.GetProperty(textAssetType, "text")); MethodInfo loadAll = Framework.Do.GetMethod(resourcesType, "LoadAll", new Type[] { typeof(string), typeof(Type) }); Array array = (Array)loadAll.Invoke(null, new object[] { assetsPath, textAssetType }); for (int i = 0; i < array.Length; i++) { object o = array.GetValue(i); string name = textAssetNameGet.Invoke(o, null) as string; string text = textAssetTextGet.Invoke(o, null) as string; m_Resources.Add(name, text); } } catch (Exception ex) { #if !(PCL || ENABLE_DOTNET || NETFX_CORE) Console.WriteLine("Error initializing UnityScriptLoader : {0}", ex); #endif System.Diagnostics.Debug.WriteLine(string.Format("Error initializing UnityScriptLoader : {0}", ex)); } } #endif private string GetFileName(string filename) { int b = Math.Max(filename.LastIndexOf('\\'), filename.LastIndexOf('/')); if (b > 0) filename = filename.Substring(b + 1); return filename; } /// /// Opens a file for reading the script code. /// It can return either a string, a byte[] or a Stream. /// If a byte[] is returned, the content is assumed to be a serialized (dumped) bytecode. If it's a string, it's /// assumed to be either a script or the output of a string.dump call. If a Stream, autodetection takes place. /// /// The file. /// The global context. /// /// A string, a byte[] or a Stream. /// /// UnityAssetsScriptLoader.LoadFile : Cannot load + file public override object LoadFile(string file, Table globalContext) { file = GetFileName(file); if (m_Resources.ContainsKey(file)) return m_Resources[file]; else { var error = string.Format( @"Cannot load script '{0}'. By default, scripts should be .txt files placed under a Assets/Resources/{1} directory. If you want scripts to be put in another directory or another way, use a custom instance of UnityAssetsScriptLoader or implement your own IScriptLoader (possibly extending ScriptLoaderBase).", file, DEFAULT_PATH); throw new Exception(error); } } /// /// Checks if a given file exists /// /// The file. /// public override bool ScriptFileExists(string file) { file = GetFileName(file); return m_Resources.ContainsKey(file); } /// /// Gets the list of loaded scripts filenames (useful for debugging purposes). /// /// public string[] GetLoadedScripts() { return m_Resources.Keys.ToArray(); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Loaders/UnityAssetsScriptLoader.cs.meta ================================================ fileFormatVersion: 2 guid: 361045bffe50aac4390d14bd3d895e3b timeCreated: 1518177917 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Loaders.meta ================================================ fileFormatVersion: 2 guid: b4e72551c0ad09a4dba26a163b25eb2f folderAsset: yes timeCreated: 1518177911 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Modules/CoreModules.cs ================================================ using System; namespace MoonSharp.Interpreter { /// /// Enumeration (combinable as flags) of all the standard library modules /// [Flags] public enum CoreModules { /// /// Value used to specify no modules to be loaded (equals 0). /// None = 0, /// /// The basic methods. Includes "assert", "collectgarbage", "error", "print", "select", "type", "tonumber" and "tostring". /// Basic = 0x40, /// /// The global constants: "_G", "_VERSION" and "_MOONSHARP". /// GlobalConsts = 0x1, /// /// The table iterators: "next", "ipairs" and "pairs". /// TableIterators = 0x2, /// /// The metatable methods : "setmetatable", "getmetatable", "rawset", "rawget", "rawequal" and "rawlen". /// Metatables = 0x4, /// /// The string package /// String = 0x8, /// /// The load methods: "load", "loadsafe", "loadfile", "loadfilesafe", "dofile" and "require" /// LoadMethods = 0x10, /// /// The table package /// Table = 0x20, /// /// The error handling methods: "pcall" and "xpcall" /// ErrorHandling = 0x80, /// /// The math package /// Math = 0x100, /// /// The coroutine package /// Coroutine = 0x200, /// /// The bit32 package /// Bit32 = 0x400, /// /// The time methods of the "os" package: "clock", "difftime", "date" and "time" /// OS_Time = 0x800, /// /// The methods of "os" package excluding those listed for OS_Time. These are not supported under Unity. /// OS_System = 0x1000, /// /// The methods of "io" and "file" packages. These are not supported under Unity. /// IO = 0x2000, /// /// The "debug" package (it has limited support) /// Debug = 0x4000, /// /// The "dynamic" package (introduced by MoonSharp). /// Dynamic = 0x8000, /// /// The "json" package (introduced by MoonSharp). /// Json = 0x10000, /// /// A sort of "hard" sandbox preset, including string, math, table, bit32 packages, constants and table iterators. /// Preset_HardSandbox = GlobalConsts | TableIterators | String | Table | Basic | Math | Bit32, /// /// A softer sandbox preset, adding metatables support, error handling, coroutine, time functions, json parsing and dynamic evaluations. /// Preset_SoftSandbox = Preset_HardSandbox | Metatables | ErrorHandling | Coroutine | OS_Time | Dynamic | Json, /// /// The default preset. Includes everything except "debug" as now. /// Beware that using this preset allows scripts unlimited access to the system. /// Preset_Default = Preset_SoftSandbox | LoadMethods | OS_System | IO, /// /// The complete package. /// Beware that using this preset allows scripts unlimited access to the system. /// Preset_Complete = Preset_Default | Debug, } internal static class CoreModules_ExtensionMethods { public static bool Has(this CoreModules val, CoreModules flag) { return (val & flag) == flag; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Modules/CoreModules.cs.meta ================================================ fileFormatVersion: 2 guid: 997bcc55eed04ab40b96d073c9ef7fd9 timeCreated: 1518177922 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Modules/ModuleRegister.cs ================================================ using System; using System.Linq; using System.Reflection; using MoonSharp.Interpreter.Compatibility; using MoonSharp.Interpreter.CoreLib; using MoonSharp.Interpreter.Platforms; namespace MoonSharp.Interpreter { /// /// Class managing modules (mostly as extension methods) /// public static class ModuleRegister { /// /// Register the core modules to a table /// /// The table. /// The modules. /// public static Table RegisterCoreModules(this Table table, CoreModules modules) { modules = Script.GlobalOptions.Platform.FilterSupportedCoreModules(modules); if (modules.Has(CoreModules.GlobalConsts)) RegisterConstants(table); if (modules.Has(CoreModules.TableIterators)) RegisterModuleType(table); if (modules.Has(CoreModules.Basic)) RegisterModuleType(table); if (modules.Has(CoreModules.Metatables)) RegisterModuleType(table); if (modules.Has(CoreModules.String)) RegisterModuleType(table); if (modules.Has(CoreModules.LoadMethods)) RegisterModuleType(table); if (modules.Has(CoreModules.Table)) RegisterModuleType(table); if (modules.Has(CoreModules.Table)) RegisterModuleType(table); if (modules.Has(CoreModules.ErrorHandling)) RegisterModuleType(table); if (modules.Has(CoreModules.Math)) RegisterModuleType(table); if (modules.Has(CoreModules.Coroutine)) RegisterModuleType(table); if (modules.Has(CoreModules.Bit32)) RegisterModuleType(table); if (modules.Has(CoreModules.Dynamic)) RegisterModuleType(table); if (modules.Has(CoreModules.OS_System)) RegisterModuleType(table); if (modules.Has(CoreModules.OS_Time)) RegisterModuleType(table); if (modules.Has(CoreModules.IO)) RegisterModuleType(table); if (modules.Has(CoreModules.Debug)) RegisterModuleType(table); if (modules.Has(CoreModules.Json)) RegisterModuleType(table); return table; } /// /// Registers the standard constants (_G, _VERSION, _MOONSHARP) to a table /// /// The table. /// public static Table RegisterConstants(this Table table) { DynValue moonsharp_table = DynValue.NewTable(table.OwnerScript); Table m = moonsharp_table.Table; table.Set("_G", DynValue.NewTable(table)); table.Set("_VERSION", DynValue.NewString(string.Format("MoonSharp {0}", Script.VERSION))); table.Set("_MOONSHARP", moonsharp_table); m.Set("version", DynValue.NewString(Script.VERSION)); m.Set("luacompat", DynValue.NewString(Script.LUA_VERSION)); m.Set("platform", DynValue.NewString(Script.GlobalOptions.Platform.GetPlatformName())); m.Set("is_aot", DynValue.NewBoolean(Script.GlobalOptions.Platform.IsRunningOnAOT())); m.Set("is_unity", DynValue.NewBoolean(PlatformAutoDetector.IsRunningOnUnity)); m.Set("is_mono", DynValue.NewBoolean(PlatformAutoDetector.IsRunningOnMono)); m.Set("is_clr4", DynValue.NewBoolean(PlatformAutoDetector.IsRunningOnClr4)); m.Set("is_pcl", DynValue.NewBoolean(PlatformAutoDetector.IsPortableFramework)); m.Set("banner", DynValue.NewString(Script.GetBanner())); return table; } /// /// Registers a module type to the specified table /// /// The table. /// The type /// /// If the module contains some incompatibility public static Table RegisterModuleType(this Table gtable, Type t) { Table table = CreateModuleNamespace(gtable, t); foreach (MethodInfo mi in Framework.Do.GetMethods(t).Where(__mi => __mi.IsStatic)) { if (mi.GetCustomAttributes(typeof(MoonSharpModuleMethodAttribute), false).ToArray().Length > 0) { MoonSharpModuleMethodAttribute attr = (MoonSharpModuleMethodAttribute)mi.GetCustomAttributes(typeof(MoonSharpModuleMethodAttribute), false).First(); if (!CallbackFunction.CheckCallbackSignature(mi, true)) throw new ArgumentException(string.Format("Method {0} does not have the right signature.", mi.Name)); #if NETFX_CORE Delegate deleg = mi.CreateDelegate(typeof(Func)); #else Delegate deleg = Delegate.CreateDelegate(typeof(Func), mi); #endif Func func = (Func)deleg; string name = (!string.IsNullOrEmpty(attr.Name)) ? attr.Name : mi.Name; table.Set(name, DynValue.NewCallback(func, name)); } else if (mi.Name == "MoonSharpInit") { object[] args = new object[2] { gtable, table }; mi.Invoke(null, args); } } foreach (FieldInfo fi in Framework.Do.GetFields(t).Where(_mi => _mi.IsStatic && _mi.GetCustomAttributes(typeof(MoonSharpModuleMethodAttribute), false).ToArray().Length > 0)) { MoonSharpModuleMethodAttribute attr = (MoonSharpModuleMethodAttribute)fi.GetCustomAttributes(typeof(MoonSharpModuleMethodAttribute), false).First(); string name = (!string.IsNullOrEmpty(attr.Name)) ? attr.Name : fi.Name; RegisterScriptField(fi, null, table, t, name); } foreach (FieldInfo fi in Framework.Do.GetFields(t).Where(_mi => _mi.IsStatic && _mi.GetCustomAttributes(typeof(MoonSharpModuleConstantAttribute), false).ToArray().Length > 0)) { MoonSharpModuleConstantAttribute attr = (MoonSharpModuleConstantAttribute)fi.GetCustomAttributes(typeof(MoonSharpModuleConstantAttribute), false).First(); string name = (!string.IsNullOrEmpty(attr.Name)) ? attr.Name : fi.Name; RegisterScriptFieldAsConst(fi, null, table, t, name); } return gtable; } private static void RegisterScriptFieldAsConst(FieldInfo fi, object o, Table table, Type t, string name) { if (fi.FieldType == typeof(string)) { string val = fi.GetValue(o) as string; table.Set(name, DynValue.NewString(val)); } else if (fi.FieldType == typeof(double)) { double val = (double)fi.GetValue(o); table.Set(name, DynValue.NewNumber(val)); } else { throw new ArgumentException(string.Format("Field {0} does not have the right type - it must be string or double.", name)); } } private static void RegisterScriptField(FieldInfo fi, object o, Table table, Type t, string name) { if (fi.FieldType != typeof(string)) { throw new ArgumentException(string.Format("Field {0} does not have the right type - it must be string.", name)); } string val = fi.GetValue(o) as string; DynValue fn = table.OwnerScript.LoadFunction(val, table, name); table.Set(name, fn); } private static Table CreateModuleNamespace(Table gtable, Type t) { MoonSharpModuleAttribute attr = (MoonSharpModuleAttribute)(Framework.Do.GetCustomAttributes(t, typeof(MoonSharpModuleAttribute), false).First()); if (string.IsNullOrEmpty(attr.Namespace)) { return gtable; } else { Table table = null; DynValue found = gtable.Get(attr.Namespace); if (found.Type == DataType.Table) { table = found.Table; } else { table = new Table(gtable.OwnerScript); gtable.Set(attr.Namespace, DynValue.NewTable(table)); } DynValue package = gtable.RawGet("package"); if (package == null || package.Type != DataType.Table) { gtable.Set("package", package = DynValue.NewTable(gtable.OwnerScript)); } DynValue loaded = package.Table.RawGet("loaded"); if (loaded == null || loaded.Type != DataType.Table) { package.Table.Set("loaded", loaded = DynValue.NewTable(gtable.OwnerScript)); } loaded.Table.Set(attr.Namespace, DynValue.NewTable(table)); return table; } } /// /// Registers a module type to the specified table /// /// The module type /// The table. /// /// If the module contains some incompatibility public static Table RegisterModuleType(this Table table) { return RegisterModuleType(table, typeof(T)); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Modules/ModuleRegister.cs.meta ================================================ fileFormatVersion: 2 guid: b1f7a1f0010c26d4e9c15989e7807055 timeCreated: 1518177923 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Modules/MoonSharpModuleAttribute.cs ================================================ using System; namespace MoonSharp.Interpreter { /// /// Marks a CLR type to be a MoonSharp module. /// Modules are the fastest way to bring interop between scripts and CLR code, albeit at the cost of a very increased /// complexity in writing them. Modules is what's used for the standard library, for maximum efficiency. /// /// Modules are basically classes containing only static methods, with the callback function signature. /// /// See and for (extension) methods used to register modules to a /// table. /// /// See for information regarding the standard callback signature along with easier ways /// to marshal methods. /// /// See for easier object marshalling. /// [AttributeUsage(AttributeTargets.Class, Inherited = false, AllowMultiple = false)] public sealed class MoonSharpModuleAttribute : Attribute { /// /// Gets or sets the namespace, that is the name of the table which will contain the defined functions. /// Can be null to be in the global table. /// public string Namespace { get; set; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Modules/MoonSharpModuleAttribute.cs.meta ================================================ fileFormatVersion: 2 guid: e70ca54e3787aae48894cea7884b8ac6 timeCreated: 1518177925 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Modules/MoonSharpModuleConstantAttribute.cs ================================================ using System; namespace MoonSharp.Interpreter { /// /// In a module type, mark fields with this attribute to have them exposed as a module constant. /// /// See for more information about modules. /// [AttributeUsage(AttributeTargets.Field, Inherited = false, AllowMultiple = false)] public sealed class MoonSharpModuleConstantAttribute : Attribute { /// /// Gets or sets the name of the constant - if different from the name of the field itself /// public string Name { get; set; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Modules/MoonSharpModuleConstantAttribute.cs.meta ================================================ fileFormatVersion: 2 guid: 3ee162adf87608f4c878365aa69658b1 timeCreated: 1518177917 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Modules/MoonSharpModuleMethodAttribute.cs ================================================ using System; namespace MoonSharp.Interpreter { /// /// In a module type, mark methods or fields with this attribute to have them exposed as module functions. /// Methods must have the signature "public static DynValue ...(ScriptExecutionContextCallbackArguments)". /// Fields must be static or const strings, with an anonymous Lua function inside. /// /// See for more information about modules. /// [AttributeUsage(AttributeTargets.Method | AttributeTargets.Field, Inherited = false, AllowMultiple = false)] public sealed class MoonSharpModuleMethodAttribute : Attribute { /// /// Gets or sets the name of the function in the module (defaults to member name) /// public string Name { get; set; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Modules/MoonSharpModuleMethodAttribute.cs.meta ================================================ fileFormatVersion: 2 guid: c9c2d6f9be3f42f45b8dc8a65f4c383c timeCreated: 1518177924 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Modules.meta ================================================ fileFormatVersion: 2 guid: 24a694f8b5c8133498784527a2b1ecce folderAsset: yes timeCreated: 1518177911 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/NameSpace_XmlHelp.cs ================================================  namespace MoonSharp.Interpreter { /// /// Namespace containing all the most commonly used classes for MoonSharp operation. /// When in doubt, refer to and classes as starting points. /// internal static class NamespaceDoc { } } namespace MoonSharp.Interpreter.CoreLib { /// /// Namespace containing the implementation of the Lua standard library, as MoonSharp modules. /// There's seldom the need to access these classes directly. /// internal static class NamespaceDoc { } } namespace MoonSharp.Interpreter.CoreLib.IO { /// /// Namespace containing userdata classes for the 'io' module /// internal static class NamespaceDoc { } } namespace MoonSharp.Interpreter.Debugging { /// /// Namespace containing classes used to support debuggers /// internal static class NamespaceDoc { } } namespace MoonSharp.Interpreter.Diagnostics { /// /// Namespace containing classes used to support self diagnostics (e.g. performance counters) /// internal static class NamespaceDoc { } } namespace MoonSharp.Interpreter.Interop { /// /// Namespace containing classes used to customize and support advanced interoperations between /// scripts and CLR code. /// internal static class NamespaceDoc { } } namespace MoonSharp.Interpreter.Interop.LuaStateInterop { /// /// Namespace containing classes used to provide a minimal support for porting code based on the classic /// "LuaState" model (e.g. code based on KopiLua, UniLua or Lua itself). /// internal static class NamespaceDoc { } } namespace MoonSharp.Interpreter.Loaders { /// /// Namespace containing classes used to customized how scripts are loaded from external files. /// internal static class NamespaceDoc { } } namespace MoonSharp.Interpreter.Platforms { /// /// Namespace containing classes used to customize how the interfacing with the operative system happens /// for the 'os' and 'io' modules, and for future modules/classes which may require OS access. /// See and . /// internal static class NamespaceDoc { } } namespace MoonSharp.Interpreter.REPL { /// /// Contains classes useful to implement REPL interpreters. /// See : /// internal static class NamespaceDoc { } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/NameSpace_XmlHelp.cs.meta ================================================ fileFormatVersion: 2 guid: bdc42e5f3e3a1774ab93873ed3f0cce1 timeCreated: 1518177923 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Options/ColonOperatorBehaviour.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace MoonSharp.Interpreter { /// /// Defines behaviour of the colon ':' operator in CLR callbacks. /// Default behaviour is for ':' being treated the same as a '.' if the functions is implemented on the CLR side (e.g. in C#). /// public enum ColonOperatorBehaviour { /// /// The colon is treated the same as the dot ('.') operator. /// TreatAsDot, /// /// The colon is treated the same as the dot ('.') operator if the first argument is userdata, as a Lua colon operator otherwise. /// TreatAsDotOnUserData, /// /// The colon is treated in the same as the Lua colon operator works. /// TreatAsColon } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Options/ColonOperatorBehaviour.cs.meta ================================================ fileFormatVersion: 2 guid: 18845d9696a3e4740842fdefc3819a9e timeCreated: 1518177915 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Options.meta ================================================ fileFormatVersion: 2 guid: 7994bed9ad886d24e86a8c4adf085720 folderAsset: yes timeCreated: 1518177911 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Platforms/DotNetCorePlatformAccessor.cs ================================================ #if DOTNET_CORE using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; using System.Diagnostics; namespace MoonSharp.Interpreter.Platforms { /// /// Class providing the IPlatformAccessor interface for .NET Core builds /// public class DotNetCorePlatformAccessor : PlatformAccessorBase { /// /// Converts a Lua string access mode to a FileAccess enum /// /// The mode. /// public static FileAccess ParseFileAccess(string mode) { mode = mode.Replace("b", ""); if (mode == "r") return FileAccess.Read; else if (mode == "r+") return FileAccess.ReadWrite; else if (mode == "w") return FileAccess.Write; else if (mode == "w+") return FileAccess.ReadWrite; else return FileAccess.ReadWrite; } /// /// Converts a Lua string access mode to a ParseFileMode enum /// /// The mode. /// public static FileMode ParseFileMode(string mode) { mode = mode.Replace("b", ""); if (mode == "r") return FileMode.Open; else if (mode == "r+") return FileMode.OpenOrCreate; else if (mode == "w") return FileMode.Create; else if (mode == "w+") return FileMode.Truncate; else return FileMode.Append; } /// /// A function used to open files in the 'io' module. /// Can have an invalid implementation if 'io' module is filtered out. /// It should return a correctly initialized Stream for the given file and access /// /// /// The filename. /// The encoding. /// The mode (as per Lua usage - e.g. 'w+', 'rb', etc.). /// public override Stream IO_OpenFile(Script script, string filename, Encoding encoding, string mode) { return new FileStream(filename, ParseFileMode(mode), ParseFileAccess(mode), FileShare.ReadWrite | FileShare.Delete); } /// /// Gets an environment variable. Must be implemented, but an implementation is allowed /// to always return null if a more meaningful implementation cannot be achieved or is /// not desired. /// /// The envvarname. /// /// The environment variable value, or null if not found /// public override string GetEnvironmentVariable(string envvarname) { return Environment.GetEnvironmentVariable(envvarname); } /// /// Gets a standard stream (stdin, stdout, stderr). /// /// The type. /// /// type public override Stream IO_GetStandardStream(StandardFileType type) { switch (type) { case StandardFileType.StdIn: return Console.OpenStandardInput(); case StandardFileType.StdOut: return Console.OpenStandardOutput(); case StandardFileType.StdErr: return Console.OpenStandardError(); default: throw new ArgumentException("type"); } } /// /// Default handler for 'print' calls. Can be customized in ScriptOptions /// /// The content. public override void DefaultPrint(string content) { Console.WriteLine(content); } /// /// Gets a temporary filename. Used in 'io' and 'os' modules. /// Can have an invalid implementation if 'io' and 'os' modules are filtered out. /// /// public override string IO_OS_GetTempFilename() { return Path.GetTempFileName(); } /// /// Exits the process, returning the specified exit code. /// Can have an invalid implementation if the 'os' module is filtered out. /// /// The exit code. public override void OS_ExitFast(int exitCode) { Environment.Exit(exitCode); } /// /// Checks if a file exists. Used by the 'os' module. /// Can have an invalid implementation if the 'os' module is filtered out. /// /// The file. /// /// True if the file exists, false otherwise. /// public override bool OS_FileExists(string file) { return File.Exists(file); } /// /// Deletes the specified file. Used by the 'os' module. /// Can have an invalid implementation if the 'os' module is filtered out. /// /// The file. public override void OS_FileDelete(string file) { File.Delete(file); } /// /// Moves the specified file. Used by the 'os' module. /// Can have an invalid implementation if the 'os' module is filtered out. /// /// The source. /// The DST. public override void OS_FileMove(string src, string dst) { #if (!PCL) && ((!UNITY_5) || UNITY_STANDALONE) File.Move(src, dst); #endif } /// /// Executes the specified command line, returning the child process exit code and blocking in the meantime. /// Can have an invalid implementation if the 'os' module is filtered out. /// /// The cmdline. /// public override int OS_Execute(string cmdline) { // This is windows only! throw new NotSupportedException("Not supported on .NET core"); //ProcessStartInfo psi = new ProcessStartInfo("cmd.exe", string.Format("/C {0}", cmdline)); //psi.ErrorDialog = false; //Process proc = Process.Start(psi); //proc.WaitForExit(); //return proc.ExitCode; } /// /// Filters the CoreModules enumeration to exclude non-supported operations /// /// The requested modules. /// /// The requested modules, with unsupported modules filtered out. /// public override CoreModules FilterSupportedCoreModules(CoreModules module) { return module; } /// /// Gets the platform name prefix /// /// /// public override string GetPlatformNamePrefix() { return "core"; } } } #endif ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Platforms/DotNetCorePlatformAccessor.cs.meta ================================================ fileFormatVersion: 2 guid: 6988801e07496d24f91e8571ec5f909a timeCreated: 1518177919 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Platforms/IPlatformAccessor.cs ================================================ using System.IO; using System.Text; namespace MoonSharp.Interpreter.Platforms { /// /// Interface to abstract all accesses made to the underlying platform (OS, framework) by the scripting engine. /// Can be used both to support "non-standard" platforms (i.e. non-posix, non-windows) and/or to sandbox the behaviour /// of the scripting engine. /// /// It's recommended that no class implement IPlatformAccessor directly, and rather extend . /// public interface IPlatformAccessor { /// /// Filters the CoreModules enumeration to exclude non-supported operations /// /// The requested modules. /// /// The requested modules, with unsupported modules filtered out. /// CoreModules FilterSupportedCoreModules(CoreModules module); /// /// Gets an environment variable. Must be implemented, but an implementation is allowed /// to always return null if a more meaningful implementation cannot be achieved or is /// not desired. /// /// The envvarname. /// /// The environment variable value, or null if not found /// string GetEnvironmentVariable(string envvarname); /// /// Determines whether the application is running in AOT (ahead-of-time) mode /// bool IsRunningOnAOT(); /// /// Gets the name of the platform (used for debug purposes). /// /// The name of the platform (used for debug purposes) string GetPlatformName(); /// /// Default handler for 'print' calls. Can be customized in ScriptOptions /// /// The content. void DefaultPrint(string content); /// /// Default handler for interactive line input calls. Can be customized in ScriptOptions. /// If a meaningful implementation cannot be provided, this method should return null. /// /// string DefaultInput(string prompt); /// /// A function used to open files in the 'io' module. /// Can have an invalid implementation if 'io' module is filtered out. /// It should return a correctly initialized Stream for the given file and access /// /// The script. /// The filename. /// The encoding. /// The mode (as per Lua usage - e.g. 'w+', 'rb', etc.). /// Stream IO_OpenFile(Script script, string filename, Encoding encoding, string mode); /// /// Gets a standard stream (stdin, stdout, stderr). /// /// The type. /// Stream IO_GetStandardStream(StandardFileType type); /// /// Gets a temporary filename. Used in 'io' and 'os' modules. /// Can have an invalid implementation if 'io' and 'os' modules are filtered out. /// /// string IO_OS_GetTempFilename(); /// /// Exits the process, returning the specified exit code. /// Can have an invalid implementation if the 'os' module is filtered out. /// /// The exit code. void OS_ExitFast(int exitCode); /// /// Checks if a file exists. Used by the 'os' module. /// Can have an invalid implementation if the 'os' module is filtered out. /// /// The file. /// True if the file exists, false otherwise. bool OS_FileExists(string file); /// /// Deletes the specified file. Used by the 'os' module. /// Can have an invalid implementation if the 'os' module is filtered out. /// /// The file. void OS_FileDelete(string file); /// /// Moves the specified file. Used by the 'os' module. /// Can have an invalid implementation if the 'os' module is filtered out. /// /// The source. /// The DST. void OS_FileMove(string src, string dst); /// /// Executes the specified command line, returning the child process exit code and blocking in the meantime. /// Can have an invalid implementation if the 'os' module is filtered out. /// /// The cmdline. /// int OS_Execute(string cmdline); } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Platforms/IPlatformAccessor.cs.meta ================================================ fileFormatVersion: 2 guid: ceb1da1a97ccb124cb121ff64df8d398 timeCreated: 1518177924 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Platforms/LimitedPlatformAccessor.cs ================================================ using System; using System.Text; namespace MoonSharp.Interpreter.Platforms { /// /// A class implementing all the bits needed to have a minimal support of a platform. /// This does not support the 'io'/'file' modules and has partial support of the 'os' module. /// public class LimitedPlatformAccessor : PlatformAccessorBase { /// /// Gets an environment variable. Must be implemented, but an implementation is allowed /// to always return null if a more meaningful implementation cannot be achieved or is /// not desired. /// /// The envvarname. /// /// The environment variable value, or null if not found /// public override string GetEnvironmentVariable(string envvarname) { return null; } /// /// Filters the CoreModules enumeration to exclude non-supported operations /// /// The requested modules. /// /// The requested modules, with unsupported modules filtered out. /// public override CoreModules FilterSupportedCoreModules(CoreModules module) { return module & (~(CoreModules.IO | CoreModules.OS_System)); } /// /// A function used to open files in the 'io' module. /// LimitedPlatformAccessorBase does NOT offer a meaningful implementation of this method and /// thus does not support 'io' and 'os' modules. /// /// /// The filename. /// The encoding. /// The mode (as per Lua usage - e.g. 'w+', 'rb', etc.). /// /// The current platform accessor does not support 'io' and 'os' operations. Provide your own implementation of platform to work around this limitation, if needed. public override System.IO.Stream IO_OpenFile(Script script, string filename, Encoding encoding, string mode) { throw new NotImplementedException("The current platform accessor does not support 'io' and 'os' operations. Provide your own implementation of platform to work around this limitation, if needed."); } /// /// Gets a standard stream (stdin, stdout, stderr). /// LimitedPlatformAccessorBase does NOT offer a meaningful implementation of this method and /// thus does not support 'io' and 'os' modules. /// /// The type. /// /// The current platform accessor does not support 'io' and 'os' operations. Provide your own implementation of platform to work around this limitation, if needed. public override System.IO.Stream IO_GetStandardStream(StandardFileType type) { throw new NotImplementedException("The current platform accessor does not support 'io' and 'os' operations. Provide your own implementation of platform to work around this limitation, if needed."); } /// /// Gets a temporary filename. Used in 'io' and 'os' modules. /// LimitedPlatformAccessorBase does NOT offer a meaningful implementation of this method and /// thus does not support 'io' and 'os' modules. /// /// /// The current platform accessor does not support 'io' and 'os' operations. Provide your own implementation of platform to work around this limitation, if needed. public override string IO_OS_GetTempFilename() { throw new NotImplementedException("The current platform accessor does not support 'io' and 'os' operations. Provide your own implementation of platform to work around this limitation, if needed."); } /// /// Exits the process, returning the specified exit code. /// LimitedPlatformAccessorBase does NOT offer a meaningful implementation of this method and /// thus does not support 'io' and 'os' modules. /// /// The exit code. /// The current platform accessor does not support 'io' and 'os' operations. Provide your own implementation of platform to work around this limitation, if needed. public override void OS_ExitFast(int exitCode) { throw new NotImplementedException("The current platform accessor does not support 'io' and 'os' operations. Provide your own implementation of platform to work around this limitation, if needed."); } /// /// Checks if a file exists. Used by the 'os' module. /// LimitedPlatformAccessorBase does NOT offer a meaningful implementation of this method and /// thus does not support 'io' and 'os' modules. /// /// The file. /// /// True if the file exists, false otherwise. /// /// The current platform accessor does not support 'io' and 'os' operations. Provide your own implementation of platform to work around this limitation, if needed. public override bool OS_FileExists(string file) { throw new NotImplementedException("The current platform accessor does not support 'io' and 'os' operations. Provide your own implementation of platform to work around this limitation, if needed."); } /// /// Deletes the specified file. Used by the 'os' module. /// LimitedPlatformAccessorBase does NOT offer a meaningful implementation of this method and /// thus does not support 'io' and 'os' modules. /// /// The file. /// The current platform accessor does not support 'io' and 'os' operations. Provide your own implementation of platform to work around this limitation, if needed. public override void OS_FileDelete(string file) { throw new NotImplementedException("The current platform accessor does not support 'io' and 'os' operations. Provide your own implementation of platform to work around this limitation, if needed."); } /// /// Moves the specified file. Used by the 'os' module. /// LimitedPlatformAccessorBase does NOT offer a meaningful implementation of this method and /// thus does not support 'io' and 'os' modules. /// /// The source. /// The DST. /// The current platform accessor does not support 'io' and 'os' operations. Provide your own implementation of platform to work around this limitation, if needed. public override void OS_FileMove(string src, string dst) { throw new NotImplementedException("The current platform accessor does not support 'io' and 'os' operations. Provide your own implementation of platform to work around this limitation, if needed."); } /// /// Executes the specified command line, returning the child process exit code and blocking in the meantime. /// LimitedPlatformAccessorBase does NOT offer a meaningful implementation of this method and /// thus does not support 'io' and 'os' modules. /// /// The cmdline. /// /// The current platform accessor does not support 'io' and 'os' operations. Provide your own implementation of platform to work around this limitation, if needed. public override int OS_Execute(string cmdline) { throw new NotImplementedException("The current platform accessor does not support 'io' and 'os' operations. Provide your own implementation of platform to work around this limitation, if needed."); } /// /// Gets the platform name prefix /// /// /// public override string GetPlatformNamePrefix() { return "limited"; } /// /// Default handler for 'print' calls. Can be customized in ScriptOptions /// /// The content. /// public override void DefaultPrint(string content) { System.Diagnostics.Debug.WriteLine(content); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Platforms/LimitedPlatformAccessor.cs.meta ================================================ fileFormatVersion: 2 guid: f451efc61d5047540b0c2fc979e7a4ce timeCreated: 1518177925 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Platforms/PlatformAccessorBase.cs ================================================ using System; using System.IO; using System.Text; namespace MoonSharp.Interpreter.Platforms { /// /// An abstract class which offers basic services on top of IPlatformAccessor to provide easier implementation of platforms. /// public abstract class PlatformAccessorBase : IPlatformAccessor { /// /// Gets the platform name prefix /// /// public abstract string GetPlatformNamePrefix(); /// /// Gets the name of the platform (used for debug purposes). /// /// /// The name of the platform (used for debug purposes) /// public string GetPlatformName() { string suffix = null; if (PlatformAutoDetector.IsRunningOnUnity) { if (PlatformAutoDetector.IsUnityNative) { suffix = "unity." + GetUnityPlatformName().ToLower() + "." + GetUnityRuntimeName(); } else { if (PlatformAutoDetector.IsRunningOnMono) suffix = "unity.dll.mono"; else suffix = "unity.dll.unknown"; } } else if (PlatformAutoDetector.IsRunningOnMono) suffix = "mono"; else suffix = "dotnet"; if (PlatformAutoDetector.IsPortableFramework) suffix = suffix + ".portable"; if (PlatformAutoDetector.IsRunningOnClr4) suffix = suffix + ".clr4"; else suffix = suffix + ".clr2"; #if DOTNET_CORE suffix += ".netcore"; #endif if (PlatformAutoDetector.IsRunningOnAOT) suffix = suffix + ".aot"; return GetPlatformNamePrefix() + "." + suffix; } private string GetUnityRuntimeName() { #if ENABLE_MONO return "mono"; #elif ENABLE_IL2CPP return "il2cpp"; #elif ENABLE_DOTNET return "dotnet"; #else return "unknown"; #endif } private string GetUnityPlatformName() { #if UNITY_STANDALONE_OSX return "OSX"; #elif UNITY_STANDALONE_WIN return "WIN"; #elif UNITY_STANDALONE_LINUX return "LINUX"; #elif UNITY_STANDALONE return "STANDALONE"; #elif UNITY_WII return "WII"; #elif UNITY_IOS return "IOS"; #elif UNITY_IPHONE return "IPHONE"; #elif UNITY_ANDROID return "ANDROID"; #elif UNITY_PS3 return "PS3"; #elif UNITY_PS4 return "PS4"; #elif UNITY_SAMSUNGTV return "SAMSUNGTV"; #elif UNITY_XBOX360 return "XBOX360"; #elif UNITY_XBOXONE return "XBOXONE"; #elif UNITY_TIZEN return "TIZEN"; #elif UNITY_TVOS return "TVOS"; #elif UNITY_WP_8_1 return "WP_8_1"; #elif UNITY_WSA_10_0 return "WSA_10_0"; #elif UNITY_WSA_8_1 return "WSA_8_1"; #elif UNITY_WSA return "WSA"; #elif UNITY_WINRT_10_0 return "WINRT_10_0"; #elif UNITY_WINRT_8_1 return "WINRT_8_1"; #elif UNITY_WINRT return "WINRT"; #elif UNITY_WEBGL return "WEBGL"; #else return "UNKNOWNHW"; #endif } /// /// Default handler for 'print' calls. Can be customized in ScriptOptions /// /// The content. public abstract void DefaultPrint(string content); /// /// DEPRECATED. /// This is kept for backward compatibility, see the overload taking a prompt as an input parameter. /// /// Default handler for interactive line input calls. Can be customized in ScriptOptions. /// If an inheriting class whants to give a meaningful implementation, this method MUST be overridden. /// /// null [Obsolete("Replace with DefaultInput(string)")] public virtual string DefaultInput() { return null; } /// /// Default handler for interactive line input calls. Can be customized in ScriptOptions. /// If an inheriting class whants to give a meaningful implementation, this method MUST be overridden. /// /// null public virtual string DefaultInput(string prompt) { #pragma warning disable 618 return DefaultInput(); #pragma warning restore 618 } /// /// A function used to open files in the 'io' module. /// Can have an invalid implementation if 'io' module is filtered out. /// It should return a correctly initialized Stream for the given file and access /// /// /// The filename. /// The encoding. /// The mode (as per Lua usage - e.g. 'w+', 'rb', etc.). /// public abstract Stream IO_OpenFile(Script script, string filename, Encoding encoding, string mode); /// /// Gets a standard stream (stdin, stdout, stderr). /// /// The type. /// public abstract Stream IO_GetStandardStream(StandardFileType type); /// /// Gets a temporary filename. Used in 'io' and 'os' modules. /// Can have an invalid implementation if 'io' and 'os' modules are filtered out. /// /// public abstract string IO_OS_GetTempFilename(); /// /// Exits the process, returning the specified exit code. /// Can have an invalid implementation if the 'os' module is filtered out. /// /// The exit code. public abstract void OS_ExitFast(int exitCode); /// /// Checks if a file exists. Used by the 'os' module. /// Can have an invalid implementation if the 'os' module is filtered out. /// /// The file. /// /// True if the file exists, false otherwise. /// public abstract bool OS_FileExists(string file); /// /// Deletes the specified file. Used by the 'os' module. /// Can have an invalid implementation if the 'os' module is filtered out. /// /// The file. public abstract void OS_FileDelete(string file); /// /// Moves the specified file. Used by the 'os' module. /// Can have an invalid implementation if the 'os' module is filtered out. /// /// The source. /// The DST. public abstract void OS_FileMove(string src, string dst); /// /// Executes the specified command line, returning the child process exit code and blocking in the meantime. /// Can have an invalid implementation if the 'os' module is filtered out. /// /// The cmdline. /// public abstract int OS_Execute(string cmdline); /// /// Filters the CoreModules enumeration to exclude non-supported operations /// /// The requested modules. /// /// The requested modules, with unsupported modules filtered out. /// public abstract CoreModules FilterSupportedCoreModules(CoreModules module); /// /// Gets an environment variable. Must be implemented, but an implementation is allowed /// to always return null if a more meaningful implementation cannot be achieved or is /// not desired. /// /// The envvarname. /// /// The environment variable value, or null if not found /// public abstract string GetEnvironmentVariable(string envvarname); /// /// Determines whether the application is running in AOT (ahead-of-time) mode /// public virtual bool IsRunningOnAOT() { return PlatformAutoDetector.IsRunningOnAOT; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Platforms/PlatformAccessorBase.cs.meta ================================================ fileFormatVersion: 2 guid: a6816856b195b844ebc87869564ce464 timeCreated: 1518177922 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Platforms/PlatformAutoDetector.cs ================================================ using System; using System.Linq; using MoonSharp.Interpreter.Interop; using MoonSharp.Interpreter.Loaders; namespace MoonSharp.Interpreter.Platforms { /// /// A static class offering properties for autodetection of system/platform details /// public static class PlatformAutoDetector { private static bool? m_IsRunningOnAOT = null; private static bool m_AutoDetectionsDone = false; /// /// Gets a value indicating whether this instance is running on mono. /// public static bool IsRunningOnMono { get; private set; } /// /// Gets a value indicating whether this instance is running on a CLR4 compatible implementation /// public static bool IsRunningOnClr4 { get; private set; } /// /// Gets a value indicating whether this instance is running on Unity-3D /// public static bool IsRunningOnUnity { get; private set; } /// /// Gets a value indicating whether this instance has been built as a Portable Class Library /// public static bool IsPortableFramework { get; private set; } /// /// Gets a value indicating whether this instance has been compiled natively in Unity (as opposite to importing a DLL). /// public static bool IsUnityNative { get; private set; } /// /// Gets a value indicating whether this instance has been compiled natively in Unity AND is using IL2CPP /// public static bool IsUnityIL2CPP { get; private set; } /// /// Gets a value indicating whether this instance is running a system using Ahead-Of-Time compilation /// and not supporting JIT. /// public static bool IsRunningOnAOT { // We do a lazy eval here, so we can wire out this code by not calling it, if necessary.. get { #if UNITY_WEBGL || UNITY_IOS || UNITY_TVOS || ENABLE_IL2CPP return true; #else if (!m_IsRunningOnAOT.HasValue) { try { System.Linq.Expressions.Expression e = System.Linq.Expressions.Expression.Constant(5, typeof(int)); var lambda = System.Linq.Expressions.Expression.Lambda>(e); lambda.Compile(); m_IsRunningOnAOT = false; } catch (Exception) { m_IsRunningOnAOT = true; } } return m_IsRunningOnAOT.Value; #endif } } private static void AutoDetectPlatformFlags() { if (m_AutoDetectionsDone) return; #if PCL IsPortableFramework = true; #if ENABLE_DOTNET IsRunningOnUnity = true; IsUnityNative = true; #endif #else #if UNITY_5 IsRunningOnUnity = true; IsUnityNative = true; #if ENABLE_IL2CPP IsUnityIL2CPP = true; #endif #elif !(NETFX_CORE) IsRunningOnUnity = AppDomain.CurrentDomain .GetAssemblies() .SelectMany(a => a.SafeGetTypes()) .Any(t => t.FullName.StartsWith("UnityEngine.")); #endif #endif IsRunningOnMono = (Type.GetType("Mono.Runtime") != null); IsRunningOnClr4 = (Type.GetType("System.Lazy`1") != null); m_AutoDetectionsDone = true; } internal static IPlatformAccessor GetDefaultPlatform() { AutoDetectPlatformFlags(); #if PCL || ENABLE_DOTNET return new LimitedPlatformAccessor(); #else if (IsRunningOnUnity) return new LimitedPlatformAccessor(); #if DOTNET_CORE return new DotNetCorePlatformAccessor(); #else return new StandardPlatformAccessor(); #endif #endif } internal static IScriptLoader GetDefaultScriptLoader() { AutoDetectPlatformFlags(); if (IsRunningOnUnity) return new UnityAssetsScriptLoader(); else { #if (DOTNET_CORE) return new FileSystemScriptLoader(); #elif (PCL || ENABLE_DOTNET || NETFX_CORE) return new InvalidScriptLoader("Portable Framework"); #else return new FileSystemScriptLoader(); #endif } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Platforms/PlatformAutoDetector.cs.meta ================================================ fileFormatVersion: 2 guid: 0e7188f8227396a4eab4a29a10cc2a68 timeCreated: 1518177914 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Platforms/StandardFileType.cs ================================================  namespace MoonSharp.Interpreter.Platforms { /// /// Enumeration of standard file handles /// public enum StandardFileType { /// /// Standard Input /// StdIn, /// /// Standard Output /// StdOut, /// /// Standard Error Output /// StdErr } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Platforms/StandardFileType.cs.meta ================================================ fileFormatVersion: 2 guid: 1a0c224e8018b4c4c960d1c01ba6f3d7 timeCreated: 1518177915 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Platforms/StandardPlatformAccessor.cs ================================================ #if (PCL) || (UNITY_5) || NETFX_CORE // Dummy implementation for PCL and Unity targets using System; using System.IO; using System.Text; namespace MoonSharp.Interpreter.Platforms { /// /// Class providing the IPlatformAccessor interface for standard full-feaured implementations. /// public class StandardPlatformAccessor : PlatformAccessorBase { public override void DefaultPrint(string content) { throw new NotImplementedException(); } public override CoreModules FilterSupportedCoreModules(CoreModules module) { throw new NotImplementedException(); } public override string GetEnvironmentVariable(string envvarname) { throw new NotImplementedException(); } public override string GetPlatformNamePrefix() { throw new NotImplementedException(); } public override Stream IO_GetStandardStream(StandardFileType type) { throw new NotImplementedException(); } public override Stream IO_OpenFile(Script script, string filename, Encoding encoding, string mode) { throw new NotImplementedException(); } public override string IO_OS_GetTempFilename() { throw new NotImplementedException(); } public override int OS_Execute(string cmdline) { throw new NotImplementedException(); } public override void OS_ExitFast(int exitCode) { throw new NotImplementedException(); } public override void OS_FileDelete(string file) { throw new NotImplementedException(); } public override bool OS_FileExists(string file) { throw new NotImplementedException(); } public override void OS_FileMove(string src, string dst) { throw new NotImplementedException(); } } } #else using System; using System.Diagnostics; using System.IO; using System.Text; namespace MoonSharp.Interpreter.Platforms { /// /// Class providing the IPlatformAccessor interface for standard full-feaured implementations. /// public class StandardPlatformAccessor : PlatformAccessorBase { /// /// Converts a Lua string access mode to a FileAccess enum /// /// The mode. /// public static FileAccess ParseFileAccess(string mode) { mode = mode.Replace("b", ""); if (mode == "r") return FileAccess.Read; else if (mode == "r+") return FileAccess.ReadWrite; else if (mode == "w") return FileAccess.Write; else if (mode == "w+") return FileAccess.ReadWrite; else return FileAccess.ReadWrite; } /// /// Converts a Lua string access mode to a ParseFileMode enum /// /// The mode. /// public static FileMode ParseFileMode(string mode) { mode = mode.Replace("b", ""); if (mode == "r") return FileMode.Open; else if (mode == "r+") return FileMode.OpenOrCreate; else if (mode == "w") return FileMode.Create; else if (mode == "w+") return FileMode.Truncate; else return FileMode.Append; } /// /// A function used to open files in the 'io' module. /// Can have an invalid implementation if 'io' module is filtered out. /// It should return a correctly initialized Stream for the given file and access /// /// /// The filename. /// The encoding. /// The mode (as per Lua usage - e.g. 'w+', 'rb', etc.). /// public override Stream IO_OpenFile(Script script, string filename, Encoding encoding, string mode) { return new FileStream(filename, ParseFileMode(mode), ParseFileAccess(mode), FileShare.ReadWrite | FileShare.Delete); } /// /// Gets an environment variable. Must be implemented, but an implementation is allowed /// to always return null if a more meaningful implementation cannot be achieved or is /// not desired. /// /// The envvarname. /// /// The environment variable value, or null if not found /// public override string GetEnvironmentVariable(string envvarname) { return Environment.GetEnvironmentVariable(envvarname); } /// /// Gets a standard stream (stdin, stdout, stderr). /// /// The type. /// /// type public override Stream IO_GetStandardStream(StandardFileType type) { switch (type) { case StandardFileType.StdIn: return Console.OpenStandardInput(); case StandardFileType.StdOut: return Console.OpenStandardOutput(); case StandardFileType.StdErr: return Console.OpenStandardError(); default: throw new ArgumentException("type"); } } /// /// Default handler for 'print' calls. Can be customized in ScriptOptions /// /// The content. public override void DefaultPrint(string content) { Console.WriteLine(content); } /// /// Gets a temporary filename. Used in 'io' and 'os' modules. /// Can have an invalid implementation if 'io' and 'os' modules are filtered out. /// /// public override string IO_OS_GetTempFilename() { return Path.GetTempFileName(); } /// /// Exits the process, returning the specified exit code. /// Can have an invalid implementation if the 'os' module is filtered out. /// /// The exit code. public override void OS_ExitFast(int exitCode) { Environment.Exit(exitCode); } /// /// Checks if a file exists. Used by the 'os' module. /// Can have an invalid implementation if the 'os' module is filtered out. /// /// The file. /// /// True if the file exists, false otherwise. /// public override bool OS_FileExists(string file) { return File.Exists(file); } /// /// Deletes the specified file. Used by the 'os' module. /// Can have an invalid implementation if the 'os' module is filtered out. /// /// The file. public override void OS_FileDelete(string file) { File.Delete(file); } /// /// Moves the specified file. Used by the 'os' module. /// Can have an invalid implementation if the 'os' module is filtered out. /// /// The source. /// The DST. public override void OS_FileMove(string src, string dst) { #if (!PCL) && ((!UNITY_5) || UNITY_STANDALONE) File.Move(src, dst); #endif } /// /// Executes the specified command line, returning the child process exit code and blocking in the meantime. /// Can have an invalid implementation if the 'os' module is filtered out. /// /// The cmdline. /// public override int OS_Execute(string cmdline) { // This is windows only! ProcessStartInfo psi = new ProcessStartInfo("cmd.exe", string.Format("/C {0}", cmdline)); psi.ErrorDialog = false; Process proc = Process.Start(psi); proc.WaitForExit(); return proc.ExitCode; } /// /// Filters the CoreModules enumeration to exclude non-supported operations /// /// The requested modules. /// /// The requested modules, with unsupported modules filtered out. /// public override CoreModules FilterSupportedCoreModules(CoreModules module) { return module; } /// /// Gets the platform name prefix /// /// /// public override string GetPlatformNamePrefix() { return "std"; } } } #endif ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Platforms/StandardPlatformAccessor.cs.meta ================================================ fileFormatVersion: 2 guid: f2bf2fb331776a649817788573fa9285 timeCreated: 1518177925 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Platforms.meta ================================================ fileFormatVersion: 2 guid: 22affad8965eff24888235ae940811df folderAsset: yes timeCreated: 1518177911 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/REPL/ReplHistoryNavigator.cs ================================================  namespace MoonSharp.Interpreter.REPL { /// /// An implementation of which supports a very basic history of recent input lines. /// public class ReplHistoryInterpreter : ReplInterpreter { string[] m_History; int m_Last = -1; int m_Navi = -1; /// /// Initializes a new instance of the class. /// /// The script. /// Size of the history. public ReplHistoryInterpreter(Script script, int historySize) : base(script) { m_History = new string[historySize]; } /// /// Evaluate a REPL command. /// This method returns the result of the computation, or null if more input is needed for having valid code. /// In case of errors, exceptions are propagated to the caller. /// /// The input. /// /// This method returns the result of the computation, or null if more input is needed for a computation. /// public override DynValue Evaluate(string input) { m_Navi = -1; m_Last = (m_Last + 1) % m_History.Length; m_History[m_Last] = input; return base.Evaluate(input); } /// /// Gets the previous item in history, or null /// public string HistoryPrev() { if (m_Navi == -1) m_Navi = m_Last; else m_Navi = ((m_Navi - 1) + m_History.Length) % m_History.Length; if (m_Navi >= 0) return m_History[m_Navi]; return null; } /// /// Gets the next item in history, or null /// public string HistoryNext() { if (m_Navi == -1) return null; else m_Navi = (m_Navi + 1) % m_History.Length; if (m_Navi >= 0) return m_History[m_Navi]; return null; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/REPL/ReplHistoryNavigator.cs.meta ================================================ fileFormatVersion: 2 guid: 3b99c21457db7c949b7c42a6ad8c9139 timeCreated: 1518177917 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/REPL/ReplInterpreter.cs ================================================ using System; namespace MoonSharp.Interpreter.REPL { /// /// This class provides a simple REPL intepreter ready to be reused in a simple way. /// public class ReplInterpreter { Script m_Script; string m_CurrentCommand = string.Empty; /// /// Initializes a new instance of the class. /// /// The script. public ReplInterpreter(Script script) { this.m_Script = script; } /// /// Gets or sets a value indicating whether this instances handle inputs starting with a "?" as a /// dynamic expression to evaluate instead of script code (likely invalid) /// public bool HandleDynamicExprs { get; set; } /// /// Gets or sets a value indicating whether this instances handle inputs starting with a "=" as a /// non-dynamic expression to evaluate (just like the Lua interpreter does by default). /// public bool HandleClassicExprsSyntax { get; set; } /// /// Gets a value indicating whether this instance has a pending command /// public virtual bool HasPendingCommand { get { return m_CurrentCommand.Length > 0; } } /// /// Gets the current pending command. /// public virtual string CurrentPendingCommand { get { return m_CurrentCommand; } } /// /// Gets the classic prompt (">" or ">>") given the current state of the interpreter /// public virtual string ClassicPrompt { get { return HasPendingCommand ? ">>" : ">"; } } /// /// Evaluate a REPL command. /// This method returns the result of the computation, or null if more input is needed for having valid code. /// In case of errors, exceptions are propagated to the caller. /// /// The input. /// This method returns the result of the computation, or null if more input is needed for a computation. public virtual DynValue Evaluate(string input) { bool isFirstLine = !HasPendingCommand; bool forced = (input == ""); m_CurrentCommand += input; if (m_CurrentCommand.Length == 0) return DynValue.Void; m_CurrentCommand += "\n"; try { DynValue result = null; if (isFirstLine && HandleClassicExprsSyntax && m_CurrentCommand.StartsWith("=")) { m_CurrentCommand = "return " + m_CurrentCommand.Substring(1); } if (isFirstLine && HandleDynamicExprs && m_CurrentCommand.StartsWith("?")) { var code = m_CurrentCommand.Substring(1); var exp = m_Script.CreateDynamicExpression(code); result = exp.Evaluate(); } else { var v = m_Script.LoadString(m_CurrentCommand, null, "stdin"); result = m_Script.Call(v); } m_CurrentCommand = ""; return result; } catch (SyntaxErrorException ex) { if (forced || !ex.IsPrematureStreamTermination) { m_CurrentCommand = ""; ex.Rethrow(); throw; } else { return null; } } catch (ScriptRuntimeException sre) { m_CurrentCommand = ""; sre.Rethrow(); throw; } catch (Exception) { m_CurrentCommand = ""; throw; } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/REPL/ReplInterpreter.cs.meta ================================================ fileFormatVersion: 2 guid: af41e2f991b5bb64797c6f015fe46bde timeCreated: 1518177923 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/REPL/ReplInterpreterScriptLoader.cs ================================================ #if !(PCL || ENABLE_DOTNET || NETFX_CORE) using System; using MoonSharp.Interpreter.Loaders; namespace MoonSharp.Interpreter.REPL { /// /// A script loader loading scripts directly from the file system (does not go through platform object) /// AND starts with module paths taken from environment variables (again, not going through the platform object). /// /// The paths are preconstructed using : /// * The MOONSHARP_PATH environment variable if it exists /// * The LUA_PATH_5_2 environment variable if MOONSHARP_PATH does not exists /// * The LUA_PATH environment variable if LUA_PATH_5_2 and MOONSHARP_PATH do not exists /// * The "?;?.lua" path if all the above fail /// /// Also, everytime a module is require(d), the "LUA_PATH" global variable is checked. If it exists, those paths /// will be used to load the module instead of the global ones. /// public class ReplInterpreterScriptLoader : FileSystemScriptLoader { /// /// Initializes a new instance of the class. /// public ReplInterpreterScriptLoader() { string env = Environment.GetEnvironmentVariable("MOONSHARP_PATH"); if (!string.IsNullOrEmpty(env)) ModulePaths = UnpackStringPaths(env); if (ModulePaths == null) { env = Environment.GetEnvironmentVariable("LUA_PATH_5_2"); if (!string.IsNullOrEmpty(env)) ModulePaths = UnpackStringPaths(env); } if (ModulePaths == null) { env = Environment.GetEnvironmentVariable("LUA_PATH"); if (!string.IsNullOrEmpty(env)) ModulePaths = UnpackStringPaths(env); } if (ModulePaths == null) { ModulePaths = UnpackStringPaths("?;?.lua"); } } /// /// Resolves the name of a module to a filename (which will later be passed to OpenScriptFile). /// The resolution happens first on paths included in the LUA_PATH global variable, and - /// if the variable does not exist - by consulting the /// ScriptOptions.ModulesPaths array. Override to provide a different behaviour. /// /// The modname. /// The global context. /// public override string ResolveModuleName(string modname, Table globalContext) { DynValue s = globalContext.RawGet("LUA_PATH"); if (s != null && s.Type == DataType.String) return ResolveModuleName(modname, UnpackStringPaths(s.String)); else return base.ResolveModuleName(modname, globalContext); } } } #endif ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/REPL/ReplInterpreterScriptLoader.cs.meta ================================================ fileFormatVersion: 2 guid: 9c8d6d5b4ba7bdf47a4dd24f5f37ea9e timeCreated: 1518177922 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/REPL.meta ================================================ fileFormatVersion: 2 guid: 91f82cdf2866a264a9033447666d8b44 folderAsset: yes timeCreated: 1518177911 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Script.cs ================================================ using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using MoonSharp.Interpreter.CoreLib; using MoonSharp.Interpreter.Debugging; using MoonSharp.Interpreter.Diagnostics; using MoonSharp.Interpreter.Execution.VM; using MoonSharp.Interpreter.IO; using MoonSharp.Interpreter.Platforms; using MoonSharp.Interpreter.Tree.Expressions; using MoonSharp.Interpreter.Tree.Fast_Interface; namespace MoonSharp.Interpreter { /// /// This class implements a MoonSharp scripting session. Multiple Script objects can coexist in the same program but cannot share /// data among themselves unless some mechanism is put in place. /// public class Script : IScriptPrivateResource { /// /// The version of the MoonSharp engine /// public const string VERSION = "2.0.0.0"; /// /// The Lua version being supported /// public const string LUA_VERSION = "5.2"; Processor m_MainProcessor = null; ByteCode m_ByteCode; List m_Sources = new List(); Table m_GlobalTable; IDebugger m_Debugger; Table[] m_TypeMetatables = new Table[(int)LuaTypeExtensions.MaxMetaTypes]; /// /// Initializes the class. /// static Script() { GlobalOptions = new ScriptGlobalOptions(); DefaultOptions = new ScriptOptions() { DebugPrint = s => { Script.GlobalOptions.Platform.DefaultPrint(s); }, DebugInput = s => { return Script.GlobalOptions.Platform.DefaultInput(s); }, CheckThreadAccess = true, ScriptLoader = PlatformAutoDetector.GetDefaultScriptLoader(), TailCallOptimizationThreshold = 65536 }; } /// /// Initializes a new instance of the clas.s /// public Script() : this(CoreModules.Preset_Default) { } /// /// Initializes a new instance of the class. /// /// The core modules to be pre-registered in the default global table. public Script(CoreModules coreModules) { Options = new ScriptOptions(DefaultOptions); PerformanceStats = new PerformanceStatistics(); Registry = new Table(this); m_ByteCode = new ByteCode(this); m_MainProcessor = new Processor(this, m_GlobalTable, m_ByteCode); m_GlobalTable = new Table(this).RegisterCoreModules(coreModules); } /// /// Gets or sets the script loader which will be used as the value of the /// ScriptLoader property for all newly created scripts. /// public static ScriptOptions DefaultOptions { get; private set; } /// /// Gets access to the script options. /// public ScriptOptions Options { get; private set; } /// /// Gets the global options, that is options which cannot be customized per-script. /// public static ScriptGlobalOptions GlobalOptions { get; private set; } /// /// Gets access to performance statistics. /// public PerformanceStatistics PerformanceStats { get; private set; } /// /// Gets the default global table for this script. Unless a different table is intentionally passed (or setfenv has been used) /// execution uses this table. /// public Table Globals { get { return m_GlobalTable; } } /// /// Loads a string containing a Lua/MoonSharp function. /// /// The code. /// The global table to bind to this chunk. /// Name of the function used to report errors, etc. /// /// A DynValue containing a function which will execute the loaded code. /// public DynValue LoadFunction(string code, Table globalTable = null, string funcFriendlyName = null) { this.CheckScriptOwnership(globalTable); string chunkName = string.Format("libfunc_{0}", funcFriendlyName ?? m_Sources.Count.ToString()); SourceCode source = new SourceCode(chunkName, code, m_Sources.Count, this); m_Sources.Add(source); int address = Loader_Fast.LoadFunction(this, source, m_ByteCode, globalTable != null || m_GlobalTable != null); SignalSourceCodeChange(source); SignalByteCodeChange(); return MakeClosure(address, globalTable ?? m_GlobalTable); } private void SignalByteCodeChange() { if (m_Debugger != null) { m_Debugger.SetByteCode(m_ByteCode.Code.Select(s => s.ToString()).ToArray()); } } private void SignalSourceCodeChange(SourceCode source) { if (m_Debugger != null) { m_Debugger.SetSourceCode(source); } } /// /// Loads a string containing a Lua/MoonSharp script. /// /// The code. /// The global table to bind to this chunk. /// Name of the code - used to report errors, etc. Also used by debuggers to locate the original source file. /// /// A DynValue containing a function which will execute the loaded code. /// public DynValue LoadString(string code, Table globalTable = null, string codeFriendlyName = null) { this.CheckScriptOwnership(globalTable); if (code.StartsWith(StringModule.BASE64_DUMP_HEADER)) { code = code.Substring(StringModule.BASE64_DUMP_HEADER.Length); byte[] data = Convert.FromBase64String(code); using (MemoryStream ms = new MemoryStream(data)) return LoadStream(ms, globalTable, codeFriendlyName); } string chunkName = string.Format("{0}", codeFriendlyName ?? "chunk_" + m_Sources.Count.ToString()); SourceCode source = new SourceCode(codeFriendlyName ?? chunkName, code, m_Sources.Count, this); m_Sources.Add(source); int address = Loader_Fast.LoadChunk(this, source, m_ByteCode, m_MainProcessor); SignalSourceCodeChange(source); SignalByteCodeChange(); return MakeClosure(address, globalTable ?? m_GlobalTable); } /// /// Loads a Lua/MoonSharp script from a System.IO.Stream. NOTE: This will *NOT* close the stream! /// /// The stream containing code. /// The global table to bind to this chunk. /// Name of the code - used to report errors, etc. /// /// A DynValue containing a function which will execute the loaded code. /// public DynValue LoadStream(Stream stream, Table globalTable = null, string codeFriendlyName = null) { this.CheckScriptOwnership(globalTable); Stream codeStream = new UndisposableStream(stream); if (!Processor.IsDumpStream(codeStream)) { using (StreamReader sr = new StreamReader(codeStream)) { string scriptCode = sr.ReadToEnd(); return LoadString(scriptCode, globalTable, codeFriendlyName); } } else { string chunkName = string.Format("{0}", codeFriendlyName ?? "dump_" + m_Sources.Count.ToString()); SourceCode source = new SourceCode(codeFriendlyName ?? chunkName, string.Format("-- This script was decoded from a binary dump - dump_{0}", m_Sources.Count), m_Sources.Count, this); m_Sources.Add(source); bool hasUpvalues; int address = m_MainProcessor.Undump(codeStream, m_Sources.Count - 1, globalTable ?? m_GlobalTable, out hasUpvalues); SignalSourceCodeChange(source); SignalByteCodeChange(); if (hasUpvalues) return MakeClosure(address, globalTable ?? m_GlobalTable); else return MakeClosure(address); } } /// /// Dumps on the specified stream. /// /// The function. /// The stream. /// /// function arg is not a function! /// or /// stream is readonly! /// or /// function arg has upvalues other than _ENV /// public void Dump(DynValue function, Stream stream) { this.CheckScriptOwnership(function); if (function.Type != DataType.Function) throw new ArgumentException("function arg is not a function!"); if (!stream.CanWrite) throw new ArgumentException("stream is readonly!"); Closure.UpvaluesType upvaluesType = function.Function.GetUpvaluesType(); if (upvaluesType == Closure.UpvaluesType.Closure) throw new ArgumentException("function arg has upvalues other than _ENV"); UndisposableStream outStream = new UndisposableStream(stream); m_MainProcessor.Dump(outStream, function.Function.EntryPointByteCodeLocation, upvaluesType == Closure.UpvaluesType.Environment); } /// /// Loads a string containing a Lua/MoonSharp script. /// /// The code. /// The global table to bind to this chunk. /// The filename to be used in error messages. /// /// A DynValue containing a function which will execute the loaded code. /// public DynValue LoadFile(string filename, Table globalContext = null, string friendlyFilename = null) { this.CheckScriptOwnership(globalContext); #pragma warning disable 618 filename = Options.ScriptLoader.ResolveFileName(filename, globalContext ?? m_GlobalTable); #pragma warning restore 618 object code = Options.ScriptLoader.LoadFile(filename, globalContext ?? m_GlobalTable); if (code is string) { return LoadString((string)code, globalContext, friendlyFilename ?? filename); } else if (code is byte[]) { using (MemoryStream ms = new MemoryStream((byte[])code)) return LoadStream(ms, globalContext, friendlyFilename ?? filename); } else if (code is Stream) { try { return LoadStream((Stream)code, globalContext, friendlyFilename ?? filename); } finally { ((Stream)code).Dispose(); } } else { if (code == null) throw new InvalidCastException("Unexpected null from IScriptLoader.LoadFile"); else throw new InvalidCastException(string.Format("Unsupported return type from IScriptLoader.LoadFile : {0}", code.GetType())); } } /// /// Loads and executes a string containing a Lua/MoonSharp script. /// /// The code. /// The global context. /// Name of the code - used to report errors, etc. Also used by debuggers to locate the original source file. /// /// A DynValue containing the result of the processing of the loaded chunk. /// public DynValue DoString(string code, Table globalContext = null, string codeFriendlyName = null) { DynValue func = LoadString(code, globalContext, codeFriendlyName); return Call(func); } /// /// Loads and executes a stream containing a Lua/MoonSharp script. /// /// The stream. /// The global context. /// Name of the code - used to report errors, etc. Also used by debuggers to locate the original source file. /// /// A DynValue containing the result of the processing of the loaded chunk. /// public DynValue DoStream(Stream stream, Table globalContext = null, string codeFriendlyName = null) { DynValue func = LoadStream(stream, globalContext, codeFriendlyName); return Call(func); } /// /// Loads and executes a file containing a Lua/MoonSharp script. /// /// The filename. /// The global context. /// Name of the code - used to report errors, etc. Also used by debuggers to locate the original source file. /// /// A DynValue containing the result of the processing of the loaded chunk. /// public DynValue DoFile(string filename, Table globalContext = null, string codeFriendlyName = null) { DynValue func = LoadFile(filename, globalContext, codeFriendlyName); return Call(func); } /// /// Runs the specified file with all possible defaults for quick experimenting. /// /// The filename. /// A DynValue containing the result of the processing of the executed script. public static DynValue RunFile(string filename) { Script S = new Script(); return S.DoFile(filename); } /// /// Runs the specified code with all possible defaults for quick experimenting. /// /// The Lua/MoonSharp code. /// A DynValue containing the result of the processing of the executed script. public static DynValue RunString(string code) { Script S = new Script(); return S.DoString(code); } /// /// Creates a closure from a bytecode address. /// /// The address. /// The env table to create a 0-upvalue /// private DynValue MakeClosure(int address, Table envTable = null) { this.CheckScriptOwnership(envTable); Closure c; if (envTable == null) { Instruction meta = m_MainProcessor.FindMeta(ref address); // if we find the meta for a new chunk, we use the value in the meta for the _ENV upvalue if ((meta != null) && (meta.NumVal2 == (int)OpCodeMetadataType.ChunkEntrypoint)) { c = new Closure(this, address, new SymbolRef[] { SymbolRef.Upvalue(WellKnownSymbols.ENV, 0) }, new DynValue[] { meta.Value }); } else { c = new Closure(this, address, new SymbolRef[0], new DynValue[0]); } } else { var syms = new SymbolRef[] { new SymbolRef() { i_Env = null, i_Index= 0, i_Name = WellKnownSymbols.ENV, i_Type = SymbolRefType.DefaultEnv }, }; var vals = new DynValue[] { DynValue.NewTable(envTable) }; c = new Closure(this, address, syms, vals); } return DynValue.NewClosure(c); } /// /// Calls the specified function. /// /// The Lua/MoonSharp function to be called /// /// The return value(s) of the function call. /// /// Thrown if function is not of DataType.Function public DynValue Call(DynValue function) { return Call(function, new DynValue[0]); } /// /// Calls the specified function. /// /// The Lua/MoonSharp function to be called /// The arguments to pass to the function. /// /// The return value(s) of the function call. /// /// Thrown if function is not of DataType.Function public DynValue Call(DynValue function, params DynValue[] args) { this.CheckScriptOwnership(function); this.CheckScriptOwnership(args); if (function.Type != DataType.Function && function.Type != DataType.ClrFunction) { DynValue metafunction = m_MainProcessor.GetMetamethod(function, "__call"); if (metafunction != null) { DynValue[] metaargs = new DynValue[args.Length + 1]; metaargs[0] = function; for (int i = 0; i < args.Length; i++) metaargs[i + 1] = args[i]; function = metafunction; args = metaargs; } else { throw new ArgumentException("function is not a function and has no __call metamethod."); } } else if (function.Type == DataType.ClrFunction) { return function.Callback.ClrCallback(this.CreateDynamicExecutionContext(function.Callback), new CallbackArguments(args, false)); } return m_MainProcessor.Call(function, args); } /// /// Calls the specified function. /// /// The Lua/MoonSharp function to be called /// The arguments to pass to the function. /// /// The return value(s) of the function call. /// /// Thrown if function is not of DataType.Function public DynValue Call(DynValue function, params object[] args) { DynValue[] dargs = new DynValue[args.Length]; for (int i = 0; i < dargs.Length; i++) dargs[i] = DynValue.FromObject(this, args[i]); return Call(function, dargs); } /// /// Calls the specified function. /// /// The Lua/MoonSharp function to be called /// /// Thrown if function is not of DataType.Function public DynValue Call(object function) { return Call(DynValue.FromObject(this, function)); } /// /// Calls the specified function. /// /// The Lua/MoonSharp function to be called /// The arguments to pass to the function. /// /// Thrown if function is not of DataType.Function public DynValue Call(object function, params object[] args) { return Call(DynValue.FromObject(this, function), args); } /// /// Creates a coroutine pointing at the specified function. /// /// The function. /// /// The coroutine handle. /// /// Thrown if function is not of DataType.Function or DataType.ClrFunction public DynValue CreateCoroutine(DynValue function) { this.CheckScriptOwnership(function); if (function.Type == DataType.Function) return m_MainProcessor.Coroutine_Create(function.Function); else if (function.Type == DataType.ClrFunction) return DynValue.NewCoroutine(new Coroutine(function.Callback)); else throw new ArgumentException("function is not of DataType.Function or DataType.ClrFunction"); } /// /// Creates a coroutine pointing at the specified function. /// /// The function. /// /// The coroutine handle. /// /// Thrown if function is not of DataType.Function or DataType.ClrFunction public DynValue CreateCoroutine(object function) { return CreateCoroutine(DynValue.FromObject(this, function)); } /// /// Gets or sets a value indicating whether the debugger is enabled. /// Note that unless a debugger attached, this property returns a /// value which might not reflect the real status of the debugger. /// Use this property if you want to disable the debugger for some /// executions. /// public bool DebuggerEnabled { get { return m_MainProcessor.DebuggerEnabled; } set { m_MainProcessor.DebuggerEnabled = value; } } /// /// Attaches a debugger. This usually should be called by the debugger itself and not by user code. /// /// The debugger object. public void AttachDebugger(IDebugger debugger) { DebuggerEnabled = true; m_Debugger = debugger; m_MainProcessor.AttachDebugger(debugger); foreach (SourceCode src in m_Sources) SignalSourceCodeChange(src); SignalByteCodeChange(); } /// /// Gets the source code. /// /// The source code identifier. /// public SourceCode GetSourceCode(int sourceCodeID) { return m_Sources[sourceCodeID]; } /// /// Gets the source code count. /// /// /// The source code count. /// public int SourceCodeCount { get { return m_Sources.Count; } } /// /// Loads a module as per the "require" Lua function. http://www.lua.org/pil/8.1.html /// /// The module name /// The global context. /// /// Raised if module is not found public DynValue RequireModule(string modname, Table globalContext = null) { this.CheckScriptOwnership(globalContext); Table globals = globalContext ?? m_GlobalTable; string filename = Options.ScriptLoader.ResolveModuleName(modname, globals); if (filename == null) throw new ScriptRuntimeException("module '{0}' not found", modname); DynValue func = LoadFile(filename, globalContext, filename); return func; } public string ResolveModuleName(string modname, Table globalContext = null) { this.CheckScriptOwnership(globalContext); Table globals = globalContext ?? m_GlobalTable; return Options.ScriptLoader.ResolveModuleName(modname, globals); } /// /// Gets a type metatable. /// /// The type. /// public Table GetTypeMetatable(DataType type) { int t = (int)type; if (t >= 0 && t < m_TypeMetatables.Length) return m_TypeMetatables[t]; return null; } /// /// Sets a type metatable. /// /// The type. Must be Nil, Boolean, Number, String or Function /// The metatable. /// Specified type not supported : + type.ToString() public void SetTypeMetatable(DataType type, Table metatable) { this.CheckScriptOwnership(metatable); int t = (int)type; if (t >= 0 && t < m_TypeMetatables.Length) m_TypeMetatables[t] = metatable; else throw new ArgumentException("Specified type not supported : " + type.ToString()); } /// /// Warms up the parser/lexer structures so that MoonSharp operations start faster. /// public static void WarmUp() { Script s = new Script(CoreModules.Basic); s.LoadString("return 1;"); } /// /// Creates a new dynamic expression. /// /// The code of the expression. /// public DynamicExpression CreateDynamicExpression(string code) { DynamicExprExpression dee = Loader_Fast.LoadDynamicExpr(this, new SourceCode("__dynamic", code, -1, this)); return new DynamicExpression(this, code, dee); } /// /// Creates a new dynamic expression which is actually quite static, returning always the same constant value. /// /// The code of the not-so-dynamic expression. /// The constant to return. /// public DynamicExpression CreateConstantDynamicExpression(string code, DynValue constant) { this.CheckScriptOwnership(constant); return new DynamicExpression(this, code, constant); } /// /// Gets an execution context exposing only partial functionality, which should be used for /// those cases where the execution engine is not really running - for example for dynamic expression /// or calls from CLR to CLR callbacks /// internal ScriptExecutionContext CreateDynamicExecutionContext(CallbackFunction func = null) { return new ScriptExecutionContext(m_MainProcessor, func, null, isDynamic: true); } /// /// MoonSharp (like Lua itself) provides a registry, a predefined table that can be used by any CLR code to /// store whatever Lua values it needs to store. /// Any CLR code can store data into this table, but it should take care to choose keys /// that are different from those used by other libraries, to avoid collisions. /// Typically, you should use as key a string GUID, a string containing your library name, or a /// userdata with the address of a CLR object in your code. /// public Table Registry { get; private set; } /// /// Gets a banner string with copyright info, link to website, version, etc. /// public static string GetBanner(string subproduct = null) { subproduct = (subproduct != null) ? (subproduct + " ") : ""; StringBuilder sb = new StringBuilder(); sb.AppendLine(string.Format("MoonSharp {0}{1} [{2}]", subproduct, Script.VERSION, Script.GlobalOptions.Platform.GetPlatformName())); sb.AppendLine("Copyright (C) 2014-2016 Marco Mastropaolo"); sb.AppendLine("http://www.moonsharp.org"); return sb.ToString(); } Script IScriptPrivateResource.OwnerScript { get { return this; } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Script.cs.meta ================================================ fileFormatVersion: 2 guid: 553a657145d96f94884df191ab49cea6 timeCreated: 1518177918 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/ScriptGlobalOptions.cs ================================================ using MoonSharp.Interpreter.Interop; using MoonSharp.Interpreter.Platforms; namespace MoonSharp.Interpreter { /// /// Class containing script global options, that is options which cannot be customized per-script. /// /// public class ScriptGlobalOptions { internal ScriptGlobalOptions() { Platform = PlatformAutoDetector.GetDefaultPlatform(); CustomConverters = new CustomConvertersCollection(); } /// /// Gets or sets the custom converters. /// public CustomConvertersCollection CustomConverters { get; set; } /// /// Gets or sets the platform abstraction to use. /// /// /// The current platform abstraction. /// public IPlatformAccessor Platform { get; set; } /// /// Gets or sets a value indicating whether interpreter exceptions should be /// re-thrown as nested exceptions. /// public bool RethrowExceptionNested { get; set; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/ScriptGlobalOptions.cs.meta ================================================ fileFormatVersion: 2 guid: c4d5ace78c03af748845e0e6a48b2f54 timeCreated: 1518177924 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/ScriptOptions.cs ================================================ using System; using System.IO; using MoonSharp.Interpreter.Loaders; namespace MoonSharp.Interpreter { /// /// This class contains options to customize behaviour of Script objects. /// public class ScriptOptions { internal ScriptOptions() { } internal ScriptOptions(ScriptOptions defaults) { this.DebugInput = defaults.DebugInput; this.DebugPrint = defaults.DebugPrint; this.UseLuaErrorLocations = defaults.UseLuaErrorLocations; this.Stdin = defaults.Stdin; this.Stdout = defaults.Stdout; this.Stderr = defaults.Stderr; this.TailCallOptimizationThreshold = defaults.TailCallOptimizationThreshold; this.ScriptLoader = defaults.ScriptLoader; this.CheckThreadAccess = defaults.CheckThreadAccess; } /// /// Gets or sets the current script-loader. /// public IScriptLoader ScriptLoader { get; set; } /// /// Gets or sets the debug print handler /// public Action DebugPrint { get; set; } /// /// Gets or sets the debug input handler (takes a prompt as an input, for interactive interpreters, like debug.debug). /// public Func DebugInput { get; set; } /// /// Gets or sets a value indicating whether error messages will use Lua error locations instead of MoonSharp /// improved ones. Use this for compatibility with legacy Lua code which parses error messages. /// public bool UseLuaErrorLocations { get; set; } /// /// Gets or sets a value which dictates the behaviour of the colon (':') operator in callbacks to CLR code. /// public ColonOperatorBehaviour ColonOperatorClrCallbackBehaviour { get; set; } /// /// Gets or sets the stream used as stdin. If null, a default stream is used. /// public Stream Stdin { get; set; } /// /// Gets or sets the stream used as stdout. If null, a default stream is used. /// public Stream Stdout { get; set; } /// /// Gets or sets the stream used as stderr. If null, a default stream is used. /// public Stream Stderr { get; set; } /// /// Gets or sets the stack depth threshold at which MoonSharp starts doing /// tail call optimizations. /// TCOs can provide the little benefit of avoiding stack overflows in corner case /// scenarios, at the expense of losing debug information and error stack traces /// in all other, more common scenarios. MoonSharp choice is to start performing /// TCOs only after a certain threshold of stack usage is reached - by default /// half the current stack depth (128K entries), thus 64K entries, on either /// the internal stacks. /// Set this to int.MaxValue to disable TCOs entirely, or to 0 to always have /// TCOs enabled. /// public int TailCallOptimizationThreshold { get; set; } /// /// Gets or sets a value indicating whether the thread check is enabled. /// A "lazy" thread check is performed everytime execution is entered to ensure that no two threads /// calls MoonSharp execution concurrently. However 1) the check is performed best effort (thus, it might /// not detect all issues) and 2) it might trigger in very odd legal situations (like, switching threads /// inside a CLR-callback without actually having concurrency. /// /// Disable this option if the thread check is giving problems in your scenario, but please check that /// you are not calling MoonSharp execution concurrently as it is not supported. /// public bool CheckThreadAccess { get; set; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/ScriptOptions.cs.meta ================================================ fileFormatVersion: 2 guid: 08d948688e4aaf649b0a255fcf7a5f3c timeCreated: 1518177914 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Serialization/Json/JsonNull.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace MoonSharp.Interpreter.Serialization.Json { /// /// UserData representing a null value in a table converted from Json /// public sealed class JsonNull { public static bool isNull() { return true; } [MoonSharpHidden] public static bool IsJsonNull(DynValue v) { return v.Type == DataType.UserData && v.UserData.Descriptor != null && v.UserData.Descriptor.Type == typeof(JsonNull); } [MoonSharpHidden] public static DynValue Create() { return UserData.CreateStatic(); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Serialization/Json/JsonNull.cs.meta ================================================ fileFormatVersion: 2 guid: 8d9e71d79b44ad04aa940bbc57922541 timeCreated: 1518177922 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Serialization/Json/JsonTableConverter.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using System.Text; using MoonSharp.Interpreter.Tree; namespace MoonSharp.Interpreter.Serialization.Json { /// /// Class performing conversions between Tables and Json. /// NOTE : the conversions are done respecting json syntax but using Lua constructs. This means mostly that: /// 1) Lua string escapes can be accepted while they are not technically valid JSON, and viceversa /// 2) Null values are represented using a static userdata of type JsonNull /// 3) Do not use it when input cannot be entirely trusted /// public static class JsonTableConverter { /// /// Converts a table to a json string /// /// The table. /// public static string TableToJson(this Table table) { StringBuilder sb = new StringBuilder(); TableToJson(sb, table); return sb.ToString(); } /// /// Tables to json. /// /// The sb. /// The table. private static void TableToJson(StringBuilder sb, Table table) { bool first = true; if (table.Length == 0) { sb.Append("{"); foreach (TablePair pair in table.Pairs) { if (pair.Key.Type == DataType.String && IsValueJsonCompatible(pair.Value)) { if (!first) sb.Append(','); ValueToJson(sb, pair.Key); sb.Append(':'); ValueToJson(sb, pair.Value); first = false; } } sb.Append("}"); } else { sb.Append("["); for (int i = 1; i <= table.Length; i++) { DynValue value = table.Get(i); if (IsValueJsonCompatible(value)) { if (!first) sb.Append(','); ValueToJson(sb, value); first = false; } } sb.Append("]"); } } /// /// Converts a generic object to JSON /// public static string ObjectToJson(object obj) { DynValue v = ObjectValueConverter.SerializeObjectToDynValue(null, obj, JsonNull.Create()); return JsonTableConverter.TableToJson(v.Table); } private static void ValueToJson(StringBuilder sb, DynValue value) { switch (value.Type) { case DataType.Boolean: sb.Append(value.Boolean ? "true" : "false"); break; case DataType.Number: sb.Append(value.Number.ToString("r")); break; case DataType.String: sb.Append(EscapeString(value.String ?? "")); break; case DataType.Table: TableToJson(sb, value.Table); break; case DataType.Nil: case DataType.Void: case DataType.UserData: default: sb.Append("null"); break; } } private static string EscapeString(string s) { s = s.Replace(@"\", @"\\"); s = s.Replace(@"/", @"\/"); s = s.Replace("\"", "\\\""); s = s.Replace("\f", @"\f"); s = s.Replace("\b", @"\b"); s = s.Replace("\n", @"\n"); s = s.Replace("\r", @"\r"); s = s.Replace("\t", @"\t"); return "\"" + s + "\""; } private static bool IsValueJsonCompatible(DynValue value) { return value.Type == DataType.Boolean || value.IsNil() || value.Type == DataType.Number || value.Type == DataType.String || value.Type == DataType.Table || (JsonNull.IsJsonNull(value)); } /// /// Converts a json string to a table /// /// The json. /// The script to which the table is assigned (null for prime tables). /// A table containing the representation of the given json. public static Table JsonToTable(string json, Script script = null) { Lexer L = new Lexer(0, json, false); if (L.Current.Type == TokenType.Brk_Open_Curly) return ParseJsonObject(L, script); else if (L.Current.Type == TokenType.Brk_Open_Square) return ParseJsonArray(L, script); else throw new SyntaxErrorException(L.Current, "Unexpected token : '{0}'", L.Current.Text); } private static void AssertToken(Lexer L, TokenType type) { if (L.Current.Type != type) throw new SyntaxErrorException(L.Current, "Unexpected token : '{0}'", L.Current.Text); } private static Table ParseJsonArray(Lexer L, Script script) { Table t = new Table(script); L.Next(); while (L.Current.Type != TokenType.Brk_Close_Square) { DynValue v = ParseJsonValue(L, script); t.Append(v); L.Next(); if (L.Current.Type == TokenType.Comma) L.Next(); } return t; } private static Table ParseJsonObject(Lexer L, Script script) { Table t = new Table(script); L.Next(); while (L.Current.Type != TokenType.Brk_Close_Curly) { AssertToken(L, TokenType.String); string key = L.Current.Text; L.Next(); AssertToken(L, TokenType.Colon); L.Next(); DynValue v = ParseJsonValue(L, script); t.Set(key, v); L.Next(); if (L.Current.Type == TokenType.Comma) L.Next(); } return t; } private static DynValue ParseJsonValue(Lexer L, Script script) { if (L.Current.Type == TokenType.Brk_Open_Curly) { Table t = ParseJsonObject(L, script); return DynValue.NewTable(t); } else if (L.Current.Type == TokenType.Brk_Open_Square) { Table t = ParseJsonArray(L, script); return DynValue.NewTable(t); } else if (L.Current.Type == TokenType.String) { return DynValue.NewString(L.Current.Text); } else if (L.Current.Type == TokenType.Number) { return DynValue.NewNumber(L.Current.GetNumberValue()).AsReadOnly(); } else if (L.Current.Type == TokenType.True) { return DynValue.True; } else if (L.Current.Type == TokenType.False) { return DynValue.False; } else if (L.Current.Type == TokenType.Name && L.Current.Text == "null") { return JsonNull.Create(); } else { throw new SyntaxErrorException(L.Current, "Unexpected token : '{0}'", L.Current.Text); } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Serialization/Json/JsonTableConverter.cs.meta ================================================ fileFormatVersion: 2 guid: 225a980cfe192c54cbff61ee434ebe0c timeCreated: 1518177916 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Serialization/Json.meta ================================================ fileFormatVersion: 2 guid: 6da74076d88dcef43af56be93be5ba5d folderAsset: yes timeCreated: 1518177913 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Serialization/ObjectValueConverter.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using System.Reflection; using System.Text; using MoonSharp.Interpreter.Compatibility; using MoonSharp.Interpreter.Interop.Converters; namespace MoonSharp.Interpreter.Serialization { public static class ObjectValueConverter { public static DynValue SerializeObjectToDynValue(Script script, object o, DynValue valueForNulls = null) { if (o == null) return valueForNulls ?? DynValue.Nil; DynValue v = ClrToScriptConversions.TryObjectToTrivialDynValue(script, o); if (v != null) return v; if (o is Enum) return DynValue.NewNumber(NumericConversions.TypeToDouble(Enum.GetUnderlyingType(o.GetType()), o)); Table t = new Table(script); System.Collections.IEnumerable ienum = o as System.Collections.IEnumerable; if (ienum != null) { foreach (object obj in ienum) { t.Append(SerializeObjectToDynValue(script, obj, valueForNulls)); } } else { Type type = o.GetType(); foreach (PropertyInfo pi in Framework.Do.GetProperties(type)) { var getter = Framework.Do.GetGetMethod(pi); var isStatic = getter.IsStatic; var obj = getter.Invoke(isStatic ? null : o, null); // convoluted workaround for --full-aot Mono execution t.Set(pi.Name, SerializeObjectToDynValue(script, obj, valueForNulls)); } } return DynValue.NewTable(t); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Serialization/ObjectValueConverter.cs.meta ================================================ fileFormatVersion: 2 guid: 763a4c0950130184c86ca9fea3fc7980 timeCreated: 1518177920 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Serialization/SerializationExtensions.cs ================================================ using System.Collections.Generic; using System.Linq; using System.Text; namespace MoonSharp.Interpreter.Serialization { /// /// /// public static class SerializationExtensions { static HashSet LUAKEYWORDS = new HashSet() { "and", "break", "do", "else", "elseif", "end", "false", "for", "function", "goto", "if", "in", "local", "nil", "not", "or", "repeat", "return", "then", "true", "until", "while" }; public static string Serialize(this Table table, bool prefixReturn = false, int tabs = 0) { if (table.OwnerScript != null) throw new ScriptRuntimeException("Table is not a prime table."); string tabstr = new string('\t', tabs); StringBuilder sb = new StringBuilder(); //sb.Append(tabstr); if (prefixReturn) sb.Append("return "); if (!table.Values.Any()) { sb.Append("${ }"); return sb.ToString(); } sb.AppendLine("${"); foreach (TablePair tp in table.Pairs) { sb.Append(tabstr); string key = IsStringIdentifierValid(tp.Key) ? tp.Key.String : "[" + SerializeValue(tp.Key, tabs + 1) +"]"; sb.AppendFormat("\t{0} = {1},\n", key, SerializeValue(tp.Value, tabs + 1)); } sb.Append(tabstr); sb.Append("}"); if (tabs == 0) sb.AppendLine(); return sb.ToString(); } private static bool IsStringIdentifierValid(DynValue dynValue) { if (dynValue.Type != DataType.String) return false; if (dynValue.String.Length == 0) return false; if (LUAKEYWORDS.Contains(dynValue.String)) return false; if (!char.IsLetter(dynValue.String[0]) && (dynValue.String[0] != '_')) return false; foreach (char c in dynValue.String) { if (!char.IsLetterOrDigit(c) && c != '_') return false; } return true; } public static string SerializeValue(this DynValue dynValue, int tabs = 0) { if (dynValue.Type == DataType.Nil || dynValue.Type == DataType.Void) return "nil"; else if (dynValue.Type == DataType.Tuple) return (dynValue.Tuple.Any() ? SerializeValue(dynValue.Tuple[0], tabs) : "nil"); else if (dynValue.Type == DataType.Number) return dynValue.Number.ToString("r"); else if (dynValue.Type == DataType.Boolean) return dynValue.Boolean ? "true" : "false"; else if (dynValue.Type == DataType.String) return EscapeString(dynValue.String ?? ""); else if (dynValue.Type == DataType.Table && dynValue.Table.OwnerScript == null) return Serialize(dynValue.Table, false, tabs); else throw new ScriptRuntimeException("Value is not a primitive value or a prime table."); } private static string EscapeString(string s) { s = s.Replace(@"\", @"\\"); s = s.Replace("\n", @"\n"); s = s.Replace("\r", @"\r"); s = s.Replace("\t", @"\t"); s = s.Replace("\a", @"\a"); s = s.Replace("\f", @"\f"); s = s.Replace("\b", @"\b"); s = s.Replace("\v", @"\v"); s = s.Replace("\"", "\\\""); s = s.Replace("\'", @"\'"); return "\"" + s + "\""; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Serialization/SerializationExtensions.cs.meta ================================================ fileFormatVersion: 2 guid: 4750d18c66513264d880be8459518f19 timeCreated: 1518177918 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Serialization.meta ================================================ fileFormatVersion: 2 guid: a5068a1bd87cc8b4586370d4abcd9861 folderAsset: yes timeCreated: 1518177911 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Expression_.cs ================================================ using System.Collections.Generic; using MoonSharp.Interpreter.Execution; using MoonSharp.Interpreter.Tree.Expressions; namespace MoonSharp.Interpreter.Tree { abstract class Expression : NodeBase { public Expression(ScriptLoadingContext lcontext) : base(lcontext) { } public virtual string GetFriendlyDebugName() { return null; } public abstract DynValue Eval(ScriptExecutionContext context); public virtual SymbolRef FindDynamic(ScriptExecutionContext context) { return null; } internal static List ExprListAfterFirstExpr(ScriptLoadingContext lcontext, Expression expr1) { List exps = new List(); exps.Add(expr1); while ((lcontext.Lexer.Current.Type == TokenType.Comma)) { lcontext.Lexer.Next(); exps.Add(Expr(lcontext)); } return exps; } internal static List ExprList(ScriptLoadingContext lcontext) { List exps = new List(); while (true) { exps.Add(Expr(lcontext)); if (lcontext.Lexer.Current.Type != TokenType.Comma) break; lcontext.Lexer.Next(); } return exps; } internal static Expression Expr(ScriptLoadingContext lcontext) { return SubExpr(lcontext, true); } internal static Expression SubExpr(ScriptLoadingContext lcontext, bool isPrimary) { Expression e = null; Token T = lcontext.Lexer.Current; if (T.IsUnaryOperator()) { lcontext.Lexer.Next(); e = SubExpr(lcontext, false); // check for power operator -- it be damned forever and ever for being higher priority than unary ops Token unaryOp = T; T = lcontext.Lexer.Current; if (isPrimary && T.Type == TokenType.Op_Pwr) { List powerChain = new List(); powerChain.Add(e); while (isPrimary && T.Type == TokenType.Op_Pwr) { lcontext.Lexer.Next(); powerChain.Add(SubExpr(lcontext, false)); T = lcontext.Lexer.Current; } e = powerChain[powerChain.Count - 1]; for (int i = powerChain.Count - 2; i >= 0; i--) { e = BinaryOperatorExpression.CreatePowerExpression(powerChain[i], e, lcontext); } } e = new UnaryOperatorExpression(lcontext, e, unaryOp); } else { e = SimpleExp(lcontext); } T = lcontext.Lexer.Current; if (isPrimary && T.IsBinaryOperator()) { object chain = BinaryOperatorExpression.BeginOperatorChain(); BinaryOperatorExpression.AddExpressionToChain(chain, e); while (T.IsBinaryOperator()) { BinaryOperatorExpression.AddOperatorToChain(chain, T); lcontext.Lexer.Next(); Expression right = SubExpr(lcontext, false); BinaryOperatorExpression.AddExpressionToChain(chain, right); T = lcontext.Lexer.Current; } e = BinaryOperatorExpression.CommitOperatorChain(chain, lcontext); } return e; } internal static Expression SimpleExp(ScriptLoadingContext lcontext) { Token t = lcontext.Lexer.Current; switch (t.Type) { case TokenType.Number: case TokenType.Number_Hex: case TokenType.Number_HexFloat: case TokenType.String: case TokenType.String_Long: case TokenType.Nil: case TokenType.True: case TokenType.False: return new LiteralExpression(lcontext, t); case TokenType.VarArgs: return new SymbolRefExpression(t, lcontext); case TokenType.Brk_Open_Curly: case TokenType.Brk_Open_Curly_Shared: return new TableConstructor(lcontext, t.Type == TokenType.Brk_Open_Curly_Shared); case TokenType.Function: lcontext.Lexer.Next(); return new FunctionDefinitionExpression(lcontext, false, false); case TokenType.Lambda: return new FunctionDefinitionExpression(lcontext, false, true); default: return PrimaryExp(lcontext); } } /// /// Primaries the exp. /// /// The lcontext. /// internal static Expression PrimaryExp(ScriptLoadingContext lcontext) { Expression e = PrefixExp(lcontext); while (true) { Token T = lcontext.Lexer.Current; Token thisCallName = null; switch (T.Type) { case TokenType.Dot: { lcontext.Lexer.Next(); Token name = CheckTokenType(lcontext, TokenType.Name); e = new IndexExpression(e, name.Text, lcontext); } break; case TokenType.Brk_Open_Square: { Token openBrk = lcontext.Lexer.Current; lcontext.Lexer.Next(); // skip bracket Expression index = Expr(lcontext); // support moonsharp multiple indexers for userdata if (lcontext.Lexer.Current.Type == TokenType.Comma) { var explist = ExprListAfterFirstExpr(lcontext, index); index = new ExprListExpression(explist, lcontext); } CheckMatch(lcontext, openBrk, TokenType.Brk_Close_Square, "]"); e = new IndexExpression(e, index, lcontext); } break; case TokenType.Colon: lcontext.Lexer.Next(); thisCallName = CheckTokenType(lcontext, TokenType.Name); goto case TokenType.Brk_Open_Round; case TokenType.Brk_Open_Round: case TokenType.String: case TokenType.String_Long: case TokenType.Brk_Open_Curly: case TokenType.Brk_Open_Curly_Shared: e = new FunctionCallExpression(lcontext, e, thisCallName); break; default: return e; } } } private static Expression PrefixExp(ScriptLoadingContext lcontext) { Token T = lcontext.Lexer.Current; switch (T.Type) { case TokenType.Brk_Open_Round: lcontext.Lexer.Next(); Expression e = Expr(lcontext); e = new AdjustmentExpression(lcontext, e); CheckMatch(lcontext, T, TokenType.Brk_Close_Round, ")"); return e; case TokenType.Name: return new SymbolRefExpression(T, lcontext); default: throw new SyntaxErrorException(T, "unexpected symbol near '{0}'", T.Text) { IsPrematureStreamTermination = (T.Type == TokenType.Eof) }; } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Expression_.cs.meta ================================================ fileFormatVersion: 2 guid: facf68998e0f7a84eb3ec508cb01afe1 timeCreated: 1518177926 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Expressions/AdjustmentExpression.cs ================================================ using MoonSharp.Interpreter.Execution; namespace MoonSharp.Interpreter.Tree.Expressions { class AdjustmentExpression : Expression { private Expression expression; public AdjustmentExpression(ScriptLoadingContext lcontext, Expression exp) : base(lcontext) { expression = exp; } public override void Compile(Execution.VM.ByteCode bc) { expression.Compile(bc); bc.Emit_Scalar(); } public override DynValue Eval(ScriptExecutionContext context) { return expression.Eval(context).ToScalar(); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Expressions/AdjustmentExpression.cs.meta ================================================ fileFormatVersion: 2 guid: 8e54f05cdf86e0849b7ad9380e30835c timeCreated: 1518177922 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Expressions/BinaryOperatorExpression.cs ================================================ using System; using MoonSharp.Interpreter.Execution; using MoonSharp.Interpreter.Execution.VM; namespace MoonSharp.Interpreter.Tree.Expressions { /// /// /// class BinaryOperatorExpression : Expression { [Flags] private enum Operator { NotAnOperator = 0, Or = 0x1, And = 0x2, Less = 0x4, Greater = 0x8, LessOrEqual = 0x10, GreaterOrEqual = 0x20, NotEqual = 0x40, Equal = 0x80, StrConcat = 0x100, Add = 0x200, Sub = 0x400, Mul = 0x1000, Div = 0x2000, Mod = 0x4000, Power = 0x8000, } class Node { public Expression Expr; public Operator Op; public Node Prev; public Node Next; } class LinkedList { public Node Nodes; public Node Last; public Operator OperatorMask; } const Operator POWER = Operator.Power; const Operator MUL_DIV_MOD = Operator.Mul | Operator.Div | Operator.Mod; const Operator ADD_SUB = Operator.Add | Operator.Sub; const Operator STRCAT = Operator.StrConcat; const Operator COMPARES = Operator.Less | Operator.Greater | Operator.GreaterOrEqual | Operator.LessOrEqual | Operator.Equal | Operator.NotEqual; const Operator LOGIC_AND = Operator.And; const Operator LOGIC_OR = Operator.Or; public static object BeginOperatorChain() { return new LinkedList(); } public static void AddExpressionToChain(object chain, Expression exp) { LinkedList list = (LinkedList)chain; Node node = new Node() { Expr = exp }; AddNode(list, node); } public static void AddOperatorToChain(object chain, Token op) { LinkedList list = (LinkedList)chain; Node node = new Node() { Op = ParseBinaryOperator(op) }; AddNode(list, node); } public static Expression CommitOperatorChain(object chain, ScriptLoadingContext lcontext) { return CreateSubTree((LinkedList)chain, lcontext); } public static Expression CreatePowerExpression(Expression op1, Expression op2, ScriptLoadingContext lcontext) { return new BinaryOperatorExpression(op1, op2, Operator.Power, lcontext); } private static void AddNode(LinkedList list, Node node) { list.OperatorMask |= node.Op; if (list.Nodes == null) { list.Nodes = list.Last = node; } else { list.Last.Next = node; node.Prev = list.Last; list.Last = node; } } /// /// Creates a sub tree of binary expressions /// private static Expression CreateSubTree(LinkedList list, ScriptLoadingContext lcontext) { Operator opfound = list.OperatorMask; Node nodes = list.Nodes; if ((opfound & POWER) != 0) nodes = PrioritizeRightAssociative(nodes, lcontext, POWER); if ((opfound & MUL_DIV_MOD) != 0) nodes = PrioritizeLeftAssociative(nodes, lcontext, MUL_DIV_MOD); if ((opfound & ADD_SUB) != 0) nodes = PrioritizeLeftAssociative(nodes, lcontext, ADD_SUB); if ((opfound & STRCAT) != 0) nodes = PrioritizeRightAssociative(nodes, lcontext, STRCAT); if ((opfound & COMPARES) != 0) nodes = PrioritizeLeftAssociative(nodes, lcontext, COMPARES); if ((opfound & LOGIC_AND) != 0) nodes = PrioritizeLeftAssociative(nodes, lcontext, LOGIC_AND); if ((opfound & LOGIC_OR) != 0) nodes = PrioritizeLeftAssociative(nodes, lcontext, LOGIC_OR); if (nodes.Next != null || nodes.Prev != null) throw new InternalErrorException("Expression reduction didn't work! - 1"); if (nodes.Expr == null) throw new InternalErrorException("Expression reduction didn't work! - 2"); return nodes.Expr; } private static Node PrioritizeLeftAssociative(Node nodes, ScriptLoadingContext lcontext, Operator operatorsToFind) { for (Node N = nodes; N != null; N = N.Next) { Operator o = N.Op; if ((o & operatorsToFind) != 0) { N.Op = Operator.NotAnOperator; N.Expr = new BinaryOperatorExpression(N.Prev.Expr, N.Next.Expr, o, lcontext); N.Prev = N.Prev.Prev; N.Next = N.Next.Next; if (N.Next != null) N.Next.Prev = N; if (N.Prev != null) N.Prev.Next = N; else nodes = N; } } return nodes; } private static Node PrioritizeRightAssociative(Node nodes, ScriptLoadingContext lcontext, Operator operatorsToFind) { Node last; for (last = nodes; last.Next != null; last = last.Next) { } for (Node N = last; N != null; N = N.Prev) { Operator o = N.Op; if ((o & operatorsToFind) != 0) { N.Op = Operator.NotAnOperator; N.Expr = new BinaryOperatorExpression(N.Prev.Expr, N.Next.Expr, o, lcontext); N.Prev = N.Prev.Prev; N.Next = N.Next.Next; if (N.Next != null) N.Next.Prev = N; if (N.Prev != null) N.Prev.Next = N; else nodes = N; } } return nodes; } private static Operator ParseBinaryOperator(Token token) { switch (token.Type) { case TokenType.Or: return Operator.Or; case TokenType.And: return Operator.And; case TokenType.Op_LessThan: return Operator.Less; case TokenType.Op_GreaterThan: return Operator.Greater; case TokenType.Op_LessThanEqual: return Operator.LessOrEqual; case TokenType.Op_GreaterThanEqual: return Operator.GreaterOrEqual; case TokenType.Op_NotEqual: return Operator.NotEqual; case TokenType.Op_Equal: return Operator.Equal; case TokenType.Op_Concat: return Operator.StrConcat; case TokenType.Op_Add: return Operator.Add; case TokenType.Op_MinusOrSub: return Operator.Sub; case TokenType.Op_Mul: return Operator.Mul; case TokenType.Op_Div: return Operator.Div; case TokenType.Op_Mod: return Operator.Mod; case TokenType.Op_Pwr: return Operator.Power; default: throw new InternalErrorException("Unexpected binary operator '{0}'", token.Text); } } Expression m_Exp1, m_Exp2; Operator m_Operator; private BinaryOperatorExpression(Expression exp1, Expression exp2, Operator op, ScriptLoadingContext lcontext) : base (lcontext) { m_Exp1 = exp1; m_Exp2 = exp2; m_Operator = op; } private static bool ShouldInvertBoolean(Operator op) { return (op == Operator.NotEqual) || (op == Operator.GreaterOrEqual) || (op == Operator.Greater); } private static OpCode OperatorToOpCode(Operator op) { switch (op) { case Operator.Less: case Operator.GreaterOrEqual: return OpCode.Less; case Operator.LessOrEqual: case Operator.Greater: return OpCode.LessEq; case Operator.Equal: case Operator.NotEqual: return OpCode.Eq; case Operator.StrConcat: return OpCode.Concat; case Operator.Add: return OpCode.Add; case Operator.Sub: return OpCode.Sub; case Operator.Mul: return OpCode.Mul; case Operator.Div: return OpCode.Div; case Operator.Mod: return OpCode.Mod; case Operator.Power: return OpCode.Power; default: throw new InternalErrorException("Unsupported operator {0}", op); } } public override void Compile(Execution.VM.ByteCode bc) { m_Exp1.Compile(bc); if (m_Operator == Operator.Or) { Instruction i = bc.Emit_Jump(OpCode.JtOrPop, -1); m_Exp2.Compile(bc); i.NumVal = bc.GetJumpPointForNextInstruction(); return; } if (m_Operator == Operator.And) { Instruction i = bc.Emit_Jump(OpCode.JfOrPop, -1); m_Exp2.Compile(bc); i.NumVal = bc.GetJumpPointForNextInstruction(); return; } if (m_Exp2 != null) { m_Exp2.Compile(bc); } bc.Emit_Operator(OperatorToOpCode(m_Operator)); if (ShouldInvertBoolean(m_Operator)) bc.Emit_Operator(OpCode.Not); } public override DynValue Eval(ScriptExecutionContext context) { DynValue v1 = m_Exp1.Eval(context).ToScalar(); if (m_Operator == Operator.Or) { if (v1.CastToBool()) return v1; else return m_Exp2.Eval(context).ToScalar(); } if (m_Operator == Operator.And) { if (!v1.CastToBool()) return v1; else return m_Exp2.Eval(context).ToScalar(); } DynValue v2 = m_Exp2.Eval(context).ToScalar(); if ((m_Operator & COMPARES) != 0) { return DynValue.NewBoolean(EvalComparison(v1, v2, m_Operator)); } else if (m_Operator == Operator.StrConcat) { string s1 = v1.CastToString(); string s2 = v2.CastToString(); if (s1 == null || s2 == null) throw new DynamicExpressionException("Attempt to perform concatenation on non-strings."); return DynValue.NewString(s1 + s2); } else { return DynValue.NewNumber(EvalArithmetic(v1, v2)); } } private double EvalArithmetic(DynValue v1, DynValue v2) { double? nd1 = v1.CastToNumber(); double? nd2 = v2.CastToNumber(); if (nd1 == null || nd2 == null) throw new DynamicExpressionException("Attempt to perform arithmetic on non-numbers."); double d1 = nd1.Value; double d2 = nd2.Value; switch (m_Operator) { case Operator.Add: return d1 + d2; case Operator.Sub: return d1 - d2; case Operator.Mul: return d1 * d2; case Operator.Div: return d1 / d2; case Operator.Mod: { double mod = Math.IEEERemainder(d1, d2); if (mod < 0) mod += d2; return mod; } default: throw new DynamicExpressionException("Unsupported operator {0}", m_Operator); } } private bool EvalComparison(DynValue l, DynValue r, Operator op) { switch (op) { case Operator.Less: if (l.Type == DataType.Number && r.Type == DataType.Number) { return (l.Number < r.Number); } else if (l.Type == DataType.String && r.Type == DataType.String) { return (l.String.CompareTo(r.String) < 0); } else { throw new DynamicExpressionException("Attempt to compare non-numbers, non-strings."); } case Operator.LessOrEqual: if (l.Type == DataType.Number && r.Type == DataType.Number) { return (l.Number <= r.Number); } else if (l.Type == DataType.String && r.Type == DataType.String) { return (l.String.CompareTo(r.String) <= 0); } else { throw new DynamicExpressionException("Attempt to compare non-numbers, non-strings."); } case Operator.Equal: if (object.ReferenceEquals(r, l)) { return true; } else if (r.Type != l.Type) { if ((l.Type == DataType.Nil && r.Type == DataType.Void) || (l.Type == DataType.Void && r.Type == DataType.Nil)) return true; else return false; } else { return r.Equals(l); } case Operator.Greater: return !EvalComparison(l, r, Operator.LessOrEqual); case Operator.GreaterOrEqual: return !EvalComparison(l, r, Operator.Less); case Operator.NotEqual: return !EvalComparison(l, r, Operator.Equal); default: throw new DynamicExpressionException("Unsupported operator {0}", op); } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Expressions/BinaryOperatorExpression.cs.meta ================================================ fileFormatVersion: 2 guid: f7bad066524180646a676d09f76e00ac timeCreated: 1518177925 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Expressions/DynamicExprExpression.cs ================================================ using System; using MoonSharp.Interpreter.Execution; namespace MoonSharp.Interpreter.Tree.Expressions { class DynamicExprExpression : Expression { Expression m_Exp; public DynamicExprExpression(Expression exp, ScriptLoadingContext lcontext) : base(lcontext) { lcontext.Anonymous = true; m_Exp = exp; } public override DynValue Eval(ScriptExecutionContext context) { return m_Exp.Eval(context); } public override void Compile(Execution.VM.ByteCode bc) { throw new InvalidOperationException(); } public override SymbolRef FindDynamic(ScriptExecutionContext context) { return m_Exp.FindDynamic(context); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Expressions/DynamicExprExpression.cs.meta ================================================ fileFormatVersion: 2 guid: 24ca8bb70188fbf428d8158a1e88c9a9 timeCreated: 1518177916 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Expressions/ExprListExpression.cs ================================================ using System.Collections.Generic; using MoonSharp.Interpreter.Execution; namespace MoonSharp.Interpreter.Tree.Expressions { class ExprListExpression : Expression { List expressions; public ExprListExpression(List exps, ScriptLoadingContext lcontext) : base(lcontext) { expressions = exps; } public Expression[] GetExpressions() { return expressions.ToArray(); } public override void Compile(Execution.VM.ByteCode bc) { foreach (var exp in expressions) exp.Compile(bc); if (expressions.Count > 1) bc.Emit_MkTuple(expressions.Count); } public override DynValue Eval(ScriptExecutionContext context) { if (expressions.Count >= 1) return expressions[0].Eval(context); return DynValue.Void; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Expressions/ExprListExpression.cs.meta ================================================ fileFormatVersion: 2 guid: 0d5f037df11668c45b1887be47f70e0d timeCreated: 1518177914 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Expressions/FunctionCallExpression.cs ================================================ using System.Collections.Generic; using MoonSharp.Interpreter.Debugging; using MoonSharp.Interpreter.Execution; namespace MoonSharp.Interpreter.Tree.Expressions { class FunctionCallExpression : Expression { List m_Arguments; Expression m_Function; string m_Name; string m_DebugErr; internal SourceRef SourceRef { get; private set; } public FunctionCallExpression(ScriptLoadingContext lcontext, Expression function, Token thisCallName) : base(lcontext) { Token callToken = thisCallName ?? lcontext.Lexer.Current; m_Name = thisCallName != null ? thisCallName.Text : null; m_DebugErr = function.GetFriendlyDebugName(); m_Function = function; switch (lcontext.Lexer.Current.Type) { case TokenType.Brk_Open_Round: Token openBrk = lcontext.Lexer.Current; lcontext.Lexer.Next(); Token t = lcontext.Lexer.Current; if (t.Type == TokenType.Brk_Close_Round) { m_Arguments = new List(); SourceRef = callToken.GetSourceRef(t); lcontext.Lexer.Next(); } else { m_Arguments = ExprList(lcontext); SourceRef = callToken.GetSourceRef(CheckMatch(lcontext, openBrk, TokenType.Brk_Close_Round, ")")); } break; case TokenType.String: case TokenType.String_Long: { m_Arguments = new List(); Expression le = new LiteralExpression(lcontext, lcontext.Lexer.Current); m_Arguments.Add(le); SourceRef = callToken.GetSourceRef(lcontext.Lexer.Current); } break; case TokenType.Brk_Open_Curly: case TokenType.Brk_Open_Curly_Shared: { m_Arguments = new List(); m_Arguments.Add(new TableConstructor(lcontext, lcontext.Lexer.Current.Type == TokenType.Brk_Open_Curly_Shared)); SourceRef = callToken.GetSourceRefUpTo(lcontext.Lexer.Current); } break; default: throw new SyntaxErrorException(lcontext.Lexer.Current, "function arguments expected") { IsPrematureStreamTermination = (lcontext.Lexer.Current.Type == TokenType.Eof) }; } } public override void Compile(Execution.VM.ByteCode bc) { m_Function.Compile(bc); int argslen = m_Arguments.Count; if (!string.IsNullOrEmpty(m_Name)) { bc.Emit_Copy(0); bc.Emit_Index(DynValue.NewString(m_Name), true); bc.Emit_Swap(0, 1); ++argslen; } for (int i = 0; i < m_Arguments.Count; i++) m_Arguments[i].Compile(bc); if (!string.IsNullOrEmpty(m_Name)) { bc.Emit_ThisCall(argslen, m_DebugErr); } else { bc.Emit_Call(argslen, m_DebugErr); } } public override DynValue Eval(ScriptExecutionContext context) { throw new DynamicExpressionException("Dynamic Expressions cannot call functions."); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Expressions/FunctionCallExpression.cs.meta ================================================ fileFormatVersion: 2 guid: 11a774b2e6433074ea45b69464891891 timeCreated: 1518177914 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Expressions/FunctionDefinitionExpression.cs ================================================ using System; using System.Collections.Generic; using MoonSharp.Interpreter.Debugging; using MoonSharp.Interpreter.Execution; using MoonSharp.Interpreter.Execution.VM; using MoonSharp.Interpreter.Tree.Statements; namespace MoonSharp.Interpreter.Tree.Expressions { class FunctionDefinitionExpression : Expression, IClosureBuilder { SymbolRef[] m_ParamNames = null; Statement m_Statement; RuntimeScopeFrame m_StackFrame; List m_Closure = new List(); bool m_HasVarArgs = false; Instruction m_ClosureInstruction = null; bool m_UsesGlobalEnv; SymbolRef m_Env; SourceRef m_Begin, m_End; public FunctionDefinitionExpression(ScriptLoadingContext lcontext, bool usesGlobalEnv) : this(lcontext, false, usesGlobalEnv, false) { } public FunctionDefinitionExpression(ScriptLoadingContext lcontext, bool pushSelfParam, bool isLambda) : this(lcontext, pushSelfParam, false, isLambda) { } private FunctionDefinitionExpression(ScriptLoadingContext lcontext, bool pushSelfParam, bool usesGlobalEnv, bool isLambda) : base(lcontext) { if (m_UsesGlobalEnv = usesGlobalEnv) CheckTokenType(lcontext, TokenType.Function); // here lexer should be at the '(' or at the '|' Token openRound = CheckTokenType(lcontext, isLambda ? TokenType.Lambda : TokenType.Brk_Open_Round); List paramnames = BuildParamList(lcontext, pushSelfParam, openRound, isLambda); // here lexer is at first token of body m_Begin = openRound.GetSourceRefUpTo(lcontext.Lexer.Current); // create scope lcontext.Scope.PushFunction(this, m_HasVarArgs); if (m_UsesGlobalEnv) { m_Env = lcontext.Scope.DefineLocal(WellKnownSymbols.ENV); } else { lcontext.Scope.ForceEnvUpValue(); } m_ParamNames = DefineArguments(paramnames, lcontext); if(isLambda) m_Statement = CreateLambdaBody(lcontext); else m_Statement = CreateBody(lcontext); m_StackFrame = lcontext.Scope.PopFunction(); lcontext.Source.Refs.Add(m_Begin); lcontext.Source.Refs.Add(m_End); } private Statement CreateLambdaBody(ScriptLoadingContext lcontext) { Token start = lcontext.Lexer.Current; Expression e = Expression.Expr(lcontext); Token end = lcontext.Lexer.Current; SourceRef sref = start.GetSourceRefUpTo(end); Statement s = new ReturnStatement(lcontext, e, sref); return s; } private Statement CreateBody(ScriptLoadingContext lcontext) { Statement s = new CompositeStatement(lcontext); if (lcontext.Lexer.Current.Type != TokenType.End) throw new SyntaxErrorException(lcontext.Lexer.Current, "'end' expected near '{0}'", lcontext.Lexer.Current.Text) { IsPrematureStreamTermination = (lcontext.Lexer.Current.Type == TokenType.Eof) }; m_End = lcontext.Lexer.Current.GetSourceRef(); lcontext.Lexer.Next(); return s; } private List BuildParamList(ScriptLoadingContext lcontext, bool pushSelfParam, Token openBracketToken, bool isLambda) { TokenType closeToken = isLambda ? TokenType.Lambda : TokenType.Brk_Close_Round; List paramnames = new List(); // method decls with ':' must push an implicit 'self' param if (pushSelfParam) paramnames.Add("self"); while (lcontext.Lexer.Current.Type != closeToken) { Token t = lcontext.Lexer.Current; if (t.Type == TokenType.Name) { paramnames.Add(t.Text); } else if (t.Type == TokenType.VarArgs) { m_HasVarArgs = true; paramnames.Add(WellKnownSymbols.VARARGS); } else UnexpectedTokenType(t); lcontext.Lexer.Next(); t = lcontext.Lexer.Current; if (t.Type == TokenType.Comma) { lcontext.Lexer.Next(); } else { CheckMatch(lcontext, openBracketToken, closeToken, isLambda ? "|" : ")"); break; } } if (lcontext.Lexer.Current.Type == closeToken) lcontext.Lexer.Next(); return paramnames; } private SymbolRef[] DefineArguments(List paramnames, ScriptLoadingContext lcontext) { HashSet names = new HashSet(); SymbolRef[] ret = new SymbolRef[paramnames.Count]; for (int i = paramnames.Count - 1; i >= 0; i--) { if (!names.Add(paramnames[i])) paramnames[i] = paramnames[i] + "@" + i.ToString(); ret[i] = lcontext.Scope.DefineLocal(paramnames[i]); } return ret; } public SymbolRef CreateUpvalue(BuildTimeScope scope, SymbolRef symbol) { for (int i = 0; i < m_Closure.Count; i++) { if (m_Closure[i].i_Name == symbol.i_Name) { return SymbolRef.Upvalue(symbol.i_Name, i); } } m_Closure.Add(symbol); if (m_ClosureInstruction != null) { m_ClosureInstruction.SymbolList = m_Closure.ToArray(); } return SymbolRef.Upvalue(symbol.i_Name, m_Closure.Count - 1); } public override DynValue Eval(ScriptExecutionContext context) { throw new DynamicExpressionException("Dynamic Expressions cannot define new functions."); } public int CompileBody(ByteCode bc, string friendlyName) { string funcName = friendlyName ?? ("<" + this.m_Begin.FormatLocation(bc.Script, true) + ">"); bc.PushSourceRef(m_Begin); Instruction I = bc.Emit_Jump(OpCode.Jump, -1); Instruction meta = bc.Emit_Meta(funcName, OpCodeMetadataType.FunctionEntrypoint); int metaip = bc.GetJumpPointForLastInstruction(); bc.Emit_BeginFn(m_StackFrame); bc.LoopTracker.Loops.Push(new LoopBoundary()); int entryPoint = bc.GetJumpPointForLastInstruction(); if (m_UsesGlobalEnv) { bc.Emit_Load(SymbolRef.Upvalue(WellKnownSymbols.ENV, 0)); bc.Emit_Store(m_Env, 0, 0); bc.Emit_Pop(); } if (m_ParamNames.Length > 0) bc.Emit_Args(m_ParamNames); m_Statement.Compile(bc); bc.PopSourceRef(); bc.PushSourceRef(m_End); bc.Emit_Ret(0); bc.LoopTracker.Loops.Pop(); I.NumVal = bc.GetJumpPointForNextInstruction(); meta.NumVal = bc.GetJumpPointForLastInstruction() - metaip; bc.PopSourceRef(); return entryPoint; } public int Compile(ByteCode bc, Func afterDecl, string friendlyName) { using (bc.EnterSource(m_Begin)) { SymbolRef[] symbs = m_Closure //.Select((s, idx) => s.CloneLocalAndSetFrame(m_ClosureFrames[idx])) .ToArray(); m_ClosureInstruction = bc.Emit_Closure(symbs, bc.GetJumpPointForNextInstruction()); int ops = afterDecl(); m_ClosureInstruction.NumVal += 2 + ops; } return CompileBody(bc, friendlyName); } public override void Compile(ByteCode bc) { Compile(bc, () => 0, null); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Expressions/FunctionDefinitionExpression.cs.meta ================================================ fileFormatVersion: 2 guid: 8ea73b6de58b94c43a508694a098694e timeCreated: 1518177922 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Expressions/IndexExpression.cs ================================================ using MoonSharp.Interpreter.Execution; using MoonSharp.Interpreter.Execution.VM; namespace MoonSharp.Interpreter.Tree.Expressions { class IndexExpression : Expression, IVariable { Expression m_BaseExp; Expression m_IndexExp; string m_Name; public IndexExpression(Expression baseExp, Expression indexExp, ScriptLoadingContext lcontext) : base(lcontext) { m_BaseExp = baseExp; m_IndexExp = indexExp; } public IndexExpression(Expression baseExp, string name, ScriptLoadingContext lcontext) : base(lcontext) { m_BaseExp = baseExp; m_Name = name; } public override void Compile(ByteCode bc) { m_BaseExp.Compile(bc); if (m_Name != null) { bc.Emit_Index(DynValue.NewString(m_Name), true); } else if (m_IndexExp is LiteralExpression) { LiteralExpression lit = (LiteralExpression)m_IndexExp; bc.Emit_Index(lit.Value); } else { m_IndexExp.Compile(bc); bc.Emit_Index(isExpList: (m_IndexExp is ExprListExpression)); } } public void CompileAssignment(ByteCode bc, int stackofs, int tupleidx) { m_BaseExp.Compile(bc); if (m_Name != null) { bc.Emit_IndexSet(stackofs, tupleidx, DynValue.NewString(m_Name), isNameIndex: true); } else if (m_IndexExp is LiteralExpression) { LiteralExpression lit = (LiteralExpression)m_IndexExp; bc.Emit_IndexSet(stackofs, tupleidx, lit.Value); } else { m_IndexExp.Compile(bc); bc.Emit_IndexSet(stackofs, tupleidx, isExpList: (m_IndexExp is ExprListExpression)); } } public override DynValue Eval(ScriptExecutionContext context) { DynValue b = m_BaseExp.Eval(context).ToScalar(); DynValue i = m_IndexExp != null ? m_IndexExp.Eval(context).ToScalar() : DynValue.NewString(m_Name); if (b.Type != DataType.Table) throw new DynamicExpressionException("Attempt to index non-table."); else if (i.IsNilOrNan()) throw new DynamicExpressionException("Attempt to index with nil or nan key."); return b.Table.Get(i) ?? DynValue.Nil; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Expressions/IndexExpression.cs.meta ================================================ fileFormatVersion: 2 guid: cbbef47cf36e7a34fb54392b896adc22 timeCreated: 1518177924 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Expressions/LiteralExpression.cs ================================================ using MoonSharp.Interpreter.Execution; namespace MoonSharp.Interpreter.Tree.Expressions { class LiteralExpression : Expression { DynValue m_Value; public DynValue Value { get { return m_Value; } } public LiteralExpression(ScriptLoadingContext lcontext, DynValue value) : base(lcontext) { m_Value = value; } public LiteralExpression(ScriptLoadingContext lcontext, Token t) : base(lcontext) { switch (t.Type) { case TokenType.Number: case TokenType.Number_Hex: case TokenType.Number_HexFloat: m_Value = DynValue.NewNumber(t.GetNumberValue()).AsReadOnly(); break; case TokenType.String: case TokenType.String_Long: m_Value = DynValue.NewString(t.Text).AsReadOnly(); break; case TokenType.True: m_Value = DynValue.True; break; case TokenType.False: m_Value = DynValue.False; break; case TokenType.Nil: m_Value = DynValue.Nil; break; default: throw new InternalErrorException("type mismatch"); } if (m_Value == null) throw new SyntaxErrorException(t, "unknown literal format near '{0}'", t.Text); lcontext.Lexer.Next(); } public override void Compile(Execution.VM.ByteCode bc) { bc.Emit_Literal(m_Value); } public override DynValue Eval(ScriptExecutionContext context) { return m_Value; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Expressions/LiteralExpression.cs.meta ================================================ fileFormatVersion: 2 guid: f583eb542416ee74a897e28ab3d2542f timeCreated: 1518177925 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Expressions/SymbolRefExpression.cs ================================================ using MoonSharp.Interpreter.Execution; namespace MoonSharp.Interpreter.Tree.Expressions { class SymbolRefExpression : Expression, IVariable { SymbolRef m_Ref; string m_VarName; public SymbolRefExpression(Token T, ScriptLoadingContext lcontext) : base(lcontext) { m_VarName = T.Text; if (T.Type == TokenType.VarArgs) { m_Ref = lcontext.Scope.Find(WellKnownSymbols.VARARGS); if (!lcontext.Scope.CurrentFunctionHasVarArgs()) throw new SyntaxErrorException(T, "cannot use '...' outside a vararg function"); if (lcontext.IsDynamicExpression) throw new DynamicExpressionException("cannot use '...' in a dynamic expression."); } else { if (!lcontext.IsDynamicExpression) m_Ref = lcontext.Scope.Find(m_VarName); } lcontext.Lexer.Next(); } public SymbolRefExpression(ScriptLoadingContext lcontext, SymbolRef refr) : base(lcontext) { m_Ref = refr; if (lcontext.IsDynamicExpression) { throw new DynamicExpressionException("Unsupported symbol reference expression detected."); } } public override void Compile(Execution.VM.ByteCode bc) { bc.Emit_Load(m_Ref); } public void CompileAssignment(Execution.VM.ByteCode bc, int stackofs, int tupleidx) { bc.Emit_Store(m_Ref, stackofs, tupleidx); } public override DynValue Eval(ScriptExecutionContext context) { return context.EvaluateSymbolByName(m_VarName); } public override SymbolRef FindDynamic(ScriptExecutionContext context) { return context.FindSymbolByName(m_VarName); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Expressions/SymbolRefExpression.cs.meta ================================================ fileFormatVersion: 2 guid: 26e354a1948bc2341b3ac308f45d990e timeCreated: 1518177916 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Expressions/TableConstructor.cs ================================================ using System.Collections.Generic; using MoonSharp.Interpreter.Execution; namespace MoonSharp.Interpreter.Tree.Expressions { class TableConstructor : Expression { bool m_Shared = false; List m_PositionalValues = new List(); List> m_CtorArgs = new List>(); public TableConstructor(ScriptLoadingContext lcontext, bool shared) : base(lcontext) { m_Shared = shared; // here lexer is at the '{', go on CheckTokenType(lcontext, TokenType.Brk_Open_Curly, TokenType.Brk_Open_Curly_Shared); while (lcontext.Lexer.Current.Type != TokenType.Brk_Close_Curly) { switch (lcontext.Lexer.Current.Type) { case TokenType.Name: { Token assign = lcontext.Lexer.PeekNext(); if (assign.Type == TokenType.Op_Assignment) StructField(lcontext); else ArrayField(lcontext); } break; case TokenType.Brk_Open_Square: MapField(lcontext); break; default: ArrayField(lcontext); break; } Token curr = lcontext.Lexer.Current; if (curr.Type == TokenType.Comma || curr.Type == TokenType.SemiColon) { lcontext.Lexer.Next(); } else { break; } } CheckTokenType(lcontext, TokenType.Brk_Close_Curly); } private void MapField(ScriptLoadingContext lcontext) { lcontext.Lexer.Next(); // skip '[' Expression key = Expr(lcontext); CheckTokenType(lcontext, TokenType.Brk_Close_Square); CheckTokenType(lcontext, TokenType.Op_Assignment); Expression value = Expr(lcontext); m_CtorArgs.Add(new KeyValuePair(key, value)); } private void StructField(ScriptLoadingContext lcontext) { Expression key = new LiteralExpression(lcontext, DynValue.NewString(lcontext.Lexer.Current.Text)); lcontext.Lexer.Next(); CheckTokenType(lcontext, TokenType.Op_Assignment); Expression value = Expr(lcontext); m_CtorArgs.Add(new KeyValuePair(key, value)); } private void ArrayField(ScriptLoadingContext lcontext) { Expression e = Expr(lcontext); m_PositionalValues.Add(e); } public override void Compile(Execution.VM.ByteCode bc) { bc.Emit_NewTable(m_Shared); foreach (var kvp in m_CtorArgs) { kvp.Key.Compile(bc); kvp.Value.Compile(bc); bc.Emit_TblInitN(); } for (int i = 0; i < m_PositionalValues.Count; i++ ) { m_PositionalValues[i].Compile(bc); bc.Emit_TblInitI(i == m_PositionalValues.Count - 1); } } public override DynValue Eval(ScriptExecutionContext context) { if (!this.m_Shared) { throw new DynamicExpressionException("Dynamic Expressions cannot define new non-prime tables."); } DynValue tval = DynValue.NewPrimeTable(); Table t = tval.Table; int idx = 0; foreach (Expression e in m_PositionalValues) { t.Set(++idx, e.Eval(context)); } foreach (KeyValuePair kvp in this.m_CtorArgs) { t.Set(kvp.Key.Eval(context), kvp.Value.Eval(context)); } return tval; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Expressions/TableConstructor.cs.meta ================================================ fileFormatVersion: 2 guid: 2a081888a2c61e0438a9883cc78e10f8 timeCreated: 1518177916 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Expressions/UnaryOperatorExpression.cs ================================================ using MoonSharp.Interpreter.Execution; using MoonSharp.Interpreter.Execution.VM; namespace MoonSharp.Interpreter.Tree.Expressions { class UnaryOperatorExpression : Expression { Expression m_Exp; string m_OpText; public UnaryOperatorExpression(ScriptLoadingContext lcontext, Expression subExpression, Token unaryOpToken) : base(lcontext) { m_OpText = unaryOpToken.Text; m_Exp = subExpression; } public override void Compile(ByteCode bc) { m_Exp.Compile(bc); switch (m_OpText) { case "not": bc.Emit_Operator(OpCode.Not); break; case "#": bc.Emit_Operator(OpCode.Len); break; case "-": bc.Emit_Operator(OpCode.Neg); break; default: throw new InternalErrorException("Unexpected unary operator '{0}'", m_OpText); } } public override DynValue Eval(ScriptExecutionContext context) { DynValue v = m_Exp.Eval(context).ToScalar(); switch (m_OpText) { case "not": return DynValue.NewBoolean(!v.CastToBool()); case "#": return v.GetLength(); case "-": { double? d = v.CastToNumber(); if (d.HasValue) return DynValue.NewNumber(-d.Value); throw new DynamicExpressionException("Attempt to perform arithmetic on non-numbers."); } default: throw new DynamicExpressionException("Unexpected unary operator '{0}'", m_OpText); } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Expressions/UnaryOperatorExpression.cs.meta ================================================ fileFormatVersion: 2 guid: c1f6987cc5b0af8449bf33449e5a3e95 timeCreated: 1518177923 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Expressions.meta ================================================ fileFormatVersion: 2 guid: 57aacb2281f6e52498a4e8254d969cb0 folderAsset: yes timeCreated: 1518177913 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Fast_Interface/Loader_Fast.cs ================================================ using MoonSharp.Interpreter.Debugging; using MoonSharp.Interpreter.Execution; using MoonSharp.Interpreter.Execution.VM; using MoonSharp.Interpreter.Tree.Expressions; using MoonSharp.Interpreter.Tree.Statements; namespace MoonSharp.Interpreter.Tree.Fast_Interface { internal static class Loader_Fast { internal static DynamicExprExpression LoadDynamicExpr(Script script, SourceCode source) { ScriptLoadingContext lcontext = CreateLoadingContext(script, source); try { lcontext.IsDynamicExpression = true; lcontext.Anonymous = true; Expression exp; using (script.PerformanceStats.StartStopwatch(Diagnostics.PerformanceCounter.AstCreation)) exp = Expression.Expr(lcontext); return new DynamicExprExpression(exp, lcontext); } catch (SyntaxErrorException ex) { ex.DecorateMessage(script); ex.Rethrow(); throw; } } private static ScriptLoadingContext CreateLoadingContext(Script script, SourceCode source) { return new ScriptLoadingContext(script) { Scope = new BuildTimeScope(), Source = source, Lexer = new Lexer(source.SourceID, source.Code, true) }; } internal static int LoadChunk(Script script, SourceCode source, ByteCode bytecode, Processor processor) { ScriptLoadingContext lcontext = CreateLoadingContext(script, source); try { Statement stat; using (script.PerformanceStats.StartStopwatch(Diagnostics.PerformanceCounter.AstCreation)) stat = new ChunkStatement(lcontext); int beginIp = -1; //var srcref = new SourceRef(source.SourceID); using (script.PerformanceStats.StartStopwatch(Diagnostics.PerformanceCounter.Compilation)) using (bytecode.EnterSource(null)) { bytecode.Emit_Nop(string.Format("Begin chunk {0}", source.Name)); beginIp = bytecode.GetJumpPointForLastInstruction(); stat.Compile(bytecode); bytecode.Emit_Nop(string.Format("End chunk {0}", source.Name)); } //Debug_DumpByteCode(bytecode, source.SourceID); return beginIp; } catch (SyntaxErrorException ex) { Instruction i = new Instruction(lcontext.Lexer.Current.GetSourceRef()) { OpCode = OpCode.Nop, Name = "none" }; processor.m_doFileRequireHack = i; ex.DecorateMessage(script, lcontext.Lexer.Current.GetSourceRef()); ex.Rethrow(); throw; } } internal static int LoadFunction(Script script, SourceCode source, ByteCode bytecode, bool usesGlobalEnv) { ScriptLoadingContext lcontext = CreateLoadingContext(script, source); try { FunctionDefinitionExpression fnx; using (script.PerformanceStats.StartStopwatch(Diagnostics.PerformanceCounter.AstCreation)) fnx = new FunctionDefinitionExpression(lcontext, usesGlobalEnv); int beginIp = -1; //var srcref = new SourceRef(source.SourceID); using (script.PerformanceStats.StartStopwatch(Diagnostics.PerformanceCounter.Compilation)) using (bytecode.EnterSource(null)) { bytecode.Emit_Nop(string.Format("Begin function {0}", source.Name)); beginIp = fnx.CompileBody(bytecode, source.Name); bytecode.Emit_Nop(string.Format("End function {0}", source.Name)); } //Debug_DumpByteCode(bytecode, source.SourceID); return beginIp; } catch (SyntaxErrorException ex) { ex.DecorateMessage(script); ex.Rethrow(); throw; } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Fast_Interface/Loader_Fast.cs.meta ================================================ fileFormatVersion: 2 guid: dc044cffacd4d85419474fc5165be530 timeCreated: 1518177924 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Fast_Interface.meta ================================================ fileFormatVersion: 2 guid: 1329136b956912c43b59012999a50a89 folderAsset: yes timeCreated: 1518177912 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/IVariable.cs ================================================  namespace MoonSharp.Interpreter.Tree { interface IVariable { void CompileAssignment(Execution.VM.ByteCode bc, int stackofs, int tupleidx); } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/IVariable.cs.meta ================================================ fileFormatVersion: 2 guid: 41aa9e7d0a0c9fa4c92fe1b43ad5f9af timeCreated: 1518177918 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Lexer/Lexer.cs ================================================ using System.Text; namespace MoonSharp.Interpreter.Tree { class Lexer { Token m_Current = null; string m_Code; int m_PrevLineTo = 0; int m_PrevColTo = 1; int m_Cursor = 0; int m_Line = 1; int m_Col = 0; int m_SourceId; bool m_AutoSkipComments = false; public Lexer(int sourceID, string scriptContent, bool autoSkipComments) { m_Code = scriptContent; m_SourceId = sourceID; // remove unicode BOM if any if (m_Code.Length > 0 && m_Code[0] == 0xFEFF) m_Code = m_Code.Substring(1); m_AutoSkipComments = autoSkipComments; } public Token Current { get { if (m_Current == null) Next(); return m_Current; } } private Token FetchNewToken() { while (true) { Token T = ReadToken(); //System.Diagnostics.Debug.WriteLine("LEXER : " + T.ToString()); if ((T.Type != TokenType.Comment && T.Type != TokenType.HashBang) || (!m_AutoSkipComments)) return T; } } public void Next() { m_Current = FetchNewToken(); } public Token PeekNext() { int snapshot = m_Cursor; Token current = m_Current; int line = m_Line; int col = m_Col; Next(); Token t = Current; m_Cursor = snapshot; m_Current = current; m_Line = line; m_Col = col; return t; } private void CursorNext() { if (CursorNotEof()) { if (CursorChar() == '\n') { m_Col = 0; m_Line += 1; } else { m_Col += 1; } m_Cursor += 1; } } private char CursorChar() { if (m_Cursor < m_Code.Length) return m_Code[m_Cursor]; else return '\0'; // sentinel } private char CursorCharNext() { CursorNext(); return CursorChar(); } private bool CursorMatches(string pattern) { for (int i = 0; i < pattern.Length; i++) { int j = m_Cursor + i; if (j >= m_Code.Length) return false; if (m_Code[j] != pattern[i]) return false; } return true; } private bool CursorNotEof() { return m_Cursor < m_Code.Length; } private bool IsWhiteSpace(char c) { return char.IsWhiteSpace(c); } private void SkipWhiteSpace() { for (; CursorNotEof() && IsWhiteSpace(CursorChar()); CursorNext()) { } } private Token ReadToken() { SkipWhiteSpace(); int fromLine = m_Line; int fromCol = m_Col; if (!CursorNotEof()) return CreateToken(TokenType.Eof, fromLine, fromCol, ""); char c = CursorChar(); switch (c) { case '|': CursorCharNext(); return CreateToken(TokenType.Lambda, fromLine, fromCol, "|"); case ';': CursorCharNext(); return CreateToken(TokenType.SemiColon, fromLine, fromCol, ";"); case '=': return PotentiallyDoubleCharOperator('=', TokenType.Op_Assignment, TokenType.Op_Equal, fromLine, fromCol); case '<': return PotentiallyDoubleCharOperator('=', TokenType.Op_LessThan, TokenType.Op_LessThanEqual, fromLine, fromCol); case '>': return PotentiallyDoubleCharOperator('=', TokenType.Op_GreaterThan, TokenType.Op_GreaterThanEqual, fromLine, fromCol); case '~': case '!': if (CursorCharNext() != '=') throw new SyntaxErrorException(CreateToken(TokenType.Invalid, fromLine, fromCol), "unexpected symbol near '{0}'", c); CursorCharNext(); return CreateToken(TokenType.Op_NotEqual, fromLine, fromCol, "~="); case '.': { char next = CursorCharNext(); if (next == '.') return PotentiallyDoubleCharOperator('.', TokenType.Op_Concat, TokenType.VarArgs, fromLine, fromCol); else if (LexerUtils.CharIsDigit(next)) return ReadNumberToken(fromLine, fromCol, true); else return CreateToken(TokenType.Dot, fromLine, fromCol, "."); } case '+': return CreateSingleCharToken(TokenType.Op_Add, fromLine, fromCol); case '-': { char next = CursorCharNext(); if (next == '-') { return ReadComment(fromLine, fromCol); } else { return CreateToken(TokenType.Op_MinusOrSub, fromLine, fromCol, "-"); } } case '*': return CreateSingleCharToken(TokenType.Op_Mul, fromLine, fromCol); case '/': return CreateSingleCharToken(TokenType.Op_Div, fromLine, fromCol); case '%': return CreateSingleCharToken(TokenType.Op_Mod, fromLine, fromCol); case '^': return CreateSingleCharToken(TokenType.Op_Pwr, fromLine, fromCol); case '$': return PotentiallyDoubleCharOperator('{', TokenType.Op_Dollar, TokenType.Brk_Open_Curly_Shared, fromLine, fromCol); case '#': if (m_Cursor == 0 && m_Code.Length > 1 && m_Code[1] == '!') return ReadHashBang(fromLine, fromCol); return CreateSingleCharToken(TokenType.Op_Len, fromLine, fromCol); case '[': { char next = CursorCharNext(); if (next == '=' || next == '[') { string str = ReadLongString(fromLine, fromCol, null, "string"); return CreateToken(TokenType.String_Long, fromLine, fromCol, str); } return CreateToken(TokenType.Brk_Open_Square, fromLine, fromCol, "["); } case ']': return CreateSingleCharToken(TokenType.Brk_Close_Square, fromLine, fromCol); case '(': return CreateSingleCharToken(TokenType.Brk_Open_Round, fromLine, fromCol); case ')': return CreateSingleCharToken(TokenType.Brk_Close_Round, fromLine, fromCol); case '{': return CreateSingleCharToken(TokenType.Brk_Open_Curly, fromLine, fromCol); case '}': return CreateSingleCharToken(TokenType.Brk_Close_Curly, fromLine, fromCol); case ',': return CreateSingleCharToken(TokenType.Comma, fromLine, fromCol); case ':': return PotentiallyDoubleCharOperator(':', TokenType.Colon, TokenType.DoubleColon, fromLine, fromCol); case '"': case '\'': return ReadSimpleStringToken(fromLine, fromCol); case '\0': throw new SyntaxErrorException(CreateToken(TokenType.Invalid, fromLine, fromCol), "unexpected symbol near '{0}'", CursorChar()) { IsPrematureStreamTermination = true }; default: { if (char.IsLetter(c) || c == '_') { string name = ReadNameToken(); return CreateNameToken(name, fromLine, fromCol); } else if (LexerUtils.CharIsDigit(c)) { return ReadNumberToken(fromLine, fromCol, false); } } throw new SyntaxErrorException(CreateToken(TokenType.Invalid, fromLine, fromCol), "unexpected symbol near '{0}'", CursorChar()); } } private string ReadLongString(int fromLine, int fromCol, string startpattern, string subtypeforerrors) { // here we are at the first '=' or second '[' StringBuilder text = new StringBuilder(1024); string end_pattern = "]"; if (startpattern == null) { for (char c = CursorChar(); ; c = CursorCharNext()) { if (c == '\0' || !CursorNotEof()) { throw new SyntaxErrorException( CreateToken(TokenType.Invalid, fromLine, fromCol), "unfinished long {0} near ''", subtypeforerrors) { IsPrematureStreamTermination = true }; } else if (c == '=') { end_pattern += "="; } else if (c == '[') { end_pattern += "]"; break; } else { throw new SyntaxErrorException( CreateToken(TokenType.Invalid, fromLine, fromCol), "invalid long {0} delimiter near '{1}'", subtypeforerrors, c) { IsPrematureStreamTermination = true }; } } } else { end_pattern = startpattern.Replace('[', ']'); } for (char c = CursorCharNext(); ; c = CursorCharNext()) { if (c == '\r') // XXI century and we still debate on how a newline is made. throw new DeveloperExtremelyAngryException. continue; if (c == '\0' || !CursorNotEof()) { throw new SyntaxErrorException( CreateToken(TokenType.Invalid, fromLine, fromCol), "unfinished long {0} near '{1}'", subtypeforerrors, text.ToString()) { IsPrematureStreamTermination = true }; } else if (c == ']' && CursorMatches(end_pattern)) { for (int i = 0; i < end_pattern.Length; i++) CursorCharNext(); return LexerUtils.AdjustLuaLongString(text.ToString()); } else { text.Append(c); } } } private Token ReadNumberToken(int fromLine, int fromCol, bool leadingDot) { StringBuilder text = new StringBuilder(32); //INT : Digit+ //HEX : '0' [xX] HexDigit+ //FLOAT : Digit+ '.' Digit* ExponentPart? // | '.' Digit+ ExponentPart? // | Digit+ ExponentPart //HEX_FLOAT : '0' [xX] HexDigit+ '.' HexDigit* HexExponentPart? // | '0' [xX] '.' HexDigit+ HexExponentPart? // | '0' [xX] HexDigit+ HexExponentPart // // ExponentPart : [eE] [+-]? Digit+ // HexExponentPart : [pP] [+-]? Digit+ bool isHex = false; bool dotAdded = false; bool exponentPart = false; bool exponentSignAllowed = false; if (leadingDot) { text.Append("0."); } else if (CursorChar() == '0') { text.Append(CursorChar()); char secondChar = CursorCharNext(); if (secondChar == 'x' || secondChar == 'X') { isHex = true; text.Append(CursorChar()); CursorCharNext(); } } for (char c = CursorChar(); CursorNotEof(); c = CursorCharNext()) { if (exponentSignAllowed && (c == '+' || c == '-')) { exponentSignAllowed = false; text.Append(c); } else if (LexerUtils.CharIsDigit(c)) { text.Append(c); } else if (c == '.' && !dotAdded) { dotAdded = true; text.Append(c); } else if (LexerUtils.CharIsHexDigit(c) && isHex && !exponentPart) { text.Append(c); } else if (c == 'e' || c == 'E' || (isHex && (c == 'p' || c == 'P'))) { text.Append(c); exponentPart = true; exponentSignAllowed = true; dotAdded = true; } else { break; } } TokenType numberType = TokenType.Number; if (isHex && (dotAdded || exponentPart)) numberType = TokenType.Number_HexFloat; else if (isHex) numberType = TokenType.Number_Hex; string tokenStr = text.ToString(); return CreateToken(numberType, fromLine, fromCol, tokenStr); } private Token CreateSingleCharToken(TokenType tokenType, int fromLine, int fromCol) { char c = CursorChar(); CursorCharNext(); return CreateToken(tokenType, fromLine, fromCol, c.ToString()); } private Token ReadHashBang(int fromLine, int fromCol) { StringBuilder text = new StringBuilder(32); for (char c = CursorChar(); CursorNotEof(); c = CursorCharNext()) { if (c == '\n') { CursorCharNext(); return CreateToken(TokenType.HashBang, fromLine, fromCol, text.ToString()); } else if (c != '\r') { text.Append(c); } } return CreateToken(TokenType.HashBang, fromLine, fromCol, text.ToString()); } private Token ReadComment(int fromLine, int fromCol) { StringBuilder text = new StringBuilder(32); bool extraneousFound = false; for (char c = CursorCharNext(); CursorNotEof(); c = CursorCharNext()) { if (c == '[' && !extraneousFound && text.Length > 0) { text.Append('['); //CursorCharNext(); string comment = ReadLongString(fromLine, fromCol, text.ToString(), "comment"); return CreateToken(TokenType.Comment, fromLine, fromCol, comment); } else if (c == '\n') { extraneousFound = true; CursorCharNext(); return CreateToken(TokenType.Comment, fromLine, fromCol, text.ToString()); } else if (c != '\r') { if (c != '[' && c != '=') extraneousFound = true; text.Append(c); } } return CreateToken(TokenType.Comment, fromLine, fromCol, text.ToString()); } private Token ReadSimpleStringToken(int fromLine, int fromCol) { StringBuilder text = new StringBuilder(32); char separator = CursorChar(); for (char c = CursorCharNext(); CursorNotEof(); c = CursorCharNext()) { redo_Loop: if (c == '\\') { text.Append(c); c = CursorCharNext(); text.Append(c); if (c == '\r') { c = CursorCharNext(); if (c == '\n') text.Append(c); else goto redo_Loop; } else if (c == 'z') { c = CursorCharNext(); if (char.IsWhiteSpace(c)) SkipWhiteSpace(); c = CursorChar(); goto redo_Loop; } } else if (c == '\n' || c == '\r') { throw new SyntaxErrorException( CreateToken(TokenType.Invalid, fromLine, fromCol), "unfinished string near '{0}'", text.ToString()); } else if (c == separator) { CursorCharNext(); Token t = CreateToken(TokenType.String, fromLine, fromCol); t.Text = LexerUtils.UnescapeLuaString(t, text.ToString()); return t; } else { text.Append(c); } } throw new SyntaxErrorException( CreateToken(TokenType.Invalid, fromLine, fromCol), "unfinished string near '{0}'", text.ToString()) { IsPrematureStreamTermination = true }; } private Token PotentiallyDoubleCharOperator(char expectedSecondChar, TokenType singleCharToken, TokenType doubleCharToken, int fromLine, int fromCol) { string op = CursorChar().ToString(); CursorCharNext(); if (CursorChar() == expectedSecondChar) { CursorCharNext(); return CreateToken(doubleCharToken, fromLine, fromCol, op + expectedSecondChar); } else return CreateToken(singleCharToken, fromLine, fromCol, op); } private Token CreateNameToken(string name, int fromLine, int fromCol) { TokenType? reservedType = Token.GetReservedTokenType(name); if (reservedType.HasValue) { return CreateToken(reservedType.Value, fromLine, fromCol, name); } else { return CreateToken(TokenType.Name, fromLine, fromCol, name); } } private Token CreateToken(TokenType tokenType, int fromLine, int fromCol, string text = null) { Token t = new Token(tokenType, m_SourceId, fromLine, fromCol, m_Line, m_Col, m_PrevLineTo, m_PrevColTo) { Text = text }; m_PrevLineTo = m_Line; m_PrevColTo = m_Col; return t; } private string ReadNameToken() { StringBuilder name = new StringBuilder(32); for (char c = CursorChar(); CursorNotEof(); c = CursorCharNext()) { if (char.IsLetterOrDigit(c) || c == '_') name.Append(c); else break; } return name.ToString(); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Lexer/Lexer.cs.meta ================================================ fileFormatVersion: 2 guid: 402f2553e615aee47a0c71c92d1774de timeCreated: 1518177917 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Lexer/LexerUtils.cs ================================================ using System; using System.Globalization; using System.Linq; using System.Text; using MoonSharp.Interpreter.Compatibility; namespace MoonSharp.Interpreter.Tree { internal static class LexerUtils { public static double ParseNumber(Token T) { string txt = T.Text; double res; if (!double.TryParse(txt, NumberStyles.Float, CultureInfo.InvariantCulture, out res)) throw new SyntaxErrorException(T, "malformed number near '{0}'", txt); return res; } public static double ParseHexInteger(Token T) { string txt = T.Text; if ((txt.Length < 2) || (txt[0] != '0' && (char.ToUpper(txt[1]) != 'X'))) throw new InternalErrorException("hex numbers must start with '0x' near '{0}'.", txt); ulong res; if (!ulong.TryParse(txt.Substring(2), NumberStyles.HexNumber, CultureInfo.InvariantCulture, out res)) throw new SyntaxErrorException(T, "malformed number near '{0}'", txt); return (double)res; } public static string ReadHexProgressive(string s, ref double d, out int digits) { digits = 0; for (int i = 0; i < s.Length; i++) { char c = s[i]; if (LexerUtils.CharIsHexDigit(c)) { int v = LexerUtils.HexDigit2Value(c); d *= 16.0; d += v; ++digits; } else { return s.Substring(i); } } return string.Empty; } public static double ParseHexFloat(Token T) { string s = T.Text; try { if ((s.Length < 2) || (s[0] != '0' && (char.ToUpper(s[1]) != 'X'))) throw new InternalErrorException("hex float must start with '0x' near '{0}'", s); s = s.Substring(2); double value = 0.0; int dummy, exp = 0; s = ReadHexProgressive(s, ref value, out dummy); if (s.Length > 0 && s[0] == '.') { s = s.Substring(1); s = ReadHexProgressive(s, ref value, out exp); } exp *= -4; if (s.Length > 0 && char.ToUpper(s[0]) == 'P') { if (s.Length == 1) throw new SyntaxErrorException(T, "invalid hex float format near '{0}'", s); s = s.Substring(s[1] == '+' ? 2 : 1); int exp1 = int.Parse(s, CultureInfo.InvariantCulture); exp += exp1; } double result = value * Math.Pow(2, exp); return result; } catch (FormatException) { throw new SyntaxErrorException(T, "malformed number near '{0}'", s); } } public static int HexDigit2Value(char c) { if (c >= '0' && c <= '9') return c - '0'; else if (c >= 'A' && c <= 'F') return 10 + (c - 'A'); else if (c >= 'a' && c <= 'f') return 10 + (c - 'a'); else throw new InternalErrorException("invalid hex digit near '{0}'", c); } public static bool CharIsDigit(char c) { return c >= '0' && c <= '9'; } public static bool CharIsHexDigit(char c) { return CharIsDigit(c) || c == 'a' || c == 'b' || c == 'c' || c == 'd' || c == 'e' || c == 'f' || c == 'A' || c == 'B' || c == 'C' || c == 'D' || c == 'E' || c == 'F'; } public static string AdjustLuaLongString(string str) { if (str.StartsWith("\r\n")) str = str.Substring(2); else if (str.StartsWith("\n")) str = str.Substring(1); return str; } public static string UnescapeLuaString(Token token, string str) { if (!Framework.Do.StringContainsChar(str, '\\')) return str; StringBuilder sb = new StringBuilder(); bool escape = false; bool hex = false; int unicode_state = 0; string hexprefix = ""; string val = ""; bool zmode = false; foreach (char c in str) { redo: if (escape) { if (val.Length == 0 && !hex && unicode_state == 0) { if (c == 'a') { sb.Append('\a'); escape = false; zmode = false; } else if (c == '\r') { } // this makes \\r\n -> \\n else if (c == '\n') { sb.Append('\n'); escape = false; } else if (c == 'b') { sb.Append('\b'); escape = false; } else if (c == 'f') { sb.Append('\f'); escape = false; } else if (c == 'n') { sb.Append('\n'); escape = false; } else if (c == 'r') { sb.Append('\r'); escape = false; } else if (c == 't') { sb.Append('\t'); escape = false; } else if (c == 'v') { sb.Append('\v'); escape = false; } else if (c == '\\') { sb.Append('\\'); escape = false; zmode = false; } else if (c == '"') { sb.Append('\"'); escape = false; zmode = false; } else if (c == '\'') { sb.Append('\''); escape = false; zmode = false; } else if (c == '[') { sb.Append('['); escape = false; zmode = false; } else if (c == ']') { sb.Append(']'); escape = false; zmode = false; } else if (c == 'x') { hex = true; } else if (c == 'u') { unicode_state = 1; } else if (c == 'z') { zmode = true; escape = false; } else if (CharIsDigit(c)) { val = val + c; } else throw new SyntaxErrorException(token, "invalid escape sequence near '\\{0}'", c); } else { if (unicode_state == 1) { if (c != '{') throw new SyntaxErrorException(token, "'{' expected near '\\u'"); unicode_state = 2; } else if (unicode_state == 2) { if (c == '}') { int i = int.Parse(val, NumberStyles.HexNumber, CultureInfo.InvariantCulture); sb.Append(ConvertUtf32ToChar(i)); unicode_state = 0; val = string.Empty; escape = false; } else if (val.Length >= 8) { throw new SyntaxErrorException(token, "'}' missing, or unicode code point too large after '\\u'"); } else { val += c; } } else if (hex) { if (CharIsHexDigit(c)) { val += c; if (val.Length == 2) { int i = int.Parse(val, NumberStyles.HexNumber, CultureInfo.InvariantCulture); sb.Append(ConvertUtf32ToChar(i)); zmode = false; escape = false; } } else { throw new SyntaxErrorException(token, "hexadecimal digit expected near '\\{0}{1}{2}'", hexprefix, val, c); } } else if (val.Length > 0) { if (CharIsDigit(c)) { val = val + c; } if (val.Length == 3 || !CharIsDigit(c)) { int i = int.Parse(val, CultureInfo.InvariantCulture); if (i > 255) throw new SyntaxErrorException(token, "decimal escape too large near '\\{0}'", val); sb.Append(ConvertUtf32ToChar(i)); zmode = false; escape = false; if (!CharIsDigit(c)) goto redo; } } } } else { if (c == '\\') { escape = true; hex = false; val = ""; } else { if (!zmode || !char.IsWhiteSpace(c)) { sb.Append(c); zmode = false; } } } } if (escape && !hex && val.Length > 0) { int i = int.Parse(val, CultureInfo.InvariantCulture); sb.Append(ConvertUtf32ToChar(i)); escape = false; } if (escape) { throw new SyntaxErrorException(token, "unfinished string near '\"{0}\"'", sb.ToString()); } return sb.ToString(); } private static string ConvertUtf32ToChar(int i) { #if PCL || ENABLE_DOTNET return ((char)i).ToString(); #else return char.ConvertFromUtf32(i); #endif } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Lexer/LexerUtils.cs.meta ================================================ fileFormatVersion: 2 guid: c0891c714e843d446ba182a582b4c579 timeCreated: 1518177923 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Lexer/Token.cs ================================================ using System; namespace MoonSharp.Interpreter.Tree { class Token { public readonly int SourceId; public readonly int FromCol, ToCol, FromLine, ToLine, PrevCol, PrevLine; public readonly TokenType Type; public string Text { get; set; } public Token(TokenType type, int sourceId, int fromLine, int fromCol, int toLine, int toCol, int prevLine, int prevCol) { Type = type; SourceId = sourceId; FromLine = fromLine; FromCol = fromCol; ToCol = toCol; ToLine = toLine; PrevCol = prevCol; PrevLine = prevLine; } public override string ToString() { string tokenTypeString = (Type.ToString() + " ").Substring(0, 16); string location = string.Format("{0}:{1}-{2}:{3}", FromLine, FromCol, ToLine, ToCol); location = (location + " ").Substring(0, 10); return string.Format("{0} - {1} - '{2}'", tokenTypeString, location, this.Text ?? ""); } public static TokenType? GetReservedTokenType(string reservedWord) { switch (reservedWord) { case "and": return TokenType.And; case "break": return TokenType.Break; case "do": return TokenType.Do; case "else": return TokenType.Else; case "elseif": return TokenType.ElseIf; case "end": return TokenType.End; case "false": return TokenType.False; case "for": return TokenType.For; case "function": return TokenType.Function; case "goto": return TokenType.Goto; case "if": return TokenType.If; case "in": return TokenType.In; case "local": return TokenType.Local; case "nil": return TokenType.Nil; case "not": return TokenType.Not; case "or": return TokenType.Or; case "repeat": return TokenType.Repeat; case "return": return TokenType.Return; case "then": return TokenType.Then; case "true": return TokenType.True; case "until": return TokenType.Until; case "while": return TokenType.While; default: return null; } } public double GetNumberValue() { if (this.Type == TokenType.Number) return LexerUtils.ParseNumber(this); else if (this.Type == TokenType.Number_Hex) return LexerUtils.ParseHexInteger(this); else if (this.Type == TokenType.Number_HexFloat) return LexerUtils.ParseHexFloat(this); else throw new NotSupportedException("GetNumberValue is supported only on numeric tokens"); } public bool IsEndOfBlock() { switch (Type) { case TokenType.Else: case TokenType.ElseIf: case TokenType.End: case TokenType.Until: case TokenType.Eof: return true; default: return false; } } public bool IsUnaryOperator() { return Type == TokenType.Op_MinusOrSub || Type == TokenType.Not || Type == TokenType.Op_Len; } public bool IsBinaryOperator() { switch (Type) { case TokenType.And: case TokenType.Or: case TokenType.Op_Equal: case TokenType.Op_LessThan: case TokenType.Op_LessThanEqual: case TokenType.Op_GreaterThanEqual: case TokenType.Op_GreaterThan: case TokenType.Op_NotEqual: case TokenType.Op_Concat: case TokenType.Op_Pwr: case TokenType.Op_Mod: case TokenType.Op_Div: case TokenType.Op_Mul: case TokenType.Op_MinusOrSub: case TokenType.Op_Add: return true; default: return false; } } internal Debugging.SourceRef GetSourceRef(bool isStepStop = true) { return new Debugging.SourceRef(this.SourceId, this.FromCol, this.ToCol, this.FromLine, this.ToLine, isStepStop); } internal Debugging.SourceRef GetSourceRef(Token to, bool isStepStop = true) { return new Debugging.SourceRef(this.SourceId, this.FromCol, to.ToCol, this.FromLine, to.ToLine, isStepStop); } internal Debugging.SourceRef GetSourceRefUpTo(Token to, bool isStepStop = true) { return new Debugging.SourceRef(this.SourceId, this.FromCol, to.PrevCol, this.FromLine, to.PrevLine, isStepStop); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Lexer/Token.cs.meta ================================================ fileFormatVersion: 2 guid: 07ec14c20ea6f3d4ba559aa32956016c timeCreated: 1518177914 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Lexer/TokenType.cs ================================================  namespace MoonSharp.Interpreter.Tree { enum TokenType { Eof, HashBang, Name, And, Break, Do, Else, ElseIf, End, False, For, Function, Lambda, Goto, If, In, Local, Nil, Not, Or, Repeat, Return, Then, True, Until, While, Op_Equal, Op_Assignment, Op_LessThan, Op_LessThanEqual, Op_GreaterThanEqual, Op_GreaterThan, Op_NotEqual, Op_Concat, VarArgs, Dot, Colon, DoubleColon, Comma, Brk_Close_Curly, Brk_Open_Curly, Brk_Close_Round, Brk_Open_Round, Brk_Close_Square, Brk_Open_Square, Op_Len, Op_Pwr, Op_Mod, Op_Div, Op_Mul, Op_MinusOrSub, Op_Add, Comment, String, String_Long, Number, Number_HexFloat, Number_Hex, SemiColon, Invalid, Brk_Open_Curly_Shared, Op_Dollar, } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Lexer/TokenType.cs.meta ================================================ fileFormatVersion: 2 guid: 336d2c8077639144fbf47efca04af0fe timeCreated: 1518177916 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Lexer.meta ================================================ fileFormatVersion: 2 guid: cd6c96fb88d56e347a80475938740d16 folderAsset: yes timeCreated: 1518177913 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Loop.cs ================================================ using System.Collections.Generic; using MoonSharp.Interpreter.Execution; using MoonSharp.Interpreter.Execution.VM; namespace MoonSharp.Interpreter.Tree { internal class Loop : ILoop { public RuntimeScopeBlock Scope; public List BreakJumps = new List(); public void CompileBreak(ByteCode bc) { bc.Emit_Exit(Scope); BreakJumps.Add(bc.Emit_Jump(OpCode.Jump, -1)); } public bool IsBoundary() { return false; } } internal class LoopBoundary : ILoop { public void CompileBreak(ByteCode bc) { throw new InternalErrorException("CompileBreak called on LoopBoundary"); } public bool IsBoundary() { return true; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Loop.cs.meta ================================================ fileFormatVersion: 2 guid: b5037947a517c0645994d70626d72fb3 timeCreated: 1518177923 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/NodeBase.cs ================================================ using MoonSharp.Interpreter.Execution; using MoonSharp.Interpreter.Execution.VM; namespace MoonSharp.Interpreter.Tree { abstract class NodeBase { public Script Script { get; private set; } protected ScriptLoadingContext LoadingContext { get; private set; } public NodeBase(ScriptLoadingContext lcontext) { Script = lcontext.Script; } public abstract void Compile(ByteCode bc); protected static Token UnexpectedTokenType(Token t) { throw new SyntaxErrorException(t, "unexpected symbol near '{0}'", t.Text) { IsPrematureStreamTermination = (t.Type == TokenType.Eof) }; } protected static Token CheckTokenType(ScriptLoadingContext lcontext, TokenType tokenType) { Token t = lcontext.Lexer.Current; if (t.Type != tokenType) return UnexpectedTokenType(t); lcontext.Lexer.Next(); return t; } protected static Token CheckTokenType(ScriptLoadingContext lcontext, TokenType tokenType1, TokenType tokenType2) { Token t = lcontext.Lexer.Current; if (t.Type != tokenType1 && t.Type != tokenType2) return UnexpectedTokenType(t); lcontext.Lexer.Next(); return t; } protected static Token CheckTokenType(ScriptLoadingContext lcontext, TokenType tokenType1, TokenType tokenType2, TokenType tokenType3) { Token t = lcontext.Lexer.Current; if (t.Type != tokenType1 && t.Type != tokenType2 && t.Type != tokenType3) return UnexpectedTokenType(t); lcontext.Lexer.Next(); return t; } protected static void CheckTokenTypeNotNext(ScriptLoadingContext lcontext, TokenType tokenType) { Token t = lcontext.Lexer.Current; if (t.Type != tokenType) UnexpectedTokenType(t); } protected static Token CheckMatch(ScriptLoadingContext lcontext, Token originalToken, TokenType expectedTokenType, string expectedTokenText) { Token t = lcontext.Lexer.Current; if (t.Type != expectedTokenType) { throw new SyntaxErrorException(lcontext.Lexer.Current, "'{0}' expected (to close '{1}' at line {2}) near '{3}'", expectedTokenText, originalToken.Text, originalToken.FromLine, t.Text) { IsPrematureStreamTermination = (t.Type == TokenType.Eof) }; } lcontext.Lexer.Next(); return t; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/NodeBase.cs.meta ================================================ fileFormatVersion: 2 guid: 4abb6e0d6933a504c8b47bd78f508c33 timeCreated: 1518177918 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statement.cs ================================================ using MoonSharp.Interpreter.Execution; using MoonSharp.Interpreter.Tree.Expressions; using MoonSharp.Interpreter.Tree.Statements; namespace MoonSharp.Interpreter.Tree { abstract class Statement : NodeBase { public Statement(ScriptLoadingContext lcontext) : base(lcontext) { } protected static Statement CreateStatement(ScriptLoadingContext lcontext, out bool forceLast) { Token tkn = lcontext.Lexer.Current; forceLast = false; switch (tkn.Type) { case TokenType.DoubleColon: return new LabelStatement(lcontext); case TokenType.Goto: return new GotoStatement(lcontext); case TokenType.SemiColon: lcontext.Lexer.Next(); return new EmptyStatement(lcontext); case TokenType.If: return new IfStatement(lcontext); case TokenType.While: return new WhileStatement(lcontext); case TokenType.Do: return new ScopeBlockStatement(lcontext); case TokenType.For: return DispatchForLoopStatement(lcontext); case TokenType.Repeat: return new RepeatStatement(lcontext); case TokenType.Function: return new FunctionDefinitionStatement(lcontext, false, null); case TokenType.Local: Token localToken = lcontext.Lexer.Current; lcontext.Lexer.Next(); if (lcontext.Lexer.Current.Type == TokenType.Function) return new FunctionDefinitionStatement(lcontext, true, localToken); else return new AssignmentStatement(lcontext, localToken); case TokenType.Return: forceLast = true; return new ReturnStatement(lcontext); case TokenType.Break: return new BreakStatement(lcontext); default: { Token l = lcontext.Lexer.Current; Expression exp = Expression.PrimaryExp(lcontext); FunctionCallExpression fnexp = exp as FunctionCallExpression; if (fnexp != null) return new FunctionCallStatement(lcontext, fnexp); else return new AssignmentStatement(lcontext, exp, l); } } } private static Statement DispatchForLoopStatement(ScriptLoadingContext lcontext) { // for Name ‘=’ exp ‘,’ exp [‘,’ exp] do block end | // for namelist in explist do block end | Token forTkn = CheckTokenType(lcontext, TokenType.For); Token name = CheckTokenType(lcontext, TokenType.Name); if (lcontext.Lexer.Current.Type == TokenType.Op_Assignment) return new ForLoopStatement(lcontext, name, forTkn); else return new ForEachLoopStatement(lcontext, name, forTkn); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statement.cs.meta ================================================ fileFormatVersion: 2 guid: 6f83fcdbefde50b44b5ebe11dc6a9a4a timeCreated: 1518177920 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/AssignmentStatement.cs ================================================ using System; using System.Collections.Generic; using MoonSharp.Interpreter.Debugging; using MoonSharp.Interpreter.Execution; using MoonSharp.Interpreter.Tree.Expressions; namespace MoonSharp.Interpreter.Tree.Statements { class AssignmentStatement : Statement { List m_LValues = new List(); List m_RValues; SourceRef m_Ref; public AssignmentStatement(ScriptLoadingContext lcontext, Token startToken) : base(lcontext) { List names = new List(); Token first = startToken; while (true) { Token name = CheckTokenType(lcontext, TokenType.Name); names.Add(name.Text); if (lcontext.Lexer.Current.Type != TokenType.Comma) break; lcontext.Lexer.Next(); } if (lcontext.Lexer.Current.Type == TokenType.Op_Assignment) { CheckTokenType(lcontext, TokenType.Op_Assignment); m_RValues = Expression.ExprList(lcontext); } else { m_RValues = new List(); } foreach (string name in names) { var localVar = lcontext.Scope.TryDefineLocal(name); var symbol = new SymbolRefExpression(lcontext, localVar); m_LValues.Add(symbol); } Token last = lcontext.Lexer.Current; m_Ref = first.GetSourceRefUpTo(last); lcontext.Source.Refs.Add(m_Ref); } public AssignmentStatement(ScriptLoadingContext lcontext, Expression firstExpression, Token first) : base(lcontext) { m_LValues.Add(CheckVar(lcontext, firstExpression)); while (lcontext.Lexer.Current.Type == TokenType.Comma) { lcontext.Lexer.Next(); Expression e = Expression.PrimaryExp(lcontext); m_LValues.Add(CheckVar(lcontext, e)); } CheckTokenType(lcontext, TokenType.Op_Assignment); m_RValues = Expression.ExprList(lcontext); Token last = lcontext.Lexer.Current; m_Ref = first.GetSourceRefUpTo(last); lcontext.Source.Refs.Add(m_Ref); } private IVariable CheckVar(ScriptLoadingContext lcontext, Expression firstExpression) { IVariable v = firstExpression as IVariable; if (v == null) throw new SyntaxErrorException(lcontext.Lexer.Current, "unexpected symbol near '{0}' - not a l-value", lcontext.Lexer.Current); return v; } public override void Compile(Execution.VM.ByteCode bc) { using (bc.EnterSource(m_Ref)) { foreach (var exp in m_RValues) { exp.Compile(bc); } for (int i = 0; i < m_LValues.Count; i++) m_LValues[i].CompileAssignment(bc, Math.Max(m_RValues.Count - 1 - i, 0), // index of r-value i - Math.Min(i, m_RValues.Count - 1)); // index in last tuple bc.Emit_Pop(m_RValues.Count); } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/AssignmentStatement.cs.meta ================================================ fileFormatVersion: 2 guid: 11753807e40bfe54b94fdd951cd894a1 timeCreated: 1518177914 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/BreakStatement.cs ================================================ using MoonSharp.Interpreter.Debugging; using MoonSharp.Interpreter.Execution; using MoonSharp.Interpreter.Execution.VM; namespace MoonSharp.Interpreter.Tree.Statements { class BreakStatement : Statement { SourceRef m_Ref; public BreakStatement(ScriptLoadingContext lcontext) : base(lcontext) { m_Ref = CheckTokenType(lcontext, TokenType.Break).GetSourceRef(); lcontext.Source.Refs.Add(m_Ref); } public override void Compile(ByteCode bc) { using (bc.EnterSource(m_Ref)) { if (bc.LoopTracker.Loops.Count == 0) throw new SyntaxErrorException(this.Script, m_Ref, " at line {0} not inside a loop", m_Ref.FromLine); ILoop loop = bc.LoopTracker.Loops.Peek(); if (loop.IsBoundary()) throw new SyntaxErrorException(this.Script, m_Ref, " at line {0} not inside a loop", m_Ref.FromLine); loop.CompileBreak(bc); } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/BreakStatement.cs.meta ================================================ fileFormatVersion: 2 guid: 7dac0781a08563042b578233162e952a timeCreated: 1518177921 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/ChunkStatement.cs ================================================ using MoonSharp.Interpreter.Execution; using MoonSharp.Interpreter.Execution.VM; namespace MoonSharp.Interpreter.Tree.Statements { class ChunkStatement : Statement, IClosureBuilder { Statement m_Block; RuntimeScopeFrame m_StackFrame; SymbolRef m_Env; SymbolRef m_VarArgs; public ChunkStatement(ScriptLoadingContext lcontext) : base(lcontext) { lcontext.Scope.PushFunction(this, true); m_Env = lcontext.Scope.DefineLocal(WellKnownSymbols.ENV); m_VarArgs = lcontext.Scope.DefineLocal(WellKnownSymbols.VARARGS); m_Block = new CompositeStatement(lcontext); if (lcontext.Lexer.Current.Type != TokenType.Eof) throw new SyntaxErrorException(lcontext.Lexer.Current, " expected near '{0}'", lcontext.Lexer.Current.Text); m_StackFrame = lcontext.Scope.PopFunction(); } public override void Compile(Execution.VM.ByteCode bc) { Instruction meta = bc.Emit_Meta("", OpCodeMetadataType.ChunkEntrypoint); int metaip = bc.GetJumpPointForLastInstruction(); bc.Emit_BeginFn(m_StackFrame); bc.Emit_Args(m_VarArgs); bc.Emit_Load(SymbolRef.Upvalue(WellKnownSymbols.ENV, 0)); bc.Emit_Store(m_Env, 0, 0); bc.Emit_Pop(); m_Block.Compile(bc); bc.Emit_Ret(0); meta.NumVal = bc.GetJumpPointForLastInstruction() - metaip; } public SymbolRef CreateUpvalue(BuildTimeScope scope, SymbolRef symbol) { return null; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/ChunkStatement.cs.meta ================================================ fileFormatVersion: 2 guid: 1704c7710cac7584e8bc2ea786cfddf4 timeCreated: 1518177915 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/CompositeStatement.cs ================================================ using System.Collections.Generic; using MoonSharp.Interpreter.Execution; namespace MoonSharp.Interpreter.Tree.Statements { class CompositeStatement : Statement { List m_Statements = new List(); public CompositeStatement(ScriptLoadingContext lcontext) : base(lcontext) { while (true) { Token t = lcontext.Lexer.Current; if (t.IsEndOfBlock()) break; bool forceLast; Statement s = Statement.CreateStatement(lcontext, out forceLast); m_Statements.Add(s); if (forceLast) break; } // eat away all superfluos ';'s while (lcontext.Lexer.Current.Type == TokenType.SemiColon) lcontext.Lexer.Next(); } public override void Compile(Execution.VM.ByteCode bc) { if (m_Statements != null) { foreach (Statement s in m_Statements) { s.Compile(bc); } } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/CompositeStatement.cs.meta ================================================ fileFormatVersion: 2 guid: 5ec2e5416da52804282fcb1a4d9470d2 timeCreated: 1518177919 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/EmptyStatement.cs ================================================ using MoonSharp.Interpreter.Execution; namespace MoonSharp.Interpreter.Tree.Statements { class EmptyStatement : Statement { public EmptyStatement(ScriptLoadingContext lcontext) : base(lcontext) { } public override void Compile(Execution.VM.ByteCode bc) { } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/EmptyStatement.cs.meta ================================================ fileFormatVersion: 2 guid: ce247f07b5fff714dbaee172f9df7586 timeCreated: 1518177924 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/ForEachLoopStatement.cs ================================================ using System.Collections.Generic; using System.Linq; using MoonSharp.Interpreter.Debugging; using MoonSharp.Interpreter.Execution; using MoonSharp.Interpreter.Execution.VM; using MoonSharp.Interpreter.Tree.Expressions; namespace MoonSharp.Interpreter.Tree.Statements { class ForEachLoopStatement : Statement { RuntimeScopeBlock m_StackFrame; SymbolRef[] m_Names; IVariable[] m_NameExps; Expression m_RValues; Statement m_Block; SourceRef m_RefFor, m_RefEnd; public ForEachLoopStatement(ScriptLoadingContext lcontext, Token firstNameToken, Token forToken) : base(lcontext) { // for namelist in explist do block end | List names = new List(); names.Add(firstNameToken.Text); while (lcontext.Lexer.Current.Type == TokenType.Comma) { lcontext.Lexer.Next(); Token name = CheckTokenType(lcontext, TokenType.Name); names.Add(name.Text); } CheckTokenType(lcontext, TokenType.In); m_RValues = new ExprListExpression(Expression.ExprList(lcontext), lcontext); lcontext.Scope.PushBlock(); m_Names = names .Select(n => lcontext.Scope.TryDefineLocal(n)) .ToArray(); m_NameExps = m_Names .Select(s => new SymbolRefExpression(lcontext, s)) .Cast() .ToArray(); m_RefFor = forToken.GetSourceRef(CheckTokenType(lcontext, TokenType.Do)); m_Block = new CompositeStatement(lcontext); m_RefEnd = CheckTokenType(lcontext, TokenType.End).GetSourceRef(); m_StackFrame = lcontext.Scope.PopBlock(); lcontext.Source.Refs.Add(m_RefFor); lcontext.Source.Refs.Add(m_RefEnd); } public override void Compile(ByteCode bc) { //for var_1, ···, var_n in explist do block end bc.PushSourceRef(m_RefFor); Loop L = new Loop() { Scope = m_StackFrame }; bc.LoopTracker.Loops.Push(L); // get iterator tuple m_RValues.Compile(bc); // prepares iterator tuple - stack : iterator-tuple bc.Emit_IterPrep(); // loop start - stack : iterator-tuple int start = bc.GetJumpPointForNextInstruction(); bc.Emit_Enter(m_StackFrame); // expand the tuple - stack : iterator-tuple, f, var, s bc.Emit_ExpTuple(0); // calls f(s, var) - stack : iterator-tuple, iteration result bc.Emit_Call(2, "for..in"); // perform assignment of iteration result- stack : iterator-tuple, iteration result for (int i = 0; i < m_NameExps.Length; i++) m_NameExps[i].CompileAssignment(bc, 0, i); // pops - stack : iterator-tuple bc.Emit_Pop(); // repushes the main iterator var - stack : iterator-tuple, main-iterator-var bc.Emit_Load(m_Names[0]); // updates the iterator tuple - stack : iterator-tuple, main-iterator-var bc.Emit_IterUpd(); // checks head, jumps if nil - stack : iterator-tuple, main-iterator-var var endjump = bc.Emit_Jump(OpCode.JNil, -1); // executes the stuff - stack : iterator-tuple m_Block.Compile(bc); bc.PopSourceRef(); bc.PushSourceRef(m_RefEnd); // loop back again - stack : iterator-tuple bc.Emit_Leave(m_StackFrame); bc.Emit_Jump(OpCode.Jump, start); bc.LoopTracker.Loops.Pop(); int exitpointLoopExit = bc.GetJumpPointForNextInstruction(); bc.Emit_Leave(m_StackFrame); int exitpointBreaks = bc.GetJumpPointForNextInstruction(); bc.Emit_Pop(); foreach (Instruction i in L.BreakJumps) i.NumVal = exitpointBreaks; endjump.NumVal = exitpointLoopExit; bc.PopSourceRef(); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/ForEachLoopStatement.cs.meta ================================================ fileFormatVersion: 2 guid: e490623fe056a8245b16de1b40b8795e timeCreated: 1518177925 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/ForLoopStatement.cs ================================================ using MoonSharp.Interpreter.Debugging; using MoonSharp.Interpreter.Execution; using MoonSharp.Interpreter.Execution.VM; using MoonSharp.Interpreter.Tree.Expressions; namespace MoonSharp.Interpreter.Tree.Statements { class ForLoopStatement : Statement { //for' NAME '=' exp ',' exp (',' exp)? 'do' block 'end' RuntimeScopeBlock m_StackFrame; Statement m_InnerBlock; SymbolRef m_VarName; Expression m_Start, m_End, m_Step; SourceRef m_RefFor, m_RefEnd; public ForLoopStatement(ScriptLoadingContext lcontext, Token nameToken, Token forToken) : base(lcontext) { // for Name ‘=’ exp ‘,’ exp [‘,’ exp] do block end | // lexer already at the '=' ! [due to dispatching vs for-each] CheckTokenType(lcontext, TokenType.Op_Assignment); m_Start = Expression.Expr(lcontext); CheckTokenType(lcontext, TokenType.Comma); m_End = Expression.Expr(lcontext); if (lcontext.Lexer.Current.Type == TokenType.Comma) { lcontext.Lexer.Next(); m_Step = Expression.Expr(lcontext); } else { m_Step = new LiteralExpression(lcontext, DynValue.NewNumber(1)); } lcontext.Scope.PushBlock(); m_VarName = lcontext.Scope.DefineLocal(nameToken.Text); m_RefFor = forToken.GetSourceRef(CheckTokenType(lcontext, TokenType.Do)); m_InnerBlock = new CompositeStatement(lcontext); m_RefEnd = CheckTokenType(lcontext, TokenType.End).GetSourceRef(); m_StackFrame = lcontext.Scope.PopBlock(); lcontext.Source.Refs.Add(m_RefFor); lcontext.Source.Refs.Add(m_RefEnd); } public override void Compile(ByteCode bc) { bc.PushSourceRef(m_RefFor); Loop L = new Loop() { Scope = m_StackFrame }; bc.LoopTracker.Loops.Push(L); m_End.Compile(bc); bc.Emit_ToNum(3); m_Step.Compile(bc); bc.Emit_ToNum(2); m_Start.Compile(bc); bc.Emit_ToNum(1); int start = bc.GetJumpPointForNextInstruction(); var jumpend = bc.Emit_Jump(OpCode.JFor, -1); bc.Emit_Enter(m_StackFrame); //bc.Emit_SymStorN(m_VarName); bc.Emit_Store(m_VarName, 0, 0); m_InnerBlock.Compile(bc); bc.PopSourceRef(); bc.PushSourceRef(m_RefEnd); bc.Emit_Debug("..end"); bc.Emit_Leave(m_StackFrame); bc.Emit_Incr(1); bc.Emit_Jump(OpCode.Jump, start); bc.LoopTracker.Loops.Pop(); int exitpoint = bc.GetJumpPointForNextInstruction(); foreach (Instruction i in L.BreakJumps) i.NumVal = exitpoint; jumpend.NumVal = exitpoint; bc.Emit_Pop(3); bc.PopSourceRef(); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/ForLoopStatement.cs.meta ================================================ fileFormatVersion: 2 guid: 7e9c6478ece097649923238a938c183d timeCreated: 1518177921 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/FunctionCallStatement.cs ================================================ using System; using MoonSharp.Interpreter.Execution; using MoonSharp.Interpreter.Execution.VM; using MoonSharp.Interpreter.Tree.Expressions; namespace MoonSharp.Interpreter.Tree.Statements { class FunctionCallStatement : Statement { FunctionCallExpression m_FunctionCallExpression; public FunctionCallStatement(ScriptLoadingContext lcontext, FunctionCallExpression functionCallExpression) : base(lcontext) { m_FunctionCallExpression = functionCallExpression; lcontext.Source.Refs.Add(m_FunctionCallExpression.SourceRef); } public override void Compile(ByteCode bc) { using (bc.EnterSource(m_FunctionCallExpression.SourceRef)) { m_FunctionCallExpression.Compile(bc); RemoveBreakpointStop(bc.Emit_Pop()); } } private void RemoveBreakpointStop(Instruction instruction) { instruction.SourceCodeRef = null; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/FunctionCallStatement.cs.meta ================================================ fileFormatVersion: 2 guid: 4c5bdcd94d3df3e4a8619e922b075cd7 timeCreated: 1518177918 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/FunctionDefinitionStatement.cs ================================================ using System.Collections.Generic; using MoonSharp.Interpreter.Debugging; using MoonSharp.Interpreter.Execution; using MoonSharp.Interpreter.Tree.Expressions; namespace MoonSharp.Interpreter.Tree.Statements { class FunctionDefinitionStatement : Statement { SymbolRef m_FuncSymbol; SourceRef m_SourceRef; bool m_Local = false; bool m_IsMethodCallingConvention = false; string m_MethodName = null; string m_FriendlyName; List m_TableAccessors; FunctionDefinitionExpression m_FuncDef; public FunctionDefinitionStatement(ScriptLoadingContext lcontext, bool local, Token localToken) : base(lcontext) { // here lexer must be at the 'function' keyword Token funcKeyword = CheckTokenType(lcontext, TokenType.Function); funcKeyword = localToken ?? funcKeyword; // for debugger purposes m_Local = local; if (m_Local) { Token name = CheckTokenType(lcontext, TokenType.Name); m_FuncSymbol = lcontext.Scope.TryDefineLocal(name.Text); m_FriendlyName = string.Format("{0} (local)", name.Text); m_SourceRef = funcKeyword.GetSourceRef(name); } else { Token name = CheckTokenType(lcontext, TokenType.Name); string firstName = name.Text; m_SourceRef = funcKeyword.GetSourceRef(name); m_FuncSymbol = lcontext.Scope.Find(firstName); m_FriendlyName = firstName; if (lcontext.Lexer.Current.Type != TokenType.Brk_Open_Round) { m_TableAccessors = new List(); while (lcontext.Lexer.Current.Type != TokenType.Brk_Open_Round) { Token separator = lcontext.Lexer.Current; if (separator.Type != TokenType.Colon && separator.Type != TokenType.Dot) UnexpectedTokenType(separator); lcontext.Lexer.Next(); Token field = CheckTokenType(lcontext, TokenType.Name); m_FriendlyName += separator.Text + field.Text; m_SourceRef = funcKeyword.GetSourceRef(field); if (separator.Type == TokenType.Colon) { m_MethodName = field.Text; m_IsMethodCallingConvention = true; break; } else { m_TableAccessors.Add(field.Text); } } if (m_MethodName == null && m_TableAccessors.Count > 0) { m_MethodName = m_TableAccessors[m_TableAccessors.Count - 1]; m_TableAccessors.RemoveAt(m_TableAccessors.Count - 1); } } } m_FuncDef = new FunctionDefinitionExpression(lcontext, m_IsMethodCallingConvention, false); lcontext.Source.Refs.Add(m_SourceRef); } public override void Compile(Execution.VM.ByteCode bc) { using (bc.EnterSource(m_SourceRef)) { if (m_Local) { bc.Emit_Literal(DynValue.Nil); bc.Emit_Store(m_FuncSymbol, 0, 0); m_FuncDef.Compile(bc, () => SetFunction(bc, 2), m_FriendlyName); } else if (m_MethodName == null) { m_FuncDef.Compile(bc, () => SetFunction(bc, 1), m_FriendlyName); } else { m_FuncDef.Compile(bc, () => SetMethod(bc), m_FriendlyName); } } } private int SetMethod(Execution.VM.ByteCode bc) { int cnt = 0; cnt += bc.Emit_Load(m_FuncSymbol); foreach (string str in m_TableAccessors) { bc.Emit_Index(DynValue.NewString(str), true); cnt += 1; } bc.Emit_IndexSet(0, 0, DynValue.NewString(m_MethodName), true); return 1 + cnt; } private int SetFunction(Execution.VM.ByteCode bc, int numPop) { int num = bc.Emit_Store(m_FuncSymbol, 0, 0); bc.Emit_Pop(numPop); return num + 1; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/FunctionDefinitionStatement.cs.meta ================================================ fileFormatVersion: 2 guid: 72b498f4983605145bedc2705b6d0ec2 timeCreated: 1518177920 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/GotoStatement.cs ================================================ using MoonSharp.Interpreter.Debugging; using MoonSharp.Interpreter.Execution; using MoonSharp.Interpreter.Execution.VM; namespace MoonSharp.Interpreter.Tree.Statements { class GotoStatement : Statement { internal SourceRef SourceRef { get; private set; } internal Token GotoToken { get; private set; } public string Label { get; private set; } internal int DefinedVarsCount { get; private set; } internal string LastDefinedVarName { get; private set; } Instruction m_Jump; int m_LabelAddress = -1; public GotoStatement(ScriptLoadingContext lcontext) : base(lcontext) { GotoToken = CheckTokenType(lcontext, TokenType.Goto); Token name = CheckTokenType(lcontext, TokenType.Name); SourceRef = GotoToken.GetSourceRef(name); Label = name.Text; lcontext.Scope.RegisterGoto(this); } public override void Compile(ByteCode bc) { m_Jump = bc.Emit_Jump(OpCode.Jump, m_LabelAddress); } internal void SetDefinedVars(int definedVarsCount, string lastDefinedVarsName) { DefinedVarsCount = definedVarsCount; LastDefinedVarName = lastDefinedVarsName; } internal void SetAddress(int labelAddress) { m_LabelAddress = labelAddress; if (m_Jump != null) m_Jump.NumVal = labelAddress; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/GotoStatement.cs.meta ================================================ fileFormatVersion: 2 guid: 7e255fefb6b8165488a953784f97c738 timeCreated: 1518177921 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/IfStatement.cs ================================================ using System.Collections.Generic; using MoonSharp.Interpreter.Debugging; using MoonSharp.Interpreter.Execution; using MoonSharp.Interpreter.Execution.VM; namespace MoonSharp.Interpreter.Tree.Statements { class IfStatement : Statement { private class IfBlock { public Expression Exp; public Statement Block; public RuntimeScopeBlock StackFrame; public SourceRef Source; } List m_Ifs = new List(); IfBlock m_Else = null; SourceRef m_End; public IfStatement(ScriptLoadingContext lcontext) : base(lcontext) { while (lcontext.Lexer.Current.Type != TokenType.Else && lcontext.Lexer.Current.Type != TokenType.End) { m_Ifs.Add(CreateIfBlock(lcontext)); } if (lcontext.Lexer.Current.Type == TokenType.Else) { m_Else = CreateElseBlock(lcontext); } m_End = CheckTokenType(lcontext, TokenType.End).GetSourceRef(); lcontext.Source.Refs.Add(m_End); } IfBlock CreateIfBlock(ScriptLoadingContext lcontext) { Token type = CheckTokenType(lcontext, TokenType.If, TokenType.ElseIf); lcontext.Scope.PushBlock(); var ifblock = new IfBlock(); ifblock.Exp = Expression.Expr(lcontext); ifblock.Source = type.GetSourceRef(CheckTokenType(lcontext, TokenType.Then)); ifblock.Block = new CompositeStatement(lcontext); ifblock.StackFrame = lcontext.Scope.PopBlock(); lcontext.Source.Refs.Add(ifblock.Source); return ifblock; } IfBlock CreateElseBlock(ScriptLoadingContext lcontext) { Token type = CheckTokenType(lcontext, TokenType.Else); lcontext.Scope.PushBlock(); var ifblock = new IfBlock(); ifblock.Block = new CompositeStatement(lcontext); ifblock.StackFrame = lcontext.Scope.PopBlock(); ifblock.Source = type.GetSourceRef(); lcontext.Source.Refs.Add(ifblock.Source); return ifblock; } public override void Compile(Execution.VM.ByteCode bc) { List endJumps = new List(); Instruction lastIfJmp = null; foreach (var ifblock in m_Ifs) { using (bc.EnterSource(ifblock.Source)) { if (lastIfJmp != null) lastIfJmp.NumVal = bc.GetJumpPointForNextInstruction(); ifblock.Exp.Compile(bc); lastIfJmp = bc.Emit_Jump(OpCode.Jf, -1); bc.Emit_Enter(ifblock.StackFrame); ifblock.Block.Compile(bc); } using (bc.EnterSource(m_End)) bc.Emit_Leave(ifblock.StackFrame); endJumps.Add(bc.Emit_Jump(OpCode.Jump, -1)); } lastIfJmp.NumVal = bc.GetJumpPointForNextInstruction(); if (m_Else != null) { using (bc.EnterSource(m_Else.Source)) { bc.Emit_Enter(m_Else.StackFrame); m_Else.Block.Compile(bc); } using (bc.EnterSource(m_End)) bc.Emit_Leave(m_Else.StackFrame); } foreach(var endjmp in endJumps) endjmp.NumVal = bc.GetJumpPointForNextInstruction(); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/IfStatement.cs.meta ================================================ fileFormatVersion: 2 guid: b48eb032010bcba41a8c8dc0c375458c timeCreated: 1518177923 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/LabelStatement.cs ================================================ using System.Collections.Generic; using MoonSharp.Interpreter.Debugging; using MoonSharp.Interpreter.Execution; namespace MoonSharp.Interpreter.Tree.Statements { class LabelStatement : Statement { public string Label { get; private set; } public int Address { get; private set; } public SourceRef SourceRef { get; private set; } public Token NameToken { get; private set; } internal int DefinedVarsCount { get; private set; } internal string LastDefinedVarName { get; private set; } List m_Gotos = new List(); RuntimeScopeBlock m_StackFrame; public LabelStatement(ScriptLoadingContext lcontext) : base(lcontext) { CheckTokenType(lcontext, TokenType.DoubleColon); NameToken = CheckTokenType(lcontext, TokenType.Name); CheckTokenType(lcontext, TokenType.DoubleColon); SourceRef = NameToken.GetSourceRef(); Label = NameToken.Text; lcontext.Scope.DefineLabel(this); } internal void SetDefinedVars(int definedVarsCount, string lastDefinedVarsName) { DefinedVarsCount = definedVarsCount; LastDefinedVarName = lastDefinedVarsName; } internal void RegisterGoto(GotoStatement gotostat) { m_Gotos.Add(gotostat); } public override void Compile(Execution.VM.ByteCode bc) { bc.Emit_Clean(m_StackFrame); Address = bc.GetJumpPointForLastInstruction(); foreach (var gotostat in m_Gotos) gotostat.SetAddress(this.Address); } internal void SetScope(RuntimeScopeBlock runtimeScopeBlock) { m_StackFrame = runtimeScopeBlock; } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/LabelStatement.cs.meta ================================================ fileFormatVersion: 2 guid: 5e0b60f2244b8554c8cdc2f96c663e1b timeCreated: 1518177918 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/RepeatStatement.cs ================================================ using MoonSharp.Interpreter.Debugging; using MoonSharp.Interpreter.Execution; using MoonSharp.Interpreter.Execution.VM; namespace MoonSharp.Interpreter.Tree.Statements { class RepeatStatement : Statement { Expression m_Condition; Statement m_Block; RuntimeScopeBlock m_StackFrame; SourceRef m_Repeat, m_Until; public RepeatStatement(ScriptLoadingContext lcontext) : base(lcontext) { m_Repeat = CheckTokenType(lcontext, TokenType.Repeat).GetSourceRef(); lcontext.Scope.PushBlock(); m_Block = new CompositeStatement(lcontext); Token until = CheckTokenType(lcontext, TokenType.Until); m_Condition = Expression.Expr(lcontext); m_Until = until.GetSourceRefUpTo(lcontext.Lexer.Current); m_StackFrame = lcontext.Scope.PopBlock(); lcontext.Source.Refs.Add(m_Repeat); lcontext.Source.Refs.Add(m_Until); } public override void Compile(ByteCode bc) { Loop L = new Loop() { Scope = m_StackFrame }; bc.PushSourceRef(m_Repeat); bc.LoopTracker.Loops.Push(L); int start = bc.GetJumpPointForNextInstruction(); bc.Emit_Enter(m_StackFrame); m_Block.Compile(bc); bc.PopSourceRef(); bc.PushSourceRef(m_Until); bc.Emit_Debug("..end"); m_Condition.Compile(bc); bc.Emit_Leave(m_StackFrame); bc.Emit_Jump(OpCode.Jf, start); bc.LoopTracker.Loops.Pop(); int exitpoint = bc.GetJumpPointForNextInstruction(); foreach (Instruction i in L.BreakJumps) i.NumVal = exitpoint; bc.PopSourceRef(); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/RepeatStatement.cs.meta ================================================ fileFormatVersion: 2 guid: 15f0f371d88b292419024bb427ed8476 timeCreated: 1518177915 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/ReturnStatement.cs ================================================ using MoonSharp.Interpreter.Debugging; using MoonSharp.Interpreter.Execution; using MoonSharp.Interpreter.Tree.Expressions; namespace MoonSharp.Interpreter.Tree.Statements { class ReturnStatement: Statement { Expression m_Expression = null; SourceRef m_Ref; public ReturnStatement(ScriptLoadingContext lcontext, Expression e, SourceRef sref) : base(lcontext) { m_Expression = e; m_Ref = sref; lcontext.Source.Refs.Add(sref); } public ReturnStatement(ScriptLoadingContext lcontext) : base(lcontext) { Token ret = lcontext.Lexer.Current; lcontext.Lexer.Next(); Token cur = lcontext.Lexer.Current; if (cur.IsEndOfBlock() || cur.Type == TokenType.SemiColon) { m_Expression = null; m_Ref = ret.GetSourceRef(); } else { m_Expression = new ExprListExpression(Expression.ExprList(lcontext), lcontext); m_Ref = ret.GetSourceRefUpTo(lcontext.Lexer.Current); } lcontext.Source.Refs.Add(m_Ref); } public override void Compile(Execution.VM.ByteCode bc) { using (bc.EnterSource(m_Ref)) { if (m_Expression != null) { m_Expression.Compile(bc); bc.Emit_Ret(1); } else { bc.Emit_Ret(0); } } } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/ReturnStatement.cs.meta ================================================ fileFormatVersion: 2 guid: 6333baa66e7a79a48b27527e96a4f971 timeCreated: 1518177919 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/ScopeBlockStatement.cs ================================================ using MoonSharp.Interpreter.Debugging; using MoonSharp.Interpreter.Execution; namespace MoonSharp.Interpreter.Tree.Statements { class ScopeBlockStatement : Statement { Statement m_Block; RuntimeScopeBlock m_StackFrame; SourceRef m_Do, m_End; public ScopeBlockStatement(ScriptLoadingContext lcontext) : base(lcontext) { lcontext.Scope.PushBlock(); m_Do = CheckTokenType(lcontext, TokenType.Do).GetSourceRef(); m_Block = new CompositeStatement(lcontext); m_End = CheckTokenType(lcontext, TokenType.End).GetSourceRef(); m_StackFrame = lcontext.Scope.PopBlock(); lcontext.Source.Refs.Add(m_Do); lcontext.Source.Refs.Add(m_End); } public override void Compile(Execution.VM.ByteCode bc) { using(bc.EnterSource(m_Do)) bc.Emit_Enter(m_StackFrame); m_Block.Compile(bc); using (bc.EnterSource(m_End)) bc.Emit_Leave(m_StackFrame); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/ScopeBlockStatement.cs.meta ================================================ fileFormatVersion: 2 guid: 2dd7753af40a38040899433e5a71a883 timeCreated: 1518177916 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/WhileStatement.cs ================================================ using MoonSharp.Interpreter.Debugging; using MoonSharp.Interpreter.Execution; using MoonSharp.Interpreter.Execution.VM; namespace MoonSharp.Interpreter.Tree.Statements { class WhileStatement : Statement { Expression m_Condition; Statement m_Block; RuntimeScopeBlock m_StackFrame; SourceRef m_Start, m_End; public WhileStatement(ScriptLoadingContext lcontext) : base(lcontext) { Token whileTk = CheckTokenType(lcontext, TokenType.While); m_Condition = Expression.Expr(lcontext); m_Start = whileTk.GetSourceRefUpTo(lcontext.Lexer.Current); //m_Start = BuildSourceRef(context.Start, exp.Stop); //m_End = BuildSourceRef(context.Stop, context.END()); lcontext.Scope.PushBlock(); CheckTokenType(lcontext, TokenType.Do); m_Block = new CompositeStatement(lcontext); m_End = CheckTokenType(lcontext, TokenType.End).GetSourceRef(); m_StackFrame = lcontext.Scope.PopBlock(); lcontext.Source.Refs.Add(m_Start); lcontext.Source.Refs.Add(m_End); } public override void Compile(ByteCode bc) { Loop L = new Loop() { Scope = m_StackFrame }; bc.LoopTracker.Loops.Push(L); bc.PushSourceRef(m_Start); int start = bc.GetJumpPointForNextInstruction(); m_Condition.Compile(bc); var jumpend = bc.Emit_Jump(OpCode.Jf, -1); bc.Emit_Enter(m_StackFrame); m_Block.Compile(bc); bc.PopSourceRef(); bc.Emit_Debug("..end"); bc.PushSourceRef(m_End); bc.Emit_Leave(m_StackFrame); bc.Emit_Jump(OpCode.Jump, start); bc.LoopTracker.Loops.Pop(); int exitpoint = bc.GetJumpPointForNextInstruction(); foreach (Instruction i in L.BreakJumps) i.NumVal = exitpoint; jumpend.NumVal = exitpoint; bc.PopSourceRef(); } } } ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements/WhileStatement.cs.meta ================================================ fileFormatVersion: 2 guid: c147393288bb84047935f6c1401cb652 timeCreated: 1518177923 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree/Statements.meta ================================================ fileFormatVersion: 2 guid: 7cb29e7b81f683b44993e39af4ff5abb folderAsset: yes timeCreated: 1518177913 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter/Tree.meta ================================================ fileFormatVersion: 2 guid: 160485b852dbee649a7747a1b106c087 folderAsset: yes timeCreated: 1518177911 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp/Interpreter.meta ================================================ fileFormatVersion: 2 guid: 49efa1d55402f8648821c0b75690e40b folderAsset: yes timeCreated: 1518177910 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/MoonSharp.meta ================================================ fileFormatVersion: 2 guid: 1d609da8b68da904aa78d0258936216e folderAsset: yes timeCreated: 1518177910 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/aarch64/discord_game_sdk.bundle.meta ================================================ fileFormatVersion: 2 guid: b1a89a6e55a46a94f9ea0498d0e8fe14 PluginImporter: externalObjects: {} serializedVersion: 2 iconMap: {} executionOrder: {} defineConstraints: [] isPreloaded: 0 isOverridable: 0 isExplicitlyReferenced: 0 validateReferences: 1 platformData: - first: Any: second: enabled: 0 settings: {} - first: Editor: Editor second: enabled: 1 settings: DefaultValueInitialized: true - first: Standalone: OSXUniversal second: enabled: 1 settings: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/aarch64/discord_game_sdk.dylib.meta ================================================ fileFormatVersion: 2 guid: c35cde035132f404683ad501683a6a79 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/aarch64.meta ================================================ fileFormatVersion: 2 guid: cbad02c1e1893bc4b95762c43cd3e7b0 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/user32.dll.meta ================================================ fileFormatVersion: 2 guid: d60eb1006c590b44ba2f554c9ccdda29 timeCreated: 1474309134 licenseType: Free PluginImporter: serializedVersion: 1 iconMap: {} executionOrder: {} isPreloaded: 0 isOverridable: 0 platformData: Android: enabled: 0 settings: CPU: AnyCPU Any: enabled: 0 settings: {} Editor: enabled: 1 settings: CPU: AnyCPU DefaultValueInitialized: true OS: Windows Linux: enabled: 1 settings: CPU: x86 Linux64: enabled: 1 settings: CPU: x86_64 LinuxUniversal: enabled: 1 settings: CPU: AnyCPU OSXIntel: enabled: 1 settings: CPU: AnyCPU OSXIntel64: enabled: 1 settings: CPU: AnyCPU OSXUniversal: enabled: 1 settings: CPU: AnyCPU Win: enabled: 1 settings: CPU: AnyCPU Win64: enabled: 1 settings: CPU: AnyCPU userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/x86/discord_game_sdk.dll.lib.meta ================================================ fileFormatVersion: 2 guid: 8a1bc2dee583f474f9a661d95e437c0a DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/x86/discord_game_sdk.dll.meta ================================================ fileFormatVersion: 2 guid: 5486a1a22e6655c48b48576143e19e95 PluginImporter: externalObjects: {} serializedVersion: 2 iconMap: {} executionOrder: {} defineConstraints: [] isPreloaded: 0 isOverridable: 0 isExplicitlyReferenced: 0 validateReferences: 1 platformData: - first: Any: second: enabled: 1 settings: {} - first: Editor: Editor second: enabled: 0 settings: CPU: x86 DefaultValueInitialized: true - first: Facebook: Win second: enabled: 1 settings: CPU: AnyCPU - first: Facebook: Win64 second: enabled: 0 settings: CPU: None - first: Standalone: Linux second: enabled: 1 settings: CPU: x86 - first: Standalone: Linux64 second: enabled: 0 settings: CPU: None - first: Standalone: LinuxUniversal second: enabled: 1 settings: CPU: x86 - first: Standalone: OSXUniversal second: enabled: 0 settings: CPU: x86 - first: Standalone: Win second: enabled: 1 settings: CPU: AnyCPU - first: Standalone: Win64 second: enabled: 0 settings: CPU: None userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/x86.meta ================================================ fileFormatVersion: 2 guid: 12e9082df71b3824fba9cb1b2a9c44d3 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/x86_64/discord_game_sdk.bundle.meta ================================================ fileFormatVersion: 2 guid: cbd617ca6c1ab4f4ab40f28081481e68 PluginImporter: externalObjects: {} serializedVersion: 2 iconMap: {} executionOrder: {} defineConstraints: [] isPreloaded: 0 isOverridable: 0 isExplicitlyReferenced: 0 validateReferences: 1 platformData: - first: Any: second: enabled: 1 settings: {} - first: Editor: Editor second: enabled: 0 settings: CPU: x86_64 DefaultValueInitialized: true - first: Facebook: Win second: enabled: 0 settings: CPU: None - first: Facebook: Win64 second: enabled: 1 settings: CPU: AnyCPU - first: Standalone: Linux second: enabled: 0 settings: CPU: None - first: Standalone: Linux64 second: enabled: 1 settings: CPU: x86_64 - first: Standalone: LinuxUniversal second: enabled: 1 settings: CPU: x86_64 - first: Standalone: OSXUniversal second: enabled: 0 settings: CPU: x86_64 - first: Standalone: Win second: enabled: 0 settings: CPU: None - first: Standalone: Win64 second: enabled: 1 settings: CPU: AnyCPU userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/x86_64/discord_game_sdk.dll.lib.meta ================================================ fileFormatVersion: 2 guid: e956840ab7bcae84f9acd8604ca1da39 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/x86_64/discord_game_sdk.dll.meta ================================================ fileFormatVersion: 2 guid: 32dea0ac683b1124f9032c08e92ff952 PluginImporter: externalObjects: {} serializedVersion: 2 iconMap: {} executionOrder: {} defineConstraints: [] isPreloaded: 0 isOverridable: 0 isExplicitlyReferenced: 0 validateReferences: 1 platformData: - first: '': OSXIntel second: enabled: 0 settings: CPU: None - first: '': OSXIntel64 second: enabled: 1 settings: CPU: AnyCPU - first: Any: second: enabled: 1 settings: {} - first: Editor: Editor second: enabled: 0 settings: CPU: x86_64 DefaultValueInitialized: true - first: Facebook: Win second: enabled: 0 settings: CPU: None - first: Facebook: Win64 second: enabled: 1 settings: CPU: AnyCPU - first: Standalone: Linux second: enabled: 0 settings: CPU: None - first: Standalone: Linux64 second: enabled: 1 settings: CPU: x86_64 - first: Standalone: LinuxUniversal second: enabled: 1 settings: CPU: x86_64 - first: Standalone: OSXUniversal second: enabled: 0 settings: CPU: x86_64 - first: Standalone: Win second: enabled: 0 settings: CPU: None - first: Standalone: Win64 second: enabled: 1 settings: CPU: AnyCPU userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/x86_64/discord_game_sdk.dylib.meta ================================================ fileFormatVersion: 2 guid: 5a1889f8a47ee2149ade77d68d0ad58d DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/x86_64/discord_game_sdk.so.meta ================================================ fileFormatVersion: 2 guid: 04ead618fe2bfcc49b3fc9c4fa5b3a90 PluginImporter: externalObjects: {} serializedVersion: 2 iconMap: {} executionOrder: {} defineConstraints: [] isPreloaded: 0 isOverridable: 0 isExplicitlyReferenced: 0 validateReferences: 1 platformData: - first: Any: second: enabled: 1 settings: {} - first: Editor: Editor second: enabled: 0 settings: CPU: x86_64 DefaultValueInitialized: true - first: Facebook: Win second: enabled: 0 settings: CPU: None - first: Facebook: Win64 second: enabled: 1 settings: CPU: AnyCPU - first: Standalone: Linux second: enabled: 0 settings: CPU: None - first: Standalone: Linux64 second: enabled: 1 settings: CPU: x86_64 - first: Standalone: LinuxUniversal second: enabled: 1 settings: CPU: x86_64 - first: Standalone: OSXUniversal second: enabled: 0 settings: CPU: x86_64 - first: Standalone: Win second: enabled: 0 settings: CPU: None - first: Standalone: Win64 second: enabled: 1 settings: CPU: AnyCPU userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins/x86_64.meta ================================================ fileFormatVersion: 2 guid: a0a3c464d77dbe84f9e65e5e33c6b569 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Plugins.meta ================================================ fileFormatVersion: 2 guid: 8e5eac9968a5e7245b87c1f3b2fe9de3 folderAsset: yes timeCreated: 1446848942 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Audios/ButtonSound.ogg.meta ================================================ fileFormatVersion: 2 guid: 28c29e790d5f27b4aaa6beb63e124381 AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Audios/GoatSound.ogg.meta ================================================ fileFormatVersion: 2 guid: a5d2cecf3ba534e4f88238f81063ded3 timeCreated: 1498848447 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Audios/MisriHalek.ogg.meta ================================================ fileFormatVersion: 2 guid: 72d791c3e3c808b4ebac09f69710d2f2 timeCreated: 1498848447 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Audios/Rhenny.ogg.meta ================================================ fileFormatVersion: 2 guid: 2db1dc49ef42e9946be64450982088bf AudioImporter: externalObjects: {} serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 ambisonic: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Audios/sound.wav.meta ================================================ fileFormatVersion: 2 guid: 8dfc430ff6b34a94ba8a4efa4213694a timeCreated: 1499206080 licenseType: Free AudioImporter: serializedVersion: 6 defaultSettings: loadType: 0 sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 quality: 1 conversionMode: 0 platformSettingOverrides: {} forceToMono: 0 normalize: 1 preloadAudioData: 1 loadInBackground: 0 3D: 1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Audios.meta ================================================ fileFormatVersion: 2 guid: 729f73405ec72b746a6a13e5e31850bb folderAsset: yes timeCreated: 1498847029 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/BGCamera.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_SourcePrefab: {fileID: 0} m_RootGameObject: {fileID: 1561602297384162} m_IsPrefabAsset: 1 --- !u!1 &1561602297384162 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 6 m_Component: - component: {fileID: 4655601428465218} - component: {fileID: 20835910116548224} m_Layer: 0 m_Name: BGCamera m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &4655601428465218 Transform: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1561602297384162} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 320, y: 240, z: -10} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!20 &20835910116548224 Camera: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1561602297384162} m_Enabled: 1 serializedVersion: 2 m_ClearFlags: 2 m_BackGroundColor: {r: 0, g: 0, b: 0, a: 0} m_projectionMatrixMode: 1 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} m_FocalLength: 50 m_NormalizedViewPortRect: serializedVersion: 2 x: 0 y: 0 width: 4 height: 3 near clip plane: 0.3 far clip plane: 1000 field of view: 60 orthographic: 1 orthographic size: 240 m_Depth: -2 m_CullingMask: serializedVersion: 2 m_Bits: 0 m_RenderingPath: -1 m_TargetTexture: {fileID: 0} m_TargetDisplay: 0 m_TargetEye: 3 m_HDR: 0 m_AllowMSAA: 0 m_AllowDynamicResolution: 0 m_ForceIntoRT: 0 m_OcclusionCulling: 1 m_StereoConvergence: 10 m_StereoSeparation: 0.022 ================================================ FILE: Assets/Resources/Prefabs/BGCamera.prefab.meta ================================================ fileFormatVersion: 2 guid: 0969a31c95a21a241bad85962a6fa072 NativeFormatImporter: externalObjects: {} mainObjectFileID: 100100000 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/Background 1.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &110876 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 4: {fileID: 479136} - 68: {fileID: 6833712} m_Layer: 19 m_Name: EdgeCollider 1 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &118210 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 4: {fileID: 499438} - 60: {fileID: 6032644} m_Layer: 19 m_Name: Collider 2 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &126514 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 4: {fileID: 480924} - 60: {fileID: 6056674} m_Layer: 19 m_Name: Collider 4 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &134422 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22411040} - 114: {fileID: 11414468} - 212: {fileID: 21251718} m_Layer: 0 m_Name: Background 1 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &139954 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 4: {fileID: 480500} - 68: {fileID: 6812434} m_Layer: 19 m_Name: EdgeCollider 3 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &147424 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 4: {fileID: 407264} - 68: {fileID: 6844402} m_Layer: 19 m_Name: EdgeCollider 2 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &157358 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 4: {fileID: 406064} - 68: {fileID: 6882432} - 50: {fileID: 5032938} - 114: {fileID: 11494438} m_Layer: 0 m_Name: TP Up Right m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &158488 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 4: {fileID: 477142} - 60: {fileID: 6090692} m_Layer: 19 m_Name: Collider 3 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &158784 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 4: {fileID: 474894} - 68: {fileID: 6824242} - 50: {fileID: 5026480} - 114: {fileID: 11456550} m_Layer: 0 m_Name: TP Down Right m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &168770 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 4: {fileID: 425052} - 68: {fileID: 6853106} - 50: {fileID: 5034292} - 114: {fileID: 11498914} m_Layer: 0 m_Name: TP Up Left m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &187550 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 4: {fileID: 479584} - 60: {fileID: 6053462} m_Layer: 19 m_Name: Collider 1 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &406064 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 157358} m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071067} m_LocalPosition: {x: 7.425, y: 3.65, z: 0.125} m_LocalScale: {x: 2, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} m_Children: [] m_Father: {fileID: 22411040} m_RootOrder: 8 --- !u!4 &407264 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 147424} m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071067} m_LocalPosition: {x: 7.625, y: 3.65, z: 0} m_LocalScale: {x: 2, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22411040} m_RootOrder: 5 --- !u!4 &425052 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 168770} m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071067} m_LocalPosition: {x: -7.425, y: 2.85, z: 0.125} m_LocalScale: {x: 2, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} m_Children: [] m_Father: {fileID: 22411040} m_RootOrder: 9 --- !u!4 &474894 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 158784} m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071067} m_LocalPosition: {x: 7.425, y: -3.2, z: 0.125} m_LocalScale: {x: 2, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} m_Children: [] m_Father: {fileID: 22411040} m_RootOrder: 7 --- !u!4 &477142 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 158488} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -13.099998} m_LocalScale: {x: 1, y: 1, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22411040} m_RootOrder: 2 --- !u!4 &479136 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 110876} m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071067} m_LocalPosition: {x: 7.625, y: -3.2, z: 0} m_LocalScale: {x: 2, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22411040} m_RootOrder: 4 --- !u!4 &479584 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 187550} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -13.099998} m_LocalScale: {x: 1, y: 1, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22411040} m_RootOrder: 0 --- !u!4 &480500 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 139954} m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071067} m_LocalPosition: {x: -7.625, y: 2.85, z: 0} m_LocalScale: {x: 2, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22411040} m_RootOrder: 6 --- !u!4 &480924 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 126514} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -13.099998} m_LocalScale: {x: 1, y: 1, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22411040} m_RootOrder: 3 --- !u!4 &499438 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 118210} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -13.099998} m_LocalScale: {x: 1, y: 1, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22411040} m_RootOrder: 1 --- !u!50 &5026480 Rigidbody2D: serializedVersion: 2 m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 158784} m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_IsKinematic: 1 m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 4 --- !u!50 &5032938 Rigidbody2D: serializedVersion: 2 m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 157358} m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_IsKinematic: 1 m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 4 --- !u!50 &5034292 Rigidbody2D: serializedVersion: 2 m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 168770} m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_IsKinematic: 1 m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 4 --- !u!60 &6032644 PolygonCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 118210} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_Offset: {x: 0, y: 0} m_Points: m_Paths: - - {x: 5.9744654, y: 2.988809} - {x: 6.3764124, y: 2.5894732} - {x: 6.7755675, y: 2.991294} - {x: 7.6243176, y: 2.9911015} - {x: 7.623719, y: -2.6100452} - {x: 5.9768114, y: -2.6110015} - {x: 5.5755787, y: -2.2093375} - {x: 4.774803, y: -2.2098126} - {x: 4.376299, y: -1.8092742} - {x: 3.9735131, y: -1.8084652} - {x: 3.5746605, y: -1.4084469} - {x: 3.574315, y: 0.18921936} - {x: 3.9750476, y: 0.58945554} - {x: 3.9745054, y: 1.3890485} - {x: 4.775563, y: 2.1886804} - {x: 5.172948, y: 2.1899183} - {x: 5.173148, y: 2.5889313} - {x: 5.575074, y: 2.9896526} --- !u!60 &6053462 PolygonCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 187550} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_Offset: {x: 0, y: 0} m_Points: m_Paths: - - {x: -7.626345, y: 2.1884997} - {x: -6.8240995, y: 2.1891308} - {x: -6.4286695, y: 1.792362} - {x: -5.6246123, y: 1.7935559} - {x: -5.2251453, y: 2.1914825} - {x: -4.8231683, y: 2.191386} - {x: -4.426184, y: 1.7885314} - {x: -4.0246506, y: 1.7890844} - {x: -3.2238815, y: 2.5874567} - {x: -3.223399, y: 3.7876318} - {x: -2.8250015, y: 3.7873619} - {x: -2.8249416, y: 2.1899292} - {x: -1.225603, y: 0.58923763} - {x: -1.2258496, y: 0.18929748} - {x: -2.424658, y: 0.190354} - {x: -2.8253145, y: -0.21065307} - {x: -3.6251812, y: -0.20861755} - {x: -4.0250535, y: -0.61202145} - {x: -4.8259115, y: -0.6097284} - {x: -6.025746, y: -1.8091779} - {x: -5.226, y: -1.8103201} - {x: -4.8254485, y: -2.2093635} - {x: -5.225493, y: -2.6106362} - {x: -6.0245066, y: -2.6102383} - {x: -6.0246434, y: -3.00879} - {x: -4.4248633, y: -4.610608} - {x: 3.17416, y: -4.610477} - {x: 3.5766966, y: -4.207452} - {x: 5.577251, y: -4.2088714} - {x: 5.9742494, y: -3.8080292} - {x: 7.62489, y: -3.8082867} - {x: 7.604293, y: -5.800991} - {x: -7.6244817, y: -5.8117347} --- !u!60 &6056674 PolygonCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 126514} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_Offset: {x: 0, y: 0} m_Points: m_Paths: - - {x: 1.9752825, y: -1.4106439} - {x: 2.3754828, y: -1.8099117} - {x: 2.7767322, y: -1.8117743} - {x: 3.1768346, y: -1.4111716} - {x: 2.7752807, y: -1.0104345} - {x: 2.3733513, y: -1.008946} --- !u!60 &6090692 PolygonCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 158488} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_Offset: {x: 0, y: 0} m_Points: m_Paths: - - {x: -7.223675, y: 3.3876781} - {x: -7.6253333, y: 3.3896818} - {x: -7.63002, y: 5.812734} - {x: 7.622446, y: 5.8082995} - {x: 7.625317, y: 4.191391} - {x: 5.573254, y: 4.188609} - {x: 5.175758, y: 4.5914783} - {x: 3.5760155, y: 4.5903964} - {x: 3.1757996, y: 4.9910507} - {x: -2.5095618, y: 4.9816504} - {x: -2.8241646, y: 4.8146043} - {x: -2.8225844, y: 4.1883388} - {x: -3.2272084, y: 4.1897254} - {x: -3.2254944, y: 4.590289} - {x: -4.024673, y: 4.5886326} - {x: -4.426144, y: 4.991477} - {x: -5.2253404, y: 4.9896617} - {x: -5.6258397, y: 4.5879955} - {x: -6.024792, y: 4.5890346} --- !u!68 &6812434 EdgeCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 139954} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_Offset: {x: 0, y: 0} m_Points: - {x: -0.5, y: 0} - {x: 0.5, y: 0} --- !u!68 &6824242 EdgeCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 158784} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 1 m_UsedByEffector: 0 m_Offset: {x: 0, y: 0} m_Points: - {x: -0.5, y: 0} - {x: 0.5, y: 0} --- !u!68 &6833712 EdgeCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 110876} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_Offset: {x: 0, y: 0} m_Points: - {x: -0.5, y: 0} - {x: 0.5, y: 0} --- !u!68 &6844402 EdgeCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 147424} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_Offset: {x: 0, y: 0} m_Points: - {x: -0.5, y: 0} - {x: 0.5, y: 0} --- !u!68 &6853106 EdgeCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 168770} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 1 m_UsedByEffector: 0 m_Offset: {x: 0, y: 0} m_Points: - {x: -0.5, y: 0} - {x: 0.5, y: 0} --- !u!68 &6882432 EdgeCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 157358} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 1 m_UsedByEffector: 0 m_Offset: {x: 0, y: 0} m_Points: - {x: -0.5, y: 0} - {x: 0.5, y: 0} --- !u!114 &11414468 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 134422} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7a4ef58bda0647d48b67028c05b00813, type: 3} m_Name: m_EditorClassIdentifier: id: 1 music: mus_snowy modToLoad: Examples 2 --- !u!114 &11456550 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 158784} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: cafce2c3f7e465f478d7b302ab1b8236, type: 3} m_Name: m_EditorClassIdentifier: sceneName: test position: {x: 40, y: 880} uduu2: 0 direction: 6 --- !u!114 &11494438 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 157358} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: cafce2c3f7e465f478d7b302ab1b8236, type: 3} m_Name: m_EditorClassIdentifier: sceneName: test position: {x: 40, y: 880} uduu2: 0 direction: 6 --- !u!114 &11498914 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 168770} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: cafce2c3f7e465f478d7b302ab1b8236, type: 3} m_Name: m_EditorClassIdentifier: sceneName: test2 position: {x: 320, y: 400} uduu2: 0 direction: 2 --- !u!212 &21251718 SpriteRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 134422} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_Materials: - {fileID: 10754, guid: 0000000000000000e000000000000000, type: 0} m_SubsetIndices: m_StaticBatchRoot: {fileID: 0} m_UseLightProbes: 0 m_ReflectionProbeUsage: 0 m_ProbeAnchor: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 29c3dbfd2805d92459f90e11f0158988, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 --- !u!224 &22411040 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 134422} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 140} m_LocalScale: {x: 100, y: 100, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: - {fileID: 479584} - {fileID: 499438} - {fileID: 477142} - {fileID: 480924} - {fileID: 479136} - {fileID: 407264} - {fileID: 480500} - {fileID: 474894} - {fileID: 406064} - {fileID: 425052} m_Father: {fileID: 0} m_RootOrder: 0 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 762.5, y: 581} m_SizeDelta: {x: 15.25, y: 11.62} m_Pivot: {x: 0.5, y: 0.5} --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_ParentPrefab: {fileID: 0} m_RootGameObject: {fileID: 134422} m_IsPrefabParent: 1 ================================================ FILE: Assets/Resources/Prefabs/Background 1.prefab.meta ================================================ fileFormatVersion: 2 guid: d781acdb7c86dff4081250e8c5edd546 timeCreated: 1464291115 licenseType: Free NativeFormatImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/Background.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &103182 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 4: {fileID: 477860} - 68: {fileID: 6816892} m_Layer: 19 m_Name: EdgeCollider 1 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &114590 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 4: {fileID: 434968} - 60: {fileID: 6083686} m_Layer: 19 m_Name: Collider 4 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &121140 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 4: {fileID: 434316} - 212: {fileID: 21203668} m_Layer: 17 m_Name: Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &127166 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 4: {fileID: 497532} - 60: {fileID: 6021280} m_Layer: 19 m_Name: Collider 3 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &129262 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 4: {fileID: 418202} - 60: {fileID: 6031574} m_Layer: 19 m_Name: Collider 2 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &140050 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 4: {fileID: 465334} - 68: {fileID: 6820472} m_Layer: 19 m_Name: EdgeCollider 2 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &195286 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 4: {fileID: 489144} - 60: {fileID: 6077432} m_Layer: 19 m_Name: Collider 1 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &418202 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 129262} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -13.0999985} m_LocalScale: {x: 1, y: 1, z: 0} m_Children: [] m_Father: {fileID: 434316} m_RootOrder: 1 --- !u!4 &434316 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 121140} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 3.20000005, y: 2.4000001, z: 140.125} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 489144} - {fileID: 418202} - {fileID: 497532} - {fileID: 434968} - {fileID: 477860} - {fileID: 465334} m_Father: {fileID: 0} m_RootOrder: 0 --- !u!4 &434968 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 114590} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -13.0999985} m_LocalScale: {x: 1, y: 1, z: 0} m_Children: [] m_Father: {fileID: 434316} m_RootOrder: 3 --- !u!4 &465334 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 140050} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 2.4000001, z: 0} m_LocalScale: {x: 2, y: 1, z: 1} m_Children: [] m_Father: {fileID: 434316} m_RootOrder: 5 --- !u!4 &477860 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 103182} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: -2.4000001, z: 0} m_LocalScale: {x: 2, y: 1, z: 1} m_Children: [] m_Father: {fileID: 434316} m_RootOrder: 4 --- !u!4 &489144 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 195286} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -13.0999985} m_LocalScale: {x: 1, y: 1, z: 0} m_Children: [] m_Father: {fileID: 434316} m_RootOrder: 0 --- !u!4 &497532 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 127166} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -13.0999985} m_LocalScale: {x: 1, y: 1, z: 0} m_Children: [] m_Father: {fileID: 434316} m_RootOrder: 2 --- !u!60 &6021280 PolygonCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 127166} m_Enabled: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_Offset: {x: 0, y: 0} m_Points: m_Paths: - - {x: .55378145, y: .799382329} - {x: .549025238, y: 2.40174484} - {x: 3.20046329, y: 2.3974154} - {x: 3.19863892, y: .400226116} - {x: 2.99142194, y: .40037322} - {x: 2.98754454, y: -.000364990236} - {x: 1.34715152, y: .00085479737} - {x: 1.34620059, y: .401430041} - {x: .951088548, y: .401390076} - {x: .946740687, y: .79991883} --- !u!60 &6031574 PolygonCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 129262} m_Enabled: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_Offset: {x: 0, y: 0} m_Points: m_Paths: - - {x: .550938427, y: -2.40037489} - {x: .551679075, y: -1.59960568} - {x: .951294541, y: -1.60157132} - {x: .950715005, y: -1.19863093} - {x: 1.35007167, y: -1.2008332} - {x: 1.34870756, y: -.795286536} - {x: 2.9919982, y: -.799717844} - {x: 2.9879961, y: -1.19675314} - {x: 3.19738507, y: -1.19399416} - {x: 3.19919372, y: -2.39805436} --- !u!60 &6077432 PolygonCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 195286} m_Enabled: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_Offset: {x: 0, y: 0} m_Points: m_Paths: - - {x: -3.19948959, y: -.399456769} - {x: -2.61270499, y: -.399112701} - {x: -2.61001515, y: -.800403416} - {x: -1.41405821, y: -.800269127} - {x: -1.41309643, y: -1.59940302} - {x: -.612270772, y: -1.60120618} - {x: -.606357992, y: -2.39972305} - {x: -3.19971728, y: -2.4001143} --- !u!60 &6083686 PolygonCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 114590} m_Enabled: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_Offset: {x: 0, y: 0} m_Points: m_Paths: - - {x: -3.20019364, y: 2.39886379} - {x: -.61330229, y: 2.39994764} - {x: -.615218818, y: .800979912} - {x: -1.81266677, y: .798644722} - {x: -1.81181765, y: .398457646} - {x: -3.20006442, y: .399053335} --- !u!68 &6816892 EdgeCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 103182} m_Enabled: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_Offset: {x: 0, y: 0} m_Points: - {x: -.5, y: 0} - {x: .5, y: 0} --- !u!68 &6820472 EdgeCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 140050} m_Enabled: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_Offset: {x: 0, y: 0} m_Points: - {x: -.5, y: 0} - {x: .5, y: 0} --- !u!212 &21203668 SpriteRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 121140} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_Materials: - {fileID: 10754, guid: 0000000000000000e000000000000000, type: 0} m_SubsetIndices: m_StaticBatchRoot: {fileID: 0} m_UseLightProbes: 0 m_ReflectionProbeUsage: 0 m_ProbeAnchor: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_ImportantGI: 0 m_AutoUVMaxDistance: .5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 9681ff43a078f014a8400e290fa741a3, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_ParentPrefab: {fileID: 0} m_RootGameObject: {fileID: 121140} m_IsPrefabParent: 1 ================================================ FILE: Assets/Resources/Prefabs/Background.prefab.meta ================================================ fileFormatVersion: 2 guid: 81be41ce3a4b1df4ab875cc673214de3 timeCreated: 1458438485 licenseType: Free NativeFormatImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/Canvas OW.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &102584 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22405520} - 114: {fileID: 11425900} - 82: {fileID: 8235252} m_Layer: 0 m_Name: TextManagerMenuCell m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &102878 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22499754} - 222: {fileID: 22201302} - 114: {fileID: 11481102} m_Layer: 5 m_Name: utHeart m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &104722 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22464902} - 114: {fileID: 11425914} - 82: {fileID: 8240498} m_Layer: 0 m_Name: TextManagerItem7 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &109072 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22473384} - 114: {fileID: 11403628} - 82: {fileID: 8246416} m_Layer: 0 m_Name: TextManagerItem1 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &111108 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22418640} - 114: {fileID: 11477156} - 82: {fileID: 8239556} m_Layer: 0 m_Name: TextManagerStatEXP m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &111604 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22430634} - 114: {fileID: 11424568} - 82: {fileID: 8227254} m_Layer: 0 m_Name: TextManagerStatWeapon m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &116950 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22495040} - 114: {fileID: 11473182} - 82: {fileID: 8245112} m_Layer: 0 m_Name: TextManagerMenuStat m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &121124 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 4: {fileID: 479772} - 114: {fileID: 11410016} m_Layer: 31 m_Name: FadingBlack m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &125440 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22408348} - 114: {fileID: 11406152} - 82: {fileID: 8292336} m_Layer: 0 m_Name: TextManagerTime m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &126142 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22438742} - 222: {fileID: 22237998} - 114: {fileID: 11488738} m_Layer: 5 m_Name: textframe_border_outer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &126430 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22445310} - 114: {fileID: 11447966} - 82: {fileID: 8255908} m_Layer: 0 m_Name: TextManagerStatName m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &127248 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22478606} - 114: {fileID: 11468106} - 82: {fileID: 8216894} m_Layer: 0 m_Name: TextManagerStatATK m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &127532 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22462822} - 114: {fileID: 11427334} - 82: {fileID: 8239926} m_Layer: 0 m_Name: TextManagerItem2 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &127570 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22414798} - 114: {fileID: 11456694} - 82: {fileID: 8272772} m_Layer: 0 m_Name: TextManagerMenuStatName m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &129530 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22473642} - 222: {fileID: 22247274} - 114: {fileID: 11485054} m_Layer: 5 m_Name: PlayerEncounter m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &131400 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22412628} - 114: {fileID: 11489992} - 82: {fileID: 8277832} m_Layer: 0 m_Name: TextManagerMenuItem m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &133030 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22428066} - 114: {fileID: 11485060} - 82: {fileID: 8259096} m_Layer: 0 m_Name: TextManagerMenuStatHP m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &135510 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22453944} - 222: {fileID: 22203174} - 114: {fileID: 11451918} m_Layer: 5 m_Name: ImageMenu m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 0 --- !u!1 &135856 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22422088} - 114: {fileID: 11498876} - 82: {fileID: 8273024} m_Layer: 0 m_Name: TextManagerItem3 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &138530 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22435900} - 223: {fileID: 22343828} - 114: {fileID: 11450476} - 114: {fileID: 11406992} m_Layer: 5 m_Name: Canvas OW m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &139210 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22457314} - 114: {fileID: 11428126} - 82: {fileID: 8280518} m_Layer: 0 m_Name: TextManagerStatNext m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &139748 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22452400} - 114: {fileID: 11491632} - 82: {fileID: 8254856} m_Layer: 0 m_Name: TextManagerItemDrop m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &142056 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22459620} - 114: {fileID: 11420884} - 82: {fileID: 8251932} m_Layer: 0 m_Name: TextManagerStatHP m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &142508 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22420856} - 222: {fileID: 22211202} - 114: {fileID: 11446620} m_Layer: 5 m_Name: ImageSave m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 0 --- !u!1 &144218 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22461734} - 222: {fileID: 22235086} - 114: {fileID: 11493134} m_Layer: 5 m_Name: menustat_border_outer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &148338 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22450696} - 222: {fileID: 22227018} - 114: {fileID: 11429386} m_Layer: 5 m_Name: menuchoice_interior m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &148386 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22435654} - 114: {fileID: 11496254} - 82: {fileID: 8297074} m_Layer: 0 m_Name: TextManagerName m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &149078 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22459614} - 222: {fileID: 22240298} - 114: {fileID: 11404624} m_Layer: 5 m_Name: item_border_outer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &153806 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22410726} - 114: {fileID: 11425818} - 82: {fileID: 8293506} m_Layer: 0 m_Name: TextManagerStatLevel m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &154400 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22402256} - 114: {fileID: 11410186} - 82: {fileID: 8238284} m_Layer: 0 m_Name: TextManagerItem6 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &155676 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22460088} - 114: {fileID: 11460566} - 82: {fileID: 8235390} m_Layer: 0 m_Name: TextManagerReturn m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &162050 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22420958} - 114: {fileID: 11433446} - 82: {fileID: 8218406} m_Layer: 0 m_Name: TextManagerItem5 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &164878 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22403394} - 114: {fileID: 11489994} - 82: {fileID: 8254826} m_Layer: 0 m_Name: TextManagerLevel m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &165910 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22448448} - 222: {fileID: 22251132} - 114: {fileID: 11489796} m_Layer: 5 m_Name: utHeartMenu m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &168326 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22435978} - 114: {fileID: 11438302} - 82: {fileID: 8280770} m_Layer: 0 m_Name: TextManagerMap m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &168814 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22451430} - 222: {fileID: 22264470} - 114: {fileID: 11493082} m_Layer: 5 m_Name: save_border_outer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &169666 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22444640} - 114: {fileID: 11404458} - 82: {fileID: 8284956} m_Layer: 0 m_Name: TextManagerItem4 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &170660 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22425382} - 114: {fileID: 11424364} - 82: {fileID: 8227190} m_Layer: 0 m_Name: TextManagerItemUse m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &172992 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22431834} - 114: {fileID: 11443542} - 82: {fileID: 8235822} m_Layer: 0 m_Name: TextManagerStatGold m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &174536 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22457004} - 114: {fileID: 11491416} - 82: {fileID: 8238304} m_Layer: 0 m_Name: TextManagerItem8 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &175004 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22487528} - 114: {fileID: 11473512} - 82: {fileID: 8261376} m_Layer: 0 m_Name: TextManagerItemInfo m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &175106 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22420338} m_Layer: 5 m_Name: MenuContainer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &176660 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22459112} - 114: {fileID: 11479976} - 82: {fileID: 8286316} m_Layer: 0 m_Name: TextManagerStatDEF m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &182928 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22493804} - 222: {fileID: 22237590} - 114: {fileID: 11492236} m_Layer: 5 m_Name: ImageStat m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 0 --- !u!1 &183300 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22418524} - 222: {fileID: 22269356} - 114: {fileID: 11481144} m_Layer: 5 m_Name: stat_border_outer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &185926 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22480922} - 114: {fileID: 11408826} - 82: {fileID: 8222898} m_Layer: 0 m_Name: TextManagerMenuStatGold m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &186548 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22431496} - 114: {fileID: 11457128} - 82: {fileID: 8252388} m_Layer: 0 m_Name: TextManagerSave m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &186728 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22442236} - 222: {fileID: 22267156} - 114: {fileID: 11484428} m_Layer: 5 m_Name: stat_interior m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &187396 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22453338} - 222: {fileID: 22262554} - 114: {fileID: 11458820} m_Layer: 0 m_Name: black m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &188422 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22443130} - 222: {fileID: 22247638} - 114: {fileID: 11427710} m_Layer: 5 m_Name: textframe_interior m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &188432 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22417472} - 222: {fileID: 22241294} - 114: {fileID: 11489894} - 114: {fileID: 11404630} m_Layer: 0 m_Name: Don't show it again m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &188448 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22405568} - 222: {fileID: 22237520} - 114: {fileID: 11458296} m_Layer: 5 m_Name: save_interior m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &190766 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22435204} - 114: {fileID: 11422436} - 82: {fileID: 8200024} m_Layer: 0 m_Name: TextManagerStatArmor m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &190998 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22458834} - 114: {fileID: 11431062} - 82: {fileID: 8217906} m_Layer: 0 m_Name: TextManagerMenuStatLevel m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &191150 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22421098} - 222: {fileID: 22260962} - 114: {fileID: 11491106} m_Layer: 5 m_Name: item_interior m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &192008 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22465874} - 222: {fileID: 22266498} - 114: {fileID: 11421820} m_Layer: 5 m_Name: menustat_interior m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &193974 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22475042} - 222: {fileID: 22250412} - 114: {fileID: 11470070} m_Layer: 5 m_Name: menuchoice_border_outer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &196304 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22424056} - 114: {fileID: 11449538} - 82: {fileID: 8212490} m_Layer: 0 m_Name: TextManager OW m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &198980 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22435714} - 222: {fileID: 22248334} - 114: {fileID: 11438250} m_Layer: 5 m_Name: Mugshot m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &479772 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 121124} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22435900} m_RootOrder: 5 --- !u!82 &8200024 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 190766} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8212490 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 196304} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8216894 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 127248} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8217906 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 190998} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8218406 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 162050} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8222898 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 185926} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8227190 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 170660} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8227254 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 111604} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8235252 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 102584} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8235390 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 155676} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8235822 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 172992} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8238284 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 154400} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8238304 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 174536} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8239556 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 111108} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8239926 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 127532} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8240498 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 104722} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8245112 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 116950} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8246416 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 109072} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8251932 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 142056} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8252388 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 186548} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8254826 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 164878} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8254856 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 139748} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8255908 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 126430} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8259096 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 133030} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8261376 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 175004} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8272772 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 127570} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8273024 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 135856} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8277832 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 131400} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8280518 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 139210} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8280770 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 168326} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8284956 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 169666} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8286316 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 176660} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8292336 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 125440} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8293506 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 153806} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!82 &8297074 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 148386} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &11403628 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 109072} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11404458 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 169666} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11404624 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 149078} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11404630 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 188432} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 90c34b83df9c146438231c210eb94b45, type: 3} m_Name: m_EditorClassIdentifier: LevelToLoad: test2 ModFolder: Examples FirstLevelToLoad: test2 FirstModFolder: Examples --- !u!114 &11406152 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 125440} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11406992 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 138530} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1301386320, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 4294967295 --- !u!114 &11408826 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 185926} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11410016 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 121124} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6d1238b2133fb7f43b3ff2efc445e7d3, type: 3} m_Name: m_EditorClassIdentifier: fadeOutTexture: {fileID: 2800000, guid: 5a15fea0f60c14a449b67566953ba18a, type: 3} fadeSpeed: 0.8 alpha: 1 --- !u!114 &11410186 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 154400} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11420884 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 142056} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11421820 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 192008} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11422436 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 190766} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11424364 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 170660} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11424568 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 111604} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11425818 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 153806} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11425900 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 102584} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11425914 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 104722} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11427334 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 127532} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11427710 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 188422} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11428126 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 139210} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11429386 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 148338} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11431062 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 190998} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11433446 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 162050} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11438250 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 198980} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11438302 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 168326} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11443542 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 172992} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11446620 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 142508} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 21300000, guid: 8a39555772df911439800cbc8001c10d, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11447966 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 126430} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11449538 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 196304} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11450476 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 138530} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1980459831, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_UiScaleMode: 0 m_ReferencePixelsPerUnit: 100 m_ScaleFactor: 1 m_ReferenceResolution: {x: 800, y: 600} m_ScreenMatchMode: 0 m_MatchWidthOrHeight: 0 m_PhysicalUnit: 3 m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 --- !u!114 &11451918 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 135510} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 21300000, guid: cea9b419c7cb25c47ae0454fdb9a0b7c, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11456694 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 127570} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11457128 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 186548} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11458296 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 188448} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11458820 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 187396} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 21300000, guid: 62f8426a429498442af34752c971234e, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11460566 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 155676} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11468106 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 127248} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11470070 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 193974} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11473182 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 116950} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11473512 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 175004} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11477156 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 111108} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11479976 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 176660} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11481102 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 102878} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 0, b: 0, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 21300000, guid: 84380142b5676e44daea94b5219bcf93, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11481144 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 183300} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11484428 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 186728} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11485054 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 129530} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11485060 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 133030} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11488738 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 126142} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11489796 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 165910} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 0, b: 0, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 21300000, guid: 84380142b5676e44daea94b5219bcf93, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11489894 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 188432} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 21300000, guid: 62f8426a429498442af34752c971234e, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11489992 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 131400} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11489994 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 164878} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11491106 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 191150} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11491416 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 174536} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11491632 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 139748} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11492236 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 182928} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 21300000, guid: 9b6b54dd26986d7448a76ce2c65e9511, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11493082 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 168814} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11493134 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 144218} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11496254 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 148386} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11498876 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 135856} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!222 &22201302 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 102878} --- !u!222 &22203174 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 135510} --- !u!222 &22211202 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 142508} --- !u!222 &22227018 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 148338} --- !u!222 &22235086 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 144218} --- !u!222 &22237520 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 188448} --- !u!222 &22237590 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 182928} --- !u!222 &22237998 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 126142} --- !u!222 &22240298 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 149078} --- !u!222 &22241294 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 188432} --- !u!222 &22247274 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 129530} --- !u!222 &22247638 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 188422} --- !u!222 &22248334 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 198980} --- !u!222 &22250412 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 193974} --- !u!222 &22251132 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 165910} --- !u!222 &22260962 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 191150} --- !u!222 &22262554 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 187396} --- !u!222 &22264470 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 168814} --- !u!222 &22266498 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 192008} --- !u!222 &22267156 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 186728} --- !u!222 &22269356 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 183300} --- !u!223 &22343828 Canvas: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 138530} m_Enabled: 1 serializedVersion: 2 m_RenderMode: 2 m_Camera: {fileID: 0} m_PlaneDistance: 100 m_PixelPerfect: 0 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 --- !u!224 &22402256 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 154400} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22421098} m_RootOrder: 5 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -129, y: -5} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22403394 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 164878} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22405568} m_RootOrder: 1 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 69.5} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22405520 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 102584} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22450696} m_RootOrder: 2 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -48, y: -16} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22405568 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 188448} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: - {fileID: 22435654} - {fileID: 22403394} - {fileID: 22408348} - {fileID: 22435978} - {fileID: 22431496} - {fileID: 22460088} m_Father: {fileID: 22451430} m_RootOrder: 0 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 410, y: 160} m_Pivot: {x: 0.5, y: 0.5} --- !u!224 &22408348 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 125440} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22405568} m_RootOrder: 2 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 130, y: 69.5} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22410726 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 153806} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22442236} m_RootOrder: 1 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -157, y: 119} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22412628 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 131400} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22450696} m_RootOrder: 0 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -48, y: 56} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22414798 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 127570} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22465874} m_RootOrder: 0 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -86, y: 49} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22417472 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 188432} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -11} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22435900} m_RootOrder: 2 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 0.5} --- !u!224 &22418524 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 183300} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: - {fileID: 22442236} m_Father: {fileID: 22420338} m_RootOrder: 3 m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: -27, y: -180} m_SizeDelta: {x: 370, y: 418} m_Pivot: {x: 0, y: 0} --- !u!224 &22418640 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 111108} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22442236} m_RootOrder: 5 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 11, y: 23} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22420338 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 175106} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: - {fileID: 22461734} - {fileID: 22475042} - {fileID: 22459614} - {fileID: 22418524} - {fileID: 22448448} m_Father: {fileID: 22435900} m_RootOrder: 9 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} --- !u!224 &22420856 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 142508} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22435900} m_RootOrder: 6 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 0.5} --- !u!224 &22420958 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 162050} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22421098} m_RootOrder: 4 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -129, y: 27} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22421098 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 191150} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: - {fileID: 22473384} - {fileID: 22462822} - {fileID: 22422088} - {fileID: 22444640} - {fileID: 22420958} - {fileID: 22402256} - {fileID: 22464902} - {fileID: 22457004} - {fileID: 22425382} - {fileID: 22487528} - {fileID: 22452400} m_Father: {fileID: 22459614} m_RootOrder: 0 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 334, y: 350} m_Pivot: {x: 0.5, y: 0.5} --- !u!224 &22422088 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 135856} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22421098} m_RootOrder: 2 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -129, y: 91} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22424056 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 196304} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22443130} m_RootOrder: 0 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -150, y: 65} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22425382 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 170660} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22421098} m_RootOrder: 8 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -129, y: -125} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22428066 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 133030} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22465874} m_RootOrder: 2 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -86, y: 7} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22430634 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 111604} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22442236} m_RootOrder: 7 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -157, y: -69} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22431496 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 186548} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22405568} m_RootOrder: 4 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -150, y: -20.5} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22431834 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 172992} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22442236} m_RootOrder: 9 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -157, y: -141} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22435204 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 190766} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22442236} m_RootOrder: 8 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -157, y: -101} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22435654 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 148386} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22405568} m_RootOrder: 0 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -180, y: 69.5} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22435714 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 198980} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1.001, y: 1.001, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22443130} m_RootOrder: 1 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -225, y: 0} m_SizeDelta: {x: 140, y: 140} m_Pivot: {x: 0.5, y: 0.5} --- !u!224 &22435900 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 138530} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -10} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: - {fileID: 22438742} - {fileID: 22453338} - {fileID: 22417472} - {fileID: 22473642} - {fileID: 22451430} - {fileID: 479772} - {fileID: 22420856} - {fileID: 22453944} - {fileID: 22493804} - {fileID: 22420338} - {fileID: 22499754} m_Father: {fileID: 0} m_RootOrder: 0 m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 320, y: 240} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 0.5} --- !u!224 &22435978 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 168326} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22405568} m_RootOrder: 3 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -180, y: 29.5} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22438742 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 126142} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: - {fileID: 22443130} m_Father: {fileID: 22435900} m_RootOrder: 0 m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 20, y: 20} m_SizeDelta: {x: 600, y: 150} m_Pivot: {x: 0, y: 0} --- !u!224 &22442236 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 186728} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: - {fileID: 22445310} - {fileID: 22410726} - {fileID: 22459620} - {fileID: 22478606} - {fileID: 22459112} - {fileID: 22418640} - {fileID: 22457314} - {fileID: 22430634} - {fileID: 22435204} - {fileID: 22431834} m_Father: {fileID: 22418524} m_RootOrder: 0 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 358, y: 406} m_Pivot: {x: 0.5, y: 0.5} --- !u!224 &22443130 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 188422} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: - {fileID: 22424056} - {fileID: 22435714} m_Father: {fileID: 22438742} m_RootOrder: 0 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 590, y: 140} m_Pivot: {x: 0.5, y: 0.5} --- !u!224 &22444640 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 169666} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22421098} m_RootOrder: 3 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -129, y: 59} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22445310 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 126430} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22442236} m_RootOrder: 0 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -157, y: 179} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22448448 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 165910} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -5090} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22420338} m_RootOrder: 4 m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: -53, y: 161} m_SizeDelta: {x: 16, y: 16} m_Pivot: {x: 0.5, y: 0.5} --- !u!224 &22450696 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 148338} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: - {fileID: 22412628} - {fileID: 22495040} - {fileID: 22405520} m_Father: {fileID: 22475042} m_RootOrder: 0 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 188, y: 136} m_Pivot: {x: 0.5, y: 0.5} --- !u!224 &22451430 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 168814} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: - {fileID: 22405568} m_Father: {fileID: 22435900} m_RootOrder: 4 m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 108, y: 187} m_SizeDelta: {x: 424, y: 174} m_Pivot: {x: 0, y: 0} --- !u!224 &22452400 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 139748} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22421098} m_RootOrder: 10 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 81, y: -125} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22453338 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 187396} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -4990} m_LocalScale: {x: 1, y: 1, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22435900} m_RootOrder: 1 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 0.5} --- !u!224 &22453944 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 135510} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22435900} m_RootOrder: 7 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 0.5} --- !u!224 &22457004 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 174536} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22421098} m_RootOrder: 7 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -129, y: -69} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22457314 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 139210} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22442236} m_RootOrder: 6 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 11, y: -9} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22458834 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 190998} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22465874} m_RootOrder: 1 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -86, y: 25} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22459112 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 176660} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22442236} m_RootOrder: 4 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -157, y: -9} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22459614 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 149078} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: - {fileID: 22421098} m_Father: {fileID: 22420338} m_RootOrder: 2 m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: -27, y: -124} m_SizeDelta: {x: 345, y: 362} m_Pivot: {x: 0, y: 0} --- !u!224 &22459620 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 142056} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22442236} m_RootOrder: 2 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -157, y: 87} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22460088 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 155676} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22405568} m_RootOrder: 5 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 30, y: -20.5} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22461734 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 144218} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: - {fileID: 22465874} m_Father: {fileID: 22420338} m_RootOrder: 0 m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: -238, y: 128} m_SizeDelta: {x: 200, y: 110} m_Pivot: {x: 0, y: 0} --- !u!224 &22462822 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 127532} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22421098} m_RootOrder: 1 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -129, y: 123} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22464902 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 104722} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22421098} m_RootOrder: 6 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -129, y: -37} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22465874 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 192008} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: - {fileID: 22414798} - {fileID: 22458834} - {fileID: 22428066} - {fileID: 22480922} m_Father: {fileID: 22461734} m_RootOrder: 0 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 188, y: 98} m_Pivot: {x: 0.5, y: 0.5} --- !u!224 &22473384 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 109072} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22421098} m_RootOrder: 0 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -129, y: 155} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22473642 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 129530} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -5040} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22435900} m_RootOrder: 3 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} --- !u!224 &22475042 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 193974} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: - {fileID: 22450696} m_Father: {fileID: 22420338} m_RootOrder: 1 m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: -238, y: -26} m_SizeDelta: {x: 200, y: 148} m_Pivot: {x: 0, y: 0} --- !u!224 &22478606 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 127248} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22442236} m_RootOrder: 3 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -157, y: 23} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22480922 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 185926} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22465874} m_RootOrder: 3 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -86, y: -11} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22487528 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 175004} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22421098} m_RootOrder: 9 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -33, y: -125} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22493804 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 182928} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22435900} m_RootOrder: 8 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 0.5} --- !u!224 &22495040 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 116950} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22450696} m_RootOrder: 1 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -48, y: 20} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22499754 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 102878} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -5090} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22435900} m_RootOrder: 10 m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 320, y: 240} m_SizeDelta: {x: 16, y: 16} m_Pivot: {x: 0.5, y: 0.5} --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_ParentPrefab: {fileID: 0} m_RootGameObject: {fileID: 138530} m_IsPrefabParent: 1 ================================================ FILE: Assets/Resources/Prefabs/Canvas OW.prefab.meta ================================================ fileFormatVersion: 2 guid: 65ee94c713ee95942a47240fb8f2ae5c timeCreated: 1461241046 licenseType: Free NativeFormatImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/CanvasLoad.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &102056 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22487204} - 222: {fileID: 22278198} - 114: {fileID: 11466074} m_Layer: 5 m_Name: TitleExample m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 0 --- !u!1 &109408 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 4: {fileID: 448652} - 212: {fileID: 21288986} m_Layer: 5 m_Name: Continue m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &111350 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22479508} - 222: {fileID: 22265464} - 114: {fileID: 11415590} m_Layer: 5 m_Name: BackgroundTitle m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &114910 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22493240} - 114: {fileID: 11426010} - 82: {fileID: 8284474} m_Layer: 0 m_Name: TextManagerName m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &133656 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22475340} - 114: {fileID: 11456858} - 82: {fileID: 8229882} m_Layer: 0 m_Name: TextManagerMap m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &145778 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22419734} - 114: {fileID: 11467992} - 82: {fileID: 8281956} m_Layer: 0 m_Name: TextManagerLevel m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &161116 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22413534} - 114: {fileID: 11461502} - 82: {fileID: 8232900} m_Layer: 0 m_Name: TextManagerTime m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &184948 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22466134} - 223: {fileID: 22345162} - 114: {fileID: 11488756} - 114: {fileID: 11471658} m_Layer: 5 m_Name: CanvasLoad m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &185056 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 4: {fileID: 427294} - 212: {fileID: 21273016} m_Layer: 5 m_Name: Reset m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &427294 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 185056} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 64, y: 4, z: -1} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: [] m_Father: {fileID: 22466134} m_RootOrder: 7 --- !u!4 &448652 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 109408} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -95, y: 5, z: -1} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: [] m_Father: {fileID: 22466134} m_RootOrder: 6 --- !u!82 &8229882 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 133656} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.684082 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 --- !u!82 &8232900 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 161116} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.684082 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 --- !u!82 &8281956 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 145778} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.684082 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 --- !u!82 &8284474 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 114910} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.684082 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 --- !u!114 &11415590 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 111350} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 21300000, guid: 815782bea8ab5fd4f99184135b371bb2, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11426010 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 114910} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11456858 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 133656} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11461502 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 161116} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11466074 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 102056} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 21300000, guid: c5a5df2c01b8beb42866a076ba6b76d3, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11467992 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 145778} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: currentLine: 0 overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11471658 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 184948} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1301386320, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 4294967295 --- !u!114 &11488756 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 184948} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1980459831, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_UiScaleMode: 0 m_ReferencePixelsPerUnit: 100 m_ScaleFactor: 1 m_ReferenceResolution: {x: 800, y: 600} m_ScreenMatchMode: 0 m_MatchWidthOrHeight: 0 m_PhysicalUnit: 3 m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 --- !u!212 &21273016 SpriteRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 185056} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_Materials: - {fileID: 10754, guid: 0000000000000000e000000000000000, type: 0} m_SubsetIndices: m_StaticBatchRoot: {fileID: 0} m_UseLightProbes: 0 m_ReflectionProbeUsage: 0 m_ProbeAnchor: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_ImportantGI: 0 m_AutoUVMaxDistance: .5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 3631c48bf5ca2be4a88bf9b6ab930a96, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} --- !u!212 &21288986 SpriteRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 109408} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_Materials: - {fileID: 10754, guid: 0000000000000000e000000000000000, type: 0} m_SubsetIndices: m_StaticBatchRoot: {fileID: 0} m_UseLightProbes: 0 m_ReflectionProbeUsage: 0 m_ProbeAnchor: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_ImportantGI: 0 m_AutoUVMaxDistance: .5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: a9d09dc4972d49d479aa26c1b75bf971, type: 3} m_Color: {r: 1, g: 1, b: 0, a: 1} --- !u!222 &22265464 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 111350} --- !u!222 &22278198 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 102056} --- !u!223 &22345162 Canvas: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 184948} m_Enabled: 1 serializedVersion: 2 m_RenderMode: 2 m_Camera: {fileID: 0} m_PlaneDistance: 100 m_PixelPerfect: 0 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingLayerID: 0 m_SortingOrder: 0 --- !u!224 &22413534 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 161116} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 22466134} m_RootOrder: 4 m_AnchorMin: {x: .5, y: .5} m_AnchorMax: {x: .5, y: .5} m_AnchoredPosition: {x: 100, y: 125} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22419734 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 145778} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 22466134} m_RootOrder: 3 m_AnchorMin: {x: .5, y: .5} m_AnchorMax: {x: .5, y: .5} m_AnchoredPosition: {x: 0, y: 125} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22466134 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 184948} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -10} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 22479508} - {fileID: 22487204} - {fileID: 22493240} - {fileID: 22419734} - {fileID: 22413534} - {fileID: 22475340} - {fileID: 448652} - {fileID: 427294} m_Father: {fileID: 0} m_RootOrder: 0 m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 320, y: 240} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: .5, y: .5} --- !u!224 &22475340 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 133656} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 22466134} m_RootOrder: 5 m_AnchorMin: {x: .5, y: .5} m_AnchorMax: {x: .5, y: .5} m_AnchoredPosition: {x: -180, y: 85} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22479508 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 111350} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 22466134} m_RootOrder: 0 m_AnchorMin: {x: .5, y: .5} m_AnchorMax: {x: .5, y: .5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: .5, y: .5} --- !u!224 &22487204 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 102056} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 22466134} m_RootOrder: 1 m_AnchorMin: {x: .5, y: .5} m_AnchorMax: {x: .5, y: .5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: .5, y: .5} --- !u!224 &22493240 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 114910} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 22466134} m_RootOrder: 2 m_AnchorMin: {x: .5, y: .5} m_AnchorMax: {x: .5, y: .5} m_AnchoredPosition: {x: -180, y: 125} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_ParentPrefab: {fileID: 0} m_RootGameObject: {fileID: 184948} m_IsPrefabParent: 1 ================================================ FILE: Assets/Resources/Prefabs/CanvasLoad.prefab.meta ================================================ fileFormatVersion: 2 guid: c51c0397fea97ae4c9bddec3807a4968 timeCreated: 1464902774 licenseType: Free NativeFormatImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/CstmTxtContainer.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &100010 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 22416422} - component: {fileID: 22288474} - component: {fileID: 11450012} m_Layer: 0 m_Name: BackVert m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &127862 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 22419362} - component: {fileID: 22277692} - component: {fileID: 11443696} m_Layer: 0 m_Name: BottomRightBorder m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &128286 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 22494804} - component: {fileID: 22234048} - component: {fileID: 11495342} m_Layer: 0 m_Name: BottomLeftBorder m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &134386 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 22412996} m_Layer: 0 m_Name: CstmTxtContainer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &148596 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 22408080} - component: {fileID: 22238732} - component: {fileID: 11410606} m_Layer: 0 m_Name: SpeechThingShadow m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &152242 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 22453886} - component: {fileID: 22231318} - component: {fileID: 11473188} m_Layer: 0 m_Name: SpeechThing m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &157610 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 22498740} - component: {fileID: 22281488} - component: {fileID: 11441354} m_Layer: 0 m_Name: BackHorz m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &159716 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 22456078} - component: {fileID: 22203948} - component: {fileID: 11438016} m_Layer: 0 m_Name: TopLeftBorder m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &171992 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 22425498} - component: {fileID: 22259690} - component: {fileID: 11452418} m_Layer: 0 m_Name: CenterHorz m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &173644 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 22411304} - component: {fileID: 8218244} - component: {fileID: 11462692} m_Layer: 0 m_Name: CstmTxtMgr m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &174686 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 22429080} - component: {fileID: 22243510} - component: {fileID: 11429644} m_Layer: 0 m_Name: CenterVert m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &191078 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 22496986} - component: {fileID: 22259784} m_Layer: 0 m_Name: BubbleContainer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &199640 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 22405706} - component: {fileID: 22236428} - component: {fileID: 11400360} m_Layer: 0 m_Name: TopRightBorder m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!82 &8218244 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 173644} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 2 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - serializedVersion: 2 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 2 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 2 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 2 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 --- !u!114 &11400360 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 199640} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 21300000, guid: 361c275b93f22de45900062ada7925f1, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11410606 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 148596} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 21300000, guid: 1c19ec938a1cccc4a9f09a1ce239c244, type: 3} m_Type: 0 m_PreserveAspect: 1 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11429644 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 174686} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11438016 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 159716} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 21300000, guid: d4b1335871fb6b549a5bd165cbc60327, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11441354 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 157610} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11443696 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 127862} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 21300000, guid: 9bb9d61156064854da1ac61f68990ce9, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11450012 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 100010} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11452418 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 171992} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11462692 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 173644} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9ac8dc980caea604a81186f096e200ea, type: 3} m_Name: m_EditorClassIdentifier: letterSound: {fileID: 0} letters: [] currentLine: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 nmd2: 0 wasStated: 0 offset: {x: 0, y: 0} blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 _color: {r: 1, g: 1, b: 1, a: 1} --- !u!114 &11473188 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 152242} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 21300000, guid: 4b37e1b67779d8043af7039f25b19a78, type: 3} m_Type: 0 m_PreserveAspect: 1 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11495342 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 128286} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 21300000, guid: 8a1c3af710aafa04bb78a9d6e1027114, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!222 &22203948 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 159716} --- !u!222 &22231318 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 152242} --- !u!222 &22234048 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 128286} --- !u!222 &22236428 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 199640} --- !u!222 &22238732 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 148596} --- !u!222 &22243510 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 174686} --- !u!222 &22259690 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 171992} --- !u!222 &22259784 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 191078} --- !u!222 &22277692 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 127862} --- !u!222 &22281488 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 157610} --- !u!222 &22288474 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 100010} --- !u!224 &22405706 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 199640} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 22496986} m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 1} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 1, y: 1} --- !u!224 &22408080 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 148596} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 22496986} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 44, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!224 &22411304 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 173644} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 22412996} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} --- !u!224 &22412996 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 134386} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 22496986} - {fileID: 22411304} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 1, y: 1} m_Pivot: {x: 0.5, y: 0.5} --- !u!224 &22416422 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 100010} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 22496986} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 60, y: 100} m_Pivot: {x: 0.5, y: 0.5} --- !u!224 &22419362 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 127862} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 22496986} m_RootOrder: 8 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 0} m_AnchorMax: {x: 1, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 1, y: 0} --- !u!224 &22425498 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 171992} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 22496986} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 96, y: 60} m_Pivot: {x: 0.5, y: 0.5} --- !u!224 &22429080 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 174686} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 22496986} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 60, y: 96} m_Pivot: {x: 0.5, y: 0.5} --- !u!224 &22453886 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 152242} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 22496986} m_RootOrder: 9 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 44, y: 16} m_Pivot: {x: 0.5, y: 0.5} --- !u!224 &22456078 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 159716} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 22496986} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!224 &22494804 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 128286} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 22496986} m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 0} --- !u!224 &22496986 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 191078} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 22498740} - {fileID: 22416422} - {fileID: 22408080} - {fileID: 22425498} - {fileID: 22429080} - {fileID: 22456078} - {fileID: 22405706} - {fileID: 22494804} - {fileID: 22419362} - {fileID: 22453886} m_Father: {fileID: 22412996} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -12, y: 8} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} --- !u!224 &22498740 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 157610} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 22496986} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 100, y: 60} m_Pivot: {x: 0.5, y: 0.5} --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_ParentPrefab: {fileID: 0} m_RootGameObject: {fileID: 134386} m_IsPrefabParent: 1 ================================================ FILE: Assets/Resources/Prefabs/CstmTxtContainer.prefab.meta ================================================ fileFormatVersion: 2 guid: e24fd648e823f074cb0fcadd09d5b42a timeCreated: 1480378456 licenseType: Free NativeFormatImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/Debugger.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &160506 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 6 m_Component: - component: {fileID: 22465858} - component: {fileID: 11453098} - component: {fileID: 22277372} - component: {fileID: 11471176} m_Layer: 5 m_Name: Debugger m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &168292 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 6 m_Component: - component: {fileID: 22474774} - component: {fileID: 22284000} - component: {fileID: 11413288} m_Layer: 5 m_Name: Text m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &11413288 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 168292} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.2827586, g: 1, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 0 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: New Text --- !u!114 &11453098 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 160506} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 8b8ed2d8ae9b9104180ec6676cf9bfdd, type: 3} m_Name: m_EditorClassIdentifier: text: {fileID: 11413288} maxLines: 0 canShow: 1 --- !u!114 &11471176 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 160506} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 0.722} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!222 &22277372 CanvasRenderer: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 160506} m_CullTransparentMesh: 0 --- !u!222 &22284000 CanvasRenderer: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 168292} m_CullTransparentMesh: 0 --- !u!224 &22465858 RectTransform: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 160506} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -10} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 22474774} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 1} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: -20, y: -20} m_SizeDelta: {x: 320, y: 120} m_Pivot: {x: 1, y: 1} --- !u!224 &22474774 RectTransform: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 168292} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 22465858} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_SourcePrefab: {fileID: 0} m_RootGameObject: {fileID: 160506} m_IsPrefabAsset: 1 ================================================ FILE: Assets/Resources/Prefabs/Debugger.prefab.meta ================================================ fileFormatVersion: 2 guid: 1ccc044534d366d4abebb5047dfda396 timeCreated: 1450588270 licenseType: Free NativeFormatImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/DialogBubble.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &186892 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 22457756} - component: {fileID: 22251884} - component: {fileID: 7243159785364819780} - component: {fileID: 7243002510014050802} - component: {fileID: 7243796318394485048} - component: {fileID: 7243296499168504066} - component: {fileID: 7243215545473884014} m_Layer: 5 m_Name: DialogBubble m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &22457756 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 186892} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 7171881695221985094} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 480} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0, y: 1} --- !u!222 &22251884 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 186892} m_CullTransparentMesh: 0 --- !u!114 &7243159785364819780 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 186892} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c152f559704a98f488c1e63266ed7418, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 inverted: 0 --- !u!114 &7243002510014050802 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 186892} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7bbc081086ab24d458b6c45dcf29bf75, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &7243796318394485048 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 186892} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: -146154839, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &7243296499168504066 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 186892} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: -1200242548, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_ShowMaskGraphic: 1 --- !u!114 &7243215545473884014 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 186892} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1001 &7171881695233233282 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 22457756} m_Modifications: - target: {fileID: 134386, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_Name value: CstmTxtContainer objectReference: {fileID: 0} - target: {fileID: 11462692, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: autoSetLayer value: 0 objectReference: {fileID: 0} - target: {fileID: 11462692, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: noAutoLineBreak value: 1 objectReference: {fileID: 0} - target: {fileID: 11462692, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: needFontReset value: 1 objectReference: {fileID: 0} - target: {fileID: 11462692, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: progress value: 2 objectReference: {fileID: 0} - target: {fileID: 11462692, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: deleteWhenFinished value: 0 objectReference: {fileID: 0} - target: {fileID: 22411304, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22411304, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22411304, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22411304, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22411304, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22411304, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22411304, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_AnchoredPosition.y value: 1 objectReference: {fileID: 0} - target: {fileID: 22411304, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_Pivot.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22411304, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_SizeDelta.y value: 100 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_LocalRotation.x value: -0 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_LocalRotation.y value: -0 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_LocalRotation.z value: -0 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_RootOrder value: 0 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_AnchoredPosition.x value: -320 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_AnchoredPosition.y value: -240 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_SizeDelta.x value: 1 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_SizeDelta.y value: 1 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_Pivot.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22496986, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_AnchoredPosition.x value: -62 objectReference: {fileID: 0} - target: {fileID: 22496986, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_Pivot.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22496986, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_AnchoredPosition.y value: 58 objectReference: {fileID: 0} - target: {fileID: 22496986, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_Pivot.y value: 1 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} --- !u!224 &7171881695221985094 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 7171881695233233282} m_PrefabAsset: {fileID: 0} ================================================ FILE: Assets/Resources/Prefabs/DialogBubble.prefab.meta ================================================ fileFormatVersion: 2 guid: 1f8fc345062ce72469c6e6d8b5ba7ee8 timeCreated: 1447101007 licenseType: Free NativeFormatImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/Event1.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_SourcePrefab: {fileID: 0} m_RootGameObject: {fileID: 1849668906715600} m_IsPrefabAsset: 1 --- !u!1 &1649222073514108 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 6 m_Component: - component: {fileID: 224528923083268334} - component: {fileID: 212134501322781040} - component: {fileID: 50155291888853208} - component: {fileID: 61614148327684554} - component: {fileID: 114879940000294058} - component: {fileID: 114226206946908324} - component: {fileID: 114647206246966478} m_Layer: 21 m_Name: Event1 m_TagString: Event m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1849668906715600 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 6 m_Component: - component: {fileID: 4671881132980978} - component: {fileID: 210702407409670196} m_Layer: 0 m_Name: Event1 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &4671881132980978 Transform: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1849668906715600} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 490, y: 170, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 224528923083268334} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!50 &50155291888853208 Rigidbody2D: serializedVersion: 4 m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1649222073514108} m_BodyType: 1 m_Simulated: 1 m_UseFullKinematicContacts: 0 m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_Material: {fileID: 0} m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 0 --- !u!61 &61614148327684554 BoxCollider2D: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1649222073514108} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0.35} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0.5, y: 0.5} oldSize: {x: 0.01, y: 0.01} newSize: {x: 0.01, y: 0.01} adaptiveTilingThreshold: 0.5 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 0.6, y: 0.7} m_EdgeRadius: 0 --- !u!114 &114226206946908324 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1649222073514108} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5b6761159c8f6224a8a895abea10dd25, type: 3} m_Name: m_EditorClassIdentifier: SetNativeSize: 1 SpritePath: Overworld/Dog Loop: 0 done: 0 --- !u!114 &114647206246966478 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1649222073514108} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114879940000294058 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1649222073514108} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 846d0d1a9b9e1c14884c79473a1f1d14, type: 3} m_Name: m_EditorClassIdentifier: scriptToLoad: eventTest actualPage: 1 eventTriggers: - {x: 1, y: 0} - {x: 2, y: 0} - {x: 3, y: 0} - {x: 4, y: 0} - {x: 666, y: 0} moveSpeed: 1 isMovingWaitEnd: 0 isRotatingWaitEnd: 0 --- !u!210 &210702407409670196 SortingGroup: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1849668906715600} m_Enabled: 1 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 --- !u!212 &212134501322781040 SpriteRenderer: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1649222073514108} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 876f2cc47fea2394b98c7950cde30cd9, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 0.01, y: 0.01} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!224 &224528923083268334 RectTransform: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1649222073514108} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: [] m_Father: {fileID: 4671881132980978} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0} m_AnchorMax: {x: 0.5, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 1, y: 1} m_Pivot: {x: 0.5, y: 0} ================================================ FILE: Assets/Resources/Prefabs/Event1.prefab.meta ================================================ fileFormatVersion: 2 guid: a0add8308da8d24468328221253c3ec7 timeCreated: 1502230749 licenseType: Free NativeFormatImporter: mainObjectFileID: -1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/Example-Shader.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &114236 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 4: {fileID: 458594} - 33: {fileID: 3349650} - 64: {fileID: 6484926} - 23: {fileID: 2367448} m_Layer: 0 m_Name: Example-Shader m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &131314 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 4: {fileID: 427934} - 33: {fileID: 3328492} - 64: {fileID: 6447926} - 23: {fileID: 2388760} m_Layer: 0 m_Name: Distortion m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &427934 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 131314} m_LocalRotation: {x: 0.000000043711392, y: 1, z: 0, w: 0} m_LocalPosition: {x: -0, y: 0, z: 0} m_LocalScale: {x: 0.19999996, y: 0, z: 1.8353999} m_LocalEulerAnglesHint: {x: 0, y: -180, z: 0} m_Children: [] m_Father: {fileID: 458594} m_RootOrder: 0 --- !u!4 &458594 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 114236} m_LocalRotation: {x: -0.000000030908623, y: -0.7071068, z: 0.7071068, w: -0.000000030908623} m_LocalPosition: {x: 0, y: 200, z: -99} m_LocalScale: {x: 50, y: 1, z: 50} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: - {fileID: 427934} m_Father: {fileID: 0} m_RootOrder: 0 --- !u!23 &2367448 MeshRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 114236} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_Materials: - {fileID: 2100000, guid: 4b2fd0370fbdee144909148ca88e3f52, type: 2} m_SubsetIndices: m_StaticBatchRoot: {fileID: 0} m_UseLightProbes: 0 m_ReflectionProbeUsage: 1 m_ProbeAnchor: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingOrder: 0 --- !u!23 &2388760 MeshRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 131314} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_Materials: - {fileID: 2100000, guid: 9f0b6e84d3a644f45bdb6ea72dae670f, type: 2} m_SubsetIndices: m_StaticBatchRoot: {fileID: 0} m_UseLightProbes: 0 m_ReflectionProbeUsage: 1 m_ProbeAnchor: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingOrder: 0 --- !u!33 &3328492 MeshFilter: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 131314} m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} --- !u!33 &3349650 MeshFilter: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 114236} m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} --- !u!64 &6447926 MeshCollider: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 131314} m_Material: {fileID: 0} m_IsTrigger: 0 m_Enabled: 1 serializedVersion: 2 m_Convex: 0 m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} --- !u!64 &6484926 MeshCollider: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 114236} m_Material: {fileID: 0} m_IsTrigger: 0 m_Enabled: 1 serializedVersion: 2 m_Convex: 0 m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_ParentPrefab: {fileID: 0} m_RootGameObject: {fileID: 114236} m_IsPrefabParent: 1 ================================================ FILE: Assets/Resources/Prefabs/Example-Shader.prefab.meta ================================================ fileFormatVersion: 2 guid: 888fb06c89ee75749b9c59051eac6be1 timeCreated: 1472128679 licenseType: Free NativeFormatImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/FightInstance.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_SourcePrefab: {fileID: 0} m_RootGameObject: {fileID: 1433648076732668} m_IsPrefabAsset: 1 --- !u!1 &1023025103224956 GameObject: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 6 m_Component: - component: {fileID: 224933288576242218} - component: {fileID: 222909325715629920} - component: {fileID: 114833783380358044} - component: {fileID: 114147072743603446} - component: {fileID: 114547199129037674} - component: {fileID: 114861340074123150} - component: {fileID: 114150496298953052} m_Layer: 5 m_Name: HPBarFill m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1163432318930760 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 6 m_Component: - component: {fileID: 224647031592157742} - component: {fileID: 222020750868135542} - component: {fileID: 114192040625417126} - component: {fileID: 82816449808341860} m_Layer: 5 m_Name: SliceAnim m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1213400961174784 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 6 m_Component: - component: {fileID: 224016514909555106} - component: {fileID: 222877306912221498} - component: {fileID: 114379580971473316} - component: {fileID: 114038360497451118} - component: {fileID: 114456257360502098} - component: {fileID: 114612264825196560} - component: {fileID: 114015862404043346} - component: {fileID: 114634736133521016} m_Layer: 5 m_Name: HPBar m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1431406121224226 GameObject: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 6 m_Component: - component: {fileID: 224290023447097042} - component: {fileID: 222295102194869364} - component: {fileID: 114406153062026560} - component: {fileID: 114037352518734914} - component: {fileID: 114161187768597872} - component: {fileID: 114070577205760498} - component: {fileID: 114425069850952372} m_Layer: 5 m_Name: HPBarMask m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1433648076732668 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 6 m_Component: - component: {fileID: 224939173375364364} - component: {fileID: 114344075133837176} - component: {fileID: 82263648164995164} m_Layer: 5 m_Name: FightInstance m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1924383494869608 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 6 m_Component: - component: {fileID: 224443046814085270} - component: {fileID: 114374800437181952} m_Layer: 5 m_Name: DamageNumber m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!82 &82263648164995164 AudioSource: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1433648076732668} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 1 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 500 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 --- !u!82 &82816449808341860 AudioSource: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1163432318930760} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 8300000, guid: c100c8f79dd1e1742aecd9954d40c876, type: 3} m_PlayOnAwake: 0 m_Volume: 0.906 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 500 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 --- !u!114 &114015862404043346 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1213400961174784} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114037352518734914 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1431406121224226} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7bbc081086ab24d458b6c45dcf29bf75, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114038360497451118 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1213400961174784} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7bbc081086ab24d458b6c45dcf29bf75, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114070577205760498 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1431406121224226} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: -1200242548, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_ShowMaskGraphic: 1 --- !u!114 &114147072743603446 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1023025103224956} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7bbc081086ab24d458b6c45dcf29bf75, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114150496298953052 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1023025103224956} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114161187768597872 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1431406121224226} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: -146154839, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114192040625417126 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1163432318930760} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 21300000, guid: c9f3271be80940e43ba5e5eaa5513eff, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &114344075133837176 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1433648076732668} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 90650b334312c0e46a40ee76ae7ce652, type: 3} m_Name: m_EditorClassIdentifier: lifeBar: {fileID: 0} damageText: {fileID: 0} shakeInProgress: 0 sliceAnimFrequency: 0.16666667 enemy: {fileID: 0} enePos: {x: 0, y: 0} eneSize: {x: 0, y: 0} stopped: 0 isCoroutine: 0 waitingToFade: 0 isInit: 0 --- !u!114 &114374800437181952 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1924383494869608} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: $ currentLine: 0 _textMaxWidth: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 nmd2: 0 wasStated: 0 offset: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!114 &114379580971473316 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1213400961174784} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c152f559704a98f488c1e63266ed7418, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.2509804, g: 0.2509804, b: 0.2509804, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 21300000, guid: 2156519dc0aa60141a3d1549c052af1b, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 inverted: 0 --- !u!114 &114406153062026560 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1431406121224226} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c152f559704a98f488c1e63266ed7418, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 21300000, guid: 2156519dc0aa60141a3d1549c052af1b, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 inverted: 0 --- !u!114 &114425069850952372 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1431406121224226} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114456257360502098 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1213400961174784} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: -146154839, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114547199129037674 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1023025103224956} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: -146154839, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114612264825196560 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1213400961174784} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: -1200242548, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_ShowMaskGraphic: 1 --- !u!114 &114634736133521016 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1213400961174784} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 027295703e2bc8b43957a76a2f9357ff, type: 3} m_Name: m_EditorClassIdentifier: backgroundRt: {fileID: 224290023447097042} maskRt: {fileID: 0} fillRt: {fileID: 224016514909555106} outlineRt: {fileID: 0} --- !u!114 &114833783380358044 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1023025103224956} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c152f559704a98f488c1e63266ed7418, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 1, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 21300000, guid: 2156519dc0aa60141a3d1549c052af1b, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 inverted: 0 --- !u!114 &114861340074123150 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1023025103224956} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: -1200242548, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_ShowMaskGraphic: 1 --- !u!222 &222020750868135542 CanvasRenderer: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1163432318930760} m_CullTransparentMesh: 0 --- !u!222 &222295102194869364 CanvasRenderer: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1431406121224226} m_CullTransparentMesh: 0 --- !u!222 &222877306912221498 CanvasRenderer: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1213400961174784} m_CullTransparentMesh: 0 --- !u!222 &222909325715629920 CanvasRenderer: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1023025103224956} m_CullTransparentMesh: 0 --- !u!224 &224016514909555106 RectTransform: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1213400961174784} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 224290023447097042} m_Father: {fileID: 224939173375364364} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 550, y: 550} m_SizeDelta: {x: 180, y: 13} m_Pivot: {x: 0, y: 0} --- !u!224 &224290023447097042 RectTransform: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1431406121224226} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 224933288576242218} m_Father: {fileID: 224016514909555106} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 180, y: 13} m_Pivot: {x: 0, y: 0} --- !u!224 &224443046814085270 RectTransform: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1924383494869608} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 224939173375364364} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0} m_AnchorMax: {x: 0.5, y: 0} m_AnchoredPosition: {x: 0, y: -37} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} --- !u!224 &224647031592157742 RectTransform: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1163432318930760} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 224939173375364364} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: -90} m_SizeDelta: {x: 26, y: 110} m_Pivot: {x: 0.5, y: 0.5} --- !u!224 &224933288576242218 RectTransform: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1023025103224956} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 224290023447097042} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 180, y: 13} m_Pivot: {x: 0, y: 0} --- !u!224 &224939173375364364 RectTransform: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1433648076732668} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 224016514909555106} - {fileID: 224443046814085270} - {fileID: 224647031592157742} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -500, y: -500} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} ================================================ FILE: Assets/Resources/Prefabs/FightInstance.prefab.meta ================================================ fileFormatVersion: 2 guid: 215b68cbf18b0494db3a345b589d995d NativeFormatImporter: externalObjects: {} mainObjectFileID: 100100000 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/HPBar.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_SourcePrefab: {fileID: 0} m_RootGameObject: {fileID: 1738593129406298} m_IsPrefabAsset: 1 --- !u!1 &1464539746589912 GameObject: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 6 m_Component: - component: {fileID: 224013813592148948} - component: {fileID: 222277246135144232} - component: {fileID: 114984367897565676} - component: {fileID: 114875670803637978} - component: {fileID: 114780503786022282} - component: {fileID: 114061549161748330} - component: {fileID: 114749881889513728} m_Layer: 5 m_Name: HPBarFill m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1708075835143384 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 6 m_Component: - component: {fileID: 224337495267877332} - component: {fileID: 222145686236053198} - component: {fileID: 114391373715313950} - component: {fileID: 114802945438548588} - component: {fileID: 114783905216595562} - component: {fileID: 114886289529216418} - component: {fileID: 114878107768353078} m_Layer: 5 m_Name: HPBarMask m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1738593129406298 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 6 m_Component: - component: {fileID: 224457915871606856} - component: {fileID: 222104296838146770} - component: {fileID: 114540410594994212} - component: {fileID: 114077090864875658} - component: {fileID: 114943133295718258} - component: {fileID: 114682091699077904} - component: {fileID: 114519676459581166} - component: {fileID: 114987550734506540} m_Layer: 5 m_Name: HPBar m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &114061549161748330 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1464539746589912} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: -1200242548, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_ShowMaskGraphic: 1 --- !u!114 &114077090864875658 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1738593129406298} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7bbc081086ab24d458b6c45dcf29bf75, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114391373715313950 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1708075835143384} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c152f559704a98f488c1e63266ed7418, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 21300000, guid: 76468a0c14f9fe7469307b8047d6f5c9, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 inverted: 0 --- !u!114 &114519676459581166 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1738593129406298} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114540410594994212 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1738593129406298} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c152f559704a98f488c1e63266ed7418, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 0, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 21300000, guid: 76468a0c14f9fe7469307b8047d6f5c9, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 inverted: 0 --- !u!114 &114682091699077904 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1738593129406298} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: -1200242548, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_ShowMaskGraphic: 1 --- !u!114 &114749881889513728 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1464539746589912} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114780503786022282 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1464539746589912} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: -146154839, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114783905216595562 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1708075835143384} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: -146154839, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114802945438548588 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1708075835143384} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7bbc081086ab24d458b6c45dcf29bf75, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114875670803637978 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1464539746589912} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7bbc081086ab24d458b6c45dcf29bf75, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114878107768353078 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1708075835143384} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114886289529216418 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1708075835143384} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: -1200242548, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_ShowMaskGraphic: 1 --- !u!114 &114943133295718258 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1738593129406298} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: -146154839, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114984367897565676 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1464539746589912} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c152f559704a98f488c1e63266ed7418, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 21300000, guid: 76468a0c14f9fe7469307b8047d6f5c9, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 inverted: 0 --- !u!114 &114987550734506540 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1738593129406298} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 027295703e2bc8b43957a76a2f9357ff, type: 3} m_Name: m_EditorClassIdentifier: backgroundRt: {fileID: 224337495267877332} maskRt: {fileID: 0} fillRt: {fileID: 224457915871606856} outlineRt: {fileID: 0} --- !u!222 &222104296838146770 CanvasRenderer: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1738593129406298} m_CullTransparentMesh: 0 --- !u!222 &222145686236053198 CanvasRenderer: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1708075835143384} m_CullTransparentMesh: 0 --- !u!222 &222277246135144232 CanvasRenderer: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1464539746589912} m_CullTransparentMesh: 0 --- !u!224 &224013813592148948 RectTransform: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1464539746589912} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 224337495267877332} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 25, y: 20} m_Pivot: {x: 0, y: 0} --- !u!224 &224337495267877332 RectTransform: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1708075835143384} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 224013813592148948} m_Father: {fileID: 224457915871606856} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 25, y: 20} m_Pivot: {x: 0, y: 0} --- !u!224 &224457915871606856 RectTransform: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1738593129406298} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 224337495267877332} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 25, y: 20} m_Pivot: {x: 0, y: 0} ================================================ FILE: Assets/Resources/Prefabs/HPBar.prefab.meta ================================================ fileFormatVersion: 2 guid: e304c26fb72bbec409a44c8b281d4f8c NativeFormatImporter: externalObjects: {} mainObjectFileID: 100100000 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/Image 1.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &110916 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22414636} - 222: {fileID: 22246498} - 114: {fileID: 11402360} - 114: {fileID: 11478352} m_Layer: 8 m_Name: Image 1 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &11402360 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 110916} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11478352 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 110916} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7bbc081086ab24d458b6c45dcf29bf75, type: 3} m_Name: m_EditorClassIdentifier: --- !u!222 &22246498 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 110916} --- !u!224 &22414636 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 110916} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 1, y: 1} m_Pivot: {x: 0.5, y: 0.5} --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_ParentPrefab: {fileID: 0} m_RootGameObject: {fileID: 110916} m_IsPrefabParent: 1 ================================================ FILE: Assets/Resources/Prefabs/Image 1.prefab.meta ================================================ fileFormatVersion: 2 guid: 45105f59db1436d489d047033774ff3b timeCreated: 1469392599 licenseType: Free NativeFormatImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/Image.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &108890 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22466050} - 222: {fileID: 22266290} - 114: {fileID: 11453682} m_Layer: 0 m_Name: Image m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &11453682 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 108890} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!222 &22266290 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 108890} --- !u!224 &22466050 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 108890} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_AnchorMin: {x: .5, y: .5} m_AnchorMax: {x: .5, y: .5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 1, y: 1} m_Pivot: {x: .5, y: .5} --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 0} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: m_SizeDelta.x value: 1 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: m_SizeDelta.y value: 1 objectReference: {fileID: 0} m_RemovedComponents: [] m_ParentPrefab: {fileID: 0} m_RootGameObject: {fileID: 108890} m_IsPrefabParent: 1 ================================================ FILE: Assets/Resources/Prefabs/Image.prefab.meta ================================================ fileFormatVersion: 2 guid: 75ada5d80d78f494a95d2c3540370a12 timeCreated: 1462893108 licenseType: Free NativeFormatImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/ImageEvent.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_SourcePrefab: {fileID: 0} m_RootGameObject: {fileID: 1718407075157132} m_IsPrefabAsset: 1 --- !u!1 &1718407075157132 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 6 m_Component: - component: {fileID: 224264019190123476} - component: {fileID: 222141238355436780} - component: {fileID: 114218737958434672} - component: {fileID: 114856812819923102} - component: {fileID: 114492709604220998} - component: {fileID: 114667157097793060} m_Layer: 8 m_Name: ImageEvent m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &114218737958434672 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1718407075157132} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 21300000, guid: 4b12580121553bc4cac9f8cad90f313c, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &114492709604220998 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1718407075157132} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 846d0d1a9b9e1c14884c79473a1f1d14, type: 3} m_Name: m_EditorClassIdentifier: scriptToLoad: none actualPage: -2 eventTriggers: [] moveSpeed: 3 isMovingWaitEnd: 0 isRotatingWaitEnd: 0 --- !u!114 &114667157097793060 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1718407075157132} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114856812819923102 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1718407075157132} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7bbc081086ab24d458b6c45dcf29bf75, type: 3} m_Name: m_EditorClassIdentifier: --- !u!222 &222141238355436780 CanvasRenderer: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1718407075157132} m_CullTransparentMesh: 0 --- !u!224 &224264019190123476 RectTransform: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1718407075157132} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 1, y: 1} m_Pivot: {x: 0.5, y: 0.5} ================================================ FILE: Assets/Resources/Prefabs/ImageEvent.prefab.meta ================================================ fileFormatVersion: 2 guid: f74d13b9f17e43747bec6c15d5d7e432 timeCreated: 1490646510 licenseType: Free NativeFormatImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/Keybinding.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &6195791463972921765 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 6195791463972921762} - component: {fileID: 6195791463972921760} - component: {fileID: 6195791463972921763} m_Layer: 5 m_Name: Text m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &6195791463972921762 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6195791463972921765} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 6195791464691190923} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 0.5} m_AnchorMax: {x: 1, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 110, y: 40} m_Pivot: {x: 1, y: 0.5} --- !u!222 &6195791463972921760 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6195791463972921765} m_CullTransparentMesh: 0 --- !u!114 &6195791463972921763 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6195791463972921765} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 32 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 40 m_Alignment: 3 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: 'Confirm ' --- !u!1 &6195791464298063074 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 6195791464298063075} - component: {fileID: 6195791464298063073} - component: {fileID: 6195791464298063072} m_Layer: 5 m_Name: Image m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &6195791464298063075 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6195791464298063074} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 6195791464691190923} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 0.5} m_AnchorMax: {x: 1, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 40, y: 40} m_Pivot: {x: 0, y: 0.5} --- !u!222 &6195791464298063073 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6195791464298063074} m_CullTransparentMesh: 0 --- !u!114 &6195791464298063072 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6195791464298063074} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: c70cf2ea859a4094dbbdec828a55ef8b, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!1 &6195791464691190922 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 6195791464691190923} - component: {fileID: 6437133863614902638} m_Layer: 5 m_Name: Keybinding m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &6195791464691190923 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6195791464691190922} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 6435691881106882187} - {fileID: 3248415385365244106} - {fileID: 5535480206333731716} - {fileID: 6195791463972921762} - {fileID: 6195791464298063075} - {fileID: 6195791465658335272} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 20, y: -20} m_SizeDelta: {x: 300, y: 40} m_Pivot: {x: 0, y: 1} --- !u!114 &6437133863614902638 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6195791464691190922} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9580cf12eed84fd479de25a93c2e8b8d, type: 3} m_Name: m_EditorClassIdentifier: Name: Keybinding Edit: {fileID: 6435691881106882184} Reset: {fileID: 3248415385365244105} Clear: {fileID: 5535480206333731719} Text: {fileID: 6195791463972921763} KeyList: {fileID: 6195791465658335273} Image: {fileID: 6195791464298063072} --- !u!1 &6195791465658335275 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 6195791465658335272} - component: {fileID: 6195791465658335254} - component: {fileID: 6195791465658335273} m_Layer: 5 m_Name: KeyList m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &6195791465658335272 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6195791465658335275} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 6195791464691190923} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 0.5} m_AnchorMax: {x: 1, y: 0.5} m_AnchoredPosition: {x: 40, y: 0} m_SizeDelta: {x: 260, y: 40} m_Pivot: {x: 0, y: 0.5} --- !u!222 &6195791465658335254 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6195791465658335275} m_CullTransparentMesh: 0 --- !u!114 &6195791465658335273 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6195791465658335275} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 32 m_FontStyle: 0 m_BestFit: 1 m_MinSize: 4 m_MaxSize: 32 m_Alignment: 3 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Z, Enter --- !u!1001 &125509333232071130 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 6195791464691190923} m_Modifications: - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_Alignment value: 4 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Text value: Edit objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_FontSize value: 16 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_MaxSize value: 212 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_MinSize value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Name value: Edit objectReference: {fileID: 0} - target: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_IsActive value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.x value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.y value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.z value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_RootOrder value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: 60 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: 40 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.r value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.g value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.b value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.a value: 0.5019608 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} --- !u!224 &6435691881106882187 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 125509333232071130} m_PrefabAsset: {fileID: 0} --- !u!114 &6435691881106882184 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 6408004043003039570, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 125509333232071130} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1392445389, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1001 &1458097908330851541 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 6195791464691190923} m_Modifications: - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_Alignment value: 4 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Text value: Clear objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_FontSize value: 16 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_MaxSize value: 212 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_MinSize value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Name value: Clear objectReference: {fileID: 0} - target: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_IsActive value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.x value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.y value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.z value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_RootOrder value: 2 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 120 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: 60 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: 40 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.r value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.g value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.b value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.a value: 0.5019608 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} --- !u!224 &5535480206333731716 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 1458097908330851541} m_PrefabAsset: {fileID: 0} --- !u!114 &5535480206333731719 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 6408004043003039570, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 1458097908330851541} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1392445389, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1001 &8500963403226769307 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 6195791464691190923} m_Modifications: - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_Alignment value: 4 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Text value: Reset objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_FontSize value: 16 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_MaxSize value: 212 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_MinSize value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Name value: Reset objectReference: {fileID: 0} - target: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_IsActive value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.x value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.y value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.z value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_RootOrder value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 60 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: 60 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: 40 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.r value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.g value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.b value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.a value: 0.5019608 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} --- !u!224 &3248415385365244106 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 8500963403226769307} m_PrefabAsset: {fileID: 0} --- !u!114 &3248415385365244105 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 6408004043003039570, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 8500963403226769307} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1392445389, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: ================================================ FILE: Assets/Resources/Prefabs/Keybinding.prefab.meta ================================================ fileFormatVersion: 2 guid: 5c826c0d5339343438211217ebd3152c PrefabImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/LUAEnemy.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_SourcePrefab: {fileID: 0} m_RootGameObject: {fileID: 1536562243827678} m_IsPrefabAsset: 1 --- !u!1 &1536562243827678 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 6 m_Component: - component: {fileID: 224458323407662286} - component: {fileID: 222526543283780886} - component: {fileID: 114886917121375890} - component: {fileID: 114471208118472930} - component: {fileID: 114580615310248598} - component: {fileID: 114942698246119972} - component: {fileID: 114548722136434830} - component: {fileID: 114666342809104514} m_Layer: 8 m_Name: LUAEnemy m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &114471208118472930 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1536562243827678} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 4ccc4510dd1610c46be8204aaf9c3a93, type: 3} m_Name: m_EditorClassIdentifier: bubbleObject: {fileID: 0} xFightAnimShift: 0 bubbleWidth: 0 index: -1 offsets: - {x: 0, y: 0} - {x: 0, y: 0} - {x: 0, y: 0} --- !u!114 &114548722136434830 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1536562243827678} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: -1200242548, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_ShowMaskGraphic: 1 --- !u!114 &114580615310248598 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1536562243827678} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7bbc081086ab24d458b6c45dcf29bf75, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114666342809104514 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1536562243827678} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114886917121375890 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1536562243827678} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c152f559704a98f488c1e63266ed7418, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 21300000, guid: 2156519dc0aa60141a3d1549c052af1b, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 inverted: 0 --- !u!114 &114942698246119972 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1536562243827678} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: -146154839, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: --- !u!222 &222526543283780886 CanvasRenderer: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1536562243827678} m_CullTransparentMesh: 0 --- !u!224 &224458323407662286 RectTransform: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1536562243827678} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0} m_AnchorMax: {x: 0.5, y: 0} m_AnchoredPosition: {x: 0, y: -0.5} m_SizeDelta: {x: 1, y: 1} m_Pivot: {x: 0.5, y: 0} ================================================ FILE: Assets/Resources/Prefabs/LUAEnemy.prefab.meta ================================================ fileFormatVersion: 2 guid: 0cc8c7d5c8d60784aa9a7967e8f51d67 NativeFormatImporter: externalObjects: {} mainObjectFileID: 100100000 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/LUAProjectile.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_SourcePrefab: {fileID: 0} m_RootGameObject: {fileID: 1794129114777588} m_IsPrefabAsset: 1 --- !u!1 &1794129114777588 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 6 m_Component: - component: {fileID: 224226481218204730} - component: {fileID: 222634500739570726} - component: {fileID: 114251383636688628} - component: {fileID: 114395765507202040} - component: {fileID: 114688518846475288} - component: {fileID: 114624832361937374} - component: {fileID: 114781097692020440} - component: {fileID: 114437308883545716} m_Layer: 5 m_Name: LUAProjectile m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &114251383636688628 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1794129114777588} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c152f559704a98f488c1e63266ed7418, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 10913, guid: 0000000000000000f000000000000000, type: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 inverted: 0 --- !u!114 &114395765507202040 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1794129114777588} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 513dcff311a82a84bbf829ccd843c00d, type: 3} m_Name: m_EditorClassIdentifier: needUpdateTex: 1 selfAbs: serializedVersion: 2 x: -999 y: -999 width: 0 height: 0 ppcollision: 0 ppchanged: 0 needSizeRefresh: 0 --- !u!114 &114437308883545716 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1794129114777588} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114624832361937374 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1794129114777588} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: -146154839, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114688518846475288 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1794129114777588} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7bbc081086ab24d458b6c45dcf29bf75, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114781097692020440 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1794129114777588} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: -1200242548, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_ShowMaskGraphic: 1 --- !u!222 &222634500739570726 CanvasRenderer: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1794129114777588} m_CullTransparentMesh: 0 --- !u!224 &224226481218204730 RectTransform: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1794129114777588} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -86.83, y: 74.88} m_SizeDelta: {x: 12, y: 13} m_Pivot: {x: 0.5, y: 0.5} ================================================ FILE: Assets/Resources/Prefabs/LUAProjectile.prefab.meta ================================================ fileFormatVersion: 2 guid: 60c1eee7394e3634189537389ac17b76 NativeFormatImporter: externalObjects: {} mainObjectFileID: 100100000 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/Main Camera OW.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &132834 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 224554813039956440} - component: {fileID: 2017348} - component: {fileID: 9235078} - component: {fileID: 12443464} - component: {fileID: 8124126} - component: {fileID: 8275896} - component: {fileID: 11403688} - component: {fileID: 11493114} - component: {fileID: 11470508} - component: {fileID: 114721871047352794} - component: {fileID: 114367706871473644} m_Layer: 0 m_Name: Main Camera OW m_TagString: MainCamera m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!20 &2017348 Camera: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 132834} m_Enabled: 1 serializedVersion: 2 m_ClearFlags: 2 m_BackGroundColor: {r: 0, g: 0, b: 0, a: 1} m_NormalizedViewPortRect: serializedVersion: 2 x: 0 y: 0 width: 4 height: 3 near clip plane: 0.3 far clip plane: 20000 field of view: 79.2 orthographic: 1 orthographic size: 240 m_Depth: -1 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingPath: -1 m_TargetTexture: {fileID: 0} m_TargetDisplay: 0 m_TargetEye: 3 m_HDR: 0 m_AllowMSAA: 1 m_ForceIntoRT: 0 m_OcclusionCulling: 1 m_StereoConvergence: 10 m_StereoSeparation: 0.022 m_StereoMirrorMode: 0 --- !u!81 &8124126 AudioListener: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 132834} m_Enabled: 1 m_ExtensionPropertyValues: [] --- !u!82 &8275896 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 132834} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 0.75 m_Pitch: 1 Loop: 1 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 200 MaxDistance: 500 Pan2D: 0 rolloffMode: 0 BypassEffects: 1 BypassListenerEffects: 1 BypassReverbZones: 1 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 2 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - serializedVersion: 2 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 2 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 2 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 2 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 m_ExtensionPropertyValues: [] --- !u!92 &9235078 Behaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 132834} m_Enabled: 1 --- !u!114 &11403688 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 132834} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: e994334232641bd4ca342c48fcdb1605, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &11470508 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 132834} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: a642b03daace7a24b85df7b6296af679, type: 3} m_Name: m_EditorClassIdentifier: Page0Done: [] events: [] actualEventIndex: -1 readyToReLaunch: 0 bgmCoroutine: 0 passPressOnce: 0 _scriptLaunched: 0 onceReload: 0 nextFadeTransition: 1 LoadLaunched: 0 --- !u!114 &11493114 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 132834} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: ee7abd0ebb9fe8b4282e39c6bf1e3aa0, type: 3} m_Name: m_EditorClassIdentifier: --- !u!124 &12443464 Behaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 132834} m_Enabled: 1 --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_ParentPrefab: {fileID: 0} m_RootGameObject: {fileID: 132834} m_IsPrefabParent: 1 --- !u!1 &1261290386612482 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 224013658119112078} - component: {fileID: 114439786359422494} - component: {fileID: 212841230656472284} m_Layer: 31 m_Name: FadingBlack m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &114367706871473644 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 132834} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 90c34b83df9c146438231c210eb94b45, type: 3} m_Name: m_EditorClassIdentifier: FirstLevelToLoad: test2 BeginningPosition: {x: 320, y: 200} --- !u!114 &114439786359422494 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1261290386612482} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6d1238b2133fb7f43b3ff2efc445e7d3, type: 3} m_Name: m_EditorClassIdentifier: fade: {fileID: 212841230656472284} fadeSpeed: 3 alpha: 1 --- !u!114 &114721871047352794 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 132834} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c3705032f8204464f8c52eb8313efd79, type: 3} m_Name: m_EditorClassIdentifier: --- !u!212 &212841230656472284 SpriteRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1261290386612482} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 62f8426a429498442af34752c971234e, type: 3} m_Color: {r: 0, g: 0, b: 0, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 --- !u!224 &224013658119112078 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1261290386612482} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 1} m_LocalScale: {x: 100, y: 100, z: 0} m_Children: [] m_Father: {fileID: 224554813039956440} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 0.5} --- !u!224 &224554813039956440 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 132834} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 320, y: 240, z: -10000} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 224013658119112078} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 320, y: 240} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} ================================================ FILE: Assets/Resources/Prefabs/Main Camera OW.prefab.meta ================================================ fileFormatVersion: 2 guid: a606ee4e085f7114e8a4bb167d4e644b timeCreated: 1463846997 licenseType: Free NativeFormatImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/Main Camera.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &116878 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 405216} - component: {fileID: 2064840} - component: {fileID: 9243518} - component: {fileID: 12487400} - component: {fileID: 8103140} - component: {fileID: 8273166} - component: {fileID: 11436750} - component: {fileID: 11402886} - component: {fileID: 11455504} m_Layer: 0 m_Name: Main Camera m_TagString: MainCamera m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &405216 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 116878} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 320, y: 240, z: -10000} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!20 &2064840 Camera: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 116878} m_Enabled: 1 serializedVersion: 2 m_ClearFlags: 2 m_BackGroundColor: {r: 0, g: 0, b: 0, a: 1} m_NormalizedViewPortRect: serializedVersion: 2 x: 0 y: 0 width: 4 height: 3 near clip plane: 0.3 far clip plane: 20000 field of view: 79.2 orthographic: 1 orthographic size: 240 m_Depth: -1 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingPath: -1 m_TargetTexture: {fileID: 0} m_TargetDisplay: 0 m_TargetEye: 3 m_HDR: 0 m_AllowMSAA: 1 m_ForceIntoRT: 0 m_OcclusionCulling: 1 m_StereoConvergence: 10 m_StereoSeparation: 0.022 m_StereoMirrorMode: 0 --- !u!81 &8103140 AudioListener: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 116878} m_Enabled: 1 --- !u!82 &8273166 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 116878} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 0.75 m_Pitch: 1 Loop: 1 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 200 MaxDistance: 500 Pan2D: 0 rolloffMode: 0 BypassEffects: 1 BypassListenerEffects: 1 BypassReverbZones: 1 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 2 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - serializedVersion: 2 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 2 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 2 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 2 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 --- !u!92 &9243518 Behaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 116878} m_Enabled: 1 --- !u!114 &11402886 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 116878} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: e994334232641bd4ca342c48fcdb1605, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &11436750 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 116878} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 4aa500e896f56ea4291706c581edeb86, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &11455504 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 116878} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: ee7abd0ebb9fe8b4282e39c6bf1e3aa0, type: 3} m_Name: m_EditorClassIdentifier: --- !u!124 &12487400 Behaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 116878} m_Enabled: 1 --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_ParentPrefab: {fileID: 0} m_RootGameObject: {fileID: 116878} m_IsPrefabParent: 1 ================================================ FILE: Assets/Resources/Prefabs/Main Camera.prefab.meta ================================================ fileFormatVersion: 2 guid: 9c0c29340fc4a6347aa18ffb6f5a7eea timeCreated: 1464090099 licenseType: Free NativeFormatImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/Maps/Core - Pont.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &108440 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 402534} - component: {fileID: 11426462} m_Layer: 0 m_Name: Core - Pont m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &160736 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 419426} m_Layer: 0 m_Name: Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &169200 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 438254} m_Layer: 0 m_Name: Calque d'objets 1 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &178842 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 437592} m_Layer: 0 m_Name: Foreground m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &192206 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 413906} m_Layer: 0 m_Name: Map m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &402534 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 108440} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 419426} - {fileID: 413906} - {fileID: 437592} - {fileID: 438254} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &413906 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 192206} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 4230102999406112} m_Father: {fileID: 402534} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &419426 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 160736} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 4795975778049944} m_Father: {fileID: 402534} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &437592 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 178842} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 4810717534342658} m_Father: {fileID: 402534} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &438254 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 169200} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 4953581967639844} - {fileID: 4386384304748246} m_Father: {fileID: 402534} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &11426462 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 108440} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c0619e460a775cc458d37cb4a214a189, type: 3} m_Name: m_EditorClassIdentifier: Orientation: 0 StaggerAxis: 1 StaggerIndex: 0 HexSideLength: 0 NumLayers: 3 NumTilesWide: 31 NumTilesHigh: 12 TileWidth: 20 TileHeight: 20 ExportScale: 1 MapWidthInPixels: 620 MapHeightInPixels: 240 BackgroundColor: {r: 0, g: 0, b: 0, a: 1} --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_ParentPrefab: {fileID: 0} m_RootGameObject: {fileID: 108440} m_IsPrefabParent: 1 --- !u!1 &1091058302252216 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4810717534342658} - component: {fileID: 33334605075894098} - component: {fileID: 23295363341395114} - component: {fileID: 114430790302257732} - component: {fileID: 114031398034597444} m_Layer: 0 m_Name: PC Computer - Undertale - Core Tileset(1) m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1190818210142280 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4386384304748246} - component: {fileID: 61146647554749178} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1212696524220000 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4795975778049944} - component: {fileID: 33833372300051544} - component: {fileID: 23018795220219750} - component: {fileID: 114519047784469584} - component: {fileID: 114155132889306766} m_Layer: 0 m_Name: PC Computer - Undertale - Core Tileset(1) m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1412505113430672 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4230102999406112} - component: {fileID: 33301905831517414} - component: {fileID: 23250530844093502} - component: {fileID: 114090428871438020} - component: {fileID: 114036337208926858} m_Layer: 0 m_Name: PC Computer - Undertale - Core Tileset(1) m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1789052866440766 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4953581967639844} - component: {fileID: 61062947243055336} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &4230102999406112 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1412505113430672} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 413906} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4386384304748246 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1190818210142280} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 438254} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4795975778049944 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1212696524220000} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 419426} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4810717534342658 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1091058302252216} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 437592} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4953581967639844 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1789052866440766} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: -140, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 438254} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!23 &23018795220219750 MeshRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1212696524220000} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 0 m_Materials: - {fileID: 2100000, guid: b90bff42e575b504a9929ba56d216286, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 --- !u!23 &23250530844093502 MeshRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1412505113430672} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 0 m_Materials: - {fileID: 2100000, guid: b90bff42e575b504a9929ba56d216286, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 1 --- !u!23 &23295363341395114 MeshRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1091058302252216} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 0 m_Materials: - {fileID: 2100000, guid: b90bff42e575b504a9929ba56d216286, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 2 --- !u!33 &33301905831517414 MeshFilter: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1412505113430672} m_Mesh: {fileID: 4300002, guid: 6b8f1b32149de0c418bdc62a7f9eba86, type: 3} --- !u!33 &33334605075894098 MeshFilter: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1091058302252216} m_Mesh: {fileID: 4300004, guid: 6b8f1b32149de0c418bdc62a7f9eba86, type: 3} --- !u!33 &33833372300051544 MeshFilter: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1212696524220000} m_Mesh: {fileID: 4300000, guid: 6b8f1b32149de0c418bdc62a7f9eba86, type: 3} --- !u!61 &61062947243055336 BoxCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1789052866440766} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 330, y: -50} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 660, y: 100} m_EdgeRadius: 0 --- !u!61 &61146647554749178 BoxCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1190818210142280} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 330, y: -50} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 660, y: 100} m_EdgeRadius: 0 --- !u!114 &114031398034597444 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1091058302252216} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 74efee4889073914b8ae070d65688ce4, type: 3} m_Name: m_EditorClassIdentifier: InitialOpacity: 1 --- !u!114 &114036337208926858 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1412505113430672} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 74efee4889073914b8ae070d65688ce4, type: 3} m_Name: m_EditorClassIdentifier: InitialOpacity: 1 --- !u!114 &114090428871438020 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1412505113430672} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1874989c5e2da094ea00112c6a895694, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114155132889306766 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1212696524220000} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 74efee4889073914b8ae070d65688ce4, type: 3} m_Name: m_EditorClassIdentifier: InitialOpacity: 1 --- !u!114 &114430790302257732 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1091058302252216} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1874989c5e2da094ea00112c6a895694, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114519047784469584 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1212696524220000} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1874989c5e2da094ea00112c6a895694, type: 3} m_Name: m_EditorClassIdentifier: ================================================ FILE: Assets/Resources/Prefabs/Maps/Core - Pont.prefab.meta ================================================ fileFormatVersion: 2 guid: 7ee8c41e706c8224aaf33ac77140d8c0 timeCreated: 1469314946 licenseType: Free NativeFormatImporter: externalObjects: {} mainObjectFileID: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/Maps/_ReadMe.txt ================================================ Prefabs directory Tiled2Unity scripts will build prefabs here. These prefabs can be easily placed in your Unity scenes. These prefabs are the end products of Tiled2Unity exporting. ================================================ FILE: Assets/Resources/Prefabs/Maps/_ReadMe.txt.meta ================================================ fileFormatVersion: 2 guid: aa9caf518b94fc443b586de1585e43d7 TextScriptImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/Maps/newhome1.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &132186 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 412730} m_Layer: 0 m_Name: Collision Layer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &137128 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 461400} - component: {fileID: 3311786} - component: {fileID: 2349500} - component: {fileID: 11448190} - component: {fileID: 11452010} m_Layer: 0 m_Name: UT NewHome 1 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &172050 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 484346} - component: {fileID: 11423186} m_Layer: 0 m_Name: newhome1 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &185918 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 493402} m_Layer: 0 m_Name: Tile Layer 1 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &412730 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 132186} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 4599508693265514} - {fileID: 4642279593076310} - {fileID: 4678353843598994} - {fileID: 4758993719055064} m_Father: {fileID: 484346} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &461400 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 137128} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 493402} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &484346 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 172050} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 493402} - {fileID: 412730} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &493402 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 185918} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 461400} m_Father: {fileID: 484346} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!23 &2349500 MeshRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 137128} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 0 m_Materials: - {fileID: 2100000, guid: d7b1f2149f5fc5e48aea6aec865fa420, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 1 --- !u!33 &3311786 MeshFilter: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 137128} m_Mesh: {fileID: 4300000, guid: f7a5fd19a8dcf144b8ef11e16f9d560f, type: 3} --- !u!114 &11423186 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 172050} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c0619e460a775cc458d37cb4a214a189, type: 3} m_Name: m_EditorClassIdentifier: Orientation: 0 StaggerAxis: 1 StaggerIndex: 0 HexSideLength: 0 NumLayers: 1 NumTilesWide: 50 NumTilesHigh: 12 TileWidth: 40 TileHeight: 40 ExportScale: 1 MapWidthInPixels: 2000 MapHeightInPixels: 480 BackgroundColor: {r: 0, g: 0, b: 0, a: 1} --- !u!114 &11448190 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 137128} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1874989c5e2da094ea00112c6a895694, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &11452010 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 137128} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 74efee4889073914b8ae070d65688ce4, type: 3} m_Name: m_EditorClassIdentifier: InitialOpacity: 1 --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_ParentPrefab: {fileID: 0} m_RootGameObject: {fileID: 172050} m_IsPrefabParent: 1 --- !u!1 &1027919183631034 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4758993719055064} - component: {fileID: 61699536141137890} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1101911138368200 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4642279593076310} - component: {fileID: 61028872979784206} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1323914448080644 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4599508693265514} - component: {fileID: 61010596543516738} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1428997337415130 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4678353843598994} - component: {fileID: 61410378285480688} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &4599508693265514 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1323914448080644} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 412730} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4642279593076310 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1101911138368200} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: -320, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 412730} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4678353843598994 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1428997337415130} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: -240, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 412730} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4758993719055064 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1027919183631034} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 2000, y: -240, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 412730} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &61010596543516738 BoxCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1323914448080644} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 1000, y: -120} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 2000, y: 240} m_EdgeRadius: 0 --- !u!61 &61028872979784206 BoxCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1101911138368200} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 1000, y: -80} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 2000, y: 160} m_EdgeRadius: 0 --- !u!61 &61410378285480688 BoxCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1428997337415130} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 80, y: -40} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 160, y: 80} m_EdgeRadius: 0 --- !u!61 &61699536141137890 BoxCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1027919183631034} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 10, y: -40} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 20, y: 80} m_EdgeRadius: 0 ================================================ FILE: Assets/Resources/Prefabs/Maps/newhome1.prefab.meta ================================================ fileFormatVersion: 2 guid: 07c69b0748c8f044fae79b890c4005da timeCreated: 1476904389 licenseType: Free NativeFormatImporter: externalObjects: {} mainObjectFileID: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/Maps/newhome2.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &116090 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 470546} m_Layer: 0 m_Name: Tile Layer 1 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &152760 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 451980} - component: {fileID: 3312910} - component: {fileID: 2352800} - component: {fileID: 11405838} - component: {fileID: 11497666} m_Layer: 0 m_Name: UT NewHome 2 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &161848 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 411254} m_Layer: 0 m_Name: Collision Layer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &199918 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 441110} - component: {fileID: 11410530} m_Layer: 0 m_Name: newhome2 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &411254 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 161848} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 4932657763765954} - {fileID: 4396473097715648} - {fileID: 4469410908816630} - {fileID: 4727114580404202} - {fileID: 4641313063197844} - {fileID: 4381438454153008} m_Father: {fileID: 441110} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &441110 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 199918} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 470546} - {fileID: 411254} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &451980 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 152760} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 470546} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &470546 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 116090} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 451980} m_Father: {fileID: 441110} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!23 &2352800 MeshRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 152760} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 0 m_Materials: - {fileID: 2100000, guid: 9fa45d50e3268fe48af9f3318f903b16, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 --- !u!33 &3312910 MeshFilter: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 152760} m_Mesh: {fileID: 4300000, guid: 05b8ddbb245e56444b786abc2a30e625, type: 3} --- !u!114 &11405838 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 152760} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1874989c5e2da094ea00112c6a895694, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &11410530 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 199918} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c0619e460a775cc458d37cb4a214a189, type: 3} m_Name: m_EditorClassIdentifier: Orientation: 0 StaggerAxis: 1 StaggerIndex: 0 HexSideLength: 0 NumLayers: 1 NumTilesWide: 16 NumTilesHigh: 24 TileWidth: 40 TileHeight: 40 ExportScale: 1 MapWidthInPixels: 640 MapHeightInPixels: 960 BackgroundColor: {r: 0, g: 0, b: 0, a: 1} --- !u!114 &11497666 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 152760} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 74efee4889073914b8ae070d65688ce4, type: 3} m_Name: m_EditorClassIdentifier: InitialOpacity: 1 --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_ParentPrefab: {fileID: 0} m_RootGameObject: {fileID: 199918} m_IsPrefabParent: 1 --- !u!1 &1025056818014386 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4641313063197844} - component: {fileID: 61849620888538198} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1025855984848900 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4396473097715648} - component: {fileID: 61040890497744298} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1199483808150642 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4381438454153008} - component: {fileID: 61273463748210790} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1250866436885546 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4469410908816630} - component: {fileID: 61244302540367460} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1589256872704112 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4727114580404202} - component: {fileID: 61370701673860568} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1684293601741306 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4932657763765954} - component: {fileID: 61302475857956444} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &4381438454153008 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1199483808150642} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 640, y: -320, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 411254} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4396473097715648 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1025855984848900} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: -320, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 411254} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4469410908816630 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1250866436885546} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 400, y: -400, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 411254} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4641313063197844 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1025056818014386} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: -20, y: -720, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 411254} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4727114580404202 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1589256872704112} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: -840, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 411254} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4932657763765954 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1684293601741306} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 411254} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &61040890497744298 BoxCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1025855984848900} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 120, y: -200} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 240, y: 400} m_EdgeRadius: 0 --- !u!61 &61244302540367460 BoxCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1250866436885546} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 120, y: -280} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 240, y: 560} m_EdgeRadius: 0 --- !u!61 &61273463748210790 BoxCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1199483808150642} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 10, y: -40} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 20, y: 80} m_EdgeRadius: 0 --- !u!61 &61302475857956444 BoxCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1684293601741306} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 320, y: -160} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 640, y: 320} m_EdgeRadius: 0 --- !u!61 &61370701673860568 BoxCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1589256872704112} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 200, y: -60} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 400, y: 120} m_EdgeRadius: 0 --- !u!61 &61849620888538198 BoxCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1025056818014386} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 10, y: -60} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 20, y: 120} m_EdgeRadius: 0 ================================================ FILE: Assets/Resources/Prefabs/Maps/newhome2.prefab.meta ================================================ fileFormatVersion: 2 guid: a87cc547e0f1d7a4d8f41ff5785f8f9c timeCreated: 1476904390 licenseType: Free NativeFormatImporter: externalObjects: {} mainObjectFileID: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/Maps/newhome3.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &100954 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 499446} m_Layer: 0 m_Name: Tile Layer 1 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &122298 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 409426} m_Layer: 0 m_Name: Collision Layer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &157016 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 491902} - component: {fileID: 3303974} - component: {fileID: 2372798} - component: {fileID: 11443992} - component: {fileID: 11413598} m_Layer: 0 m_Name: UT NewHome 3 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &157488 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 452124} - component: {fileID: 11430030} m_Layer: 0 m_Name: newhome3 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &168310 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 460918} - component: {fileID: 6198640} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &409426 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 122298} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 4198038868681860} - {fileID: 4783318412322800} - {fileID: 4783279826870070} - {fileID: 460918} m_Father: {fileID: 452124} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &452124 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 157488} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 499446} - {fileID: 409426} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &460918 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 168310} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 3600, y: -320, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 409426} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &491902 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 157016} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 499446} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &499446 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 100954} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 491902} m_Father: {fileID: 452124} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!23 &2372798 MeshRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 157016} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 0 m_Materials: - {fileID: 2100000, guid: eedf15fe50af22f43ab66a928fa6cbd9, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 --- !u!33 &3303974 MeshFilter: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 157016} m_Mesh: {fileID: 4300000, guid: a32ba2a762d3ef5438002f4146cf924b, type: 3} --- !u!61 &6198640 BoxCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 168310} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 10, y: -40} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 20, y: 80} m_EdgeRadius: 0 --- !u!114 &11413598 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 157016} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 74efee4889073914b8ae070d65688ce4, type: 3} m_Name: m_EditorClassIdentifier: InitialOpacity: 1 --- !u!114 &11430030 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 157488} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c0619e460a775cc458d37cb4a214a189, type: 3} m_Name: m_EditorClassIdentifier: Orientation: 0 StaggerAxis: 1 StaggerIndex: 0 HexSideLength: 0 NumLayers: 1 NumTilesWide: 90 NumTilesHigh: 12 TileWidth: 40 TileHeight: 40 ExportScale: 1 MapWidthInPixels: 3600 MapHeightInPixels: 480 BackgroundColor: {r: 0, g: 0, b: 0, a: 1} --- !u!114 &11443992 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 157016} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1874989c5e2da094ea00112c6a895694, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_ParentPrefab: {fileID: 0} m_RootGameObject: {fileID: 157488} m_IsPrefabParent: 1 --- !u!1 &1128757836638330 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4783318412322800} - component: {fileID: 61767301569297156} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1166305773942686 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4783279826870070} - component: {fileID: 61370323932899710} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1822322747527716 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4198038868681860} - component: {fileID: 61770723673795708} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &4198038868681860 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1822322747527716} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 409426} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4783279826870070 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1166305773942686} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: -20, y: -320, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 409426} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4783318412322800 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1128757836638330} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: -400, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 409426} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &61370323932899710 BoxCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1166305773942686} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 10, y: -40} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 20, y: 80} m_EdgeRadius: 0 --- !u!61 &61767301569297156 BoxCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1128757836638330} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 1800, y: -40} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 3600, y: 80} m_EdgeRadius: 0 --- !u!61 &61770723673795708 BoxCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1822322747527716} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 1800, y: -160} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 3600, y: 320} m_EdgeRadius: 0 ================================================ FILE: Assets/Resources/Prefabs/Maps/newhome3.prefab.meta ================================================ fileFormatVersion: 2 guid: 46c3957bd346f7042a1ee3d8538c7d24 timeCreated: 1476904389 licenseType: Free NativeFormatImporter: externalObjects: {} mainObjectFileID: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/Maps/test-1.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &108122 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 462018} - component: {fileID: 11422174} m_Layer: 0 m_Name: test-1 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &170920 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 473076} m_Layer: 0 m_Name: Tile Layer 1 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &175212 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 478356} m_Layer: 0 m_Name: Tile Layer 2 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &188098 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 436934} m_Layer: 0 m_Name: Object Layer 1 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &436934 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 188098} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 4969355151054452} - {fileID: 4411415865921250} - {fileID: 4370613989190234} - {fileID: 4104814126683594} - {fileID: 4874695609774708} m_Father: {fileID: 462018} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &462018 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 108122} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 473076} - {fileID: 478356} - {fileID: 436934} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &473076 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 170920} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 4710499201971146} m_Father: {fileID: 462018} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &478356 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 175212} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 4263749786036870} m_Father: {fileID: 462018} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &11422174 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 108122} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c0619e460a775cc458d37cb4a214a189, type: 3} m_Name: m_EditorClassIdentifier: Orientation: 0 StaggerAxis: 1 StaggerIndex: 0 HexSideLength: 0 NumLayers: 2 NumTilesWide: 10 NumTilesHigh: 20 TileWidth: 20 TileHeight: 20 ExportScale: 1 MapWidthInPixels: 200 MapHeightInPixels: 400 BackgroundColor: {r: 0, g: 0, b: 0, a: 1} --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_ParentPrefab: {fileID: 0} m_RootGameObject: {fileID: 108122} m_IsPrefabParent: 1 --- !u!1 &1074318236647486 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4263749786036870} - component: {fileID: 33888533619008670} - component: {fileID: 23060260893748432} - component: {fileID: 114671491332314694} - component: {fileID: 114724715633338366} m_Layer: 0 m_Name: PC Computer - Undertale - Core Tileset(1) m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1157797816037702 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4710499201971146} - component: {fileID: 33971917621994928} - component: {fileID: 23881397774628950} - component: {fileID: 114149940619776646} - component: {fileID: 114510176670656848} m_Layer: 0 m_Name: PC Computer - Undertale - Core Tileset(1) m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1209775362976118 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4874695609774708} - component: {fileID: 61608051966722316} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1425197796869388 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4104814126683594} - component: {fileID: 61220732939645800} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1589456723916726 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4370613989190234} - component: {fileID: 61787161790451058} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1604110323108148 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4969355151054452} - component: {fileID: 61494910102764938} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1677131846484284 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4411415865921250} - component: {fileID: 61225925222680160} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &4104814126683594 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1425197796869388} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: -11.375, y: -300, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 436934} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4263749786036870 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1074318236647486} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 478356} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4370613989190234 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1589456723916726} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: -32, y: -181, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 436934} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4411415865921250 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1677131846484284} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 180.125, y: -136.125, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 436934} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4710499201971146 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1157797816037702} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 473076} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4874695609774708 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1209775362976118} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 180.125, y: -102.875, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 436934} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4969355151054452 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1604110323108148} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 26, y: -146.875, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 436934} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!23 &23060260893748432 MeshRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1074318236647486} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 0 m_Materials: - {fileID: 2100000, guid: b90bff42e575b504a9929ba56d216286, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 1 --- !u!23 &23881397774628950 MeshRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1157797816037702} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 0 m_Materials: - {fileID: 2100000, guid: b90bff42e575b504a9929ba56d216286, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 --- !u!33 &33888533619008670 MeshFilter: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1074318236647486} m_Mesh: {fileID: 4300002, guid: 20329d7969f2b264a9502e7f16e1cade, type: 3} --- !u!33 &33971917621994928 MeshFilter: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1157797816037702} m_Mesh: {fileID: 4300000, guid: 20329d7969f2b264a9502e7f16e1cade, type: 3} --- !u!61 &61220732939645800 BoxCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1425197796869388} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 107.5, y: -29.5} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 215, y: 59} m_EdgeRadius: 0 --- !u!61 &61225925222680160 BoxCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1677131846484284} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 29.5, y: -61} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 59, y: 122} m_EdgeRadius: 0 --- !u!61 &61494910102764938 BoxCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1604110323108148} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 77, y: -36.5} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 154, y: 73} m_EdgeRadius: 0 --- !u!61 &61608051966722316 BoxCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1209775362976118} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 47.5, y: -139} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 95, y: 278} m_EdgeRadius: 0 --- !u!61 &61787161790451058 BoxCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1589456723916726} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 25.5, y: -68} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 51, y: 136} m_EdgeRadius: 0 --- !u!114 &114149940619776646 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1157797816037702} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1874989c5e2da094ea00112c6a895694, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114510176670656848 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1157797816037702} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 74efee4889073914b8ae070d65688ce4, type: 3} m_Name: m_EditorClassIdentifier: InitialOpacity: 1 --- !u!114 &114671491332314694 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1074318236647486} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1874989c5e2da094ea00112c6a895694, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114724715633338366 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1074318236647486} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 74efee4889073914b8ae070d65688ce4, type: 3} m_Name: m_EditorClassIdentifier: InitialOpacity: 1 ================================================ FILE: Assets/Resources/Prefabs/Maps/test-1.prefab.meta ================================================ fileFormatVersion: 2 guid: 1671319c31899aa47ae5b2a9fb45a5e2 timeCreated: 1472345204 licenseType: Free NativeFormatImporter: externalObjects: {} mainObjectFileID: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/Maps/test5.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_ParentPrefab: {fileID: 0} m_RootGameObject: {fileID: 1024873750970880} m_IsPrefabParent: 1 --- !u!1 &1024873750970880 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4223729940957908} - component: {fileID: 114992522259512466} m_Layer: 0 m_Name: test5 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1049059904639266 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4261540870177432} - component: {fileID: 61710131415453432} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1064818537211094 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4552248326568602} - component: {fileID: 33083800856714144} - component: {fileID: 23673618452596374} - component: {fileID: 114857420533740516} - component: {fileID: 114165573254561956} m_Layer: 0 m_Name: Snow 2 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1070681132078748 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4346538951897100} - component: {fileID: 61153385514969244} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1104437511627834 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4050858194164118} - component: {fileID: 61014140729275126} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1161035551607804 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4205393937864470} - component: {fileID: 68072420332171870} m_Layer: 0 m_Name: PolylineObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1178483270533026 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4247833805015100} - component: {fileID: 68373808935093346} m_Layer: 0 m_Name: PolylineObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1207538383564630 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4136851043020064} - component: {fileID: 68686157475376142} m_Layer: 0 m_Name: PolylineObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1313084546495368 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4756532876366998} - component: {fileID: 61244700258226666} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1318368161637330 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4469402454751528} - component: {fileID: 68978087745475852} m_Layer: 0 m_Name: PolylineObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1360250522288908 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4305928857705968} - component: {fileID: 61781725936799658} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1404318839159288 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4224059625708892} - component: {fileID: 68383722026496582} m_Layer: 0 m_Name: PolylineObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1452456503968698 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4024354328416996} - component: {fileID: 68195906071789874} m_Layer: 0 m_Name: PolylineObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1462899328005788 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4813426738253004} m_Layer: 0 m_Name: Object Layer 1 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1471658619547926 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4804992723190266} - component: {fileID: 68509601803071318} m_Layer: 0 m_Name: PolylineObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1554434179019144 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4138988539166774} - component: {fileID: 33001885859180426} - component: {fileID: 23390796072277136} - component: {fileID: 114413410708425742} - component: {fileID: 114593656504825954} m_Layer: 0 m_Name: Snow 2 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1670785344745060 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4995348561009746} - component: {fileID: 61195113707946606} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1820974653700762 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4311501672300264} - component: {fileID: 61933862543704720} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1837335525706062 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4143477061281516} m_Layer: 0 m_Name: Foreground m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1840146610781288 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4655166886644270} m_Layer: 0 m_Name: Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1840563964411050 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4270108325017604} - component: {fileID: 61922433301499438} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &1972254079746186 GameObject: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4788495905427466} - component: {fileID: 61512684036738978} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &4024354328416996 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1452456503968698} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 200, y: -160, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 4813426738253004} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4050858194164118 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1104437511627834} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 320, y: -200, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 4813426738253004} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4136851043020064 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1207538383564630} m_LocalRotation: {x: -0, y: -0, z: -0.7071068, w: 0.7071068} m_LocalPosition: {x: 1679.5, y: -160, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 4813426738253004} m_RootOrder: 8 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4138988539166774 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1554434179019144} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 4655166886644270} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4143477061281516 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1837335525706062} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 4552248326568602} m_Father: {fileID: 4223729940957908} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4205393937864470 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1161035551607804} m_LocalRotation: {x: -0, y: -0, z: -0.7071068, w: 0.7071068} m_LocalPosition: {x: 2039.5, y: -320, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 4813426738253004} m_RootOrder: 13 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4223729940957908 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1024873750970880} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 4655166886644270} - {fileID: 4143477061281516} - {fileID: 4813426738253004} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4224059625708892 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1404318839159288} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 280, y: -160.5, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 4813426738253004} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4247833805015100 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1178483270533026} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 2000, y: -160, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 4813426738253004} m_RootOrder: 12 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4261540870177432 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1049059904639266} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 2040, y: -200, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 4813426738253004} m_RootOrder: 10 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4270108325017604 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1840563964411050} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 200, y: -120, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 4813426738253004} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4305928857705968 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1360250522288908} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 320, y: -280, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 4813426738253004} m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4311501672300264 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1820974653700762} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: -360, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 4813426738253004} m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4346538951897100 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1070681132078748} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 1680, y: -360, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 4813426738253004} m_RootOrder: 15 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4469402454751528 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1318368161637330} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 1640, y: -320, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 4813426738253004} m_RootOrder: 11 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4552248326568602 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1064818537211094} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 4143477061281516} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4655166886644270 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1840146610781288} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 4138988539166774} m_Father: {fileID: 4223729940957908} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4756532876366998 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1313084546495368} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: -240, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 4813426738253004} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4788495905427466 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1972254079746186} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 1680, y: -120, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 4813426738253004} m_RootOrder: 9 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4804992723190266 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1471658619547926} m_LocalRotation: {x: -0, y: -0, z: -0.7071068, w: 0.7071068} m_LocalPosition: {x: 319.5, y: -320, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 4813426738253004} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4813426738253004 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1462899328005788} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 4050858194164118} - {fileID: 4024354328416996} - {fileID: 4756532876366998} - {fileID: 4270108325017604} - {fileID: 4224059625708892} - {fileID: 4804992723190266} - {fileID: 4311501672300264} - {fileID: 4305928857705968} - {fileID: 4136851043020064} - {fileID: 4788495905427466} - {fileID: 4261540870177432} - {fileID: 4469402454751528} - {fileID: 4247833805015100} - {fileID: 4205393937864470} - {fileID: 4995348561009746} - {fileID: 4346538951897100} m_Father: {fileID: 4223729940957908} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &4995348561009746 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1670785344745060} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 2040, y: -280, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 4813426738253004} m_RootOrder: 14 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!23 &23390796072277136 MeshRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1554434179019144} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 0 m_Materials: - {fileID: 2100000, guid: 7ea947c0bf8de2d4982a572cbceb9c7c, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 --- !u!23 &23673618452596374 MeshRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1064818537211094} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 0 m_Materials: - {fileID: 2100000, guid: 7ea947c0bf8de2d4982a572cbceb9c7c, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 2 --- !u!33 &33001885859180426 MeshFilter: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1554434179019144} m_Mesh: {fileID: 4300000, guid: 6fb53fa89503ae542bab8101c68b82e6, type: 3} --- !u!33 &33083800856714144 MeshFilter: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1064818537211094} m_Mesh: {fileID: 4300002, guid: 6fb53fa89503ae542bab8101c68b82e6, type: 3} --- !u!61 &61014140729275126 BoxCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1104437511627834} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 660, y: -20} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 1320, y: 40} m_EdgeRadius: 0 --- !u!61 &61153385514969244 BoxCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1070681132078748} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 160, y: -20} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 320, y: 40} m_EdgeRadius: 0 --- !u!61 &61195113707946606 BoxCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1670785344745060} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 20, y: -20} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 40, y: 40} m_EdgeRadius: 0 --- !u!61 &61244700258226666 BoxCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1313084546495368} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 40, y: -20} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 80, y: 40} m_EdgeRadius: 0 --- !u!61 &61512684036738978 BoxCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1972254079746186} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 160, y: -20} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 320, y: 40} m_EdgeRadius: 0 --- !u!61 &61710131415453432 BoxCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1049059904639266} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 20, y: -20} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 40, y: 40} m_EdgeRadius: 0 --- !u!61 &61781725936799658 BoxCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1360250522288908} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 660, y: -20} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 1320, y: 40} m_EdgeRadius: 0 --- !u!61 &61922433301499438 BoxCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1840563964411050} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 40, y: -20} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 80, y: 40} m_EdgeRadius: 0 --- !u!61 &61933862543704720 BoxCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1820974653700762} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 140, y: -20} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 280, y: 40} m_EdgeRadius: 0 --- !u!68 &68072420332171870 EdgeCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1161035551607804} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: 0, y: 0.5625} - {x: 40, y: -39.5} --- !u!68 &68195906071789874 EdgeCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1452456503968698} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: -0.0416667, y: 0.0208333} - {x: -120, y: -120} --- !u!68 &68373808935093346 EdgeCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1178483270533026} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: 0, y: -0.0738636} - {x: 40, y: -40.0455} --- !u!68 &68383722026496582 EdgeCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1404318839159288} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: 0, y: 0.5625} - {x: 40, y: -39.5} --- !u!68 &68509601803071318 EdgeCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1471658619547926} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: 0, y: 0.5625} - {x: 40, y: -39.5} --- !u!68 &68686157475376142 EdgeCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1207538383564630} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: 0, y: 0.5625} - {x: 40, y: -39.5} --- !u!68 &68978087745475852 EdgeCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1318368161637330} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: 0, y: -0.0738636} - {x: 40, y: -40.0455} --- !u!114 &114165573254561956 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1064818537211094} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 74efee4889073914b8ae070d65688ce4, type: 3} m_Name: m_EditorClassIdentifier: InitialOpacity: 1 --- !u!114 &114413410708425742 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1554434179019144} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1874989c5e2da094ea00112c6a895694, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114593656504825954 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1554434179019144} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 74efee4889073914b8ae070d65688ce4, type: 3} m_Name: m_EditorClassIdentifier: InitialOpacity: 1 --- !u!114 &114857420533740516 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1064818537211094} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1874989c5e2da094ea00112c6a895694, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114992522259512466 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1024873750970880} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c0619e460a775cc458d37cb4a214a189, type: 3} m_Name: m_EditorClassIdentifier: Orientation: 0 StaggerAxis: 1 StaggerIndex: 0 HexSideLength: 0 NumLayers: 2 NumTilesWide: 52 NumTilesHigh: 12 TileWidth: 40 TileHeight: 40 ExportScale: 1 MapWidthInPixels: 2080 MapHeightInPixels: 480 BackgroundColor: {r: 0, g: 0, b: 0, a: 1} ================================================ FILE: Assets/Resources/Prefabs/Maps/test5.prefab.meta ================================================ fileFormatVersion: 2 guid: b888245b12540f249a0f3bf94d162a8d timeCreated: 1491600209 licenseType: Free NativeFormatImporter: externalObjects: {} mainObjectFileID: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/Maps.meta ================================================ fileFormatVersion: 2 guid: e5e39f8e817c3634e9fdef04f20f66fc folderAsset: yes timeCreated: 1503582610 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/ModButton.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &2259807480554918498 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 3451299193990783664} - component: {fileID: 4277983904258972346} - component: {fileID: 8971777607023753520} - component: {fileID: 4503423380316075723} m_Layer: 5 m_Name: QuickFolderButton m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 0 --- !u!224 &3451299193990783664 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2259807480554918498} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 9209012502427373731} m_Father: {fileID: 6408004043003039569} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 0.5} m_AnchorMax: {x: 1, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 30, y: 30} m_Pivot: {x: 1, y: 0.5} --- !u!222 &4277983904258972346 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2259807480554918498} m_CullTransparentMesh: 0 --- !u!114 &8971777607023753520 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2259807480554918498} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!114 &4503423380316075723 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2259807480554918498} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1392445389, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 8971777607023753520} m_OnClick: m_PersistentCalls: m_Calls: [] --- !u!1 &3828066277162679643 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 9209012502427373731} - component: {fileID: 7956288013835388280} - component: {fileID: 4859171086142892829} m_Layer: 5 m_Name: QuickFolderButtonImage m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &9209012502427373731 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3828066277162679643} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 3451299193990783664} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &7956288013835388280 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3828066277162679643} m_CullTransparentMesh: 0 --- !u!114 &4859171086142892829 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3828066277162679643} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: 19bc4b426e4957b46ba4493301f25a8a, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!1 &6408004042313889261 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 6408004042313889262} - component: {fileID: 6408004042313889256} - component: {fileID: 6408004042313889263} m_Layer: 5 m_Name: Text m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &6408004042313889262 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6408004042313889261} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 6408004043003039569} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 5, y: 0} m_SizeDelta: {x: -10, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &6408004042313889256 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6408004042313889261} m_CullTransparentMesh: 0 --- !u!114 &6408004042313889263 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6408004042313889261} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 0 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 16 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 1 m_MaxSize: 40 m_Alignment: 3 m_AlignByGeometry: 0 m_RichText: 0 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: " \u2190 Back" --- !u!1 &6408004042703340350 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 6408004042703340351} - component: {fileID: 6408004042703340345} - component: {fileID: 6408004042703340344} m_Layer: 5 m_Name: Fill m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &6408004042703340351 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6408004042703340350} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 6408004043003039569} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 420, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &6408004042703340345 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6408004042703340350} m_CullTransparentMesh: 1 --- !u!114 &6408004042703340344 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6408004042703340350} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.1254902, g: 0.1254902, b: 0.1254902, a: 0.5019608} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!1 &6408004043003039568 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 6408004043003039569} - component: {fileID: 6408004043003039580} - component: {fileID: 6408004043003039571} - component: {fileID: 6408004043003039570} - component: {fileID: 6408004043003039581} m_Layer: 5 m_Name: ModButton m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &6408004043003039569 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6408004043003039568} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 5707076098459111867} - {fileID: 3354551120703587142} - {fileID: 6408004042703340351} - {fileID: 6408004042313889262} - {fileID: 3451299193990783664} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 215, y: 100} m_SizeDelta: {x: 430, y: 30} m_Pivot: {x: 1, y: 0.5} --- !u!222 &6408004043003039580 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6408004043003039568} m_CullTransparentMesh: 1 --- !u!114 &6408004043003039571 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6408004043003039568} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.7529412, g: 0.7529412, b: 0.7529412, a: 0.5019608} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 0 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!114 &6408004043003039570 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6408004043003039568} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1392445389, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 0 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 0.2509804} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 5 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 6408004043003039571} m_OnClick: m_PersistentCalls: m_Calls: [] --- !u!114 &6408004043003039581 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6408004043003039568} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 525e6c79af09d3a4cbba3b47269cf03f, type: 3} m_Name: m_EditorClassIdentifier: NormalColor: {r: 0.7529412, g: 0.7529412, b: 0.7529412, a: 0.5019608} HoverColor: {r: 0.7529412, g: 0.7529412, b: 0.7529412, a: 1} lockAnimation: 0 --- !u!1 &8066158536218230075 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 3354551120703587142} - component: {fileID: 8356353380053642240} - component: {fileID: 6009475418160151572} m_Layer: 5 m_Name: ParentLink m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 0 --- !u!224 &3354551120703587142 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8066158536218230075} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 6408004043003039569} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 10, y: 0} m_SizeDelta: {x: 2, y: 15} m_Pivot: {x: 0.5, y: 1} --- !u!222 &8356353380053642240 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8066158536218230075} m_CullTransparentMesh: 0 --- !u!114 &6009475418160151572 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8066158536218230075} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!1 &8102005044772229725 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 5707076098459111867} - component: {fileID: 1338389430078456493} - component: {fileID: 2723964578057543826} m_Layer: 5 m_Name: ChildLink m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 0 --- !u!224 &5707076098459111867 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8102005044772229725} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 6408004043003039569} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.5} m_AnchorMax: {x: 0, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 10, y: 2} m_Pivot: {x: 1, y: 0.5} --- !u!222 &1338389430078456493 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8102005044772229725} m_CullTransparentMesh: 0 --- !u!114 &2723964578057543826 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8102005044772229725} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 ================================================ FILE: Assets/Resources/Prefabs/ModButton.prefab.meta ================================================ fileFormatVersion: 2 guid: 06a74376a3db7d744b36f7bb52973cf7 PrefabImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/MonsterDuster.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &191580 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 6 m_Component: - component: {fileID: 224315101274109344} - component: {fileID: 19838350} - component: {fileID: 19940184} - component: {fileID: 222421462352157394} - component: {fileID: 114898872901982524} m_Layer: 8 m_Name: MonsterDuster m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!198 &19838350 ParticleSystem: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 191580} serializedVersion: 5 lengthInSec: 5 simulationSpeed: 1 stopAction: 2 looping: 0 prewarm: 0 playOnAwake: 1 useUnscaledTime: 0 autoRandomSeed: 1 useRigidbodyForVelocity: 1 startDelay: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 moveWithTransform: 0 moveWithCustomTransform: {fileID: 0} scalingMode: 1 randomSeed: 0 InitialModule: serializedVersion: 3 enabled: 1 startLifetime: serializedVersion: 2 minMaxState: 0 scalar: 2 minScalar: 5 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 startSpeed: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 5 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 startColor: serializedVersion: 2 minMaxState: 0 minColor: {r: 1, g: 1, b: 1, a: 1} maxColor: {r: 1, g: 1, b: 1, a: 1} maxGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_NumColorKeys: 2 m_NumAlphaKeys: 2 minGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_NumColorKeys: 2 m_NumAlphaKeys: 2 startSize: serializedVersion: 2 minMaxState: 0 scalar: 0.01 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 startSizeY: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 startSizeZ: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 startRotationX: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 startRotationY: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 startRotation: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 randomizeRotationDirection: 0 maxNumParticles: 16383 size3D: 0 rotation3D: 0 gravityModifier: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 ShapeModule: serializedVersion: 5 enabled: 0 type: 4 angle: 33.85 length: 5 boxThickness: {x: 0, y: 0, z: 0} radiusThickness: 1 donutRadius: 0.2 m_Position: {x: 0, y: 0, z: 0} m_Rotation: {x: 0, y: 0, z: 0} m_Scale: {x: 1, y: 1, z: 1} placementMode: 0 m_MeshMaterialIndex: 0 m_MeshNormalOffset: 0 m_Mesh: {fileID: 0} m_MeshRenderer: {fileID: 0} m_SkinnedMeshRenderer: {fileID: 0} m_Sprite: {fileID: 0} m_SpriteRenderer: {fileID: 0} m_UseMeshMaterialIndex: 0 m_UseMeshColors: 1 alignToDirection: 0 m_Texture: {fileID: 0} m_TextureClipChannel: 3 m_TextureClipThreshold: 0 m_TextureUVChannel: 0 m_TextureColorAffectsParticles: 1 m_TextureAlphaAffectsParticles: 1 m_TextureBilinearFiltering: 0 randomDirectionAmount: 1 sphericalDirectionAmount: 0 randomPositionAmount: 0 radius: value: 0.2 mode: 0 spread: 0 speed: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 arc: value: 360 mode: 0 spread: 0 speed: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 EmissionModule: enabled: 0 serializedVersion: 4 rateOverTime: serializedVersion: 2 minMaxState: 0 scalar: 10 minScalar: 10 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 rateOverDistance: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 m_BurstCount: 0 m_Bursts: [] SizeModule: enabled: 0 curve: serializedVersion: 2 minMaxState: 1 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 y: serializedVersion: 2 minMaxState: 1 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 1 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 1 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 z: serializedVersion: 2 minMaxState: 1 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 1 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 1 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 separateAxes: 0 RotationModule: enabled: 0 x: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 y: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 curve: serializedVersion: 2 minMaxState: 0 scalar: 0.7853981 minScalar: 0.7853982 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 separateAxes: 0 ColorModule: enabled: 1 gradient: serializedVersion: 2 minMaxState: 1 minColor: {r: 1, g: 1, b: 1, a: 1} maxColor: {r: 1, g: 1, b: 1, a: 1} maxGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 0} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 48188 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_NumColorKeys: 2 m_NumAlphaKeys: 2 minGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_NumColorKeys: 2 m_NumAlphaKeys: 2 UVModule: enabled: 0 mode: 0 frameOverTime: serializedVersion: 2 minMaxState: 1 scalar: 0.9999 minScalar: 0.9999 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 1 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 1 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 1 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 1 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 startFrame: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 tilesX: 1 tilesY: 1 animationType: 0 rowIndex: 0 cycles: 1 uvChannelMask: -1 flipU: 0 flipV: 0 randomRow: 1 sprites: - sprite: {fileID: 0} VelocityModule: enabled: 1 x: serializedVersion: 2 minMaxState: 2 scalar: 40 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0.0024298842 inSlope: -0.19151238 outSlope: -0.19151238 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 0.93729556 value: -1 inSlope: -2.5760689 outSlope: -2.5760689 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0.0048597683 inSlope: 0.11567845 outSlope: 0.11567845 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 0.95089287 value: 1 inSlope: 3.1368952 outSlope: 3.1368952 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 y: serializedVersion: 2 minMaxState: 2 scalar: 20 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0.34490806 value: 0 inSlope: 0.36789447 outSlope: 0.36789447 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0.34466934 value: 0.020274999 inSlope: 0.049614236 outSlope: 0.049614236 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0.7590544 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 z: serializedVersion: 2 minMaxState: 2 scalar: 1 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 orbitalX: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 orbitalY: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 orbitalZ: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 orbitalOffsetX: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 orbitalOffsetY: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 orbitalOffsetZ: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 radial: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 speedModifier: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 inWorldSpace: 1 InheritVelocityModule: enabled: 0 m_Mode: 0 m_Curve: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 ForceModule: enabled: 0 x: serializedVersion: 2 minMaxState: 2 scalar: 1 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 0.9892473 value: 0.72972965 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 y: serializedVersion: 2 minMaxState: 2 scalar: 1 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 z: serializedVersion: 2 minMaxState: 2 scalar: 1 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 inWorldSpace: 0 randomizePerFrame: 0 ExternalForcesModule: enabled: 0 multiplier: 1 ClampVelocityModule: enabled: 0 x: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 y: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 z: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 magnitude: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 separateAxis: 0 inWorldSpace: 0 multiplyDragByParticleSize: 1 multiplyDragByParticleVelocity: 1 dampen: 1 drag: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 NoiseModule: enabled: 0 strength: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 strengthY: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 strengthZ: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 separateAxes: 0 frequency: 0.5 damping: 1 octaves: 1 octaveMultiplier: 0.5 octaveScale: 2 quality: 2 scrollSpeed: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 remap: serializedVersion: 2 minMaxState: 1 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 1 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 1 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 remapY: serializedVersion: 2 minMaxState: 1 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 1 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 1 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 remapZ: serializedVersion: 2 minMaxState: 1 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 1 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 1 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 remapEnabled: 0 positionAmount: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 rotationAmount: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 sizeAmount: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 SizeBySpeedModule: enabled: 0 curve: serializedVersion: 2 minMaxState: 1 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 y: serializedVersion: 2 minMaxState: 1 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 1 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 1 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 z: serializedVersion: 2 minMaxState: 1 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 1 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 1 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 range: {x: 0, y: 1} separateAxes: 0 RotationBySpeedModule: enabled: 0 x: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 y: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 curve: serializedVersion: 2 minMaxState: 0 scalar: 0.7853982 minScalar: 0.7853982 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 separateAxes: 0 range: {x: 0, y: 1} ColorBySpeedModule: enabled: 0 gradient: serializedVersion: 2 minMaxState: 1 minColor: {r: 1, g: 1, b: 1, a: 1} maxColor: {r: 1, g: 1, b: 1, a: 1} maxGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_NumColorKeys: 2 m_NumAlphaKeys: 2 minGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_NumColorKeys: 2 m_NumAlphaKeys: 2 range: {x: 0, y: 1} CollisionModule: enabled: 0 serializedVersion: 3 type: 0 collisionMode: 0 colliderForce: 0 multiplyColliderForceByParticleSize: 0 multiplyColliderForceByParticleSpeed: 0 multiplyColliderForceByCollisionAngle: 1 plane0: {fileID: 0} plane1: {fileID: 0} plane2: {fileID: 0} plane3: {fileID: 0} plane4: {fileID: 0} plane5: {fileID: 0} m_Dampen: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 m_Bounce: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 m_EnergyLossOnCollision: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minKillSpeed: 0 maxKillSpeed: 10000 radiusScale: 1 collidesWith: serializedVersion: 2 m_Bits: 4294967295 maxCollisionShapes: 256 quality: 0 voxelSize: 0.5 collisionMessages: 0 collidesWithDynamic: 1 interiorCollisions: 1 TriggerModule: enabled: 0 collisionShape0: {fileID: 0} collisionShape1: {fileID: 0} collisionShape2: {fileID: 0} collisionShape3: {fileID: 0} collisionShape4: {fileID: 0} collisionShape5: {fileID: 0} inside: 1 outside: 0 enter: 0 exit: 0 radiusScale: 1 SubModule: serializedVersion: 2 enabled: 0 subEmitters: - serializedVersion: 2 emitter: {fileID: 0} type: 0 properties: 0 LightsModule: enabled: 0 ratio: 0 light: {fileID: 0} randomDistribution: 1 color: 1 range: 1 intensity: 1 rangeCurve: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 intensityCurve: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 maxLights: 20 TrailModule: enabled: 0 mode: 0 ratio: 1 lifetime: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minVertexDistance: 0.2 textureMode: 0 ribbonCount: 1 worldSpace: 0 dieWithParticles: 1 sizeAffectsWidth: 1 sizeAffectsLifetime: 0 inheritParticleColor: 1 generateLightingData: 0 splitSubEmitterRibbons: 0 colorOverLifetime: serializedVersion: 2 minMaxState: 0 minColor: {r: 1, g: 1, b: 1, a: 1} maxColor: {r: 1, g: 1, b: 1, a: 1} maxGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_NumColorKeys: 2 m_NumAlphaKeys: 2 minGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_NumColorKeys: 2 m_NumAlphaKeys: 2 widthOverTrail: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 colorOverTrail: serializedVersion: 2 minMaxState: 0 minColor: {r: 1, g: 1, b: 1, a: 1} maxColor: {r: 1, g: 1, b: 1, a: 1} maxGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_NumColorKeys: 2 m_NumAlphaKeys: 2 minGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_NumColorKeys: 2 m_NumAlphaKeys: 2 CustomDataModule: enabled: 0 mode0: 0 vectorComponentCount0: 4 color0: serializedVersion: 2 minMaxState: 0 minColor: {r: 1, g: 1, b: 1, a: 1} maxColor: {r: 1, g: 1, b: 1, a: 1} maxGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_NumColorKeys: 2 m_NumAlphaKeys: 2 minGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_NumColorKeys: 2 m_NumAlphaKeys: 2 colorLabel0: Color vector0_0: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 vectorLabel0_0: X vector0_1: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 vectorLabel0_1: Y vector0_2: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 vectorLabel0_2: Z vector0_3: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 vectorLabel0_3: W mode1: 0 vectorComponentCount1: 4 color1: serializedVersion: 2 minMaxState: 0 minColor: {r: 1, g: 1, b: 1, a: 1} maxColor: {r: 1, g: 1, b: 1, a: 1} maxGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_NumColorKeys: 2 m_NumAlphaKeys: 2 minGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_NumColorKeys: 2 m_NumAlphaKeys: 2 colorLabel1: Color vector1_0: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 vectorLabel1_0: X vector1_1: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 vectorLabel1_1: Y vector1_2: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 vectorLabel1_2: Z vector1_3: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 vectorLabel1_3: W --- !u!199 &19940184 ParticleSystemRenderer: serializedVersion: 6 m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 191580} m_Enabled: 0 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_Materials: - {fileID: 2100000, guid: 583fff0a4349fe547abec1baeff2d869, type: 2} - {fileID: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 1513848731 m_SortingLayer: 1 m_SortingOrder: 0 m_RenderMode: 0 m_SortMode: 0 m_MinParticleSize: 0 m_MaxParticleSize: 0.1 m_CameraVelocityScale: 0 m_VelocityScale: 0 m_LengthScale: 2 m_SortingFudge: 0 m_NormalDirection: 1 m_RenderAlignment: 0 m_Pivot: {x: 0, y: 0, z: 0} m_UseCustomVertexStreams: 0 m_EnableGPUInstancing: 0 m_ApplyActiveColorSpace: 0 m_VertexStreams: 0001030405 m_Mesh: {fileID: 0} m_Mesh1: {fileID: 0} m_Mesh2: {fileID: 0} m_Mesh3: {fileID: 0} m_MaskInteraction: 0 --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_SourcePrefab: {fileID: 0} m_RootGameObject: {fileID: 191580} m_IsPrefabAsset: 1 --- !u!114 &114898872901982524 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 191580} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 3a53b2c77c3ee42c996af863e49168f6, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 0 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null _material: {fileID: 2100000, guid: 583fff0a4349fe547abec1baeff2d869, type: 2} _trailsMaterial: {fileID: 0} --- !u!222 &222421462352157394 CanvasRenderer: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 191580} m_CullTransparentMesh: 0 --- !u!224 &224315101274109344 RectTransform: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 191580} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} ================================================ FILE: Assets/Resources/Prefabs/MonsterDuster.prefab.meta ================================================ fileFormatVersion: 2 guid: 6bb0eb7beeeea9541a8577fb18eb237c timeCreated: 1447650287 licenseType: Free NativeFormatImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/MonsterSpareParticleSys.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &189486 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 6 m_Component: - component: {fileID: 413886} - component: {fileID: 19829294} - component: {fileID: 19916744} - component: {fileID: 11483042} m_Layer: 0 m_Name: MonsterSpareParticleSys m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &413886 Transform: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 189486} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 320, y: 240, z: 100} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &11483042 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 189486} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5b6761159c8f6224a8a895abea10dd25, type: 3} m_Name: m_EditorClassIdentifier: SetNativeSize: 0 SpritePath: UI/Battle/spr_dustcloud_1 Loop: 0 SoundPath: done: 0 --- !u!198 &19829294 ParticleSystem: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 189486} serializedVersion: 5 lengthInSec: 1.1 simulationSpeed: 1 stopAction: 2 looping: 0 prewarm: 0 playOnAwake: 1 useUnscaledTime: 0 autoRandomSeed: 1 useRigidbodyForVelocity: 1 startDelay: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 moveWithTransform: 1 moveWithCustomTransform: {fileID: 0} scalingMode: 2 randomSeed: 0 InitialModule: serializedVersion: 3 enabled: 1 startLifetime: serializedVersion: 2 minMaxState: 0 scalar: 0.8 minScalar: 5 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 startSpeed: serializedVersion: 2 minMaxState: 3 scalar: 120 minScalar: 50 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0.41666666 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 startColor: serializedVersion: 2 minMaxState: 0 minColor: {r: 1, g: 1, b: 1, a: 1} maxColor: {r: 1, g: 1, b: 1, a: 1} maxGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_NumColorKeys: 2 m_NumAlphaKeys: 2 minGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_NumColorKeys: 2 m_NumAlphaKeys: 2 startSize: serializedVersion: 2 minMaxState: 3 scalar: 30 minScalar: 15 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0.5 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 startSizeY: serializedVersion: 2 minMaxState: 3 scalar: 1 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 startSizeZ: serializedVersion: 2 minMaxState: 3 scalar: 1 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 startRotationX: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 startRotationY: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 startRotation: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 randomizeRotationDirection: 0 maxNumParticles: 100 size3D: 0 rotation3D: 0 gravityModifier: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 ShapeModule: serializedVersion: 5 enabled: 1 type: 10 angle: 25 length: 5 boxThickness: {x: 0, y: 0, z: 0} radiusThickness: 0 donutRadius: 0.2 m_Position: {x: 0, y: 0, z: 0} m_Rotation: {x: 0, y: 0, z: 0} m_Scale: {x: 1, y: 1, z: 1} placementMode: 0 m_MeshMaterialIndex: 0 m_MeshNormalOffset: 0 m_Mesh: {fileID: 0} m_MeshRenderer: {fileID: 0} m_SkinnedMeshRenderer: {fileID: 0} m_Sprite: {fileID: 0} m_SpriteRenderer: {fileID: 0} m_UseMeshMaterialIndex: 0 m_UseMeshColors: 1 alignToDirection: 0 m_Texture: {fileID: 0} m_TextureClipChannel: 3 m_TextureClipThreshold: 0 m_TextureUVChannel: 0 m_TextureColorAffectsParticles: 1 m_TextureAlphaAffectsParticles: 1 m_TextureBilinearFiltering: 0 randomDirectionAmount: 0 sphericalDirectionAmount: 0 randomPositionAmount: 0 radius: value: 10 mode: 0 spread: 0 speed: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 arc: value: 360 mode: 0 spread: 0 speed: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 EmissionModule: enabled: 1 serializedVersion: 4 rateOverTime: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 10 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 rateOverDistance: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 m_BurstCount: 0 m_Bursts: [] SizeModule: enabled: 0 curve: serializedVersion: 2 minMaxState: 1 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 y: serializedVersion: 2 minMaxState: 1 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 z: serializedVersion: 2 minMaxState: 1 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 separateAxes: 0 RotationModule: enabled: 0 x: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 y: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 curve: serializedVersion: 2 minMaxState: 0 scalar: 0.7853982 minScalar: 0.7853982 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 separateAxes: 0 ColorModule: enabled: 1 gradient: serializedVersion: 2 minMaxState: 1 minColor: {r: 1, g: 1, b: 1, a: 1} maxColor: {r: 1, g: 1, b: 1, a: 1} maxGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 0} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 17733 atime1: 49922 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_NumColorKeys: 2 m_NumAlphaKeys: 2 minGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_NumColorKeys: 2 m_NumAlphaKeys: 2 UVModule: enabled: 0 mode: 0 frameOverTime: serializedVersion: 2 minMaxState: 1 scalar: 0.9999 minScalar: 0.9999 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 1 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 1 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 1 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 1 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 startFrame: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 tilesX: 1 tilesY: 1 animationType: 0 rowIndex: 0 cycles: 1 uvChannelMask: -1 flipU: 0 flipV: 0 randomRow: 1 sprites: - sprite: {fileID: 0} VelocityModule: enabled: 0 x: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 y: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 z: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 orbitalX: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 orbitalY: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 orbitalZ: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 orbitalOffsetX: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 orbitalOffsetY: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 orbitalOffsetZ: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 radial: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 speedModifier: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 inWorldSpace: 0 InheritVelocityModule: enabled: 0 m_Mode: 0 m_Curve: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 ForceModule: enabled: 0 x: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 y: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 z: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 inWorldSpace: 0 randomizePerFrame: 0 ExternalForcesModule: enabled: 0 multiplier: 1 ClampVelocityModule: enabled: 0 x: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 y: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 z: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 magnitude: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 separateAxis: 0 inWorldSpace: 0 multiplyDragByParticleSize: 1 multiplyDragByParticleVelocity: 1 dampen: 1 drag: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 NoiseModule: enabled: 0 strength: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 strengthY: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 strengthZ: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 separateAxes: 0 frequency: 0.5 damping: 1 octaves: 1 octaveMultiplier: 0.5 octaveScale: 2 quality: 2 scrollSpeed: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 remap: serializedVersion: 2 minMaxState: 1 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: -1 inSlope: 0 outSlope: 2 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 2 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 remapY: serializedVersion: 2 minMaxState: 1 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: -1 inSlope: 0 outSlope: 2 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 2 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 remapZ: serializedVersion: 2 minMaxState: 1 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: -1 inSlope: 0 outSlope: 2 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 2 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 remapEnabled: 0 positionAmount: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 rotationAmount: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 sizeAmount: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 SizeBySpeedModule: enabled: 0 curve: serializedVersion: 2 minMaxState: 1 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 y: serializedVersion: 2 minMaxState: 1 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 z: serializedVersion: 2 minMaxState: 1 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 range: {x: 0, y: 1} separateAxes: 0 RotationBySpeedModule: enabled: 0 x: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 y: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 curve: serializedVersion: 2 minMaxState: 0 scalar: 0.7853982 minScalar: 0.7853982 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 separateAxes: 0 range: {x: 0, y: 1} ColorBySpeedModule: enabled: 0 gradient: serializedVersion: 2 minMaxState: 1 minColor: {r: 1, g: 1, b: 1, a: 1} maxColor: {r: 1, g: 1, b: 1, a: 1} maxGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_NumColorKeys: 2 m_NumAlphaKeys: 2 minGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_NumColorKeys: 2 m_NumAlphaKeys: 2 range: {x: 0, y: 1} CollisionModule: enabled: 0 serializedVersion: 3 type: 0 collisionMode: 0 colliderForce: 0 multiplyColliderForceByParticleSize: 0 multiplyColliderForceByParticleSpeed: 0 multiplyColliderForceByCollisionAngle: 1 plane0: {fileID: 0} plane1: {fileID: 0} plane2: {fileID: 0} plane3: {fileID: 0} plane4: {fileID: 0} plane5: {fileID: 0} m_Dampen: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 m_Bounce: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 m_EnergyLossOnCollision: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minKillSpeed: 0 maxKillSpeed: 10000 radiusScale: 1 collidesWith: serializedVersion: 2 m_Bits: 4294967295 maxCollisionShapes: 256 quality: 0 voxelSize: 0.5 collisionMessages: 0 collidesWithDynamic: 1 interiorCollisions: 1 TriggerModule: enabled: 0 collisionShape0: {fileID: 0} collisionShape1: {fileID: 0} collisionShape2: {fileID: 0} collisionShape3: {fileID: 0} collisionShape4: {fileID: 0} collisionShape5: {fileID: 0} inside: 1 outside: 0 enter: 0 exit: 0 radiusScale: 1 SubModule: serializedVersion: 2 enabled: 0 subEmitters: - serializedVersion: 2 emitter: {fileID: 0} type: 0 properties: 0 LightsModule: enabled: 0 ratio: 0 light: {fileID: 0} randomDistribution: 1 color: 1 range: 1 intensity: 1 rangeCurve: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 intensityCurve: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 maxLights: 20 TrailModule: enabled: 0 mode: 0 ratio: 1 lifetime: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minVertexDistance: 0.2 textureMode: 0 ribbonCount: 1 worldSpace: 0 dieWithParticles: 1 sizeAffectsWidth: 1 sizeAffectsLifetime: 0 inheritParticleColor: 1 generateLightingData: 0 splitSubEmitterRibbons: 0 colorOverLifetime: serializedVersion: 2 minMaxState: 0 minColor: {r: 1, g: 1, b: 1, a: 1} maxColor: {r: 1, g: 1, b: 1, a: 1} maxGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_NumColorKeys: 2 m_NumAlphaKeys: 2 minGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_NumColorKeys: 2 m_NumAlphaKeys: 2 widthOverTrail: serializedVersion: 2 minMaxState: 0 scalar: 1 minScalar: 1 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 colorOverTrail: serializedVersion: 2 minMaxState: 0 minColor: {r: 1, g: 1, b: 1, a: 1} maxColor: {r: 1, g: 1, b: 1, a: 1} maxGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_NumColorKeys: 2 m_NumAlphaKeys: 2 minGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_NumColorKeys: 2 m_NumAlphaKeys: 2 CustomDataModule: enabled: 0 mode0: 0 vectorComponentCount0: 4 color0: serializedVersion: 2 minMaxState: 0 minColor: {r: 1, g: 1, b: 1, a: 1} maxColor: {r: 1, g: 1, b: 1, a: 1} maxGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_NumColorKeys: 2 m_NumAlphaKeys: 2 minGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_NumColorKeys: 2 m_NumAlphaKeys: 2 colorLabel0: Color vector0_0: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 vectorLabel0_0: X vector0_1: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 vectorLabel0_1: Y vector0_2: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 vectorLabel0_2: Z vector0_3: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 vectorLabel0_3: W mode1: 0 vectorComponentCount1: 4 color1: serializedVersion: 2 minMaxState: 0 minColor: {r: 1, g: 1, b: 1, a: 1} maxColor: {r: 1, g: 1, b: 1, a: 1} maxGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_NumColorKeys: 2 m_NumAlphaKeys: 2 minGradient: serializedVersion: 2 key0: {r: 1, g: 1, b: 1, a: 1} key1: {r: 1, g: 1, b: 1, a: 1} key2: {r: 0, g: 0, b: 0, a: 0} key3: {r: 0, g: 0, b: 0, a: 0} key4: {r: 0, g: 0, b: 0, a: 0} key5: {r: 0, g: 0, b: 0, a: 0} key6: {r: 0, g: 0, b: 0, a: 0} key7: {r: 0, g: 0, b: 0, a: 0} ctime0: 0 ctime1: 65535 ctime2: 0 ctime3: 0 ctime4: 0 ctime5: 0 ctime6: 0 ctime7: 0 atime0: 0 atime1: 65535 atime2: 0 atime3: 0 atime4: 0 atime5: 0 atime6: 0 atime7: 0 m_Mode: 0 m_NumColorKeys: 2 m_NumAlphaKeys: 2 colorLabel1: Color vector1_0: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 vectorLabel1_0: X vector1_1: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 vectorLabel1_1: Y vector1_2: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 vectorLabel1_2: Z vector1_3: serializedVersion: 2 minMaxState: 0 scalar: 0 minScalar: 0 maxCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 minCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 vectorLabel1_3: W --- !u!199 &19916744 ParticleSystemRenderer: serializedVersion: 6 m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 189486} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_Materials: - {fileID: 2100000, guid: 583fff0a4349fe547abec1baeff2d869, type: 2} - {fileID: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 1513848731 m_SortingLayer: 1 m_SortingOrder: 0 m_RenderMode: 0 m_SortMode: 0 m_MinParticleSize: 0 m_MaxParticleSize: 100 m_CameraVelocityScale: 0 m_VelocityScale: 0 m_LengthScale: 2 m_SortingFudge: 0 m_NormalDirection: 1 m_RenderAlignment: 0 m_Pivot: {x: 0, y: 0, z: 0} m_UseCustomVertexStreams: 0 m_EnableGPUInstancing: 0 m_ApplyActiveColorSpace: 0 m_VertexStreams: 0001030405 m_Mesh: {fileID: 0} m_Mesh1: {fileID: 0} m_Mesh2: {fileID: 0} m_Mesh3: {fileID: 0} m_MaskInteraction: 0 --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 0} propertyPath: InitialModule.startSize.maxCurve.m_Curve.Array.size value: 1 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: InitialModule.startSize.minCurve.m_Curve.Array.size value: 1 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: InitialModule.startSpeed.maxCurve.m_Curve.Array.size value: 1 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: InitialModule.startSpeed.minCurve.m_Curve.Array.size value: 1 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: playOnAwake value: 1 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: m_MaxParticleSize value: 1 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: ShapeModule.radius.value value: 1 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: ShapeModule.type value: 10 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: InitialModule.startSize.scalar value: 30 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: EmissionModule.enabled value: 0 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: moveWithTransform value: 0 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: InitialModule.maxNumParticles value: 100 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: lengthInSec value: 1.10000002 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: InitialModule.startLifetime.scalar value: .800000012 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: InitialModule.startSpeed.maxCurve.m_Curve.Array.data[1].time value: 1 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: InitialModule.startSpeed.maxCurve.m_Curve.Array.data[1].value value: 1 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: InitialModule.startSpeed.minMaxState value: 3 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: InitialModule.startSpeed.maxCurve.m_Curve.Array.data[0].value value: 1 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: InitialModule.startSpeed.minCurve.m_Curve.Array.data[1].time value: 1 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: InitialModule.startSpeed.minCurve.m_Curve.Array.data[0].value value: .416666657 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: InitialModule.startSpeed.scalar value: 120 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: InitialModule.startSize.maxCurve.m_Curve.Array.data[1].time value: 1 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: InitialModule.startSize.maxCurve.m_Curve.Array.data[1].value value: 1 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: InitialModule.startSize.minCurve.m_Curve.Array.data[1].time value: 1 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: InitialModule.startSize.minMaxState value: 3 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: InitialModule.startSize.minCurve.m_Curve.Array.data[0].value value: .5 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: InitialModule.startSize.maxCurve.m_Curve.Array.data[0].value value: 1 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: m_Materials.Array.data[0] value: objectReference: {fileID: 2100000, guid: 583fff0a4349fe547abec1baeff2d869, type: 2} - target: {fileID: 0} propertyPath: SpritePath value: UI/Battle/spr_dustcloud_1 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: ShapeModule.radiusThickness value: 0.0000 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: InitialModule.startSpeed.minScalar value: 50.0000 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: InitialModule.startSize.minScalar value: 15.0000 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 0} m_RootGameObject: {fileID: 189486} m_IsPrefabAsset: 1 ================================================ FILE: Assets/Resources/Prefabs/MonsterSpareParticleSys.prefab.meta ================================================ fileFormatVersion: 2 guid: 9cd9a75e9466a4849a04b46e6fc92c2e timeCreated: 1449684782 licenseType: Free NativeFormatImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/Player.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &129266 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 6 m_Component: - component: {fileID: 22441604} - component: {fileID: 21207398} - component: {fileID: 11463766} - component: {fileID: 6156472} - component: {fileID: 8202760} - component: {fileID: 5003194} - component: {fileID: 11445154} - component: {fileID: 114497914672316882} - component: {fileID: 114937843077718580} m_Layer: 21 m_Name: Player m_TagString: Player m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &130224 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 6 m_Component: - component: {fileID: 465484} - component: {fileID: 21279622} m_Layer: 21 m_Name: EncounterBubble m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &465484 Transform: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 130224} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0.41, z: 0} m_LocalScale: {x: 1.5, y: 1.5, z: 1} m_Children: [] m_Father: {fileID: 22441604} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!50 &5003194 Rigidbody2D: serializedVersion: 4 m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 129266} m_BodyType: 0 m_Simulated: 1 m_UseFullKinematicContacts: 0 m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_Material: {fileID: 0} m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 1 m_Constraints: 4 --- !u!61 &6156472 BoxCollider2D: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 129266} m_Enabled: 0 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: -0.165} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 0.22, y: 0.25} m_EdgeRadius: 0 --- !u!82 &8202760 AudioSource: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 129266} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 1 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 500 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 --- !u!114 &11445154 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 129266} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 748e7f2c60fd0194f942eef4ac4f63d3, type: 3} m_Name: m_EditorClassIdentifier: playerIndex: -1 playerZ: -1 autolinebreakstate: 0 revived: 0 hasRevived: 0 reviveTextSet: 0 musicBefore: {fileID: 0} music: {fileID: 0} --- !u!114 &11463766 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 129266} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f8cf8619ec337c54ea4e60411b51f440, type: 3} m_Name: m_EditorClassIdentifier: BlockingLayer: 0 EventLayer: 0 forcedMove: 0 speed: 3 firstTime: 0 inBattleAnim: 0 forceNoAction: 0 menuRunning: 0000000000 lastMove: {x: 0, y: 0} cameraShift: {x: 0, y: 0} backgroundSize: {x: 640, y: 480} PlayerPos: {fileID: 0} utHeart: {fileID: 0} textmgr: {fileID: 0} parallaxes: [] isMoving: 0 isMovingWaitEnd: 0 isBeingMoved: 0 isRotatingWaitEnd: 0 UIPos: 0 --- !u!212 &21207398 SpriteRenderer: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 129266} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_Materials: - {fileID: 2100000, guid: 583fff0a4349fe547abec1baeff2d869, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: f4c71df80ebf71e4eac70da1108df32a, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 0 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!212 &21279622 SpriteRenderer: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 130224} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 4331a6c4d7daa9c47a6e8065e70741fe, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 0} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!224 &22441604 RectTransform: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 129266} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -20} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: - {fileID: 465484} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0} m_AnchorMax: {x: 0.5, y: 0} m_AnchoredPosition: {x: 320, y: 240} m_SizeDelta: {x: 0.38, y: 0.58} m_Pivot: {x: 0.5, y: 0.5} --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_SourcePrefab: {fileID: 0} m_RootGameObject: {fileID: 129266} m_IsPrefabAsset: 1 --- !u!114 &114497914672316882 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 129266} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114937843077718580 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 129266} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 44f4eb1dd5662834c949b35a8b28394c, type: 3} m_Name: m_EditorClassIdentifier: movementDirection: 0 beginAnim: StopDown specialHeader: anims: - name: MovingDown anims: FriskUT/0, FriskUT/1, FriskUT/2, FriskUT/3 transitionTime: 0.25 - name: MovingLeft anims: FriskUT/4, FriskUT/5, FriskUT/6, FriskUT/7 transitionTime: 0.25 - name: MovingRight anims: FriskUT/8, FriskUT/9, FriskUT/10, FriskUT/11 transitionTime: 0.25 - name: MovingUp anims: FriskUT/12, FriskUT/13, FriskUT/14, FriskUT/15 transitionTime: 0.25 - name: StopDown anims: FriskUT/1, FriskUT/3 transitionTime: 1 - name: StopLeft anims: FriskUT/5, FriskUT/7 transitionTime: 1 - name: StopRight anims: FriskUT/9, FriskUT/11 transitionTime: 1 - name: StopUp anims: FriskUT/13, FriskUT/15 transitionTime: 1 - name: CharaMovingDown anims: CharaOW/0, CharaOW/1, CharaOW/2, CharaOW/3 transitionTime: 0.25 - name: CharaMovingLeft anims: CharaOW/4, CharaOW/5, CharaOW/6, CharaOW/7 transitionTime: 0.25 - name: CharaMovingRight anims: CharaOW/8, CharaOW/9, CharaOW/10, CharaOW/11 transitionTime: 0.25 - name: CharaMovingUp anims: CharaOW/12, CharaOW/13, CharaOW/14, CharaOW/15 transitionTime: 0.25 - name: CharaStopDown anims: CharaOW/1, CharaOW/3 transitionTime: 1 - name: CharaStopLeft anims: CharaOW/5, CharaOW/7 transitionTime: 1 - name: CharaStopRight anims: CharaOW/9, CharaOW/11 transitionTime: 1 - name: CharaStopUp anims: CharaOW/13, CharaOW/15 transitionTime: 1 - name: MKMovingDown anims: MonsterKidOW/0, MonsterKidOW/1, MonsterKidOW/2, MonsterKidOW/3 transitionTime: 0.25 - name: MKMovingLeft anims: MonsterKidOW/4, MonsterKidOW/5, MonsterKidOW/6, MonsterKidOW/7 transitionTime: 0.25 - name: MKMovingRight anims: MonsterKidOW/8, MonsterKidOW/9, MonsterKidOW/10, MonsterKidOW/11 transitionTime: 0.25 - name: MKMovingUp anims: MonsterKidOW/12, MonsterKidOW/13, MonsterKidOW/14, MonsterKidOW/15 transitionTime: 0.25 - name: MKStopDown anims: MonsterKidOW/1, MonsterKidOW/3 transitionTime: 1 - name: MKStopLeft anims: MonsterKidOW/5, MonsterKidOW/7 transitionTime: 1 - name: MKStopRight anims: MonsterKidOW/9, MonsterKidOW/11 transitionTime: 1 - name: MKStopUp anims: MonsterKidOW/13, MonsterKidOW/15 transitionTime: 1 - name: CharaTadMovingDown anims: CharaTadOW/0, CharaTadOW/1, CharaTadOW/2, CharaTadOW/3 transitionTime: 0.25 - name: CharaTadMovingLeft anims: CharaTadOW/4, CharaTadOW/5, CharaTadOW/6, CharaTadOW/7 transitionTime: 0.25 - name: CharaTadMovingRight anims: CharaTadOW/8, CharaTadOW/9, CharaTadOW/10, CharaTadOW/11 transitionTime: 0.25 - name: CharaTadMovingUp anims: CharaTadOW/12, CharaTadOW/13, CharaTadOW/14, CharaTadOW/15 transitionTime: 0.25 - name: CharaTadStopDown anims: CharaTadOW/1, CharaTadOW/3 transitionTime: 1 - name: CharaTadStopLeft anims: CharaTadOW/5, CharaTadOW/7 transitionTime: 1 - name: CharaTadStopRight anims: CharaTadOW/9, CharaTadOW/11 transitionTime: 1 - name: CharaTadStopUp anims: CharaTadOW/13, CharaTadOW/15 transitionTime: 1 - name: AsrielMovingDown anims: AsrielOW/0, AsrielOW/1, AsrielOW/2, AsrielOW/3 transitionTime: 0.25 - name: AsrielMovingLeft anims: AsrielOW/4, AsrielOW/5, AsrielOW/6, AsrielOW/7 transitionTime: 0.25 - name: AsrielMovingRight anims: AsrielOW/8, AsrielOW/9, AsrielOW/10, AsrielOW/11 transitionTime: 0.25 - name: AsrielMovingUp anims: AsrielOW/12, AsrielOW/13, AsrielOW/14, AsrielOW/15 transitionTime: 0.25 - name: AsrielStopDown anims: AsrielOW/1, AsrielOW/3 transitionTime: 1 - name: AsrielStopLeft anims: AsrielOW/5, AsrielOW/7 transitionTime: 1 - name: AsrielStopRight anims: AsrielOW/9, AsrielOW/11 transitionTime: 1 - name: AsrielStopUp anims: AsrielOW/13, AsrielOW/15 transitionTime: 1 ================================================ FILE: Assets/Resources/Prefabs/Player.prefab.meta ================================================ fileFormatVersion: 2 guid: e40c2f31a47b71446a21f2839cf50317 timeCreated: 1461111614 licenseType: Free NativeFormatImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/Retromode Warning.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_SourcePrefab: {fileID: 0} m_RootGameObject: {fileID: 1761128713592740} m_IsPrefabAsset: 1 --- !u!1 &1761128713592740 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 6 m_Component: - component: {fileID: 224140591129239992} - component: {fileID: 222292674040927692} - component: {fileID: 114635621478580290} - component: {fileID: 114580418672182794} - component: {fileID: 61017801693189598} m_Layer: 5 m_Name: Retromode Warning m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!61 &61017801693189598 BoxCollider2D: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1761128713592740} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 94.5} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 250, y: 189} m_EdgeRadius: 0 --- !u!114 &114580418672182794 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1761128713592740} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: ff9d9366a237ec442b51866e75d917b5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114635621478580290 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1761128713592740} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 21300000, guid: 0a848aab6ba7f564ca22df0959b70e3c, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!222 &222292674040927692 CanvasRenderer: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1761128713592740} m_CullTransparentMesh: 0 --- !u!224 &224140591129239992 RectTransform: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1761128713592740} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0} m_AnchorMax: {x: 0.5, y: 0} m_AnchoredPosition: {x: 0, y: -140} m_SizeDelta: {x: 250, y: 189} m_Pivot: {x: 0.5, y: 0} ================================================ FILE: Assets/Resources/Prefabs/Retromode Warning.prefab.meta ================================================ fileFormatVersion: 2 guid: 966f7de4bcc923b419ada0e7a348eab3 NativeFormatImporter: externalObjects: {} mainObjectFileID: 100100000 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/Save.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &174636 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 6 m_Component: - component: {fileID: 22460244} - component: {fileID: 21225924} - component: {fileID: 5067044} - component: {fileID: 6135674} - component: {fileID: 11419924} - component: {fileID: 114215209806099100} m_Layer: 21 m_Name: Save m_TagString: Event m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!50 &5067044 Rigidbody2D: serializedVersion: 4 m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 174636} m_BodyType: 1 m_Simulated: 1 m_UseFullKinematicContacts: 0 m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0.05 m_GravityScale: 1 m_Material: {fileID: 0} m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 0 --- !u!61 &6135674 BoxCollider2D: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 174636} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0.19} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0.5, y: 0} oldSize: {x: 0.4, y: 0.38} newSize: {x: 1, y: 1} adaptiveTilingThreshold: 0.5 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 0.4, y: 0.38} m_EdgeRadius: 0 --- !u!114 &11419924 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 174636} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 846d0d1a9b9e1c14884c79473a1f1d14, type: 3} m_Name: m_EditorClassIdentifier: scriptToLoad: SaveTest actualPage: 1 eventTriggers: - {x: 0, y: 0} - {x: 1, y: 0} moveSpeed: 1 isMovingWaitEnd: 0 isRotatingWaitEnd: 0 --- !u!212 &21225924 SpriteRenderer: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 174636} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: fe0fb303d866c974ab18bdf7ecff6ba4, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!224 &22460244 RectTransform: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 174636} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 200, y: 1000} m_SizeDelta: {x: 0.4, y: 0.38} m_Pivot: {x: 0.5, y: 0} --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_SourcePrefab: {fileID: 0} m_RootGameObject: {fileID: 174636} m_IsPrefabAsset: 1 --- !u!114 &114215209806099100 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 174636} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: ================================================ FILE: Assets/Resources/Prefabs/Save.prefab.meta ================================================ fileFormatVersion: 2 guid: eadfbd6437c330a4e8538c4969ddbb0d timeCreated: 1477186999 licenseType: Free NativeFormatImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/Shader.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &173480 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22469796} - 64: {fileID: 6407882} - 33: {fileID: 3331958} - 23: {fileID: 2390740} m_Layer: 5 m_Name: Shader m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!23 &2390740 MeshRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 173480} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_Materials: - {fileID: 2100000, guid: 9f0b6e84d3a644f45bdb6ea72dae670f, type: 2} m_SubsetIndices: m_StaticBatchRoot: {fileID: 0} m_UseLightProbes: 0 m_ReflectionProbeUsage: 3 m_ProbeAnchor: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingOrder: 0 --- !u!33 &3331958 MeshFilter: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 173480} m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} --- !u!64 &6407882 MeshCollider: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 173480} m_Material: {fileID: 0} m_IsTrigger: 0 m_Enabled: 1 serializedVersion: 2 m_Convex: 0 m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} --- !u!224 &22469796 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 173480} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 575, y: 140} m_Pivot: {x: 0.5, y: 0.5} --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_ParentPrefab: {fileID: 0} m_RootGameObject: {fileID: 173480} m_IsPrefabParent: 1 ================================================ FILE: Assets/Resources/Prefabs/Shader.prefab.meta ================================================ fileFormatVersion: 2 guid: f16fff769f9b766469698ea001fad38b timeCreated: 1472124476 licenseType: Free NativeFormatImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/SpeButton.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &116354 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22438444} - 222: {fileID: 22255556} - 114: {fileID: 11457482} - 114: {fileID: 11489858} m_Layer: 5 m_Name: SpeButton m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!1 &178490 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22485852} - 222: {fileID: 22247004} - 114: {fileID: 11426784} m_Layer: 5 m_Name: Text m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &11426784 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 178490} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Button --- !u!114 &11457482 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 116354} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11489858 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 116354} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1392445389, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 1 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 11457482} m_OnClick: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null --- !u!222 &22247004 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 178490} --- !u!222 &22255556 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 116354} --- !u!224 &22438444 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 116354} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: - {fileID: 22485852} m_Father: {fileID: 0} m_RootOrder: 0 m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 300, y: 30} m_Pivot: {x: 0, y: 1} --- !u!224 &22485852 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 178490} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 22438444} m_RootOrder: 0 m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_ParentPrefab: {fileID: 0} m_RootGameObject: {fileID: 116354} m_IsPrefabParent: 1 ================================================ FILE: Assets/Resources/Prefabs/SpeButton.prefab.meta ================================================ fileFormatVersion: 2 guid: 6d832fd2b06aaf844a565efdcba6a566 timeCreated: 1478969950 licenseType: Free NativeFormatImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/StationaryMiss.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &134706 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22416278} - 114: {fileID: 11434100} - 114: {fileID: 11468016} m_Layer: 5 m_Name: StationaryMiss m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &11434100 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 134706} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &11468016 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 134706} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 35a9599780d5954468ee106320acb996, type: 3} m_Name: m_EditorClassIdentifier: --- !u!224 &22416278 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 134706} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_AnchorMin: {x: .5, y: .5} m_AnchorMax: {x: .5, y: .5} m_AnchoredPosition: {x: 0, y: 193.529999} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: .5, y: .5} --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_ParentPrefab: {fileID: 0} m_RootGameObject: {fileID: 134706} m_IsPrefabParent: 1 ================================================ FILE: Assets/Resources/Prefabs/StationaryMiss.prefab.meta ================================================ fileFormatVersion: 2 guid: e617ac1e78ce6c445bbeae12ee4abb26 timeCreated: 1450723010 licenseType: Free NativeFormatImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/TP On-the-fly.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_ParentPrefab: {fileID: 0} m_RootGameObject: {fileID: 1428262062491828} m_IsPrefabParent: 1 --- !u!1 &1428262062491828 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 5 m_Component: - component: {fileID: 4610734007625776} - component: {fileID: 68220811906642222} - component: {fileID: 50989000373783288} - component: {fileID: 114694226796833042} m_Layer: 0 m_Name: TP On-the-fly m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &4610734007625776 Transform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1428262062491828} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0.125} m_LocalScale: {x: 2, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!50 &50989000373783288 Rigidbody2D: serializedVersion: 4 m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1428262062491828} m_BodyType: 1 m_Simulated: 1 m_UseFullKinematicContacts: 0 m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_Material: {fileID: 0} m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 4 --- !u!68 &68220811906642222 EdgeCollider2D: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1428262062491828} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 1 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: -0.5, y: 0} - {x: 0.5, y: 0} --- !u!114 &114694226796833042 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1428262062491828} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: cafce2c3f7e465f478d7b302ab1b8236, type: 3} m_Name: m_EditorClassIdentifier: sceneName: test position: {x: 60, y: 880} direction: 6 activated: 0 ================================================ FILE: Assets/Resources/Prefabs/TP On-the-fly.prefab.meta ================================================ fileFormatVersion: 2 guid: 56be7ef9a328b224d8cc7fc84dfe3d16 timeCreated: 1496901258 licenseType: Free NativeFormatImporter: mainObjectFileID: -1 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/TextManager OW.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &133404 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22415740} - 114: {fileID: 11440668} - 82: {fileID: 8254258} - 114: {fileID: 11454028} m_Layer: 0 m_Name: TextManager OW m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!82 &8254258 AudioSource: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 133404} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 - time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 spreadCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 --- !u!114 &11440668 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 133404} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: {fileID: 0} letters: [] currentLine: 0 currentReferenceCharacter: 0 offset: {x: 0, y: 0} overworld: 1 blockSkip: 0 hidden: 0 skipNowIfBlocked: 0 --- !u!114 &11454028 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 133404} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 0d40d86c0aa041e4a9cb93f4989d86b3, type: 3} m_Name: m_EditorClassIdentifier: weirdBackspaceShift: 0 --- !u!224 &22415740 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 133404} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -160, y: 184} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_ParentPrefab: {fileID: 0} m_RootGameObject: {fileID: 133404} m_IsPrefabParent: 1 ================================================ FILE: Assets/Resources/Prefabs/TextManager OW.prefab.meta ================================================ fileFormatVersion: 2 guid: 3a23d2c086616ee478252340c1f504ff timeCreated: 1463998795 licenseType: Free NativeFormatImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/generic_sprite.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: [] m_RemovedComponents: [] m_SourcePrefab: {fileID: 0} m_RootGameObject: {fileID: 1005169997042860} m_IsPrefabAsset: 1 --- !u!1 &1005169997042860 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 6 m_Component: - component: {fileID: 224416601005353536} - component: {fileID: 222749540667881076} - component: {fileID: 114415921015238726} - component: {fileID: 114546803662507760} - component: {fileID: 114139757390083642} - component: {fileID: 114833082201626112} - component: {fileID: 114755993985704044} m_Layer: 5 m_Name: generic_sprite m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &114139757390083642 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1005169997042860} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: -146154839, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114415921015238726 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1005169997042860} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c152f559704a98f488c1e63266ed7418, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 inverted: 0 --- !u!114 &114546803662507760 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1005169997042860} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7bbc081086ab24d458b6c45dcf29bf75, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114755993985704044 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1005169997042860} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &114833082201626112 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1005169997042860} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: -1200242548, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_ShowMaskGraphic: 1 --- !u!222 &222749540667881076 CanvasRenderer: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1005169997042860} m_CullTransparentMesh: 0 --- !u!224 &224416601005353536 RectTransform: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 1005169997042860} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 320, y: 240} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 0.5} ================================================ FILE: Assets/Resources/Prefabs/generic_sprite.prefab.meta ================================================ fileFormatVersion: 2 guid: e5c94fe50a43a2f4daa2eab2c6a62a0b NativeFormatImporter: externalObjects: {} mainObjectFileID: 100100000 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/heart_broken.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &100092 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 4 m_Component: - 224: {fileID: 22406774} - 222: {fileID: 22244664} - 114: {fileID: 11403232} - 114: {fileID: 11478284} m_Layer: 5 m_Name: heart_broken m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &11403232 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 100092} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!114 &11478284 MonoBehaviour: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 100092} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5b6761159c8f6224a8a895abea10dd25, type: 3} m_Name: m_EditorClassIdentifier: SetNativeSize: 0 SpritePath: ut-heart-broken Loop: 0 SoundPath: --- !u!222 &22244664 CanvasRenderer: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 100092} --- !u!224 &22406774 RectTransform: m_ObjectHideFlags: 1 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 100092} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -170.6, y: -146} m_SizeDelta: {x: 20, y: 16} m_Pivot: {x: 0.5, y: 0.5} --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 0} propertyPath: m_Sprite value: objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: SpritePath value: ut-heart-broken objectReference: {fileID: 0} m_RemovedComponents: [] m_ParentPrefab: {fileID: 0} m_RootGameObject: {fileID: 100092} m_IsPrefabParent: 1 ================================================ FILE: Assets/Resources/Prefabs/heart_broken.prefab.meta ================================================ fileFormatVersion: 2 guid: 10324a57e780fa444a723f1d76af5aa1 timeCreated: 1449510564 licenseType: Free NativeFormatImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs/letter.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &119928 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} serializedVersion: 6 m_Component: - component: {fileID: 22467174} - component: {fileID: 22262094} - component: {fileID: 114512164272687224} - component: {fileID: 11425434} - component: {fileID: 114678350029539784} m_Layer: 5 m_Name: letter m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &11425434 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 119928} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c02a8861b73065c499595b074b0943f8, type: 3} m_Name: m_EditorClassIdentifier: basisPos: {x: 0, y: 0} img: {fileID: 0} started: 0 colorFromText: {r: 0, g: 0, b: 0, a: 0} --- !u!222 &22262094 CanvasRenderer: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 119928} m_CullTransparentMesh: 0 --- !u!224 &22467174 RectTransform: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 119928} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 235.5, y: 9} m_SizeDelta: {x: 7, y: 12} m_Pivot: {x: 0, y: 0} --- !u!1001 &100100000 Prefab: m_ObjectHideFlags: 1 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 0} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: m_AnchorMax.y value: 0 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: m_AnchoredPosition.x value: 235.5 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: m_Pivot.x value: 0 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: m_AnchoredPosition.y value: 9 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} - target: {fileID: 0} propertyPath: m_Enabled value: 0 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 0} m_RootGameObject: {fileID: 119928} m_IsPrefabAsset: 1 --- !u!114 &114512164272687224 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 119928} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c152f559704a98f488c1e63266ed7418, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 inverted: 0 --- !u!114 &114678350029539784 MonoBehaviour: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} m_GameObject: {fileID: 119928} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: ================================================ FILE: Assets/Resources/Prefabs/letter.prefab.meta ================================================ fileFormatVersion: 2 guid: 43942f5edbcb55343849e74bff3de35d timeCreated: 1503440466 licenseType: Free NativeFormatImporter: externalObjects: {} mainObjectFileID: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Prefabs.meta ================================================ fileFormatVersion: 2 guid: 49753fc4ff07293439f0a1209ef01d14 folderAsset: yes timeCreated: 1447301079 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/FolderClosed.png.meta ================================================ fileFormatVersion: 2 guid: 5dd24cb3570849e468622a5159b68be6 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 9de64676ed2ee6e4bac537c1a4904349 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/FolderOpen.png.meta ================================================ fileFormatVersion: 2 guid: dac28198674dc684daf5763370b35900 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2454ba524b54af341b9c995c61118fff vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Lu/HoldNormal0.png.meta ================================================ fileFormatVersion: 2 guid: bb79fa19e4758764385b70906f1ec4d1 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e67be510a9f227d418c0f2559112e374 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Lu/HoldNormal1.png.meta ================================================ fileFormatVersion: 2 guid: 4ba44f31354933b4dab54daa19b70ca0 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: f2bb344127d03dd489b6a63f05ac63a4 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Lu/HoldNormal2.png.meta ================================================ fileFormatVersion: 2 guid: eff1297322473e34eaa8a022dbc82379 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4d551309b31e8dd48bb134c9ac9821f1 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Lu/NormalHappy0.png.meta ================================================ fileFormatVersion: 2 guid: 5b161e2eb8e7e0540b55bcad242803a4 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 5ed74e7589f89224895fbc1fdb63fb43 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Lu/NormalHappy1.png.meta ================================================ fileFormatVersion: 2 guid: 1f543785cb307994c8da279513f546f2 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2c7ad0673895d1b43919c544798c8e21 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Lu/NormalHappy2.png.meta ================================================ fileFormatVersion: 2 guid: 49c1897924d97d3439058e4f3358a044 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 11524c31f16063547afc0edb3845a5fa vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Lu/NormalNormal0.png.meta ================================================ fileFormatVersion: 2 guid: 8fc620d37515c924e82ce9cc142f0151 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 3a9cb516e3fc50a4a8d141f9b5c5e6ea vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Lu/NormalNormal1.png.meta ================================================ fileFormatVersion: 2 guid: 0b4585749c8c49241a55dcaaf310ce0a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c62ffa9defd98e145a949b09d20c9832 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Lu/NormalNormal2.png.meta ================================================ fileFormatVersion: 2 guid: 348405a35b909b041a3db14c31d9f224 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: f9e3d6d7f7b3af14b839a1c0cf107b13 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Lu/NormalSad0.png.meta ================================================ fileFormatVersion: 2 guid: f4a3b4be1a236414d8daed8306d6b2fa TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: f94b06123d9fb0346ae7a2ba99fd75c7 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Lu/NormalSad1.png.meta ================================================ fileFormatVersion: 2 guid: b055b1369e987a34a94ea649d75156b9 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2fddb397dd8866146969ca21049a1feb vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Lu/NormalSad2.png.meta ================================================ fileFormatVersion: 2 guid: 01a6e1e69b32f994f95511f1fc7c687e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2a4064b353344644d83e8e5460158531 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Lu/PointHappy0.png.meta ================================================ fileFormatVersion: 2 guid: 292fd5abbbf661b429061d290a41cff6 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e00179144547782408441e2355687d81 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Lu/PointHappy1.png.meta ================================================ fileFormatVersion: 2 guid: f1aaa7c5fb3ce17468404b335869841b TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 063c23ee286b0e84db1020546a626230 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Lu/PointHappy2.png.meta ================================================ fileFormatVersion: 2 guid: d3040a2b17e4e1642b164f0f09309134 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: dd6f41c8760253f4da168764fd1d5c38 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Lu/PointNormal0.png.meta ================================================ fileFormatVersion: 2 guid: 6d8433f8594968f418c0ce5e6607ac07 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4d66c403da5c01243b9ad941df0e5ed2 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Lu/PointNormal1.png.meta ================================================ fileFormatVersion: 2 guid: 6bbdc75299e6f47469dcfcf58ed8868e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 92fc7b2710dac1342a27ca96774e305f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Lu/PointNormal2.png.meta ================================================ fileFormatVersion: 2 guid: 21dd82294c456cf4f9bac07a96e9723a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: b11dbb566ef8e924eb5534341ae18d4e vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Lu/WaveHappy0.png.meta ================================================ fileFormatVersion: 2 guid: 9f88c71b162a3f848a0b68b08dbb4751 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 985964d25a384ee4c9186bc701cb5e31 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Lu/WaveHappy1.png.meta ================================================ fileFormatVersion: 2 guid: 85f5838d54906e9418d71e3ccab8aaa1 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 457d6e57fa7a1994faa179ec56cd6c32 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Lu/WaveHappy2.png.meta ================================================ fileFormatVersion: 2 guid: 0eabdb087b44ee742874926f6e766af9 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 798ce022d2958bc48b6df6d3e6d69518 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Lu/WaveNormal0.png.meta ================================================ fileFormatVersion: 2 guid: 47cee199e05256f47bf64f20e0e5ef88 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 92e64a0f4a50f2b4a96f2f30b59fd1fa vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Lu/WaveNormal1.png.meta ================================================ fileFormatVersion: 2 guid: 8bb19d92c7f0c4c478de71160829f2a6 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 0cb34f0d34284c14a9b05af372a86e54 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Lu/WaveNormal2.png.meta ================================================ fileFormatVersion: 2 guid: 7238a86c773c0024ba9ce2f8e395eb98 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 491b51c41e44ec84dad97ebbb4e72bad vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Lu.meta ================================================ fileFormatVersion: 2 guid: 53367d89474df14498878467485652f0 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Punder/determined.png.meta ================================================ fileFormatVersion: 2 guid: 619bd911cf65f1b40ae5d25b86d88d6f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 96f3b74c14f1d5242bd3ef50da4a76a7 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Punder/determinedT.png.meta ================================================ fileFormatVersion: 2 guid: 971cb3d7a71c1704d8ca04141d71840f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: cc16f02c1695ce64cbd2c5cecd10acbf vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Punder/happy.png.meta ================================================ fileFormatVersion: 2 guid: 4e7470de7c6d1724784715c9cb729b1f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 62bf4d874fdb7954eb2d70524b971d50 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Punder/happyT.png.meta ================================================ fileFormatVersion: 2 guid: 379dd4e81f222004084d5a0ba8694ed7 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: cc0b84bc1b85d8f40ba545a2d5b1273c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Punder/idle.png.meta ================================================ fileFormatVersion: 2 guid: 5316a6874fdf97a4e9675bc7e216daf1 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2d1d464dac728904faad48d966866298 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Punder/idleT.png.meta ================================================ fileFormatVersion: 2 guid: c7c73ff76836f404580592473a240e8f TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: f70f3a858f214984ca86fc5d8e06f857 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Punder/laugh.png.meta ================================================ fileFormatVersion: 2 guid: de4d13730cb40334983c35f17e1d3677 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2d75c28a5c768ce4286548561084313c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Punder/laughT.png.meta ================================================ fileFormatVersion: 2 guid: eb6f1ad03bc2c374bbd6dac7ca619a82 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 7b0c8ee5599757f4890262d439a09061 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Punder/misriHalek.png.meta ================================================ fileFormatVersion: 2 guid: fde51929a5d45424c8b4fdb9286c2356 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 7786faab1a21ba142be30c334713c22f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Punder/misriHalekT.png.meta ================================================ fileFormatVersion: 2 guid: 56e754793063b8b41b71b30de27b4745 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4ba04051cba0f974e9e22b0997dd1ad4 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Punder/perv.png.meta ================================================ fileFormatVersion: 2 guid: 7be0f14e6ae0c79408ee512df47d1606 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 5cfe5ab725648024b8a08ee5db3af5e1 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Punder/pervT.png.meta ================================================ fileFormatVersion: 2 guid: 13c380398a7cc134da67193c7cd05c61 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 93d64e8765a885a4d9d73a94e5e1aa13 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Punder/petted.png.meta ================================================ fileFormatVersion: 2 guid: c98037533478fc74ab24eabbe374f95d TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 94ea14fe4d013564f926e8bfa962f55c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Punder/question.png.meta ================================================ fileFormatVersion: 2 guid: 86b35acdb0065c7448be296063dd711e TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 5e550a3bc2b52b7489c2be002f2e2f89 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Punder/questionHappy.png.meta ================================================ fileFormatVersion: 2 guid: 625fd9e51c38f5047baf876b1bd5f740 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: bcdf1be01f36c3b478d9f032f41aed4f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Punder/questionHappyT.png.meta ================================================ fileFormatVersion: 2 guid: 69bb928f0e612e74f8bcbb141a12f863 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 0bd4da1bc8d6fe64d8e0309029bd15c8 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Punder/questionT.png.meta ================================================ fileFormatVersion: 2 guid: 6041ac080ccda214d9535a2ec634fab5 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 40ff1618c7e8791458486289c85ce213 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Punder/sad.png.meta ================================================ fileFormatVersion: 2 guid: cbe166ec70e042649a28e71c19d72fda TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: fbbfc1dc8ef3af44997f9c962e318884 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Punder/sadT.png.meta ================================================ fileFormatVersion: 2 guid: 3d3b4652221fa2141be31e03a67dd9d5 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 5a45c014e4baa03408cf01f0cad00329 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Punder/serious.png.meta ================================================ fileFormatVersion: 2 guid: d083ab39040f2734fadae721048bb5fd TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: f25fc913cffe28b4c81cce689aeebd8d vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Punder/seriousT.png.meta ================================================ fileFormatVersion: 2 guid: 767c38dd43af2ed4ba5c45711ac1fa2a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 6cbc27760cf2b1f409ff62b46eb2063b vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Punder/undyne.png.meta ================================================ fileFormatVersion: 2 guid: e92243eeeeafcbc4baccc3df14ad4695 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 2c3fa3d59e16d7a42a7d4f38e420669c vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Punder/undyne2.png.meta ================================================ fileFormatVersion: 2 guid: 47c8d94508960b741a8a20054daa5692 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 8379b29bd6b83ec48840397a8d3eb4bc vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Punder/undyne3.png.meta ================================================ fileFormatVersion: 2 guid: 367a55fb1840a2a4e99ae9093dab559a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 6d042cda692f14242a8844f574fb98f4 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Punder/veryHappy.png.meta ================================================ fileFormatVersion: 2 guid: 667f4cb281bd87a4d93b363dec974cbf TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: b649604c44bef244c870e0468b65c1e5 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Punder/veryHappyT.png.meta ================================================ fileFormatVersion: 2 guid: 987c238fa59f9864098a4421e32dddd4 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e7d5843ad766ef44b9d02796432b5903 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/Punder.meta ================================================ fileFormatVersion: 2 guid: 4e736540c16df29419b363d45e9dd3e1 folderAsset: yes timeCreated: 1498847029 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/QuickFolderClosed.png.meta ================================================ fileFormatVersion: 2 guid: 19bc4b426e4957b46ba4493301f25a8a TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 4515413d23b485246971d72c4327fb4f vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/QuickFolderOpen.png.meta ================================================ fileFormatVersion: 2 guid: cf354af0948ba5c44bc8d79195e38350 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 9 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: c4c1e7e2f6e07604492e34e70218de55 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/mm.png.meta ================================================ fileFormatVersion: 2 guid: 4fc2fb526f4a28c4d8c3ecb33259d8eb TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 641c2763d8b3b364ca425c23be8085f9 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/mm2.png.meta ================================================ fileFormatVersion: 2 guid: 73219622400061e4dafb0c6892b2bb60 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: 0 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 7 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 - serializedVersion: 2 buildTarget: Standalone maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 458f783f2ae6cf545bf62039139e3e7e vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/mm2Old.png.meta ================================================ fileFormatVersion: 2 guid: 2780bbb2df9fbe746aca5f7f5a790698 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 3cf9876626b10dc43af2b3efc6b72777 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/mmOld.png.meta ================================================ fileFormatVersion: 2 guid: d86bed4ae91364f4b845d18c9f891875 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: 92de07b4e382dd54486a043ad6006296 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites/pause.png.meta ================================================ fileFormatVersion: 2 guid: 7d0337cd129a46b429e225ef70d7ded0 TextureImporter: fileIDToRecycleName: {} externalObjects: {} serializedVersion: 7 mipmaps: mipMapMode: 0 enableMipMap: 0 sRGBTexture: 1 linearTexture: 0 fadeOut: 0 borderMipMap: 0 mipMapsPreserveCoverage: 0 alphaTestReferenceValue: 0.5 mipMapFadeDistanceStart: 1 mipMapFadeDistanceEnd: 3 bumpmap: convertToNormalMap: 0 externalNormalMap: 0 heightScale: 0.25 normalMapFilter: 0 isReadable: 0 streamingMipmaps: 0 streamingMipmapsPriority: 0 grayScaleToAlpha: 0 generateCubemap: 6 cubemapConvolution: 0 seamlessCubemap: 0 textureFormat: 1 maxTextureSize: 2048 textureSettings: serializedVersion: 2 filterMode: -1 aniso: -1 mipBias: -100 wrapU: 1 wrapV: 1 wrapW: 1 nPOTScale: 0 lightmap: 0 compressionQuality: 50 spriteMode: 1 spriteExtrude: 1 spriteMeshType: 1 alignment: 0 spritePivot: {x: 0.5, y: 0.5} spritePixelsToUnits: 100 spriteBorder: {x: 0, y: 0, z: 0, w: 0} spriteGenerateFallbackPhysicsShape: 1 alphaUsage: 1 alphaIsTransparency: 1 spriteTessellationDetail: -1 textureType: 8 textureShape: 1 singleChannelComponent: 0 maxTextureSizeSet: 0 compressionQualitySet: 0 textureFormatSet: 0 platformSettings: - serializedVersion: 2 buildTarget: DefaultTexturePlatform maxTextureSize: 2048 resizeAlgorithm: 0 textureFormat: -1 textureCompression: 1 compressionQuality: 50 crunchedCompression: 0 allowsAlphaSplitting: 0 overridden: 0 androidETC2FallbackOverride: 0 spriteSheet: serializedVersion: 2 sprites: [] outline: [] physicsShape: [] bones: [] spriteID: e4a7a1e2661ce3d448c7dd2b4cbe1a46 vertices: [] indices: edges: [] weights: [] spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/Sprites.meta ================================================ fileFormatVersion: 2 guid: 6ae0812035f8fff45a5c12b56e3ee18e folderAsset: yes timeCreated: 1498846491 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/unity default resources.meta ================================================ fileFormatVersion: 2 guid: 0715843c2712d3d4188de6c996900fa0 timeCreated: 1462797111 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources/unity_builtin_extra.meta ================================================ fileFormatVersion: 2 guid: 195c62d90abb78c418b7f6d265343e17 timeCreated: 1462797111 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Resources.meta ================================================ fileFormatVersion: 2 guid: b42e7401b9d022a4aa526010ee7cc658 folderAsset: yes timeCreated: 1446693178 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scenes/BasicOWScene.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 8 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 3 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 11 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_TemporalCoherenceThreshold: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 0 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 9 m_Resolution: 2 m_BakeResolution: 40 m_TextureWidth: 1024 m_TextureHeight: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 0 m_CompAOExponentDirect: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 1024 m_ReflectionCompression: 2 m_MixedBakeMode: 1 m_BakeBackend: 0 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 500 m_PVRBounces: 2 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVRFilteringMode: 1 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_LightingDataAsset: {fileID: 0} m_UseShadowmask: 1 --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1 &1268756797 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 177562, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 5 m_Component: - component: {fileID: 1268756798} - component: {fileID: 1268756802} - component: {fileID: 1268756801} - component: {fileID: 1268756800} - component: {fileID: 1268756799} m_Layer: 0 m_Name: PC Computer - Undertale - Core Tileset(1) m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1268756798 Transform: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 431592, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1268756797} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1778780348} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1268756799 MonoBehaviour: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 11452048, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1268756797} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 74efee4889073914b8ae070d65688ce4, type: 3} m_Name: m_EditorClassIdentifier: InitialOpacity: 1 --- !u!114 &1268756800 MonoBehaviour: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 11422268, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1268756797} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1874989c5e2da094ea00112c6a895694, type: 3} m_Name: m_EditorClassIdentifier: --- !u!23 &1268756801 MeshRenderer: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 2389372, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1268756797} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 2 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_Materials: - {fileID: 2100000, guid: b90bff42e575b504a9929ba56d216286, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchSeams: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 --- !u!33 &1268756802 MeshFilter: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 3361588, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1268756797} m_Mesh: {fileID: 4300000, guid: 6b8f1b32149de0c418bdc62a7f9eba86, type: 3} --- !u!1 &1323470861 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 100150, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 5 m_Component: - component: {fileID: 1323470862} - component: {fileID: 1323470866} - component: {fileID: 1323470865} - component: {fileID: 1323470864} - component: {fileID: 1323470863} m_Layer: 0 m_Name: PC Computer - Undertale - Core Tileset(1) m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1323470862 Transform: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 405108, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1323470861} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -6.2, y: 2.4, z: 0} m_LocalScale: {x: 0.02, y: 0.02, z: 1} m_Children: [] m_Father: {fileID: 2052254822} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1323470863 MonoBehaviour: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 11410426, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1323470861} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 74efee4889073914b8ae070d65688ce4, type: 3} m_Name: m_EditorClassIdentifier: InitialOpacity: 1 --- !u!114 &1323470864 MonoBehaviour: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 11409522, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1323470861} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1874989c5e2da094ea00112c6a895694, type: 3} m_Name: m_EditorClassIdentifier: --- !u!23 &1323470865 MeshRenderer: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 2356494, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1323470861} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_Materials: - {fileID: 2100000, guid: b90bff42e575b504a9929ba56d216286, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchSeams: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 --- !u!33 &1323470866 MeshFilter: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 3350656, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1323470861} m_Mesh: {fileID: 4300002, guid: 6b8f1b32149de0c418bdc62a7f9eba86, type: 3} --- !u!1 &1372627567 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 157358, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 5 m_Component: - component: {fileID: 1372627568} - component: {fileID: 1372627571} - component: {fileID: 1372627570} - component: {fileID: 1372627569} m_Layer: 0 m_Name: TP Right m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1372627568 Transform: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 406064, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1372627567} m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071067} m_LocalPosition: {x: 6, y: 0, z: 0} m_LocalScale: {x: 0.79999995, y: 1, z: 1} m_Children: [] m_Father: {fileID: 2052254822} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} --- !u!114 &1372627569 MonoBehaviour: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 11494438, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1372627567} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: cafce2c3f7e465f478d7b302ab1b8236, type: 3} m_Name: m_EditorClassIdentifier: sceneName: test position: {x: 1480, y: 960} direction: 4 activated: 0 noFadeIn: 0 noFadeOut: 0 --- !u!50 &1372627570 Rigidbody2D: serializedVersion: 4 m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 5032938, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1372627567} m_BodyType: 1 m_Simulated: 1 m_UseFullKinematicContacts: 0 m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_Material: {fileID: 0} m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 4 --- !u!68 &1372627571 EdgeCollider2D: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 6882432, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1372627567} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 1 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: -0.5, y: 0} - {x: 0.5, y: 0} --- !u!1 &1523043056 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 168770, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 5 m_Component: - component: {fileID: 1523043057} - component: {fileID: 1523043060} - component: {fileID: 1523043059} - component: {fileID: 1523043058} m_Layer: 0 m_Name: TP Left m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1523043057 Transform: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 425052, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1523043056} m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071067} m_LocalPosition: {x: -6, y: 0, z: 0} m_LocalScale: {x: 0.79999995, y: 1, z: 1} m_Children: [] m_Father: {fileID: 2052254822} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} --- !u!114 &1523043058 MonoBehaviour: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 11498914, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1523043056} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: cafce2c3f7e465f478d7b302ab1b8236, type: 3} m_Name: m_EditorClassIdentifier: sceneName: test2 position: {x: 320, y: 80} direction: 8 activated: 0 noFadeIn: 0 noFadeOut: 0 --- !u!50 &1523043059 Rigidbody2D: serializedVersion: 4 m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 5034292, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1523043056} m_BodyType: 1 m_Simulated: 1 m_UseFullKinematicContacts: 0 m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_Material: {fileID: 0} m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 4 --- !u!68 &1523043060 EdgeCollider2D: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 6853106, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1523043056} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 1 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: -0.5, y: 0} - {x: 0.5, y: 0} --- !u!1 &1552866258 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 189286, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 5 m_Component: - component: {fileID: 1552866259} - component: {fileID: 1552866260} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1552866259 Transform: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 457758, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1552866258} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -6.2, y: 2.4, z: -140} m_LocalScale: {x: 0.02, y: 0.02, z: 1} m_Children: [] m_Father: {fileID: 2052254822} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &1552866260 BoxCollider2D: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 6142724, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1552866258} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 330, y: -50} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 660, y: 100} m_EdgeRadius: 0 --- !u!1 &1602858720 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 178842, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 5 m_Component: - component: {fileID: 1602858721} m_Layer: 0 m_Name: Foreground m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1602858721 Transform: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 437592, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1602858720} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 480, z: -1} m_LocalScale: {x: 2, y: 2, z: 1} m_Children: - {fileID: 1753844028} m_Father: {fileID: 0} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1753844027 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 194538, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 5 m_Component: - component: {fileID: 1753844028} - component: {fileID: 1753844032} - component: {fileID: 1753844031} - component: {fileID: 1753844030} - component: {fileID: 1753844029} m_Layer: 0 m_Name: PC Computer - Undertale - Core Tileset(1) m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1753844028 Transform: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 439314, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1753844027} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1602858721} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1753844029 MonoBehaviour: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 11451652, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1753844027} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 74efee4889073914b8ae070d65688ce4, type: 3} m_Name: m_EditorClassIdentifier: InitialOpacity: 1 --- !u!114 &1753844030 MonoBehaviour: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 11443456, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1753844027} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1874989c5e2da094ea00112c6a895694, type: 3} m_Name: m_EditorClassIdentifier: --- !u!23 &1753844031 MeshRenderer: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 2359872, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1753844027} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_Materials: - {fileID: 2100000, guid: b90bff42e575b504a9929ba56d216286, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchSeams: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 --- !u!33 &1753844032 MeshFilter: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 3360044, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1753844027} m_Mesh: {fileID: 4300004, guid: 6b8f1b32149de0c418bdc62a7f9eba86, type: 3} --- !u!1 &1778780347 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 160736, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 5 m_Component: - component: {fileID: 1778780348} m_Layer: 0 m_Name: Bottom m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1778780348 Transform: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 419426, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1778780347} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 480, z: 141} m_LocalScale: {x: 2, y: 2, z: 1} m_Children: - {fileID: 1268756798} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &2010831946 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 199562, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 5 m_Component: - component: {fileID: 2010831947} - component: {fileID: 2010831948} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &2010831947 Transform: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 474438, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 2010831946} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -6.2, y: -0.4, z: -140} m_LocalScale: {x: 0.02, y: 0.02, z: 1} m_Children: [] m_Father: {fileID: 2052254822} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &2010831948 BoxCollider2D: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 6163526, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 2010831946} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 330, y: -50} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 660, y: 100} m_EdgeRadius: 0 --- !u!1 &2052254819 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 134422, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 5 m_Component: - component: {fileID: 2052254822} - component: {fileID: 2052254821} - component: {fileID: 2052254820} m_Layer: 0 m_Name: Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!212 &2052254820 SpriteRenderer: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 21251718, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 2052254819} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 0 m_MaskInteraction: 0 --- !u!114 &2052254821 MonoBehaviour: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 11414468, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 2052254819} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7a4ef58bda0647d48b67028c05b00813, type: 3} m_Name: m_EditorClassIdentifier: music: mus_core modToLoad: Encounter Skeleton isMusicKeptBetweenBattles: 1 noRandomEncounter: 0 --- !u!224 &2052254822 RectTransform: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 22411040, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 2052254819} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 620, y: 240, z: 140} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: - {fileID: 1323470862} - {fileID: 1552866259} - {fileID: 2010831947} - {fileID: 1523043057} - {fileID: 1372627568} m_Father: {fileID: 0} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 620, y: 240} m_SizeDelta: {x: 12.4, y: 4.8} m_Pivot: {x: 0.5, y: 0.5} ================================================ FILE: Assets/Scenes/BasicOWScene.unity.meta ================================================ fileFormatVersion: 2 guid: 6c1a31fe02c9c654b86b3fbcd33a847a timeCreated: 1503582329 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scenes/Battle.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 3 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &4 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 11 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 0 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 10 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 0 m_CompAOExponentDirect: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 1024 m_ReflectionCompression: 2 m_MixedBakeMode: 1 m_BakeBackend: 0 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 500 m_PVRBounces: 2 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVRFilteringMode: 1 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ShowResolutionOverlay: 1 m_LightingDataAsset: {fileID: 0} m_UseShadowmask: 0 --- !u!196 &5 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1 &113347612 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 113347613} - component: {fileID: 113347614} m_Layer: 5 m_Name: TextParent m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &113347613 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 113347612} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1324215185} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 160, y: -368} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &113347614 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 113347612} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: $ currentLine: 0 _textMaxWidth: 320 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 columnShift: 265 columnNumber: 2 blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &132697915 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 132697918} - component: {fileID: 132697917} - component: {fileID: 132697916} - component: {fileID: 132697919} - component: {fileID: 132697921} - component: {fileID: 132697920} m_Layer: 5 m_Name: HPLabel m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &132697916 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 132697915} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &132697917 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 132697915} m_CullTransparentMesh: 0 --- !u!224 &132697918 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 132697915} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1320941748} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: -9} m_SizeDelta: {x: 23, y: 10} m_Pivot: {x: 0, y: 0} --- !u!114 &132697919 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 132697915} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5b6761159c8f6224a8a895abea10dd25, type: 3} m_Name: m_EditorClassIdentifier: SpritePath: UI/spr_hpname_0 Loop: 0 --- !u!114 &132697920 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 132697915} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &132697921 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 132697915} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7bbc081086ab24d458b6c45dcf29bf75, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1 &141548671 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 141548672} m_Layer: 5 m_Name: BelowArenaLayer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &141548672 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 141548671} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 930260305} m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 1, y: 1} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &185940573 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 152242, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 185940574} - component: {fileID: 185940576} - component: {fileID: 185940575} m_Layer: 0 m_Name: SpeechThing m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &185940574 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22453886, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 185940573} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1723617987} m_RootOrder: 9 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 44, y: 16} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &185940575 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11473188, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 185940573} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: 4b37e1b67779d8043af7039f25b19a78, type: 3} m_Type: 0 m_PreserveAspect: 1 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &185940576 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22231318, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 185940573} m_CullTransparentMesh: 0 --- !u!1 &209795024 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 127862, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 209795025} - component: {fileID: 209795027} - component: {fileID: 209795026} m_Layer: 0 m_Name: BottomRightBorder m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &209795025 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22419362, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 209795024} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1723617987} m_RootOrder: 8 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 0} m_AnchorMax: {x: 1, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 1, y: 0} --- !u!114 &209795026 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11443696, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 209795024} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: 9bb9d61156064854da1ac61f68990ce9, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &209795027 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22277692, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 209795024} m_CullTransparentMesh: 0 --- !u!1 &284158366 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 100010, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 284158367} - component: {fileID: 284158369} - component: {fileID: 284158368} m_Layer: 0 m_Name: BackVert m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &284158367 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22416422, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 284158366} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 743543924} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 60, y: 100} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &284158368 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11450012, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 284158366} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &284158369 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22288474, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 284158366} m_CullTransparentMesh: 0 --- !u!1 &310815950 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 310815951} m_Layer: 5 m_Name: BottomLayer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &310815951 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 310815950} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 930260305} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 1, y: 1} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &358466700 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 358466701} m_Layer: 0 m_Name: NameLvParent m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &358466701 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 358466700} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1339418278} m_Father: {fileID: 2026747196} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 15, y: 15} m_Pivot: {x: 0, y: 0} --- !u!1 &364169963 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 199640, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 364169964} - component: {fileID: 364169966} - component: {fileID: 364169965} m_Layer: 0 m_Name: TopRightBorder m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &364169964 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22405706, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 364169963} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 743543924} m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 1} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 1, y: 1} --- !u!114 &364169965 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11400360, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 364169963} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: 361c275b93f22de45900062ada7925f1, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &364169966 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22236428, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 364169963} m_CullTransparentMesh: 0 --- !u!1 &459985788 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 459985789} - component: {fileID: 459985792} - component: {fileID: 459985790} - component: {fileID: 459985794} - component: {fileID: 459985793} - component: {fileID: 459985791} m_Layer: 5 m_Name: MugshotMask m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &459985789 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 459985788} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1.0009999, y: 1.0009999, z: 1} m_Children: - {fileID: 880643017} m_Father: {fileID: 1502133296} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.5} m_AnchorMax: {x: 0, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 130, y: 130} m_Pivot: {x: 0, y: 0.5} --- !u!114 &459985790 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 459985788} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &459985791 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 459985788} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -146154839, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: --- !u!222 &459985792 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 459985788} m_CullTransparentMesh: 0 --- !u!114 &459985793 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 459985788} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: -1200242548, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_ShowMaskGraphic: 1 --- !u!114 &459985794 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 459985788} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c152f559704a98f488c1e63266ed7418, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 inverted: 0 --- !u!1 &506907622 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 506907623} - component: {fileID: 506907625} - component: {fileID: 506907624} - component: {fileID: 506907627} - component: {fileID: 506907626} m_Layer: 5 m_Name: ItemBt m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &506907623 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 506907622} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1830754306} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 313, y: 0} m_SizeDelta: {x: 110, y: 42} m_Pivot: {x: 0, y: 0} --- !u!114 &506907624 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 506907622} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &506907625 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 506907622} m_CullTransparentMesh: 0 --- !u!114 &506907626 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 506907622} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5b6761159c8f6224a8a895abea10dd25, type: 3} m_Name: m_EditorClassIdentifier: SpritePath: UI/Buttons/itembt_0 Loop: 0 --- !u!114 &506907627 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 506907622} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1 &516848000 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 159716, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 516848001} - component: {fileID: 516848003} - component: {fileID: 516848002} m_Layer: 0 m_Name: TopLeftBorder m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &516848001 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22456078, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 516848000} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 743543924} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!114 &516848002 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11438016, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 516848000} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: d4b1335871fb6b549a5bd165cbc60327, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &516848003 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22203948, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 516848000} m_CullTransparentMesh: 0 --- !u!1 &573913229 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 152242, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 573913230} - component: {fileID: 573913232} - component: {fileID: 573913231} m_Layer: 0 m_Name: SpeechThing m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &573913230 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22453886, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 573913229} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 743543924} m_RootOrder: 9 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 44, y: 16} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &573913231 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11473188, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 573913229} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: 4b37e1b67779d8043af7039f25b19a78, type: 3} m_Type: 0 m_PreserveAspect: 1 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &573913232 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22231318, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 573913229} m_CullTransparentMesh: 0 --- !u!1 &599533877 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 599533878} m_Layer: 0 m_Name: HPTextParent m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &599533878 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 599533877} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 2137545031} m_Father: {fileID: 1320941748} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 70, y: -11} m_SizeDelta: {x: 15, y: 15} m_Pivot: {x: 0, y: 0} --- !u!1 &610348797 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 610348798} - component: {fileID: 610348800} - component: {fileID: 610348799} - component: {fileID: 610348801} - component: {fileID: 610348802} - component: {fileID: 610348803} m_Layer: 5 m_Name: FightUI m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &610348798 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 610348797} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1306673876} m_Father: {fileID: 1502133296} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 547, y: 115} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &610348799 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 610348797} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10913, guid: 0000000000000000f000000000000000, type: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &610348800 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 610348797} m_CullTransparentMesh: 0 --- !u!114 &610348801 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 610348797} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: a1cd8741235a5cb47a23270c049ef764, type: 3} m_Name: m_EditorClassIdentifier: boundFightUiInstances: [] allFightUiInstances: [] targetRt: {fileID: 1306673876} shakeX: 0c000000f4ffffff07000000f9ffffff03000000fdffffff01000000ffffffff00000000 sliceAnim: - UI/Battle/spr_slice_o_0 - UI/Battle/spr_slice_o_1 - UI/Battle/spr_slice_o_2 - UI/Battle/spr_slice_o_3 - UI/Battle/spr_slice_o_4 - UI/Battle/spr_slice_o_5 sliceAnimFrequency: 0.16666667 targetNumber: 1 targetIDs: multiHit: 0 stopped: 0 --- !u!82 &610348802 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 610348797} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 500 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 --- !u!114 &610348803 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 610348797} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5b6761159c8f6224a8a895abea10dd25, type: 3} m_Name: m_EditorClassIdentifier: SpritePath: UI/Battle/spr_target_0 Loop: 0 --- !u!1 &639286007 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 639286008} - component: {fileID: 639286014} - component: {fileID: 639286013} - component: {fileID: 639286012} - component: {fileID: 639286011} - component: {fileID: 639286010} - component: {fileID: 639286009} m_Layer: 0 m_Name: Main Camera GameOver m_TagString: MainCamera m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &639286008 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 639286007} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 320, y: 240, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1776304110} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &639286009 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 639286007} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: e994334232641bd4ca342c48fcdb1605, type: 3} m_Name: m_EditorClassIdentifier: --- !u!82 &639286010 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 639286007} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 8300000, guid: 2e1ec241201bfc14db4c5eddec053733, type: 3} m_PlayOnAwake: 0 m_Volume: 0.901 m_Pitch: 1 Loop: 1 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 500 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 --- !u!81 &639286011 AudioListener: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 639286007} m_Enabled: 1 --- !u!124 &639286012 Behaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 639286007} m_Enabled: 1 --- !u!92 &639286013 Behaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 639286007} m_Enabled: 1 --- !u!20 &639286014 Camera: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 639286007} m_Enabled: 1 serializedVersion: 2 m_ClearFlags: 1 m_BackGroundColor: {r: 0, g: 0, b: 0, a: 0.019607844} m_projectionMatrixMode: 1 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} m_GateFitMode: 2 m_FocalLength: 50 m_NormalizedViewPortRect: serializedVersion: 2 x: 0 y: 0 width: 4 height: 3 near clip plane: -1000 far clip plane: 1000 field of view: 60 orthographic: 1 orthographic size: 240 m_Depth: -1 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingPath: -1 m_TargetTexture: {fileID: 0} m_TargetDisplay: 0 m_TargetEye: 3 m_HDR: 0 m_AllowMSAA: 1 m_AllowDynamicResolution: 0 m_ForceIntoRT: 0 m_OcclusionCulling: 1 m_StereoConvergence: 10 m_StereoSeparation: 0.022 --- !u!1 &651146613 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 651146614} - component: {fileID: 651146616} - component: {fileID: 651146615} m_Layer: 5 m_Name: UIController m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &651146614 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 651146613} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 930260305} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} --- !u!82 &651146615 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 651146613} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 8300000, guid: d6dee141899c0ea4293b8613b1da247e, type: 3} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 500 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 --- !u!114 &651146616 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 651146613} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 3cd5272475a518749a954d77524c56f1, type: 3} m_Name: m_EditorClassIdentifier: mainTextManager: {fileID: 0} fightButton: {fileID: 1745075055} actButton: {fileID: 991344421} itemButton: {fileID: 506907624} mercyButton: {fileID: 1280180707} action: 0 forcedAction: 4 psContainer: {fileID: 0} fightUI: {fileID: 0} monsterDialogues: [] monsterDialogueEnemyID: playerOffsets: - {x: 16, y: 19} - {x: 16, y: 19} - {x: 16, y: 19} - {x: 16, y: 19} exp: 0 gold: 0 readyToNextLine: needOnDeath: 0 stateSwitched: 0 battleDialogueStarted: 0 UIStates: - NONE - ACTIONSELECT - ATTACKING - DEFENDING - ENEMYSELECT - ACTMENU - ITEMMENU - MERCYMENU - ENEMYDIALOGUE - DIALOGRESULT - DONE - UNUSED - PAUSE frozenState: PAUSE frozenTimestamp: 0 --- !u!1 &669874877 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 669874878} m_Layer: 5 m_Name: BelowBulletLayer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &669874878 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 669874877} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 930260305} m_RootOrder: 10 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 1, y: 1} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &743543923 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 191078, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 743543924} - component: {fileID: 743543925} m_Layer: 0 m_Name: BubbleContainer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &743543924 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22496986, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 743543923} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1700996735} - {fileID: 284158367} - {fileID: 2105576920} - {fileID: 1313924453} - {fileID: 773549146} - {fileID: 516848001} - {fileID: 364169964} - {fileID: 1339420634} - {fileID: 1673161716} - {fileID: 573913230} m_Father: {fileID: 2137545031} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -12, y: 8} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &743543925 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22259784, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 743543923} m_CullTransparentMesh: 0 --- !u!1 &773549145 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 174686, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 773549146} - component: {fileID: 773549148} - component: {fileID: 773549147} m_Layer: 0 m_Name: CenterVert m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &773549146 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22429080, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 773549145} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 743543924} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 60, y: 96} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &773549147 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11429644, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 773549145} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &773549148 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22243510, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 773549145} m_CullTransparentMesh: 0 --- !u!1 &778448265 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 150814, guid: b52d5d8cf9ddaf740a8cf6024b1bca2f, type: 2} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1952845558} - component: {fileID: 778448266} m_Layer: 0 m_Name: LuaEnemyEncounterGO m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &778448266 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11486350, guid: b52d5d8cf9ddaf740a8cf6024b1bca2f, type: 2} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 778448265} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5a65416e168c49b428ba746d73f328f3, type: 3} m_Name: m_EditorClassIdentifier: enemies: - {fileID: 0} enemyPositions: - {x: 0, y: 0} turnCount: 0 CanRun: 1 waveBeginTime: 0 gameOverStance: 0 --- !u!1 &844207265 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 157610, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 844207266} - component: {fileID: 844207268} - component: {fileID: 844207267} m_Layer: 0 m_Name: BackHorz m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &844207266 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22498740, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 844207265} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1723617987} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 100, y: 60} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &844207267 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11441354, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 844207265} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &844207268 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22281488, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 844207265} m_CullTransparentMesh: 0 --- !u!1 &880643016 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 880643017} - component: {fileID: 880643020} - component: {fileID: 880643019} - component: {fileID: 880643018} m_Layer: 5 m_Name: Mugshot m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &880643017 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 880643016} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 459985789} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.5} m_AnchorMax: {x: 0, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 130, y: 130} m_Pivot: {x: 0, y: 0.5} --- !u!114 &880643018 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 880643016} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &880643019 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 880643016} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &880643020 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 880643016} m_CullTransparentMesh: 0 --- !u!1 &913680302 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 128286, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 913680303} - component: {fileID: 913680305} - component: {fileID: 913680304} m_Layer: 0 m_Name: BottomLeftBorder m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &913680303 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22494804, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 913680302} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1723617987} m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 0} --- !u!114 &913680304 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11495342, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 913680302} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: 8a1c3af710aafa04bb78a9d6e1027114, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &913680305 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22234048, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 913680302} m_CullTransparentMesh: 0 --- !u!1 &930260304 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 930260305} - component: {fileID: 930260308} - component: {fileID: 930260306} m_Layer: 5 m_Name: Canvas m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &930260305 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 930260304} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 90} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 310815951} - {fileID: 1304618330} - {fileID: 944112583} - {fileID: 651146614} - {fileID: 2026747196} - {fileID: 1830754306} - {fileID: 141548672} - {fileID: 1443796532} - {fileID: 2063039112} - {fileID: 1509689744} - {fileID: 669874878} - {fileID: 2124894573} - {fileID: 1438538683} - {fileID: 1565117937} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 320, y: 240} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &930260306 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 930260304} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1301386320, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 4294967295 --- !u!223 &930260308 Canvas: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 930260304} m_Enabled: 1 serializedVersion: 3 m_RenderMode: 2 m_Camera: {fileID: 1727881048} m_PlaneDistance: 100 m_PixelPerfect: 1 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_AdditionalShaderChannelsFlag: 25 m_SortingLayerID: 0 m_SortingOrder: 1 m_TargetDisplay: 0 --- !u!1 &944112582 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 944112583} m_Layer: 5 m_Name: BelowUILayer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &944112583 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 944112582} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 930260305} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 1, y: 1} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &991344419 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 991344420} - component: {fileID: 991344422} - component: {fileID: 991344421} - component: {fileID: 991344424} - component: {fileID: 991344423} m_Layer: 5 m_Name: ActBt m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &991344420 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 991344419} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1830754306} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 154, y: 0} m_SizeDelta: {x: 110, y: 42} m_Pivot: {x: 0, y: 0} --- !u!114 &991344421 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 991344419} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &991344422 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 991344419} m_CullTransparentMesh: 0 --- !u!114 &991344423 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 991344419} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5b6761159c8f6224a8a895abea10dd25, type: 3} m_Name: m_EditorClassIdentifier: SpritePath: UI/Buttons/actbt_0 Loop: 0 --- !u!114 &991344424 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 991344419} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1 &1007297935 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1007297936} - component: {fileID: 1007297938} - component: {fileID: 1007297937} - component: {fileID: 1007297939} m_Layer: 5 m_Name: arena_border_outer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1007297936 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1007297935} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0.019515278} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1952845558} - {fileID: 1502133296} m_Father: {fileID: 1443796532} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0} m_AnchorMax: {x: 0.5, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 575, y: 140} m_Pivot: {x: 0.5, y: 0} --- !u!114 &1007297937 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1007297935} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: 9e5b8c252281549c3a05df1a46e5267a, type: 3} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 0 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1007297938 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1007297935} m_CullTransparentMesh: 0 --- !u!114 &1007297939 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1007297935} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: a91ef8095a607e34b90bda1f89e683c0, type: 3} m_Name: m_EditorClassIdentifier: basisCoordinates: {x: 0, y: 0} currentWidth: 0 currentHeight: 0 currentX: 0 currentY: 0 desiredWidth: 0 desiredHeight: 0 desiredX: 0 desiredY: 0 showWhenWaveEnds: 0 --- !u!1001 &1197438037 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 1502133296} m_Modifications: - target: {fileID: 134386, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_Name value: CstmTxtContainer objectReference: {fileID: 0} - target: {fileID: 191078, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_IsActive value: 1 objectReference: {fileID: 0} - target: {fileID: 11462692, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: needFontReset value: 1 objectReference: {fileID: 0} - target: {fileID: 11462692, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: noAutoLineBreak value: 1 objectReference: {fileID: 0} - target: {fileID: 11462692, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: progress value: 2 objectReference: {fileID: 0} - target: {fileID: 11462692, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: deleteWhenFinished value: 0 objectReference: {fileID: 0} - target: {fileID: 11462692, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: autoSetLayer value: 0 objectReference: {fileID: 0} - target: {fileID: 11462692, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: isMainTextObject value: 1 objectReference: {fileID: 0} - target: {fileID: 11462692, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: _textMaxWidth value: 534 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_LocalPosition.z value: -9.999999 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_RootOrder value: 2 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_AnchoredPosition.x value: -267 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_AnchoredPosition.y value: -42 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_SizeDelta.x value: 20 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_SizeDelta.y value: 20 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_AnchorMin.y value: 1 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_AnchorMax.y value: 1 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} propertyPath: m_Pivot.y value: 0.5 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} --- !u!224 &1197438038 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 22412996, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 1197438037} m_PrefabAsset: {fileID: 0} --- !u!1 &1280180705 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1280180706} - component: {fileID: 1280180708} - component: {fileID: 1280180707} - component: {fileID: 1280180710} - component: {fileID: 1280180709} m_Layer: 5 m_Name: MercyBt m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1280180706 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1280180705} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1830754306} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 467, y: 0} m_SizeDelta: {x: 110, y: 42} m_Pivot: {x: 0, y: 0} --- !u!114 &1280180707 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1280180705} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1280180708 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1280180705} m_CullTransparentMesh: 0 --- !u!114 &1280180709 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1280180705} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5b6761159c8f6224a8a895abea10dd25, type: 3} m_Name: m_EditorClassIdentifier: SpritePath: UI/Buttons/mercybt_0 Loop: 0 --- !u!114 &1280180710 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1280180705} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1 &1304618329 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1304618330} - component: {fileID: 1304618332} - component: {fileID: 1304618333} - component: {fileID: 1304618331} - component: {fileID: 1304618334} - component: {fileID: 1304618335} m_Layer: 0 m_Name: Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1304618330 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1304618329} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 930260305} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 320, y: 240} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1304618331 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1304618329} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1304618332 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1304618329} m_CullTransparentMesh: 0 --- !u!114 &1304618333 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1304618329} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 8da84050e7192c3478c338bc5a5df523, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &1304618334 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1304618329} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &1304618335 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1304618329} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7bbc081086ab24d458b6c45dcf29bf75, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1 &1306673875 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1306673876} - component: {fileID: 1306673879} - component: {fileID: 1306673878} - component: {fileID: 1306673877} - component: {fileID: 1306673880} m_Layer: 5 m_Name: FightUILine m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1306673876 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1306673875} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 610348798} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 14, y: 128} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1306673877 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1306673875} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5b6761159c8f6224a8a895abea10dd25, type: 3} m_Name: m_EditorClassIdentifier: SpritePath: UI/Battle/spr_targetchoice_0 Loop: 0 --- !u!114 &1306673878 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1306673875} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1306673879 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1306673875} m_CullTransparentMesh: 0 --- !u!114 &1306673880 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1306673875} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1 &1313924452 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 171992, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1313924453} - component: {fileID: 1313924455} - component: {fileID: 1313924454} m_Layer: 0 m_Name: CenterHorz m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1313924453 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22425498, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1313924452} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 743543924} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 96, y: 60} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1313924454 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11452418, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1313924452} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1313924455 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22259690, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1313924452} m_CullTransparentMesh: 0 --- !u!1 &1320941747 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1320941748} m_Layer: 0 m_Name: HPRect m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1320941748 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1320941747} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 132697918} - {fileID: 1470743183} - {fileID: 599533878} m_Father: {fileID: 2026747196} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 260, y: 0} m_SizeDelta: {x: 15, y: 15} m_Pivot: {x: 0, y: 0} --- !u!1 &1324215184 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1324215185} - component: {fileID: 1324215188} - component: {fileID: 1324215186} m_Layer: 5 m_Name: Canvas GameOver m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1324215185 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1324215184} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 100} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1546366360} - {fileID: 113347613} - {fileID: 1570704934} - {fileID: 1861186315} m_Father: {fileID: 1776304110} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0, y: 0} --- !u!114 &1324215186 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1324215184} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1301386320, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 4294967295 --- !u!223 &1324215188 Canvas: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1324215184} m_Enabled: 1 serializedVersion: 3 m_RenderMode: 2 m_Camera: {fileID: 639286014} m_PlaneDistance: 100 m_PixelPerfect: 1 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_AdditionalShaderChannelsFlag: 25 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 --- !u!1 &1339418277 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1339418278} - component: {fileID: 1339418279} m_Layer: 0 m_Name: NameLv m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1339418278 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1339418277} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1723617987} m_Father: {fileID: 358466701} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 15, y: 15} m_Pivot: {x: 0, y: 0} --- !u!114 &1339418279 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1339418277} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9ac8dc980caea604a81186f096e200ea, type: 3} m_Name: m_EditorClassIdentifier: letterSound: currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 columnShift: 265 columnNumber: 2 blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 bubble: 0 progress: 0 autoSetLayer: 0 needFontReset: 0 noAutoLineBreak: 0 isMainTextObject: 0 noSelfAdvance: 0 deleteWhenFinished: 1 _color: {r: 1, g: 1, b: 1, a: 1} hasColorBeenSet: 0 hasAlphaBeenSet: 0 --- !u!1 &1339420633 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 128286, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1339420634} - component: {fileID: 1339420636} - component: {fileID: 1339420635} m_Layer: 0 m_Name: BottomLeftBorder m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1339420634 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22494804, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1339420633} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 743543924} m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 0} --- !u!114 &1339420635 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11495342, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1339420633} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: 8a1c3af710aafa04bb78a9d6e1027114, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1339420636 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22234048, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1339420633} m_CullTransparentMesh: 0 --- !u!1 &1438538682 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1438538683} m_Layer: 5 m_Name: TopLayer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1438538683 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1438538682} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 930260305} m_RootOrder: 12 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 1, y: 1} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &1443796531 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1443796532} m_Layer: 0 m_Name: arena_container m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1443796532 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1443796531} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 50} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1007297936} m_Father: {fileID: 930260305} m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 320, y: 140} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &1467740441 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 199640, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1467740442} - component: {fileID: 1467740444} - component: {fileID: 1467740443} m_Layer: 0 m_Name: TopRightBorder m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1467740442 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22405706, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1467740441} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1723617987} m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 1} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 1, y: 1} --- !u!114 &1467740443 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11400360, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1467740441} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: 361c275b93f22de45900062ada7925f1, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1467740444 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22236428, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1467740441} m_CullTransparentMesh: 0 --- !u!1001 &1470743182 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 1320941748} m_Modifications: - target: {fileID: 114540410594994212, guid: e304c26fb72bbec409a44c8b281d4f8c, type: 3} propertyPath: m_Color.r value: 1 objectReference: {fileID: 0} - target: {fileID: 114540410594994212, guid: e304c26fb72bbec409a44c8b281d4f8c, type: 3} propertyPath: m_Color.g value: 0 objectReference: {fileID: 0} - target: {fileID: 114540410594994212, guid: e304c26fb72bbec409a44c8b281d4f8c, type: 3} propertyPath: m_Color.b value: 0 objectReference: {fileID: 0} - target: {fileID: 114984367897565676, guid: e304c26fb72bbec409a44c8b281d4f8c, type: 3} propertyPath: m_Color.g value: 1 objectReference: {fileID: 0} - target: {fileID: 224013813592148948, guid: e304c26fb72bbec409a44c8b281d4f8c, type: 3} propertyPath: m_SizeDelta.x value: 25 objectReference: {fileID: 0} - target: {fileID: 224013813592148948, guid: e304c26fb72bbec409a44c8b281d4f8c, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 224013813592148948, guid: e304c26fb72bbec409a44c8b281d4f8c, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 224457915871606856, guid: e304c26fb72bbec409a44c8b281d4f8c, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 224457915871606856, guid: e304c26fb72bbec409a44c8b281d4f8c, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 224457915871606856, guid: e304c26fb72bbec409a44c8b281d4f8c, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 224457915871606856, guid: e304c26fb72bbec409a44c8b281d4f8c, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 224457915871606856, guid: e304c26fb72bbec409a44c8b281d4f8c, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 224457915871606856, guid: e304c26fb72bbec409a44c8b281d4f8c, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 224457915871606856, guid: e304c26fb72bbec409a44c8b281d4f8c, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 224457915871606856, guid: e304c26fb72bbec409a44c8b281d4f8c, type: 3} propertyPath: m_RootOrder value: 1 objectReference: {fileID: 0} - target: {fileID: 224457915871606856, guid: e304c26fb72bbec409a44c8b281d4f8c, type: 3} propertyPath: m_AnchoredPosition.x value: 31 objectReference: {fileID: 0} - target: {fileID: 224457915871606856, guid: e304c26fb72bbec409a44c8b281d4f8c, type: 3} propertyPath: m_AnchoredPosition.y value: -14 objectReference: {fileID: 0} - target: {fileID: 224457915871606856, guid: e304c26fb72bbec409a44c8b281d4f8c, type: 3} propertyPath: m_SizeDelta.x value: 25 objectReference: {fileID: 0} - target: {fileID: 224457915871606856, guid: e304c26fb72bbec409a44c8b281d4f8c, type: 3} propertyPath: m_SizeDelta.y value: 20 objectReference: {fileID: 0} - target: {fileID: 224457915871606856, guid: e304c26fb72bbec409a44c8b281d4f8c, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 224457915871606856, guid: e304c26fb72bbec409a44c8b281d4f8c, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 224457915871606856, guid: e304c26fb72bbec409a44c8b281d4f8c, type: 3} propertyPath: m_AnchorMax.x value: 0 objectReference: {fileID: 0} - target: {fileID: 224457915871606856, guid: e304c26fb72bbec409a44c8b281d4f8c, type: 3} propertyPath: m_AnchorMax.y value: 0 objectReference: {fileID: 0} - target: {fileID: 224457915871606856, guid: e304c26fb72bbec409a44c8b281d4f8c, type: 3} propertyPath: m_Pivot.x value: 0 objectReference: {fileID: 0} - target: {fileID: 224457915871606856, guid: e304c26fb72bbec409a44c8b281d4f8c, type: 3} propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} - target: {fileID: 224457915871606856, guid: e304c26fb72bbec409a44c8b281d4f8c, type: 3} propertyPath: m_LocalScale.x value: 1 objectReference: {fileID: 0} - target: {fileID: 224457915871606856, guid: e304c26fb72bbec409a44c8b281d4f8c, type: 3} propertyPath: m_LocalScale.y value: 1 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: e304c26fb72bbec409a44c8b281d4f8c, type: 3} --- !u!224 &1470743183 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 224457915871606856, guid: e304c26fb72bbec409a44c8b281d4f8c, type: 3} m_PrefabInstance: {fileID: 1470743182} m_PrefabAsset: {fileID: 0} --- !u!1 &1502133293 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1502133296} - component: {fileID: 1502133295} - component: {fileID: 1502133294} m_Layer: 5 m_Name: arena m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &1502133294 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1502133293} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1502133295 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1502133293} m_CullTransparentMesh: 0 --- !u!224 &1502133296 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1502133293} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 459985789} - {fileID: 610348798} - {fileID: 1197438038} m_Father: {fileID: 1007297936} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 565, y: 130} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &1509689743 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1509689744} - component: {fileID: 1509689747} - component: {fileID: 1509689746} - component: {fileID: 1509689748} - component: {fileID: 1509689745} - component: {fileID: 1509689749} - component: {fileID: 1509689750} - component: {fileID: 1509689751} - component: {fileID: 1509689753} - component: {fileID: 1509689752} - component: {fileID: 1509689754} m_Layer: 5 m_Name: player m_TagString: Player m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1509689744 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1509689743} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 40} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 930260305} m_RootOrder: 9 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 16, y: 16} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1509689745 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1509689743} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: ac5f21ef4909a934996482893b311592, type: 3} m_Name: m_EditorClassIdentifier: arenaBounds: {fileID: 1502133296} playerAbs: serializedVersion: 2 x: 0 y: 0 width: 0 height: 0 overrideControl: 0 selfImg: {fileID: 0} texture: [] lastMovement: {x: 0, y: 0} lastEnemyChosen: -1 lastHitMult: -1 deathMusic: deathText: [] deathEscape: 1 --- !u!114 &1509689746 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1509689743} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c152f559704a98f488c1e63266ed7418, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10913, guid: 0000000000000000f000000000000000, type: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 inverted: 0 --- !u!222 &1509689747 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1509689743} m_CullTransparentMesh: 0 --- !u!82 &1509689748 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1509689743} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 0.76 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 500 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 --- !u!114 &1509689749 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1509689743} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5b6761159c8f6224a8a895abea10dd25, type: 3} m_Name: m_EditorClassIdentifier: SpritePath: ut-heart Loop: 0 --- !u!114 &1509689750 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1509689743} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7bbc081086ab24d458b6c45dcf29bf75, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &1509689751 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1509689743} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 748e7f2c60fd0194f942eef4ac4f63d3, type: 3} m_Name: m_EditorClassIdentifier: playerIndex: -1 playerZ: -1 autolinebreakstate: 0 revived: 0 hasRevived: 0 reviveTextSet: 0 musicBefore: {fileID: 0} music: {fileID: 0} --- !u!114 &1509689752 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1509689743} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: -146154839, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &1509689753 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1509689743} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: -1200242548, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_ShowMaskGraphic: 0 --- !u!114 &1509689754 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1509689743} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1 &1546366359 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1546366360} - component: {fileID: 1546366362} - component: {fileID: 1546366361} m_Layer: 5 m_Name: GameOver m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1546366360 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1546366359} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1324215185} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 1} m_AnchorMax: {x: 0.5, y: 1} m_AnchoredPosition: {x: 0, y: -30} m_SizeDelta: {x: 422, y: 182} m_Pivot: {x: 0.5, y: 1} --- !u!114 &1546366361 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1546366359} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: 62f8426a429498442af34752c971234e, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1546366362 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1546366359} m_CullTransparentMesh: 0 --- !u!1001 &1565117936 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 930260305} m_Modifications: - target: {fileID: 11413288, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_Text value: Debugger (F9 to toggle, DEBUG(string) to print) objectReference: {fileID: 0} - target: {fileID: 11413288, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_FontData.m_Alignment value: 6 objectReference: {fileID: 0} - target: {fileID: 11413288, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_FontData.m_BestFit value: 0 objectReference: {fileID: 0} - target: {fileID: 11413288, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_FontData.m_HorizontalOverflow value: 0 objectReference: {fileID: 0} - target: {fileID: 11413288, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_FontData.m_VerticalOverflow value: 1 objectReference: {fileID: 0} - target: {fileID: 11413288, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_FontData.m_RichText value: 1 objectReference: {fileID: 0} - target: {fileID: 11413288, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_FontData.m_Font value: objectReference: {fileID: 12800000, guid: abd91933b51b6fc47931c535c62c6929, type: 3} - target: {fileID: 11413288, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_FontData.m_AlignByGeometry value: 0 objectReference: {fileID: 0} - target: {fileID: 11453098, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: maxLines value: 7 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_LocalRotation.x value: -0 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_LocalRotation.y value: -0 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_LocalRotation.z value: -0 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_RootOrder value: 13 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_AnchoredPosition.x value: 300 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_AnchoredPosition.y value: 240 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_SizeDelta.x value: 320 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_SizeDelta.y value: 140 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_Pivot.x value: 1 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_Pivot.y value: 1 objectReference: {fileID: 0} - target: {fileID: 22474774, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22474774, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_SizeDelta.x value: -10 objectReference: {fileID: 0} - target: {fileID: 22474774, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22474774, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_SizeDelta.y value: -10 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} --- !u!224 &1565117937 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} m_PrefabInstance: {fileID: 1565117936} m_PrefabAsset: {fileID: 0} --- !u!1 &1570704933 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1570704934} - component: {fileID: 1570704935} m_Layer: 5 m_Name: ReviveText m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1570704934 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1570704933} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1324215185} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 160, y: -148} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1570704935 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1570704933} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: $ currentLine: 0 _textMaxWidth: 320 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 columnShift: 265 columnNumber: 2 blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &1642330544 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 100010, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1642330545} - component: {fileID: 1642330547} - component: {fileID: 1642330546} m_Layer: 0 m_Name: BackVert m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1642330545 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22416422, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1642330544} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1723617987} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 60, y: 100} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1642330546 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11450012, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1642330544} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1642330547 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22288474, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1642330544} m_CullTransparentMesh: 0 --- !u!1 &1670131342 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 148596, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1670131343} - component: {fileID: 1670131345} - component: {fileID: 1670131344} m_Layer: 0 m_Name: SpeechThingShadow m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1670131343 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22408080, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1670131342} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1723617987} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 44, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1670131344 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11410606, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1670131342} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: 1c19ec938a1cccc4a9f09a1ce239c244, type: 3} m_Type: 0 m_PreserveAspect: 1 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1670131345 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22238732, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1670131342} m_CullTransparentMesh: 0 --- !u!1 &1673161715 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 127862, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1673161716} - component: {fileID: 1673161718} - component: {fileID: 1673161717} m_Layer: 0 m_Name: BottomRightBorder m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1673161716 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22419362, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1673161715} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 743543924} m_RootOrder: 8 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 0} m_AnchorMax: {x: 1, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 1, y: 0} --- !u!114 &1673161717 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11443696, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1673161715} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: 9bb9d61156064854da1ac61f68990ce9, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1673161718 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22277692, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1673161715} m_CullTransparentMesh: 0 --- !u!1 &1700996734 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 157610, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1700996735} - component: {fileID: 1700996737} - component: {fileID: 1700996736} m_Layer: 0 m_Name: BackHorz m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1700996735 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22498740, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1700996734} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 743543924} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 100, y: 60} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1700996736 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11441354, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1700996734} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1700996737 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22281488, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1700996734} m_CullTransparentMesh: 0 --- !u!1 &1723617986 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 191078, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1723617987} - component: {fileID: 1723617988} m_Layer: 0 m_Name: BubbleContainer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1723617987 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22496986, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1723617986} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 844207266} - {fileID: 1642330545} - {fileID: 1670131343} - {fileID: 1803020737} - {fileID: 1881438398} - {fileID: 1964965498} - {fileID: 1467740442} - {fileID: 913680303} - {fileID: 209795025} - {fileID: 185940574} m_Father: {fileID: 1339418278} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 318, y: 7} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &1723617988 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22259784, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1723617986} m_CullTransparentMesh: 0 --- !u!1 &1727881044 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1727881049} - component: {fileID: 1727881048} - component: {fileID: 1727881047} - component: {fileID: 1727881046} - component: {fileID: 1727881045} - component: {fileID: 1727881050} - component: {fileID: 1727881051} - component: {fileID: 1727881053} - component: {fileID: 1727881054} - component: {fileID: 1727881056} - component: {fileID: 1727881052} m_Layer: 0 m_Name: Main Camera m_TagString: MainCamera m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!81 &1727881045 AudioListener: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1727881044} m_Enabled: 1 --- !u!124 &1727881046 Behaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1727881044} m_Enabled: 1 --- !u!92 &1727881047 Behaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1727881044} m_Enabled: 1 --- !u!20 &1727881048 Camera: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1727881044} m_Enabled: 1 serializedVersion: 2 m_ClearFlags: 2 m_BackGroundColor: {r: 0, g: 0, b: 0, a: 1} m_projectionMatrixMode: 1 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} m_GateFitMode: 2 m_FocalLength: 50 m_NormalizedViewPortRect: serializedVersion: 2 x: 0 y: 0 width: 4 height: 3 near clip plane: 0.3 far clip plane: 1000 field of view: 120 orthographic: 1 orthographic size: 240 m_Depth: -1 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingPath: -1 m_TargetTexture: {fileID: 0} m_TargetDisplay: 0 m_TargetEye: 3 m_HDR: 0 m_AllowMSAA: 1 m_AllowDynamicResolution: 0 m_ForceIntoRT: 0 m_OcclusionCulling: 1 m_StereoConvergence: 10 m_StereoSeparation: 0.022 --- !u!4 &1727881049 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1727881044} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 320, y: 240, z: -10} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!82 &1727881050 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1727881044} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 0.75 m_Pitch: 1 Loop: 1 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 200 MaxDistance: 500 Pan2D: 0 rolloffMode: 0 BypassEffects: 1 BypassListenerEffects: 1 BypassReverbZones: 1 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 --- !u!114 &1727881051 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1727881044} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 4aa500e896f56ea4291706c581edeb86, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &1727881052 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1727881044} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: b7283c6f35cfc2a40b16bb214a8d4f62, type: 3} m_Name: m_EditorClassIdentifier: material: {fileID: 0} --- !u!114 &1727881053 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1727881044} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: e994334232641bd4ca342c48fcdb1605, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &1727881054 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1727881044} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c4ad3223d63ab6c4aaf6641272b8ed00, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &1727881056 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1727881044} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c3705032f8204464f8c52eb8313efd79, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1 &1745075053 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1745075054} - component: {fileID: 1745075056} - component: {fileID: 1745075055} - component: {fileID: 1745075058} - component: {fileID: 1745075057} m_Layer: 5 m_Name: FightBt m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1745075054 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1745075053} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1830754306} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 110, y: 42} m_Pivot: {x: 0, y: 0} --- !u!114 &1745075055 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1745075053} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1745075056 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1745075053} m_CullTransparentMesh: 0 --- !u!114 &1745075057 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1745075053} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5b6761159c8f6224a8a895abea10dd25, type: 3} m_Name: m_EditorClassIdentifier: SpritePath: UI/Buttons/fightbt_0 Loop: 0 --- !u!114 &1745075058 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1745075053} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1 &1776304109 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1776304110} m_Layer: 0 m_Name: GameOverContainer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1776304110 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1776304109} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -10} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 639286008} - {fileID: 1324215185} m_Father: {fileID: 0} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1803020736 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 171992, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1803020737} - component: {fileID: 1803020739} - component: {fileID: 1803020738} m_Layer: 0 m_Name: CenterHorz m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1803020737 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22425498, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1803020736} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1723617987} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 96, y: 60} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1803020738 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11452418, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1803020736} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1803020739 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22259690, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1803020736} m_CullTransparentMesh: 0 --- !u!1 &1830754305 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1830754306} - component: {fileID: 1830754308} - component: {fileID: 1830754307} m_Layer: 0 m_Name: UIRect m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1830754306 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1830754305} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 50} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1745075054} - {fileID: 991344420} - {fileID: 506907623} - {fileID: 1280180706} m_Father: {fileID: 930260305} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 321, y: 6} m_SizeDelta: {x: 578, y: 42} m_Pivot: {x: 0.5, y: 0} --- !u!114 &1830754307 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1830754305} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1830754308 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1830754305} m_CullTransparentMesh: 0 --- !u!1 &1861186314 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1861186315} - component: {fileID: 1861186317} - component: {fileID: 1861186316} m_Layer: 5 m_Name: ReviveFade m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1861186315 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1861186314} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 100} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1324215185} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1861186316 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1861186314} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: 62f8426a429498442af34752c971234e, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1861186317 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1861186314} m_CullTransparentMesh: 0 --- !u!1 &1881438397 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 174686, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1881438398} - component: {fileID: 1881438400} - component: {fileID: 1881438399} m_Layer: 0 m_Name: CenterVert m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1881438398 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22429080, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1881438397} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1723617987} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 60, y: 96} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1881438399 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11429644, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1881438397} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1881438400 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22243510, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1881438397} m_CullTransparentMesh: 0 --- !u!224 &1952845558 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22408240, guid: b52d5d8cf9ddaf740a8cf6024b1bca2f, type: 2} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 778448265} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -0.019} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1007297936} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 1} m_AnchorMax: {x: 0.5, y: 1} m_AnchoredPosition: {x: 0, y: 1} m_SizeDelta: {x: 640, y: 240} m_Pivot: {x: 0.5, y: 0} --- !u!1 &1964965497 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 159716, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1964965498} - component: {fileID: 1964965500} - component: {fileID: 1964965499} m_Layer: 0 m_Name: TopLeftBorder m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1964965498 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22456078, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1964965497} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1723617987} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!114 &1964965499 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11438016, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1964965497} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: d4b1335871fb6b549a5bd165cbc60327, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1964965500 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22203948, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1964965497} m_CullTransparentMesh: 0 --- !u!1 &2026747195 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2026747196} - component: {fileID: 2026747198} m_Layer: 0 m_Name: Stats m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &2026747196 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2026747195} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 50} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 358466701} - {fileID: 1320941748} m_Father: {fileID: 930260305} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 30, y: 74} m_SizeDelta: {x: 580, y: 15} m_Pivot: {x: 0, y: 0} --- !u!114 &2026747198 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2026747195} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: e8e6cf6dc9de35948a8aa4b886b22a86, type: 3} m_Name: m_EditorClassIdentifier: nameLevelTextMan: {fileID: 0} hpTextMan: {fileID: 0} lifebar: {fileID: 0} hpRect: {fileID: 0} stopUIUpdate: 0 hiddenUI: 0 --- !u!1 &2063039111 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2063039112} m_Layer: 5 m_Name: BelowPlayerLayer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &2063039112 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2063039111} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 930260305} m_RootOrder: 8 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 1, y: 1} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &2105576919 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 148596, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2105576920} - component: {fileID: 2105576922} - component: {fileID: 2105576921} m_Layer: 0 m_Name: SpeechThingShadow m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &2105576920 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22408080, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2105576919} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 743543924} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 44, y: 20} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &2105576921 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11410606, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2105576919} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: 1c19ec938a1cccc4a9f09a1ce239c244, type: 3} m_Type: 0 m_PreserveAspect: 1 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &2105576922 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22238732, guid: e24fd648e823f074cb0fcadd09d5b42a, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2105576919} m_CullTransparentMesh: 0 --- !u!1 &2124894572 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2124894573} - component: {fileID: 2124894574} m_Layer: 5 m_Name: BulletPool m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &2124894573 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2124894572} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 930260305} m_RootOrder: 11 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0, y: 0} --- !u!114 &2124894574 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2124894572} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 637c0b0085a6c1d4fb27b6adf117252e, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1 &2137545030 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2137545031} - component: {fileID: 2137545032} m_Layer: 5 m_Name: HPText m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &2137545031 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2137545030} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 743543924} m_Father: {fileID: 599533878} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 15, y: 15} m_Pivot: {x: 0, y: 0} --- !u!114 &2137545032 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2137545030} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9ac8dc980caea604a81186f096e200ea, type: 3} m_Name: m_EditorClassIdentifier: letterSound: currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 columnShift: 265 columnNumber: 2 blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 bubble: 0 progress: 0 autoSetLayer: 0 needFontReset: 0 noAutoLineBreak: 0 isMainTextObject: 0 noSelfAdvance: 0 deleteWhenFinished: 1 _color: {r: 1, g: 1, b: 1, a: 1} hasColorBeenSet: 0 hasAlphaBeenSet: 0 ================================================ FILE: Assets/Scenes/Battle.unity.meta ================================================ fileFormatVersion: 2 guid: 6087b29e19bd5d64b84b0108a19a9536 timeCreated: 1446580068 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scenes/Disclaimer.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 3 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 11 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 0 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 10 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 0 m_CompAOExponentDirect: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 1024 m_ReflectionCompression: 2 m_MixedBakeMode: 1 m_BakeBackend: 0 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 500 m_PVRBounces: 2 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVRFilteringMode: 1 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ShowResolutionOverlay: 1 m_LightingDataAsset: {fileID: 0} m_UseShadowmask: 0 --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1 &35400735 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 35400736} - component: {fileID: 35400738} - component: {fileID: 35400737} m_Layer: 5 m_Name: Contributors 1 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &35400736 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 35400735} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.2, y: 0.2, z: 1} m_Children: [] m_Father: {fileID: 1993447187} m_RootOrder: 9 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 1} m_AnchorMax: {x: 0.5, y: 1} m_AnchoredPosition: {x: -140, y: -340} m_SizeDelta: {x: 1600, y: 500} m_Pivot: {x: 0.5, y: 1} --- !u!114 &35400737 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 35400735} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 140 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 160 m_Alignment: 4 m_AlignByGeometry: 1 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 1 m_LineSpacing: 1 m_Text: 'Eir_nya Elytrafae alexytomi ' --- !u!222 &35400738 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 35400735} m_CullTransparentMesh: 0 --- !u!1 &77649875 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 77649876} - component: {fileID: 77649878} - component: {fileID: 77649877} m_Layer: 5 m_Name: Unitale Creator m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &77649876 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 77649875} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.2, y: 0.2, z: 1} m_Children: [] m_Father: {fileID: 1993447187} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 0, y: -120} m_SizeDelta: {x: 1600, y: 500} m_Pivot: {x: 0, y: 0.5} --- !u!114 &77649877 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 77649875} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 160 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 160 m_Alignment: 4 m_AlignByGeometry: 1 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 1 m_LineSpacing: 1 m_Text: Unitale Creator --- !u!222 &77649878 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 77649875} m_CullTransparentMesh: 0 --- !u!1 &170148565 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 170148566} - component: {fileID: 170148568} - component: {fileID: 170148567} m_Layer: 5 m_Name: Credits m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &170148566 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 170148565} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.19999999, y: 0.19999999, z: 1} m_Children: [] m_Father: {fileID: 1993447187} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 1} m_AnchorMax: {x: 0.5, y: 1} m_AnchoredPosition: {x: 0, y: -40} m_SizeDelta: {x: 2800, y: 500} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &170148567 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 170148565} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 240 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 240 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Credits --- !u!222 &170148568 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 170148565} m_CullTransparentMesh: 0 --- !u!1 &317379795 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 317379796} - component: {fileID: 317379798} - component: {fileID: 317379797} m_Layer: 5 m_Name: Logo m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &317379796 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 317379795} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1483471535} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 170} m_SizeDelta: {x: 525, y: 95} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &317379797 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 317379795} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: 0674d045b33b0ab428293d6c06be0106, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &317379798 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 317379795} m_CullTransparentMesh: 0 --- !u!1 &320470032 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 320470033} - component: {fileID: 320470035} - component: {fileID: 320470034} m_Layer: 5 m_Name: Toby Fox m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &320470033 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 320470032} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.2, y: 0.2, z: 1} m_Children: [] m_Father: {fileID: 1993447187} m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 1} m_AnchorMax: {x: 0.5, y: 1} m_AnchoredPosition: {x: 0, y: -250} m_SizeDelta: {x: 1600, y: 500} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &320470034 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 320470032} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 140 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 160 m_Alignment: 4 m_AlignByGeometry: 1 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 1 m_LineSpacing: 1 m_Text: Toby Fox --- !u!222 &320470035 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 320470032} m_CullTransparentMesh: 0 --- !u!1 &415764562 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 415764563} - component: {fileID: 415764565} - component: {fileID: 415764564} m_Layer: 5 m_Name: More Contributors m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &415764563 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 415764562} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.2, y: 0.2, z: 1} m_Children: [] m_Father: {fileID: 1993447187} m_RootOrder: 11 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0} m_AnchorMax: {x: 0.5, y: 0} m_AnchoredPosition: {x: 0, y: 20} m_SizeDelta: {x: 3200, y: 200} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &415764564 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 415764562} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.5019608, g: 0.5019608, b: 0.5019608, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 80 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 1 m_MaxSize: 80 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: 'Check the GitHub repository for details! Newer contributors may also not be in this list if they contributed after it was made!' --- !u!222 &415764565 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 415764562} m_CullTransparentMesh: 0 --- !u!1 &589038332 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 589038333} - component: {fileID: 589038335} - component: {fileID: 589038334} m_Layer: 5 m_Name: Version m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &589038333 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 589038332} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.2, y: 0.2, z: 1} m_Children: [] m_Father: {fileID: 1483471535} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 1} m_AnchorMax: {x: 0.5, y: 1} m_AnchoredPosition: {x: 0, y: -112} m_SizeDelta: {x: 500, y: 400} m_Pivot: {x: 0.5, y: 1} --- !u!114 &589038334 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 589038332} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 0, a: 1} m_RaycastTarget: 0 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 160 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 300 m_Alignment: 1 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 0.7 m_Text: 'v0.6.6 LTS 3' --- !u!222 &589038335 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 589038332} m_CullTransparentMesh: 0 --- !u!1 &643272688 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 643272689} - component: {fileID: 643272691} - component: {fileID: 643272690} m_Layer: 5 m_Name: Overworld m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &643272689 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 643272688} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.2, y: 0.2, z: 1} m_Children: [] m_Father: {fileID: 1483471535} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 0.5} m_AnchorMax: {x: 1, y: 0.5} m_AnchoredPosition: {x: -140, y: 0} m_SizeDelta: {x: 1000, y: 500} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &643272690 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 643272688} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 160 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 160 m_Alignment: 4 m_AlignByGeometry: 1 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 1 m_LineSpacing: 1 m_Text: 'Press Menu to go to the Overworld' --- !u!222 &643272691 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 643272688} m_CullTransparentMesh: 0 --- !u!1 &771992857 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 771992858} - component: {fileID: 771992860} - component: {fileID: 771992859} m_Layer: 5 m_Name: Contributors 2 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &771992858 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 771992857} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.2, y: 0.2, z: 1} m_Children: [] m_Father: {fileID: 1993447187} m_RootOrder: 10 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 1} m_AnchorMax: {x: 0.5, y: 1} m_AnchoredPosition: {x: 140, y: -340} m_SizeDelta: {x: 1600, y: 500} m_Pivot: {x: 0.5, y: 1} --- !u!114 &771992859 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 771992857} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 140 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 160 m_Alignment: 4 m_AlignByGeometry: 1 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 1 m_LineSpacing: 1 m_Text: 'NyakoFox nanodesuologist Shiftenas ' --- !u!222 &771992860 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 771992857} m_CullTransparentMesh: 0 --- !u!1 &890690844 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 890690845} - component: {fileID: 890690847} - component: {fileID: 890690846} m_Layer: 5 m_Name: DiscordPlug m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &890690845 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 890690844} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.2, y: 0.2, z: 1} m_Children: [] m_Father: {fileID: 1483471535} m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0} m_AnchorMax: {x: 0.5, y: 0} m_AnchoredPosition: {x: 0, y: 44} m_SizeDelta: {x: 2700, y: 100} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &890690846 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 890690844} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 80 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 1 m_MaxSize: 80 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: For support and newest versions, go to the Unitale Discord Server. --- !u!222 &890690847 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 890690844} m_CullTransparentMesh: 0 --- !u!1 &1020003805 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1020003806} - component: {fileID: 1020003808} - component: {fileID: 1020003807} m_Layer: 5 m_Name: ModSelect m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1020003806 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1020003805} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.2, y: 0.2, z: 1} m_Children: [] m_Father: {fileID: 1483471535} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.5} m_AnchorMax: {x: 0, y: 0.5} m_AnchoredPosition: {x: 140, y: 0} m_SizeDelta: {x: 1500, y: 650} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1020003807 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1020003805} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 160 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 300 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: 'Press Confirm or Click to go to the Mod Select Screen' --- !u!222 &1020003808 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1020003805} m_CullTransparentMesh: 0 --- !u!1 &1063287596 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1063287597} - component: {fileID: 1063287599} - component: {fileID: 1063287598} m_Layer: 5 m_Name: CYF Creator m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1063287597 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1063287596} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.2, y: 0.2, z: 1} m_Children: [] m_Father: {fileID: 1993447187} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 1} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: -120} m_SizeDelta: {x: 1600, y: 500} m_Pivot: {x: 1, y: 0.5} --- !u!114 &1063287598 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1063287596} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 160 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 160 m_Alignment: 4 m_AlignByGeometry: 1 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 1 m_LineSpacing: 1 m_Text: CYF Creator --- !u!222 &1063287599 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1063287596} m_CullTransparentMesh: 0 --- !u!1 &1126571342 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1126571343} - component: {fileID: 1126571345} - component: {fileID: 1126571344} m_Layer: 5 m_Name: RhenaudTheLukark m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1126571343 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1126571342} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.2, y: 0.2, z: 1} m_Children: [] m_Father: {fileID: 1993447187} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 1} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: -150} m_SizeDelta: {x: 1600, y: 500} m_Pivot: {x: 1, y: 0.5} --- !u!114 &1126571344 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1126571342} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 140 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 160 m_Alignment: 4 m_AlignByGeometry: 1 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 1 m_LineSpacing: 1 m_Text: RhenaudTheLukark --- !u!222 &1126571345 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1126571342} m_CullTransparentMesh: 0 --- !u!1 &1333890109 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1333890110} - component: {fileID: 1333890112} - component: {fileID: 1333890111} m_Layer: 5 m_Name: lvkuln m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1333890110 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1333890109} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.2, y: 0.2, z: 1} m_Children: [] m_Father: {fileID: 1993447187} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 0, y: -150} m_SizeDelta: {x: 1600, y: 500} m_Pivot: {x: 0, y: 0.5} --- !u!114 &1333890111 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1333890109} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 140 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 160 m_Alignment: 4 m_AlignByGeometry: 1 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 1 m_LineSpacing: 1 m_Text: lvkuln --- !u!222 &1333890112 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1333890109} m_CullTransparentMesh: 0 --- !u!1 &1349124949 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1349124950} - component: {fileID: 1349124952} - component: {fileID: 1349124951} m_Layer: 5 m_Name: LogoCrate m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1349124950 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1349124949} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1483471535} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 170} m_SizeDelta: {x: 525, y: 111} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1349124951 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1349124949} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: 397584d4b962e854cbaa80432fb093be, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1349124952 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1349124949} m_CullTransparentMesh: 0 --- !u!1 &1450756121 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1450756122} - component: {fileID: 1450756124} - component: {fileID: 1450756123} m_Layer: 5 m_Name: LegalStuff m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1450756122 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1450756121} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.2, y: 0.2, z: 1} m_Children: [] m_Father: {fileID: 1483471535} m_RootOrder: 8 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0} m_AnchorMax: {x: 0.5, y: 0} m_AnchoredPosition: {x: 0, y: 20} m_SizeDelta: {x: 3200, y: 400} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1450756123 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1450756121} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.5019608, g: 0.5019608, b: 0.5019608, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 80 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 1 m_MaxSize: 80 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: 'Create Your Frisk is not owned by Toby Fox. We do not endorse the sale of mods or derivative content using CYF.' --- !u!222 &1450756124 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1450756121} m_CullTransparentMesh: 0 --- !u!1 &1483471534 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1483471535} - component: {fileID: 1483471538} - component: {fileID: 1483471537} - component: {fileID: 1483471536} m_Layer: 5 m_Name: Canvas m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1483471535 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1483471534} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 317379796} - {fileID: 1349124950} - {fileID: 589038333} - {fileID: 1020003806} - {fileID: 2060783788} - {fileID: 643272689} - {fileID: 2007236153} - {fileID: 890690845} - {fileID: 1450756122} - {fileID: 1993447187} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 320, y: 240} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1483471536 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1483471534} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1301386320, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 4294967295 --- !u!114 &1483471537 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1483471534} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1980459831, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_UiScaleMode: 0 m_ReferencePixelsPerUnit: 1000000 m_ScaleFactor: 1 m_ReferenceResolution: {x: 640, y: 480} m_ScreenMatchMode: 1 m_MatchWidthOrHeight: 1 m_PhysicalUnit: 3 m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 --- !u!223 &1483471538 Canvas: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1483471534} m_Enabled: 1 serializedVersion: 3 m_RenderMode: 2 m_Camera: {fileID: 1852356662} m_PlaneDistance: 100 m_PixelPerfect: 1 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_AdditionalShaderChannelsFlag: 25 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 --- !u!1 &1512102148 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1512102149} - component: {fileID: 1512102151} - component: {fileID: 1512102150} m_Layer: 5 m_Name: CYF Contributors m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1512102149 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1512102148} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.2, y: 0.2, z: 1} m_Children: [] m_Father: {fileID: 1993447187} m_RootOrder: 8 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 1} m_AnchorMax: {x: 0.5, y: 1} m_AnchoredPosition: {x: 0, y: -320} m_SizeDelta: {x: 1600, y: 500} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1512102150 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1512102148} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 160 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 160 m_Alignment: 4 m_AlignByGeometry: 1 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 1 m_LineSpacing: 1 m_Text: CYF Contributors --- !u!222 &1512102151 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1512102148} m_CullTransparentMesh: 0 --- !u!1 &1569833513 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1569833514} - component: {fileID: 1569833516} - component: {fileID: 1569833515} m_Layer: 5 m_Name: Undertale Creator m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1569833514 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1569833513} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.2, y: 0.2, z: 1} m_Children: [] m_Father: {fileID: 1993447187} m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 1} m_AnchorMax: {x: 0.5, y: 1} m_AnchoredPosition: {x: 0, y: -220} m_SizeDelta: {x: 1600, y: 500} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1569833515 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1569833513} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 160 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 160 m_Alignment: 4 m_AlignByGeometry: 1 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 1 m_LineSpacing: 1 m_Text: Undertale Creator --- !u!222 &1569833516 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1569833513} m_CullTransparentMesh: 0 --- !u!1001 &1833248411 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 116878, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} propertyPath: m_Name value: Main Camera objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} propertyPath: m_LocalPosition.x value: 320 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} propertyPath: m_LocalPosition.y value: 240 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} propertyPath: m_LocalPosition.z value: -10 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} propertyPath: m_RootOrder value: 1 objectReference: {fileID: 0} - target: {fileID: 2064840, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} propertyPath: far clip plane value: 1000 objectReference: {fileID: 0} - target: {fileID: 2064840, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} propertyPath: m_AllowMSAA value: 0 objectReference: {fileID: 0} - target: {fileID: 2064840, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} propertyPath: m_AllowDynamicResolution value: 0 objectReference: {fileID: 0} - target: {fileID: 8273166, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} propertyPath: panLevelCustomCurve.m_RotationOrder value: 0 objectReference: {fileID: 0} - target: {fileID: 8273166, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} propertyPath: spreadCustomCurve.m_RotationOrder value: 0 objectReference: {fileID: 0} - target: {fileID: 8273166, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} propertyPath: reverbZoneMixCustomCurve.m_RotationOrder value: 0 objectReference: {fileID: 0} - target: {fileID: 8273166, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} propertyPath: reverbZoneMixCustomCurve.m_Curve.Array.data[0].value value: 0.454 objectReference: {fileID: 0} - target: {fileID: 8273166, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} propertyPath: spreadCustomCurve.m_Curve.Array.data[0].value value: 0 objectReference: {fileID: 0} - target: {fileID: 11437768, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} propertyPath: EDITOR_MODFOLDER value: Title objectReference: {fileID: 0} - target: {fileID: 11437768, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} propertyPath: EDITOR_ENCOUNTER value: objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} --- !u!1 &1852356654 stripped GameObject: m_CorrespondingSourceObject: {fileID: 116878, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} m_PrefabInstance: {fileID: 1833248411} m_PrefabAsset: {fileID: 0} --- !u!20 &1852356662 stripped Camera: m_CorrespondingSourceObject: {fileID: 2064840, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} m_PrefabInstance: {fileID: 1833248411} m_PrefabAsset: {fileID: 0} --- !u!114 &1852356665 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1852356654} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9bd50ecadbfbacf46ad8dd648d78ede8, type: 3} m_Name: m_EditorClassIdentifier: Logo: {fileID: 317379795} LogoCrate: {fileID: 1349124949} RedditPlug: {fileID: 890690844} LegalStuff: {fileID: 1450756121} ModSelection: {fileID: 1020003805} Overworld: {fileID: 643272688} LuaKnowledgeDisclaimer: {fileID: 2007236152} Version: {fileID: 589038332} --- !u!1 &1967234328 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1967234329} - component: {fileID: 1967234331} - component: {fileID: 1967234330} m_Layer: 5 m_Name: CreditsUnprompt m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1967234329 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1967234328} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.2, y: 0.2, z: 1} m_Children: [] m_Father: {fileID: 1993447187} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 1} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: -120, y: 0} m_SizeDelta: {x: 1000, y: 400} m_Pivot: {x: 0.5, y: 1} --- !u!114 &1967234330 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1967234328} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.5019608, g: 0.5019608, b: 0.5019608, a: 1} m_RaycastTarget: 0 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 120 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 300 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 0.7 m_Text: "Press Up to \nexit the Credits" --- !u!222 &1967234331 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1967234328} m_CullTransparentMesh: 0 --- !u!1 &1993447186 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1993447187} m_Layer: 5 m_Name: CreditsContainer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1993447187 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1993447186} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 170148566} - {fileID: 1967234329} - {fileID: 77649876} - {fileID: 1333890110} - {fileID: 1063287597} - {fileID: 1126571343} - {fileID: 1569833514} - {fileID: 320470033} - {fileID: 1512102149} - {fileID: 35400736} - {fileID: 771992858} - {fileID: 415764563} m_Father: {fileID: 1483471535} m_RootOrder: 9 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: -480} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &2007236152 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2007236153} - component: {fileID: 2007236155} - component: {fileID: 2007236154} m_Layer: 5 m_Name: TheTextNobodyReadsEver m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &2007236153 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2007236152} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.2, y: 0.2, z: 1} m_Children: [] m_Father: {fileID: 1483471535} m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0} m_AnchorMax: {x: 0.5, y: 0} m_AnchoredPosition: {x: 0, y: 126} m_SizeDelta: {x: 2800, y: 500} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &2007236154 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2007236152} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 240 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 240 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: 'Lua experience is REQUIRED to make your own mods!!' --- !u!222 &2007236155 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2007236152} m_CullTransparentMesh: 0 --- !u!1 &2060783787 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2060783788} - component: {fileID: 2060783790} - component: {fileID: 2060783789} m_Layer: 5 m_Name: CreditsPrompt m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &2060783788 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2060783787} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.2, y: 0.2, z: 1} m_Children: [] m_Father: {fileID: 1483471535} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 1500, y: 650} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &2060783789 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2060783787} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 160 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 300 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: 'Press Down to go to the Credits' --- !u!222 &2060783790 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2060783787} m_CullTransparentMesh: 0 ================================================ FILE: Assets/Scenes/Disclaimer.unity.meta ================================================ fileFormatVersion: 2 guid: 0795b548afc102e4d820e5d2e6696939 timeCreated: 1449065789 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scenes/EnterName.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 3 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 11 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 0 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 10 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 0 m_CompAOExponentDirect: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 1024 m_ReflectionCompression: 2 m_MixedBakeMode: 1 m_BakeBackend: 0 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 500 m_PVRBounces: 2 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVRFilteringMode: 1 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ShowResolutionOverlay: 1 m_LightingDataAsset: {fileID: 0} m_UseShadowmask: 0 --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1 &70343588 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 70343590} - component: {fileID: 70343589} m_Layer: 0 m_Name: Backspace m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!212 &70343589 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 70343588} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_RendererPriority: 0 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 39ab55ea4fe2aee4f8e6a9de711af39e, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!4 &70343590 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 70343588} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -18, y: -180, z: 0} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: [] m_Father: {fileID: 371661683} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &208649506 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 208649507} - component: {fileID: 208649508} m_Layer: 0 m_Name: Blank m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &208649507 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 208649506} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -1} m_LocalScale: {x: 1000, y: 100, z: 1} m_Children: [] m_Father: {fileID: 371661683} m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!212 &208649508 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 208649506} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_RendererPriority: 0 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 62f8426a429498442af34752c971234e, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 0} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!1001 &304832592 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 617734219} m_Modifications: - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.x value: -0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.y value: -0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.z value: -0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_RootOrder value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchoredPosition.x value: -200 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchoredPosition.y value: 94 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_SizeDelta.x value: 20 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_SizeDelta.y value: 20 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_Pivot.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_Pivot.y value: 1 objectReference: {fileID: 0} - target: {fileID: 133404, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_Name value: TextManager LettersMaj objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_LocalRotation.x value: -0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_LocalRotation.y value: -0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_LocalRotation.z value: -0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_RootOrder value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_AnchoredPosition.x value: -200 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_AnchoredPosition.y value: 94 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_SizeDelta.x value: 20 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_SizeDelta.y value: 20 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_Pivot.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_Pivot.y value: 1 objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 11454028, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} m_SourcePrefab: {fileID: 100100000, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} --- !u!1 &304832593 stripped GameObject: m_CorrespondingSourceObject: {fileID: 133404, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_PrefabInternal: {fileID: 304832592} --- !u!114 &304832594 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 11440668, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_PrefabInternal: {fileID: 304832592} m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} --- !u!224 &348456391 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} m_PrefabInstance: {fileID: 1505499046} m_PrefabAsset: {fileID: 0} --- !u!1 &371661679 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 371661683} - component: {fileID: 371661682} - component: {fileID: 371661681} - component: {fileID: 371661680} m_Layer: 5 m_Name: Canvas m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &371661680 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 371661679} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1301386320, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 4294967295 --- !u!114 &371661681 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 371661679} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1980459831, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_UiScaleMode: 0 m_ReferencePixelsPerUnit: 100 m_ScaleFactor: 1 m_ReferenceResolution: {x: 800, y: 600} m_ScreenMatchMode: 0 m_MatchWidthOrHeight: 0 m_PhysicalUnit: 3 m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 --- !u!223 &371661682 Canvas: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 371661679} m_Enabled: 1 serializedVersion: 3 m_RenderMode: 2 m_Camera: {fileID: 1657447210} m_PlaneDistance: 100 m_PixelPerfect: 0 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_AdditionalShaderChannelsFlag: 25 m_SortingLayerID: 0 m_SortingOrder: 1 m_TargetDisplay: 0 --- !u!224 &371661683 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 371661679} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 100} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1822258032} - {fileID: 348456391} - {fileID: 617734219} - {fileID: 1836782277} - {fileID: 70343590} - {fileID: 399737705} - {fileID: 208649507} m_Father: {fileID: 0} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 320, y: 240} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &399737703 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 399737705} - component: {fileID: 399737704} m_Layer: 0 m_Name: Done m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!212 &399737704 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 399737703} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_RendererPriority: 0 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 66debab4d8cd33d4c8fcf7895f5f7dd4, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!4 &399737705 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 399737703} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 147, y: -177, z: 0} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: [] m_Father: {fileID: 371661683} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &617734218 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 617734219} m_Layer: 5 m_Name: NameText m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &617734219 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 617734218} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1885555916} - {fileID: 2098505797} m_Father: {fileID: 371661683} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} --- !u!1001 &1505499046 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 371661683} m_Modifications: - target: {fileID: 133404, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_Name value: TextManager Name objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_RootOrder value: 1 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_AnchoredPosition.x value: -71 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_AnchoredPosition.y value: 145 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_SizeDelta.x value: 20 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_SizeDelta.y value: 20 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_Pivot.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_Pivot.y value: 1 objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 11454028, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_SourcePrefab: {fileID: 100100000, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_IsPrefabAsset: 0 --- !u!114 &1505499047 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 11440668, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_PrefabInternal: {fileID: 1505499046} m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} --- !u!1 &1567966282 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1567966284} - component: {fileID: 1567966283} m_Layer: 0 m_Name: Instructions m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 0 --- !u!212 &1567966283 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1567966282} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_RendererPriority: 0 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: f09cd2915d3a2ee478ad0b6df0cf1d84, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!4 &1567966284 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1567966282} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 320, y: 240, z: 0} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1001 &1657447209 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} propertyPath: m_LocalPosition.x value: 320 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} propertyPath: m_LocalPosition.y value: 240 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} propertyPath: m_RootOrder value: 2 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} --- !u!20 &1657447210 stripped Camera: m_CorrespondingSourceObject: {fileID: 2064840, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 3} m_PrefabInstance: {fileID: 1657447209} m_PrefabAsset: {fileID: 0} --- !u!224 &1822258032 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} m_PrefabInstance: {fileID: 1989317943} m_PrefabAsset: {fileID: 0} --- !u!1 &1836782275 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1836782277} - component: {fileID: 1836782276} m_Layer: 0 m_Name: Quit m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!212 &1836782276 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1836782275} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_RendererPriority: 0 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 7bf5b12e535ac734fbd6913f187a2d72, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!4 &1836782277 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1836782275} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -173.5, y: -178, z: 0} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: [] m_Father: {fileID: 371661683} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!224 &1885555916 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} m_PrefabInstance: {fileID: 304832592} m_PrefabAsset: {fileID: 0} --- !u!1001 &1961211225 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 617734219} m_Modifications: - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.x value: -0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.y value: -0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.z value: -0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_RootOrder value: 1 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchoredPosition.x value: -200 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchoredPosition.y value: -26 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_SizeDelta.x value: 20 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_SizeDelta.y value: 20 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_Pivot.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_Pivot.y value: 1 objectReference: {fileID: 0} - target: {fileID: 133404, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_Name value: TextManager LettersMin objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_LocalRotation.x value: -0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_LocalRotation.y value: -0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_LocalRotation.z value: -0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_RootOrder value: 1 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_AnchoredPosition.x value: -200 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_AnchoredPosition.y value: -26 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_SizeDelta.x value: 20 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_SizeDelta.y value: 20 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_Pivot.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_Pivot.y value: 1 objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 11454028, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} m_SourcePrefab: {fileID: 100100000, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} --- !u!1 &1961211226 stripped GameObject: m_CorrespondingSourceObject: {fileID: 133404, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_PrefabInternal: {fileID: 1961211225} --- !u!114 &1961211227 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 11440668, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_PrefabInternal: {fileID: 1961211225} m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} --- !u!1001 &1989317943 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 371661683} m_Modifications: - target: {fileID: 133404, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: m_Name value: TextManager Instructions objectReference: {fileID: 0} - target: {fileID: 11454028, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: objLettersMaj value: objectReference: {fileID: 304832593} - target: {fileID: 11454028, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} propertyPath: objLettersMin value: objectReference: {fileID: 1961211226} - target: {fileID: 11454028, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: textObjFolder value: objectReference: {fileID: 617734218} - target: {fileID: 11454028, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: tmInstr value: objectReference: {fileID: 1989317945} - target: {fileID: 11454028, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: uiAudio value: objectReference: {fileID: 1989317944} - target: {fileID: 11454028, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: tmName value: objectReference: {fileID: 1505499047} - target: {fileID: 11454028, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: tmLettersMaj value: objectReference: {fileID: 304832594} - target: {fileID: 11454028, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: tmLettersMin value: objectReference: {fileID: 1961211227} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_IsPrefabAsset: 0 --- !u!82 &1989317944 stripped AudioSource: m_CorrespondingSourceObject: {fileID: 8254258, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_PrefabInternal: {fileID: 1989317943} --- !u!114 &1989317945 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 11440668, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_PrefabInternal: {fileID: 1989317943} m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} --- !u!224 &2098505797 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 3} m_PrefabInstance: {fileID: 1961211225} m_PrefabAsset: {fileID: 0} ================================================ FILE: Assets/Scenes/EnterName.unity.meta ================================================ fileFormatVersion: 2 guid: 9bdbfca8d1f425843ae466352228e423 timeCreated: 1463948222 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scenes/Error.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 3 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 11 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_TemporalCoherenceThreshold: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 0 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 10 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 0 m_CompAOExponentDirect: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 1024 m_ReflectionCompression: 2 m_MixedBakeMode: 1 m_BakeBackend: 0 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 500 m_PVRBounces: 2 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVRFilteringMode: 0 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ShowResolutionOverlay: 1 m_LightingDataAsset: {fileID: 0} m_UseShadowmask: 0 --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1 &480178566 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 480178569} - component: {fileID: 480178568} - component: {fileID: 480178567} - component: {fileID: 480178570} m_Layer: 5 m_Name: wof m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &480178567 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 480178566} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 21300000, guid: 8eeccc793ca13f14fbd24a23b1472f78, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!222 &480178568 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 480178566} m_CullTransparentMesh: 0 --- !u!224 &480178569 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 480178566} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 2015817377} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 0} m_AnchorMax: {x: 1, y: 0} m_AnchoredPosition: {x: -60, y: 60} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &480178570 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 480178566} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 3f1f4f0e18bcc1b498c4b4eebcee4715, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1 &993327293 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 993327297} - component: {fileID: 993327296} - component: {fileID: 993327295} - component: {fileID: 993327294} m_Layer: 5 m_Name: Text m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 4294967295 m_IsActive: 1 --- !u!114 &993327294 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 993327293} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: e56ebaefbc7b5bc44915ab30c9b65d86, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &993327295 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 993327293} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_FontData: m_Font: {fileID: 12800000, guid: abd91933b51b6fc47931c535c62c6929, type: 3} m_FontSize: 18 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 0 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: 'Your Lua errors will appear here. If you''re not in the Unity editor, you shouldn''t actually be reading this text. Press Esc to reset.' --- !u!222 &993327296 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 993327293} m_CullTransparentMesh: 0 --- !u!224 &993327297 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 993327293} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 2015817377} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: -20, y: -20} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &1340758402 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1340758407} - component: {fileID: 1340758406} - component: {fileID: 1340758405} - component: {fileID: 1340758404} - component: {fileID: 1340758403} - component: {fileID: 1340758408} m_Layer: 0 m_Name: Main Camera m_TagString: MainCamera m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!81 &1340758403 AudioListener: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1340758402} m_Enabled: 1 --- !u!124 &1340758404 Behaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1340758402} m_Enabled: 1 --- !u!92 &1340758405 Behaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1340758402} m_Enabled: 1 --- !u!20 &1340758406 Camera: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1340758402} m_Enabled: 1 serializedVersion: 2 m_ClearFlags: 1 m_BackGroundColor: {r: 0, g: 0, b: 0, a: 0.019607844} m_projectionMatrixMode: 1 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} m_FocalLength: 50 m_NormalizedViewPortRect: serializedVersion: 2 x: 0 y: 0 width: 1 height: 1 near clip plane: 0.3 far clip plane: 1000 field of view: 60 orthographic: 1 orthographic size: 240 m_Depth: -1 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingPath: -1 m_TargetTexture: {fileID: 0} m_TargetDisplay: 0 m_TargetEye: 3 m_HDR: 0 m_AllowMSAA: 1 m_AllowDynamicResolution: 0 m_ForceIntoRT: 0 m_OcclusionCulling: 1 m_StereoConvergence: 10 m_StereoSeparation: 0.022 --- !u!4 &1340758407 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1340758402} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 320, y: 240, z: -10} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1340758408 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1340758402} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: e994334232641bd4ca342c48fcdb1605, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1001 &1874311922 Prefab: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 2015817377} m_Modifications: - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_RootOrder value: 2 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_AnchoredPosition.y value: -140 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_SizeDelta.x value: 250 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_SizeDelta.y value: 189 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_AnchorMax.y value: 0 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} m_IsPrefabAsset: 0 --- !u!224 &1874311923 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} m_PrefabInternal: {fileID: 1874311922} --- !u!1 &2015817376 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2015817377} - component: {fileID: 2015817380} - component: {fileID: 2015817379} - component: {fileID: 2015817378} m_Layer: 5 m_Name: Canvas m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &2015817377 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 2015817376} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0, y: 0, z: 0} m_Children: - {fileID: 993327297} - {fileID: 480178569} - {fileID: 1874311923} m_Father: {fileID: 0} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0, y: 0} --- !u!114 &2015817378 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 2015817376} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1301386320, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 4294967295 --- !u!114 &2015817379 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 2015817376} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1980459831, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_UiScaleMode: 1 m_ReferencePixelsPerUnit: 100 m_ScaleFactor: 1 m_ReferenceResolution: {x: 640, y: 480} m_ScreenMatchMode: 0 m_MatchWidthOrHeight: 1 m_PhysicalUnit: 3 m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 --- !u!223 &2015817380 Canvas: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 2015817376} m_Enabled: 1 serializedVersion: 3 m_RenderMode: 1 m_Camera: {fileID: 1340758406} m_PlaneDistance: 100 m_PixelPerfect: 0 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_AdditionalShaderChannelsFlag: 25 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 ================================================ FILE: Assets/Scenes/Error.unity.meta ================================================ fileFormatVersion: 2 guid: a7d68a9279560f449b7139c815237bd7 timeCreated: 1449439879 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scenes/Intro.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 3 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 11 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_TemporalCoherenceThreshold: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 0 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 10 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 0 m_CompAOExponentDirect: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 1024 m_ReflectionCompression: 2 m_MixedBakeMode: 1 m_BakeBackend: 0 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 500 m_PVRBounces: 2 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVRFilteringMode: 1 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ShowResolutionOverlay: 1 m_LightingDataAsset: {fileID: 0} m_UseShadowmask: 0 --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1001 &271777944 Prefab: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} propertyPath: m_LocalPosition.x value: 320 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} propertyPath: m_LocalPosition.y value: 240 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} propertyPath: m_LocalPosition.z value: -10000 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} propertyPath: m_RootOrder value: 1 objectReference: {fileID: 0} - target: {fileID: 11437768, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} propertyPath: EDITOR_MODFOLDER value: Title objectReference: {fileID: 0} - target: {fileID: 11437768, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} propertyPath: EDITOR_ENCOUNTER value: objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} m_IsPrefabAsset: 0 --- !u!20 &271777945 stripped Camera: m_CorrespondingSourceObject: {fileID: 2064840, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} m_PrefabInternal: {fileID: 271777944} --- !u!1001 &465394223 Prefab: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 1424168614} m_Modifications: - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_RootOrder value: 2 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchoredPosition.x value: -200 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchoredPosition.y value: -78 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_SizeDelta.x value: 20 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_SizeDelta.y value: 20 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_Pivot.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_Pivot.y value: 1 objectReference: {fileID: 0} - target: {fileID: 133404, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_Name value: TextManager objectReference: {fileID: 0} - target: {fileID: 11440668, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: _textMaxWidth value: 400 objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 11454028, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_SourcePrefab: {fileID: 100100000, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_IsPrefabAsset: 0 --- !u!224 &465394224 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_PrefabInternal: {fileID: 465394223} --- !u!1 &545963843 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 545963844} - component: {fileID: 545963846} - component: {fileID: 545963845} m_Layer: 5 m_Name: CutsceneImages m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &545963844 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 545963843} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1424168614} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &545963845 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 545963843} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 21300000, guid: 99336c624415c11429e928e9e1751014, type: 3} m_Type: 0 m_PreserveAspect: 1 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!222 &545963846 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 545963843} m_CullTransparentMesh: 0 --- !u!1 &808528698 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 808528699} - component: {fileID: 808528701} - component: {fileID: 808528700} m_Layer: 5 m_Name: Mask m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &808528699 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 808528698} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1424168614} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &808528700 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 808528698} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!222 &808528701 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 808528698} m_CullTransparentMesh: 0 --- !u!1 &1424168610 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1424168614} - component: {fileID: 1424168613} - component: {fileID: 1424168612} - component: {fileID: 1424168611} - component: {fileID: 1424168615} m_Layer: 5 m_Name: Canvas m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &1424168611 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1424168610} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1301386320, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 4294967295 --- !u!114 &1424168612 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1424168610} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1980459831, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_UiScaleMode: 0 m_ReferencePixelsPerUnit: 100 m_ScaleFactor: 1 m_ReferenceResolution: {x: 800, y: 600} m_ScreenMatchMode: 0 m_MatchWidthOrHeight: 0 m_PhysicalUnit: 3 m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 --- !u!223 &1424168613 Canvas: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1424168610} m_Enabled: 1 serializedVersion: 3 m_RenderMode: 2 m_Camera: {fileID: 271777945} m_PlaneDistance: 100 m_PixelPerfect: 0 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_AdditionalShaderChannelsFlag: 25 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 --- !u!224 &1424168614 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1424168610} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 545963844} - {fileID: 808528699} - {fileID: 465394224} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 320, y: 240} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1424168615 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1424168610} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6745c757768b2134396024317226f9a7, type: 3} m_Name: m_EditorClassIdentifier: imagePaths: - spr_introimage_0 - spr_introimage_1 - spr_introimage_2 - spr_introimage_3 - spr_introimage_4 - spr_introimage_5 - spr_introimage_6 - spr_introimage_7 - spr_introimage_8 - spr_introimage_9 - spr_introlast_0 textsToDisplay: - Long ago,[w:15] two races\nruled over Earth:[w:15]\nHUMANS and MONSTERS. - One day,[w:15] war broke\nout between the two\nraces. - After a long battle,[w:15]\nthe humans were victorious. - They sealed the monsters\nunderground with a magic\nspell. - Many years later.[w:15].[w:15]. - '[novoice] [voice:uifont]MT. EBOTT\n[novoice] [voice:uifont]201X' - Legends say that those\nwho climb the mountain\nnever return. - '[w:115][novoice] ' - '[w:115][novoice] ' - '[w:115][novoice] ' - '[w:550][novoice] ' specialEffects: - - - - - - - - - - - SCROLLUP goToNextDirect: - - - - - - - - - - - ================================================ FILE: Assets/Scenes/Intro.unity.meta ================================================ fileFormatVersion: 2 guid: 0e4b915e2e8b37e40b67eb305cb3b9df timeCreated: 1483300132 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scenes/KeybindSettings.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 3 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 11 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 0 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 10 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 1 m_CompAOExponentDirect: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 256 m_ReflectionCompression: 2 m_MixedBakeMode: 2 m_BakeBackend: 1 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 500 m_PVRBounces: 2 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVRFilteringMode: 1 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ShowResolutionOverlay: 1 m_LightingDataAsset: {fileID: 0} m_UseShadowmask: 1 --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!224 &5970173 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} m_PrefabInstance: {fileID: 6195791464686670966} m_PrefabAsset: {fileID: 0} --- !u!1001 &182826124 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 1235065859} m_Modifications: - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_Alignment value: 4 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Text value: Back objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_FontSize value: 16 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_MaxSize value: 212 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_MinSize value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Name value: Back objectReference: {fileID: 0} - target: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_IsActive value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.x value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.y value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.z value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_RootOrder value: 11 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 180 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 20 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: 100 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: 40 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.r value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.g value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.b value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.a value: 0.5019608 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} --- !u!224 &182826125 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 182826124} m_PrefabAsset: {fileID: 0} --- !u!114 &182826126 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 6408004043003039570, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 182826124} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1392445389, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1001 &244342558 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 1235065859} m_Modifications: - target: {fileID: 6195791463972921763, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Text value: Cancel objectReference: {fileID: 0} - target: {fileID: 6195791464691190922, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Name value: Cancel objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_RootOrder value: 1 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchoredPosition.x value: 20 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchoredPosition.y value: -70 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_SizeDelta.x value: 300 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_SizeDelta.y value: 40 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchorMin.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchorMax.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchorMax.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Pivot.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Pivot.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6195791465658335273, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Text value: X, LeftShift, RightShift objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 5c826c0d5339343438211217ebd3152c, type: 3} --- !u!224 &244342559 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} m_PrefabInstance: {fileID: 244342558} m_PrefabAsset: {fileID: 0} --- !u!1001 &260251773 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 1235065859} m_Modifications: - target: {fileID: 6195791463972921763, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Text value: Right objectReference: {fileID: 0} - target: {fileID: 6195791464691190922, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Name value: Right objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_RootOrder value: 6 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchoredPosition.x value: 20 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchoredPosition.y value: -320 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_SizeDelta.x value: 300 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_SizeDelta.y value: 40 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchorMin.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchorMax.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchorMax.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Pivot.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Pivot.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6195791465658335273, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Text value: D, RightArrow objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 5c826c0d5339343438211217ebd3152c, type: 3} --- !u!224 &260251774 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} m_PrefabInstance: {fileID: 260251773} m_PrefabAsset: {fileID: 0} --- !u!1001 &356226453 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 1235065859} m_Modifications: - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_Alignment value: 4 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Text value: Save objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_FontSize value: 16 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_MaxSize value: 212 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_MinSize value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Name value: Save objectReference: {fileID: 0} - target: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_IsActive value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.x value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.y value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.z value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_RootOrder value: 7 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: -180 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 20 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: 100 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: 40 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.r value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.g value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.b value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.a value: 0.5019608 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} --- !u!224 &356226454 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 356226453} m_PrefabAsset: {fileID: 0} --- !u!114 &356226455 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 6408004043003039570, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 356226453} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1392445389, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1 &427268937 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 427268940} - component: {fileID: 427268939} - component: {fileID: 427268938} - component: {fileID: 427268941} - component: {fileID: 427268942} m_Layer: 0 m_Name: Main Camera m_TagString: MainCamera m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!81 &427268938 AudioListener: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 427268937} m_Enabled: 1 --- !u!20 &427268939 Camera: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 427268937} m_Enabled: 1 serializedVersion: 2 m_ClearFlags: 1 m_BackGroundColor: {r: 0, g: 0, b: 0, a: 0} m_projectionMatrixMode: 1 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} m_GateFitMode: 2 m_FocalLength: 50 m_NormalizedViewPortRect: serializedVersion: 2 x: 0 y: 0 width: 4 height: 3 near clip plane: 0.3 far clip plane: 1000 field of view: 60 orthographic: 1 orthographic size: 240 m_Depth: -1 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingPath: -1 m_TargetTexture: {fileID: 0} m_TargetDisplay: 0 m_TargetEye: 3 m_HDR: 0 m_AllowMSAA: 0 m_AllowDynamicResolution: 0 m_ForceIntoRT: 0 m_OcclusionCulling: 1 m_StereoConvergence: 10 m_StereoSeparation: 0.022 --- !u!4 &427268940 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 427268937} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 320, y: 240, z: -20} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &427268941 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 427268937} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: aab9c60fbfe800a4c8b71de27310ecf4, type: 3} m_Name: m_EditorClassIdentifier: Confirm: {fileID: 1496962534} Cancel: {fileID: 1194244628} Menu: {fileID: 1705941982} Up: {fileID: 679873567} Left: {fileID: 1746013827} Down: {fileID: 1331792659} Right: {fileID: 1704067383} Listening: {fileID: 807607704} Save: {fileID: 356226455} ResetAll: {fileID: 1934178443} Restore: {fileID: 724436461} Back: {fileID: 182826126} listening: {fileID: 0} --- !u!114 &427268942 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 427268937} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: e994334232641bd4ca342c48fcdb1605, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &679873567 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 6437133863614902638, guid: 5c826c0d5339343438211217ebd3152c, type: 3} m_PrefabInstance: {fileID: 2029917130} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9580cf12eed84fd479de25a93c2e8b8d, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1001 &724436459 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 1235065859} m_Modifications: - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_Alignment value: 4 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Text value: Restore objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_FontSize value: 16 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_MaxSize value: 212 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_MinSize value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Name value: Restore objectReference: {fileID: 0} - target: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_IsActive value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.x value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.y value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.z value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_RootOrder value: 10 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 60 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 20 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: 100 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: 40 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.r value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.g value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.b value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.a value: 0.5019608 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} --- !u!224 &724436460 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 724436459} m_PrefabAsset: {fileID: 0} --- !u!114 &724436461 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 6408004043003039570, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 724436459} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1392445389, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1 &807607702 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 807607703} - component: {fileID: 807607705} - component: {fileID: 807607704} m_Layer: 5 m_Name: Listening m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &807607703 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 807607702} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1235065859} m_RootOrder: 8 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0} m_AnchorMax: {x: 0.5, y: 0} m_AnchoredPosition: {x: 0, y: 80} m_SizeDelta: {x: 600, y: 30} m_Pivot: {x: 0.5, y: 0} --- !u!114 &807607704 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 807607702} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 32 m_FontStyle: 0 m_BestFit: 1 m_MinSize: 4 m_MaxSize: 32 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Not currently listening... --- !u!222 &807607705 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 807607702} m_CullTransparentMesh: 0 --- !u!1001 &862187447 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 1235065859} m_Modifications: - target: {fileID: 6195791463972921763, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Text value: Left objectReference: {fileID: 0} - target: {fileID: 6195791464691190922, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Name value: Left objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_RootOrder value: 4 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchoredPosition.x value: 20 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchoredPosition.y value: -220 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_SizeDelta.x value: 300 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_SizeDelta.y value: 40 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchorMin.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchorMax.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchorMax.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Pivot.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Pivot.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6195791465658335273, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Text value: A, LeftArrow objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 5c826c0d5339343438211217ebd3152c, type: 3} --- !u!224 &862187448 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} m_PrefabInstance: {fileID: 862187447} m_PrefabAsset: {fileID: 0} --- !u!1001 &1167756897 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 1235065859} m_Modifications: - target: {fileID: 6195791463972921763, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Text value: Down objectReference: {fileID: 0} - target: {fileID: 6195791464691190922, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Name value: Down objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_RootOrder value: 5 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchoredPosition.x value: 20 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchoredPosition.y value: -270 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_SizeDelta.x value: 300 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_SizeDelta.y value: 40 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchorMin.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchorMax.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchorMax.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Pivot.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Pivot.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6195791465658335273, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Text value: S, DownArrow objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 5c826c0d5339343438211217ebd3152c, type: 3} --- !u!224 &1167756898 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} m_PrefabInstance: {fileID: 1167756897} m_PrefabAsset: {fileID: 0} --- !u!114 &1194244628 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 6437133863614902638, guid: 5c826c0d5339343438211217ebd3152c, type: 3} m_PrefabInstance: {fileID: 244342558} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9580cf12eed84fd479de25a93c2e8b8d, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1 &1235065855 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1235065859} - component: {fileID: 1235065858} - component: {fileID: 1235065857} - component: {fileID: 1235065856} m_Layer: 5 m_Name: Canvas m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &1235065856 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1235065855} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1301386320, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 4294967295 --- !u!114 &1235065857 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1235065855} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1980459831, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_UiScaleMode: 1 m_ReferencePixelsPerUnit: 100 m_ScaleFactor: 1 m_ReferenceResolution: {x: 640, y: 480} m_ScreenMatchMode: 0 m_MatchWidthOrHeight: 1 m_PhysicalUnit: 3 m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 --- !u!223 &1235065858 Canvas: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1235065855} m_Enabled: 1 serializedVersion: 3 m_RenderMode: 1 m_Camera: {fileID: 427268939} m_PlaneDistance: 100 m_PixelPerfect: 0 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_AdditionalShaderChannelsFlag: 25 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 --- !u!224 &1235065859 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1235065855} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0, y: 0, z: 0} m_Children: - {fileID: 5970173} - {fileID: 244342559} - {fileID: 1546412106} - {fileID: 2029917131} - {fileID: 862187448} - {fileID: 1167756898} - {fileID: 260251774} - {fileID: 356226454} - {fileID: 807607703} - {fileID: 1934178442} - {fileID: 724436460} - {fileID: 182826125} m_Father: {fileID: 0} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0, y: 0} --- !u!114 &1331792659 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 6437133863614902638, guid: 5c826c0d5339343438211217ebd3152c, type: 3} m_PrefabInstance: {fileID: 1167756897} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9580cf12eed84fd479de25a93c2e8b8d, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &1496962534 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 6437133863614902638, guid: 5c826c0d5339343438211217ebd3152c, type: 3} m_PrefabInstance: {fileID: 6195791464686670966} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9580cf12eed84fd479de25a93c2e8b8d, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1001 &1546412105 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 1235065859} m_Modifications: - target: {fileID: 6195791463972921763, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Text value: Menu objectReference: {fileID: 0} - target: {fileID: 6195791464691190922, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Name value: Menu objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_RootOrder value: 2 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchoredPosition.x value: 20 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchoredPosition.y value: -120 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_SizeDelta.x value: 300 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_SizeDelta.y value: 40 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchorMin.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchorMax.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchorMax.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Pivot.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Pivot.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6195791465658335273, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Text value: C, LeftControl, RightControl objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 5c826c0d5339343438211217ebd3152c, type: 3} --- !u!224 &1546412106 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} m_PrefabInstance: {fileID: 1546412105} m_PrefabAsset: {fileID: 0} --- !u!1 &1561438720 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1561438723} - component: {fileID: 1561438722} - component: {fileID: 1561438721} m_Layer: 0 m_Name: EventSystem m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &1561438721 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1561438720} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1077351063, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_HorizontalAxis: Horizontal m_VerticalAxis: Vertical m_SubmitButton: Submit m_CancelButton: Cancel m_InputActionsPerSecond: 10 m_RepeatDelay: 0.5 m_ForceModuleActive: 0 --- !u!114 &1561438722 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1561438720} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -619905303, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_FirstSelected: {fileID: 0} m_sendNavigationEvents: 0 m_DragThreshold: 10 --- !u!4 &1561438723 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1561438720} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1704067383 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 6437133863614902638, guid: 5c826c0d5339343438211217ebd3152c, type: 3} m_PrefabInstance: {fileID: 260251773} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9580cf12eed84fd479de25a93c2e8b8d, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &1705941982 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 6437133863614902638, guid: 5c826c0d5339343438211217ebd3152c, type: 3} m_PrefabInstance: {fileID: 1546412105} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9580cf12eed84fd479de25a93c2e8b8d, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &1746013827 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 6437133863614902638, guid: 5c826c0d5339343438211217ebd3152c, type: 3} m_PrefabInstance: {fileID: 862187447} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9580cf12eed84fd479de25a93c2e8b8d, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1001 &1934178441 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 1235065859} m_Modifications: - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_Alignment value: 4 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Text value: Reset All objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_FontSize value: 16 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_MaxSize value: 212 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_MinSize value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Name value: ResetAll objectReference: {fileID: 0} - target: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_IsActive value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.x value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.y value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.z value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_RootOrder value: 9 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: -60 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 20 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: 100 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: 40 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.r value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.g value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.b value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.a value: 0.5019608 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} --- !u!224 &1934178442 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 1934178441} m_PrefabAsset: {fileID: 0} --- !u!114 &1934178443 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 6408004043003039570, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 1934178441} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1392445389, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1001 &2029917130 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 1235065859} m_Modifications: - target: {fileID: 6195791463972921763, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Text value: Up objectReference: {fileID: 0} - target: {fileID: 6195791464691190922, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Name value: Up objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_RootOrder value: 3 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchoredPosition.x value: 20 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchoredPosition.y value: -170 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_SizeDelta.x value: 300 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_SizeDelta.y value: 40 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchorMin.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchorMax.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchorMax.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Pivot.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Pivot.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6195791465658335273, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Text value: W, UpArrow objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 5c826c0d5339343438211217ebd3152c, type: 3} --- !u!224 &2029917131 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} m_PrefabInstance: {fileID: 2029917130} m_PrefabAsset: {fileID: 0} --- !u!1001 &6195791464686670966 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 1235065859} m_Modifications: - target: {fileID: 6195791463972921763, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Text value: Confirm objectReference: {fileID: 0} - target: {fileID: 6195791464691190922, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Name value: Confirm objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_RootOrder value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchoredPosition.x value: 20 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchoredPosition.y value: -20 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_SizeDelta.x value: 300 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_SizeDelta.y value: 40 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchorMin.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchorMax.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_AnchorMax.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Pivot.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6195791464691190923, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Pivot.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6195791465658335273, guid: 5c826c0d5339343438211217ebd3152c, type: 3} propertyPath: m_Text value: Z, Return objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 5c826c0d5339343438211217ebd3152c, type: 3} ================================================ FILE: Assets/Scenes/KeybindSettings.unity.meta ================================================ fileFormatVersion: 2 guid: c7340ada0080ba74ebc7e5bf2a43e8b5 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scenes/ModSelect.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 3 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 11 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 0 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 10 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 0 m_CompAOExponentDirect: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 1024 m_ReflectionCompression: 2 m_MixedBakeMode: 1 m_BakeBackend: 0 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 500 m_PVRBounces: 2 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVRFilteringMode: 0 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ShowResolutionOverlay: 1 m_LightingDataAsset: {fileID: 0} m_UseShadowmask: 0 --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1 &64571899 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 64571900} - component: {fileID: 64571903} - component: {fileID: 64571902} - component: {fileID: 64571901} m_Layer: 5 m_Name: Canvas m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &64571900 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 64571899} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0, y: 0, z: 0} m_Children: - {fileID: 1369608972} - {fileID: 2100541824} - {fileID: 668384059} - {fileID: 827182969} - {fileID: 84447218} - {fileID: 1445560357} - {fileID: 195716013} - {fileID: 577590892} - {fileID: 1633010448} - {fileID: 129405957} m_Father: {fileID: 0} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0, y: 0} --- !u!114 &64571901 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 64571899} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1301386320, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 4294967295 --- !u!114 &64571902 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 64571899} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1980459831, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_UiScaleMode: 1 m_ReferencePixelsPerUnit: 100 m_ScaleFactor: 1 m_ReferenceResolution: {x: 640, y: 480} m_ScreenMatchMode: 0 m_MatchWidthOrHeight: 1 m_PhysicalUnit: 3 m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 --- !u!223 &64571903 Canvas: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 64571899} m_Enabled: 1 serializedVersion: 3 m_RenderMode: 1 m_Camera: {fileID: 1926334442} m_PlaneDistance: 100 m_PixelPerfect: 1 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_AdditionalShaderChannelsFlag: 25 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 --- !u!1 &84447217 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 84447218} - component: {fileID: 84447221} - component: {fileID: 84447220} - component: {fileID: 84447219} m_Layer: 5 m_Name: BtnNext m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &84447218 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 84447217} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 330285643} - {fileID: 327758102} m_Father: {fileID: 64571900} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 295, y: 0} m_SizeDelta: {x: 50, y: 50} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &84447219 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 84447217} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1392445389, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 0 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 84447220} m_OnClick: m_PersistentCalls: m_Calls: [] --- !u!114 &84447220 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 84447217} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &84447221 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 84447217} m_CullTransparentMesh: 0 --- !u!1 &110115305 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 1356470217043364, guid: e264c08f2eb1b0a42a121539d52a0279, type: 2} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 110115306} - component: {fileID: 110115307} - component: {fileID: 110115309} - component: {fileID: 110115310} m_Layer: 5 m_Name: ScrollCutoff m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &110115306 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 224965271745359238, guid: e264c08f2eb1b0a42a121539d52a0279, type: 2} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 110115305} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 227684314} - {fileID: 501285793} m_Father: {fileID: 577590892} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 430, y: 230} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &110115307 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 114946384992659172, guid: e264c08f2eb1b0a42a121539d52a0279, type: 2} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 110115305} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1367256648, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Content: {fileID: 501285793} m_Horizontal: 0 m_Vertical: 1 m_MovementType: 1 m_Elasticity: 0.1 m_Inertia: 0 m_DecelerationRate: 0.135 m_ScrollSensitivity: 8 m_Viewport: {fileID: 501285793} m_HorizontalScrollbar: {fileID: 0} m_VerticalScrollbar: {fileID: 0} m_HorizontalScrollbarVisibility: 0 m_VerticalScrollbarVisibility: 2 m_HorizontalScrollbarSpacing: 0 m_VerticalScrollbarSpacing: 0 m_OnValueChanged: m_PersistentCalls: m_Calls: [] --- !u!222 &110115309 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 110115305} m_CullTransparentMesh: 1 --- !u!114 &110115310 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 110115305} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -146154839, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1 &129405956 stripped GameObject: m_CorrespondingSourceObject: {fileID: 1761128713592740, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 3} m_PrefabInstance: {fileID: 432943013} m_PrefabAsset: {fileID: 0} --- !u!224 &129405957 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 3} m_PrefabInstance: {fileID: 432943013} m_PrefabAsset: {fileID: 0} --- !u!1 &195716012 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 195716013} - component: {fileID: 195716016} - component: {fileID: 195716015} - component: {fileID: 195716014} m_Layer: 5 m_Name: BtnOptions m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &195716013 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 195716012} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 725714186} - {fileID: 763720701} m_Father: {fileID: 64571900} m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 1, y: 1} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 140, y: 30} m_Pivot: {x: 1, y: 1} --- !u!114 &195716014 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 195716012} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1392445389, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 0 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 195716015} m_OnClick: m_PersistentCalls: m_Calls: [] --- !u!114 &195716015 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 195716012} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.7529412, g: 0.7529412, b: 0.7529412, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 0 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &195716016 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 195716012} m_CullTransparentMesh: 1 --- !u!1 &227684313 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 227684314} - component: {fileID: 227684316} - component: {fileID: 227684315} m_Layer: 5 m_Name: Fill m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &227684314 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 227684313} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 110115306} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 430, y: 230} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &227684315 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 227684313} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.1254902, g: 0.1254902, b: 0.1254902, a: 0.5019608} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &227684316 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 227684313} m_CullTransparentMesh: 1 --- !u!1 &230933543 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 230933544} - component: {fileID: 230933546} - component: {fileID: 230933545} m_Layer: 5 m_Name: Label m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &230933544 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 230933543} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 668384059} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 1} m_AnchorMax: {x: 0.5, y: 1} m_AnchoredPosition: {x: 0, y: -20} m_SizeDelta: {x: 640, y: 30} m_Pivot: {x: 0.5, y: 1} --- !u!114 &230933545 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 230933543} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 0 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 16 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 0 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Mod List --- !u!222 &230933546 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 230933543} m_CullTransparentMesh: 0 --- !u!1 &300803803 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 300803804} - component: {fileID: 300803806} - component: {fileID: 300803805} m_Layer: 5 m_Name: Text m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &300803804 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 300803803} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 668384059} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &300803805 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 300803803} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: abd91933b51b6fc47931c535c62c6929, type: 3} m_FontSize: 34 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 3 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: ^ --- !u!222 &300803806 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 300803803} m_CullTransparentMesh: 0 --- !u!1 &327758101 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 327758102} - component: {fileID: 327758104} - component: {fileID: 327758103} m_Layer: 5 m_Name: Text m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &327758102 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 327758101} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 84447218} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &327758103 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 327758101} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: abd91933b51b6fc47931c535c62c6929, type: 3} m_FontSize: 34 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 3 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: '> ' --- !u!222 &327758104 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 327758101} m_CullTransparentMesh: 0 --- !u!1 &330285642 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 330285643} - component: {fileID: 330285645} - component: {fileID: 330285644} m_Layer: 5 m_Name: TextShadow m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &330285643 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 330285642} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 84447218} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 1, y: -1} m_SizeDelta: {x: -2, y: -2} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &330285644 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 330285642} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: abd91933b51b6fc47931c535c62c6929, type: 3} m_FontSize: 34 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 3 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: '> ' --- !u!222 &330285645 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 330285642} m_CullTransparentMesh: 0 --- !u!1 &363465619 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 363465620} - component: {fileID: 363465622} - component: {fileID: 363465621} m_Layer: 5 m_Name: TextShadow m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &363465620 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 363465619} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1445560357} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 7, y: -1} m_SizeDelta: {x: -10, y: -2} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &363465621 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 363465619} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 1} m_RaycastTarget: 0 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 16 m_FontStyle: 0 m_BestFit: 1 m_MinSize: 1 m_MaxSize: 16 m_Alignment: 3 m_AlignByGeometry: 0 m_RichText: 0 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: " \u2190 Exit (Cancel)" --- !u!222 &363465622 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 363465619} m_CullTransparentMesh: 0 --- !u!1001 &432943013 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 64571900} m_Modifications: - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 3} propertyPath: m_RootOrder value: 9 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 3} propertyPath: m_AnchoredPosition.y value: -140 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 3} propertyPath: m_SizeDelta.x value: 250 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 3} propertyPath: m_SizeDelta.y value: 189 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 3} propertyPath: m_AnchorMax.y value: 0 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 3} propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 3} --- !u!1 &501285792 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 1390276333633260, guid: e264c08f2eb1b0a42a121539d52a0279, type: 2} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 501285793} - component: {fileID: 501285795} - component: {fileID: 501285794} m_Layer: 5 m_Name: Content m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &501285793 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 224826803134950340, guid: e264c08f2eb1b0a42a121539d52a0279, type: 2} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 501285792} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1058685157} m_Father: {fileID: 110115306} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 430, y: 230} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &501285794 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 114889224030086206, guid: e264c08f2eb1b0a42a121539d52a0279, type: 2} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 501285792} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &501285795 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 222856988519023822, guid: e264c08f2eb1b0a42a121539d52a0279, type: 2} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 501285792} m_CullTransparentMesh: 1 --- !u!1 &530423193 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 530423194} - component: {fileID: 530423196} - component: {fileID: 530423195} m_Layer: 5 m_Name: ANIM ModTitleShadow m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &530423194 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 530423193} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 2100541824} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 1} m_AnchorMax: {x: 0.5, y: 1} m_AnchoredPosition: {x: 2, y: 169} m_SizeDelta: {x: 640, y: 32} m_Pivot: {x: 0.5, y: 1} --- !u!114 &530423195 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 530423193} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 1} m_RaycastTarget: 0 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 32 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 0 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Mod Title --- !u!222 &530423196 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 530423193} m_CullTransparentMesh: 0 --- !u!1 &533019933 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 533019934} - component: {fileID: 533019936} - component: {fileID: 533019935} m_Layer: 5 m_Name: EncounterCountShadow m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &533019934 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 533019933} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1369608972} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 1} m_AnchorMax: {x: 0.5, y: 1} m_AnchoredPosition: {x: 2, y: 138} m_SizeDelta: {x: 640, y: 30} m_Pivot: {x: 0.5, y: 1} --- !u!114 &533019935 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 533019933} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 1} m_RaycastTarget: 0 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 16 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 0 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Has N Encounters --- !u!222 &533019936 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 533019933} m_CullTransparentMesh: 0 --- !u!1 &577590891 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 1356470217043364, guid: e264c08f2eb1b0a42a121539d52a0279, type: 2} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 577590892} - component: {fileID: 577590895} - component: {fileID: 577590894} - component: {fileID: 577590893} m_Layer: 5 m_Name: ScrollWin m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &577590892 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 224965271745359238, guid: e264c08f2eb1b0a42a121539d52a0279, type: 2} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 577590891} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 110115306} m_Father: {fileID: 64571900} m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: -40} m_SizeDelta: {x: 440, y: 240} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &577590893 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 577590891} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -146154839, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &577590894 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 577590891} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.2509804, g: 0.2509804, b: 0.2509804, a: 0.5019608} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10911, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 0 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &577590895 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 577590891} m_CullTransparentMesh: 1 --- !u!1 &668384058 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 668384059} - component: {fileID: 668384062} - component: {fileID: 668384061} - component: {fileID: 668384060} m_Layer: 5 m_Name: BtnList m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &668384059 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 668384058} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1219723059} - {fileID: 300803804} - {fileID: 1514709438} - {fileID: 230933544} m_Father: {fileID: 64571900} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 215} m_SizeDelta: {x: 60, y: 50} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &668384060 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 668384058} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1392445389, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 0 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 668384061} m_OnClick: m_PersistentCalls: m_Calls: [] --- !u!114 &668384061 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 668384058} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &668384062 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 668384058} m_CullTransparentMesh: 0 --- !u!1 &677606676 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 677606677} - component: {fileID: 677606680} - component: {fileID: 677606679} - component: {fileID: 677606678} m_Layer: 5 m_Name: ANIM ModBackground m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &677606677 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 677606676} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 2100541824} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &677606678 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 677606676} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1392445389, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 0 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 677606679} m_OnClick: m_PersistentCalls: m_Calls: [] --- !u!114 &677606679 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 677606676} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0.2509804} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: 5a15fea0f60c14a449b67566953ba18a, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &677606680 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 677606676} m_CullTransparentMesh: 0 --- !u!1 &725714185 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 725714186} - component: {fileID: 725714188} - component: {fileID: 725714187} m_Layer: 5 m_Name: TextShadow m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &725714186 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 725714185} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 195716013} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 2, y: -1} m_SizeDelta: {x: -20, y: -2} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &725714187 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 725714185} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 1} m_RaycastTarget: 0 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 16 m_FontStyle: 0 m_BestFit: 1 m_MinSize: 1 m_MaxSize: 16 m_Alignment: 3 m_AlignByGeometry: 0 m_RichText: 0 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: "Options (Menu) \u2192" --- !u!222 &725714188 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 725714185} m_CullTransparentMesh: 0 --- !u!1 &731984164 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 731984165} - component: {fileID: 731984167} - component: {fileID: 731984166} m_Layer: 5 m_Name: ModTitle m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &731984165 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 731984164} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1369608972} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 1} m_AnchorMax: {x: 0.5, y: 1} m_AnchoredPosition: {x: 0, y: 171} m_SizeDelta: {x: 640, y: 32} m_Pivot: {x: 0.5, y: 1} --- !u!114 &731984166 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 731984164} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 0 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 32 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 0 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Mod Title --- !u!222 &731984167 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 731984164} m_CullTransparentMesh: 0 --- !u!1 &763720700 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 763720701} - component: {fileID: 763720703} - component: {fileID: 763720702} m_Layer: 5 m_Name: Text m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &763720701 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 763720700} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 195716013} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: -20, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &763720702 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 763720700} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 0 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 16 m_FontStyle: 0 m_BestFit: 1 m_MinSize: 1 m_MaxSize: 16 m_Alignment: 3 m_AlignByGeometry: 0 m_RichText: 0 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: "Options (Menu) \u2192" --- !u!222 &763720703 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 763720700} m_CullTransparentMesh: 0 --- !u!1 &787902698 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 787902699} - component: {fileID: 787902701} - component: {fileID: 787902700} m_Layer: 5 m_Name: NestedFolderNameShadow m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &787902699 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 787902698} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1369608972} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 1} m_AnchorMax: {x: 0.5, y: 1} m_AnchoredPosition: {x: 2, y: 118} m_SizeDelta: {x: 640, y: 30} m_Pivot: {x: 0.5, y: 1} --- !u!114 &787902700 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 787902698} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 1} m_RaycastTarget: 0 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 16 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 0 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Belongs to the folder Root --- !u!222 &787902701 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 787902698} m_CullTransparentMesh: 0 --- !u!1 &827182968 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 827182969} - component: {fileID: 827182972} - component: {fileID: 827182971} - component: {fileID: 827182970} m_Layer: 5 m_Name: BtnBack m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &827182969 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 827182968} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 911703478} - {fileID: 1790673463} m_Father: {fileID: 64571900} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -295, y: 0} m_SizeDelta: {x: 50, y: 50} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &827182970 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 827182968} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1392445389, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 0 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 827182971} m_OnClick: m_PersistentCalls: m_Calls: [] --- !u!114 &827182971 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 827182968} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &827182972 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 827182968} m_CullTransparentMesh: 0 --- !u!1 &877904474 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 877904475} - component: {fileID: 877904477} - component: {fileID: 877904476} m_Layer: 5 m_Name: ModTitleShadow m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &877904475 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 877904474} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1369608972} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 1} m_AnchorMax: {x: 0.5, y: 1} m_AnchoredPosition: {x: 2, y: 169} m_SizeDelta: {x: 640, y: 32} m_Pivot: {x: 0.5, y: 1} --- !u!114 &877904476 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 877904474} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 1} m_RaycastTarget: 0 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 32 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 0 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Mod Title --- !u!222 &877904477 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 877904474} m_CullTransparentMesh: 0 --- !u!1 &911703477 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 911703478} - component: {fileID: 911703480} - component: {fileID: 911703479} m_Layer: 5 m_Name: TextShadow m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &911703478 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 911703477} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 827182969} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 1, y: -1} m_SizeDelta: {x: -2, y: -2} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &911703479 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 911703477} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: abd91933b51b6fc47931c535c62c6929, type: 3} m_FontSize: 34 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 3 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: < --- !u!222 &911703480 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 911703477} m_CullTransparentMesh: 0 --- !u!1 &965220556 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 965220557} - component: {fileID: 965220559} - component: {fileID: 965220558} m_Layer: 5 m_Name: ANIM NestedFolderNameShadow m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &965220557 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 965220556} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 2100541824} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 1} m_AnchorMax: {x: 0.5, y: 1} m_AnchoredPosition: {x: 2, y: 118} m_SizeDelta: {x: 640, y: 30} m_Pivot: {x: 0.5, y: 1} --- !u!114 &965220558 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 965220556} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 1} m_RaycastTarget: 0 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 16 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 0 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Belongs to the folder Root --- !u!222 &965220559 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 965220556} m_CullTransparentMesh: 0 --- !u!224 &1058685157 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 6408004043052732340} m_PrefabAsset: {fileID: 0} --- !u!1 &1219723058 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1219723059} - component: {fileID: 1219723061} - component: {fileID: 1219723060} m_Layer: 5 m_Name: TextShadow m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1219723059 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1219723058} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 668384059} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 1, y: -1} m_SizeDelta: {x: -2, y: -2} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1219723060 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1219723058} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: abd91933b51b6fc47931c535c62c6929, type: 3} m_FontSize: 34 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 3 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: ^ --- !u!222 &1219723061 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1219723058} m_CullTransparentMesh: 0 --- !u!1 &1298088668 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1298088669} - component: {fileID: 1298088671} - component: {fileID: 1298088670} m_Layer: 5 m_Name: ANIM EncounterCount m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1298088669 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1298088668} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 2100541824} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 1} m_AnchorMax: {x: 0.5, y: 1} m_AnchoredPosition: {x: 0, y: 140} m_SizeDelta: {x: 640, y: 30} m_Pivot: {x: 0.5, y: 1} --- !u!114 &1298088670 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1298088668} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 0 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 16 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 0 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Has N Encounters --- !u!222 &1298088671 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1298088668} m_CullTransparentMesh: 0 --- !u!1 &1369608971 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1369608972} m_Layer: 0 m_Name: ModContainer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1369608972 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1369608971} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1805009374} - {fileID: 877904475} - {fileID: 731984165} - {fileID: 533019934} - {fileID: 1490416946} - {fileID: 787902699} - {fileID: 1398906137} m_Father: {fileID: 64571900} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1398906136 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1398906137} - component: {fileID: 1398906139} - component: {fileID: 1398906138} m_Layer: 5 m_Name: NestedFolderName m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1398906137 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1398906136} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1369608972} m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 1} m_AnchorMax: {x: 0.5, y: 1} m_AnchoredPosition: {x: 0, y: 120} m_SizeDelta: {x: 640, y: 30} m_Pivot: {x: 0.5, y: 1} --- !u!114 &1398906138 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1398906136} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.5019608, g: 0.5019608, b: 0.5019608, a: 1} m_RaycastTarget: 0 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 16 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 0 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Belongs to the folder Root --- !u!222 &1398906139 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1398906136} m_CullTransparentMesh: 0 --- !u!1 &1419761035 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1419761036} - component: {fileID: 1419761038} - component: {fileID: 1419761037} m_Layer: 5 m_Name: ANIM ModTitle m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1419761036 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1419761035} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 2100541824} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 1} m_AnchorMax: {x: 0.5, y: 1} m_AnchoredPosition: {x: 0, y: 171} m_SizeDelta: {x: 640, y: 32} m_Pivot: {x: 0.5, y: 1} --- !u!114 &1419761037 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1419761035} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 0 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 32 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 0 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Mod Title --- !u!222 &1419761038 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1419761035} m_CullTransparentMesh: 0 --- !u!1 &1424652198 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1424652199} - component: {fileID: 1424652201} - component: {fileID: 1424652200} m_Layer: 5 m_Name: ANIM NestedFolderName m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1424652199 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1424652198} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 2100541824} m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 1} m_AnchorMax: {x: 0.5, y: 1} m_AnchoredPosition: {x: 0, y: 120} m_SizeDelta: {x: 640, y: 30} m_Pivot: {x: 0.5, y: 1} --- !u!114 &1424652200 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1424652198} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.5019608, g: 0.5019608, b: 0.5019608, a: 1} m_RaycastTarget: 0 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 16 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 0 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Belongs to the folder Root --- !u!222 &1424652201 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1424652198} m_CullTransparentMesh: 0 --- !u!1 &1445560356 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1445560357} - component: {fileID: 1445560360} - component: {fileID: 1445560359} - component: {fileID: 1445560358} m_Layer: 5 m_Name: BtnExit m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1445560357 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1445560356} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 363465620} - {fileID: 1502871119} m_Father: {fileID: 64571900} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0.5} m_AnchorMax: {x: 0, y: 0.5} m_AnchoredPosition: {x: 0, y: 225} m_SizeDelta: {x: 130, y: 30} m_Pivot: {x: 0, y: 0.5} --- !u!114 &1445560358 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1445560356} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1392445389, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 0 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 1445560359} m_OnClick: m_PersistentCalls: m_Calls: [] --- !u!114 &1445560359 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1445560356} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.7529412, g: 0.7529412, b: 0.7529412, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 0 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1445560360 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1445560356} m_CullTransparentMesh: 1 --- !u!1 &1490416945 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1490416946} - component: {fileID: 1490416948} - component: {fileID: 1490416947} m_Layer: 5 m_Name: EncounterCount m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1490416946 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1490416945} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1369608972} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 1} m_AnchorMax: {x: 0.5, y: 1} m_AnchoredPosition: {x: 0, y: 140} m_SizeDelta: {x: 640, y: 30} m_Pivot: {x: 0.5, y: 1} --- !u!114 &1490416947 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1490416945} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 0 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 16 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 0 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Has N Encounters --- !u!222 &1490416948 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1490416945} m_CullTransparentMesh: 0 --- !u!1 &1502871118 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1502871119} - component: {fileID: 1502871121} - component: {fileID: 1502871120} m_Layer: 5 m_Name: Text m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1502871119 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1502871118} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1445560357} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 5, y: 0} m_SizeDelta: {x: -10, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1502871120 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1502871118} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 0 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 16 m_FontStyle: 0 m_BestFit: 1 m_MinSize: 1 m_MaxSize: 16 m_Alignment: 3 m_AlignByGeometry: 0 m_RichText: 0 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: " \u2190 Exit (Cancel)" --- !u!222 &1502871121 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1502871118} m_CullTransparentMesh: 0 --- !u!1 &1514709437 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1514709438} - component: {fileID: 1514709440} - component: {fileID: 1514709439} m_Layer: 5 m_Name: LabelShadow m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1514709438 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1514709437} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 668384059} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 1} m_AnchorMax: {x: 0.5, y: 1} m_AnchoredPosition: {x: 2, y: -22} m_SizeDelta: {x: 640, y: 30} m_Pivot: {x: 0.5, y: 1} --- !u!114 &1514709439 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1514709437} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 1} m_RaycastTarget: 0 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 16 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 0 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Mod List --- !u!222 &1514709440 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1514709437} m_CullTransparentMesh: 0 --- !u!1 &1574108381 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1574108385} - component: {fileID: 1574108384} - component: {fileID: 1574108383} - component: {fileID: 1574108382} m_Layer: 0 m_Name: EventSystem m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &1574108382 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1574108381} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1997211142, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_ForceModuleActive: 0 --- !u!114 &1574108383 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1574108381} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1077351063, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_HorizontalAxis: Horizontal m_VerticalAxis: Vertical m_SubmitButton: Submit m_CancelButton: Cancel m_InputActionsPerSecond: 10 m_RepeatDelay: 0.5 m_ForceModuleActive: 0 --- !u!114 &1574108384 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1574108381} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -619905303, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_FirstSelected: {fileID: 0} m_sendNavigationEvents: 1 m_DragThreshold: 5 --- !u!4 &1574108385 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1574108381} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1633010447 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1633010448} m_Layer: 5 m_Name: devMod m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1633010448 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1633010447} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 64571900} m_RootOrder: 8 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: -440} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &1790673462 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1790673463} - component: {fileID: 1790673465} - component: {fileID: 1790673464} m_Layer: 5 m_Name: Text m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1790673463 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1790673462} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 827182969} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 1, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1790673464 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1790673462} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: abd91933b51b6fc47931c535c62c6929, type: 3} m_FontSize: 34 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 3 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: < --- !u!222 &1790673465 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1790673462} m_CullTransparentMesh: 0 --- !u!1 &1805009373 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1805009374} - component: {fileID: 1805009376} - component: {fileID: 1805009375} - component: {fileID: 1805009377} m_Layer: 5 m_Name: ModBackground m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1805009374 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1805009373} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1369608972} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1805009375 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1805009373} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0.2509804} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: 5a15fea0f60c14a449b67566953ba18a, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1805009376 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1805009373} m_CullTransparentMesh: 0 --- !u!114 &1805009377 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1805009373} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1392445389, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: m_Mode: 3 m_SelectOnUp: {fileID: 0} m_SelectOnDown: {fileID: 0} m_SelectOnLeft: {fileID: 0} m_SelectOnRight: {fileID: 0} m_Transition: 0 m_Colors: m_NormalColor: {r: 1, g: 1, b: 1, a: 1} m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} m_ColorMultiplier: 1 m_FadeDuration: 0.1 m_SpriteState: m_HighlightedSprite: {fileID: 0} m_PressedSprite: {fileID: 0} m_DisabledSprite: {fileID: 0} m_AnimationTriggers: m_NormalTrigger: Normal m_HighlightedTrigger: Highlighted m_PressedTrigger: Pressed m_DisabledTrigger: Disabled m_Interactable: 1 m_TargetGraphic: {fileID: 1805009375} m_OnClick: m_PersistentCalls: m_Calls: [] --- !u!1 &1906607163 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1906607164} - component: {fileID: 1906607166} - component: {fileID: 1906607165} m_Layer: 5 m_Name: ANIM EncounterCountShadow m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1906607164 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1906607163} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 2100541824} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 1} m_AnchorMax: {x: 0.5, y: 1} m_AnchoredPosition: {x: 2, y: 138} m_SizeDelta: {x: 640, y: 30} m_Pivot: {x: 0.5, y: 1} --- !u!114 &1906607165 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1906607163} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 1} m_RaycastTarget: 0 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 16 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 0 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Has N Encounters --- !u!222 &1906607166 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1906607163} m_CullTransparentMesh: 0 --- !u!1 &1926334437 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1926334443} - component: {fileID: 1926334442} - component: {fileID: 1926334441} - component: {fileID: 1926334440} - component: {fileID: 1926334439} - component: {fileID: 1926334444} - component: {fileID: 1926334438} m_Layer: 0 m_Name: Main Camera m_TagString: MainCamera m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &1926334438 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1926334437} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: e994334232641bd4ca342c48fcdb1605, type: 3} m_Name: m_EditorClassIdentifier: --- !u!81 &1926334439 AudioListener: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1926334437} m_Enabled: 1 --- !u!124 &1926334440 Behaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1926334437} m_Enabled: 1 --- !u!92 &1926334441 Behaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1926334437} m_Enabled: 1 --- !u!20 &1926334442 Camera: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1926334437} m_Enabled: 1 serializedVersion: 2 m_ClearFlags: 1 m_BackGroundColor: {r: 0, g: 0.017156854, b: 0.04411763, a: 0.019607844} m_projectionMatrixMode: 1 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} m_GateFitMode: 2 m_FocalLength: 50 m_NormalizedViewPortRect: serializedVersion: 2 x: 0 y: 0 width: 1 height: 1 near clip plane: 0.3 far clip plane: 1000 field of view: 60 orthographic: 1 orthographic size: 240 m_Depth: -1 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingPath: -1 m_TargetTexture: {fileID: 0} m_TargetDisplay: 0 m_TargetEye: 3 m_HDR: 0 m_AllowMSAA: 1 m_AllowDynamicResolution: 0 m_ForceIntoRT: 0 m_OcclusionCulling: 1 m_StereoConvergence: 10 m_StereoSeparation: 0.022 --- !u!4 &1926334443 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1926334437} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 320, y: 240, z: -10} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1926334444 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1926334437} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: ccac28fe9b88c1c4084360fe5e2e1697, type: 3} m_Name: m_EditorClassIdentifier: eventSystem: {fileID: 1574108384} encounterBox: {fileID: 577590891} devMod: {fileID: 1633010447} content: {fileID: 501285792} retromodeWarning: {fileID: 129405956} btnList: {fileID: 668384058} btnBack: {fileID: 827182968} btnNext: {fileID: 84447217} btnExit: {fileID: 1445560356} btnOptions: {fileID: 195716012} ListText: {fileID: 230933545} ListShadow: {fileID: 1514709439} BackText: {fileID: 1790673464} BackShadow: {fileID: 911703479} NextText: {fileID: 327758103} NextShadow: {fileID: 330285644} ExitText: {fileID: 1502871120} ExitShadow: {fileID: 363465621} OptionsText: {fileID: 763720702} OptionsShadow: {fileID: 725714187} ModContainer: {fileID: 1369608971} ModBackground: {fileID: 1805009373} ModTitle: {fileID: 731984164} ModTitleShadow: {fileID: 877904474} EncounterCount: {fileID: 1490416945} EncounterCountShadow: {fileID: 533019933} FolderText: {fileID: 1398906136} FolderTextShadow: {fileID: 787902698} AnimContainer: {fileID: 2100541823} AnimModBackground: {fileID: 677606676} AnimModTitle: {fileID: 1419761035} AnimModTitleShadow: {fileID: 530423193} AnimEncounterCount: {fileID: 1298088668} AnimEncounterCountShadow: {fileID: 1906607163} AnimFolderText: {fileID: 1424652198} AnimFolderTextShadow: {fileID: 965220556} --- !u!1 &2100541823 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2100541824} m_Layer: 0 m_Name: AnimContainer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 0 --- !u!4 &2100541824 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2100541823} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 677606677} - {fileID: 530423194} - {fileID: 1419761036} - {fileID: 1906607164} - {fileID: 1298088669} - {fileID: 965220557} - {fileID: 1424652199} m_Father: {fileID: 64571900} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1001 &6408004043052732340 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 501285793} m_Modifications: - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.a value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Name value: Back objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.x value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.y value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.z value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_RootOrder value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 100 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: 430 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: 30 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.x value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.a value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.a value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.a value: 0.8784314 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} ================================================ FILE: Assets/Scenes/ModSelect.unity.meta ================================================ fileFormatVersion: 2 guid: 07ece637afd80c14ab6c725c0c20242f timeCreated: 1446845816 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scenes/Options.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 3 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 11 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 0 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 10 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 0 m_CompAOExponentDirect: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 1024 m_ReflectionCompression: 2 m_MixedBakeMode: 1 m_BakeBackend: 0 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 500 m_PVRBounces: 2 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVRFilteringMode: 0 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ShowResolutionOverlay: 1 m_LightingDataAsset: {fileID: 0} m_UseShadowmask: 0 --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1 &64571899 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 64571900} - component: {fileID: 64571903} - component: {fileID: 64571902} - component: {fileID: 64571901} m_Layer: 5 m_Name: Canvas m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &64571900 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 64571899} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0, y: 0, z: 0} m_Children: - {fileID: 142379022} - {fileID: 1145778383} - {fileID: 666042082} - {fileID: 1826168419} - {fileID: 1212751805} - {fileID: 110168061} - {fileID: 73542487} - {fileID: 763680580} - {fileID: 1716142121} - {fileID: 1958569515} - {fileID: 998100203} - {fileID: 267279030} - {fileID: 1583719772} m_Father: {fileID: 0} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0, y: 0} --- !u!114 &64571901 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 64571899} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1301386320, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 4294967295 --- !u!114 &64571902 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 64571899} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1980459831, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_UiScaleMode: 1 m_ReferencePixelsPerUnit: 100 m_ScaleFactor: 1 m_ReferenceResolution: {x: 640, y: 480} m_ScreenMatchMode: 0 m_MatchWidthOrHeight: 1 m_PhysicalUnit: 3 m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 --- !u!223 &64571903 Canvas: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 64571899} m_Enabled: 1 serializedVersion: 3 m_RenderMode: 1 m_Camera: {fileID: 1926334442} m_PlaneDistance: 100 m_PixelPerfect: 0 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_AdditionalShaderChannelsFlag: 25 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 --- !u!1001 &73542486 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 64571900} m_Modifications: - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: -20 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_Alignment value: 4 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Text value: 'Safe mode: Off' objectReference: {fileID: 0} - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.r value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.g value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.b value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Name value: Safe objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.x value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.y value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.z value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_RootOrder value: 6 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: -155 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 40 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: 250 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: 40 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.a value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.r value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.g value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.b value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.a value: 0.5019608 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} --- !u!224 &73542487 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 73542486} m_PrefabAsset: {fileID: 0} --- !u!1 &73542488 stripped GameObject: m_CorrespondingSourceObject: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 73542486} m_PrefabAsset: {fileID: 0} --- !u!1001 &110168060 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 64571900} m_Modifications: - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: -20 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_Alignment value: 4 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Text value: Wipe Save objectReference: {fileID: 0} - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.r value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.g value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.b value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Name value: ClearSave objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.x value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.y value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.z value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_RootOrder value: 5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: -155 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 80 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: 250 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: 40 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.a value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.r value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.g value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.b value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.a value: 0.5019608 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} --- !u!224 &110168061 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 110168060} m_PrefabAsset: {fileID: 0} --- !u!1 &110168062 stripped GameObject: m_CorrespondingSourceObject: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 110168060} m_PrefabAsset: {fileID: 0} --- !u!1 &142379021 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 142379022} - component: {fileID: 142379024} - component: {fileID: 142379023} m_Layer: 5 m_Name: OptionsLabel m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &142379022 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 142379021} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 64571900} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -155, y: 200} m_SizeDelta: {x: 250, y: 40} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &142379023 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 142379021} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5625e3ef998003458714eb346f52fb6, type: 3} m_FontSize: 16 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 1 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 0 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 2 m_Text: 'Options:' --- !u!222 &142379024 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 142379021} m_CullTransparentMesh: 0 --- !u!1001 &267279029 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 64571900} m_Modifications: - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: -20 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_Alignment value: 4 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Text value: 'Crate Your Frisk: Off' objectReference: {fileID: 0} - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.r value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.g value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.b value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Name value: Crate objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.x value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.y value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.z value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_RootOrder value: 11 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: -155 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: -160 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: 250 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: 40 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.a value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.r value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.g value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.b value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.a value: 0.5019608 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} --- !u!224 &267279030 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 267279029} m_PrefabAsset: {fileID: 0} --- !u!1 &267279031 stripped GameObject: m_CorrespondingSourceObject: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 267279029} m_PrefabAsset: {fileID: 0} --- !u!1 &666042081 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 666042082} - component: {fileID: 666042084} - component: {fileID: 666042083} m_Layer: 5 m_Name: Description m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &666042082 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 666042081} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 64571900} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 155, y: -70} m_SizeDelta: {x: 300, y: 500} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &666042083 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 666042081} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: abd91933b51b6fc47931c535c62c6929, type: 3} m_FontSize: 18 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 1 m_MaxSize: 40 m_Alignment: 1 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: Hover over an option and its description will appear here! --- !u!222 &666042084 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 666042081} m_CullTransparentMesh: 0 --- !u!1001 &763680579 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 64571900} m_Modifications: - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: -20 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_Alignment value: 4 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Text value: 'Retrocompatibility Mode: Off' objectReference: {fileID: 0} - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.r value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.g value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.b value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Name value: Retro objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.x value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.y value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.z value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_RootOrder value: 7 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: -155 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: 250 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: 40 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.a value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.r value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.g value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.b value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.a value: 0.5019608 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} --- !u!224 &763680580 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 763680579} m_PrefabAsset: {fileID: 0} --- !u!1 &763680581 stripped GameObject: m_CorrespondingSourceObject: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 763680579} m_PrefabAsset: {fileID: 0} --- !u!1001 &998100202 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 64571900} m_Modifications: - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: -20 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_Alignment value: 4 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Text value: Keybinds... objectReference: {fileID: 0} - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.r value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.g value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.b value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Name value: Keys objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.x value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.y value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.z value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_RootOrder value: 10 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: -155 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: -120 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: 250 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: 40 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.a value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.r value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.g value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.b value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.a value: 0.5019608 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} --- !u!224 &998100203 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 998100202} m_PrefabAsset: {fileID: 0} --- !u!1 &998100204 stripped GameObject: m_CorrespondingSourceObject: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 998100202} m_PrefabAsset: {fileID: 0} --- !u!1 &1033043455 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1033043459} - component: {fileID: 1033043458} - component: {fileID: 1033043457} - component: {fileID: 1033043456} m_Layer: 0 m_Name: EventSystem m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &1033043456 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1033043455} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1997211142, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_ForceModuleActive: 0 --- !u!114 &1033043457 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1033043455} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1077351063, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_HorizontalAxis: Horizontal m_VerticalAxis: Vertical m_SubmitButton: Submit m_CancelButton: Cancel m_InputActionsPerSecond: 10 m_RepeatDelay: 0.5 m_ForceModuleActive: 0 --- !u!114 &1033043458 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1033043455} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -619905303, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_FirstSelected: {fileID: 0} m_sendNavigationEvents: 1 m_DragThreshold: 5 --- !u!4 &1033043459 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1033043455} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1145778382 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1145778383} - component: {fileID: 1145778385} - component: {fileID: 1145778384} m_Layer: 5 m_Name: DescriptionLabel m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1145778383 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1145778382} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 64571900} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 155, y: 200} m_SizeDelta: {x: 250, y: 40} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1145778384 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1145778382} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 12800000, guid: a5625e3ef998003458714eb346f52fb6, type: 3} m_FontSize: 16 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 1 m_MaxSize: 40 m_Alignment: 4 m_AlignByGeometry: 0 m_RichText: 0 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 2 m_Text: 'Information:' --- !u!222 &1145778385 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1145778382} m_CullTransparentMesh: 0 --- !u!1001 &1212751804 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 64571900} m_Modifications: - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: -20 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_Alignment value: 4 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Text value: Reset Permanent Globals objectReference: {fileID: 0} - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.r value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.g value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.b value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Name value: ResetPG objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.x value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.y value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.z value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_RootOrder value: 4 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: -155 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 120 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: 250 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: 40 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.a value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.r value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.g value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.b value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.a value: 0.5019608 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} --- !u!224 &1212751805 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 1212751804} m_PrefabAsset: {fileID: 0} --- !u!1 &1212751806 stripped GameObject: m_CorrespondingSourceObject: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 1212751804} m_PrefabAsset: {fileID: 0} --- !u!1001 &1583719771 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 64571900} m_Modifications: - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: -20 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_Alignment value: 4 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Text value: Exit to Mod Select objectReference: {fileID: 0} - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.r value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.g value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.b value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Name value: Exit objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.x value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.y value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.z value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_RootOrder value: 12 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: -155 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: -200 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: 250 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: 40 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.a value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.r value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.g value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.b value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.a value: 0.5019608 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} --- !u!224 &1583719772 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 1583719771} m_PrefabAsset: {fileID: 0} --- !u!1 &1583719773 stripped GameObject: m_CorrespondingSourceObject: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 1583719771} m_PrefabAsset: {fileID: 0} --- !u!1001 &1716142120 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 64571900} m_Modifications: - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: -20 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_Alignment value: 4 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Text value: 'Window Scale: 1x' objectReference: {fileID: 0} - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.r value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.g value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.b value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Name value: Scale objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.x value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.y value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.z value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_RootOrder value: 8 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: -155 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: -40 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: 250 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: 40 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.a value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.r value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.g value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.b value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.a value: 0.5019608 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} --- !u!224 &1716142121 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 1716142120} m_PrefabAsset: {fileID: 0} --- !u!1 &1716142122 stripped GameObject: m_CorrespondingSourceObject: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 1716142120} m_PrefabAsset: {fileID: 0} --- !u!1001 &1826168418 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 64571900} m_Modifications: - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: -20 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_Alignment value: 4 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Text value: Reset Session Globals objectReference: {fileID: 0} - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.r value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.g value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.b value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Name value: ResetSG objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.x value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.y value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.z value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_RootOrder value: 3 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: -155 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 160 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: 250 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: 40 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.a value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.r value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.g value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.b value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.a value: 0.5019608 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} --- !u!224 &1826168419 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 1826168418} m_PrefabAsset: {fileID: 0} --- !u!1 &1826168420 stripped GameObject: m_CorrespondingSourceObject: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 1826168418} m_PrefabAsset: {fileID: 0} --- !u!1 &1926334437 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1926334443} - component: {fileID: 1926334442} - component: {fileID: 1926334441} - component: {fileID: 1926334440} - component: {fileID: 1926334439} - component: {fileID: 1926334444} - component: {fileID: 1926334438} m_Layer: 0 m_Name: Main Camera m_TagString: MainCamera m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &1926334438 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1926334437} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: e994334232641bd4ca342c48fcdb1605, type: 3} m_Name: m_EditorClassIdentifier: --- !u!81 &1926334439 AudioListener: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1926334437} m_Enabled: 1 --- !u!124 &1926334440 Behaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1926334437} m_Enabled: 1 --- !u!92 &1926334441 Behaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1926334437} m_Enabled: 1 --- !u!20 &1926334442 Camera: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1926334437} m_Enabled: 1 serializedVersion: 2 m_ClearFlags: 1 m_BackGroundColor: {r: 0, g: 0.017156854, b: 0.04411763, a: 0.019607844} m_projectionMatrixMode: 1 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} m_GateFitMode: 2 m_FocalLength: 50 m_NormalizedViewPortRect: serializedVersion: 2 x: 0 y: 0 width: 4 height: 3 near clip plane: 0.3 far clip plane: 1000 field of view: 60 orthographic: 1 orthographic size: 240 m_Depth: -1 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingPath: -1 m_TargetTexture: {fileID: 0} m_TargetDisplay: 0 m_TargetEye: 3 m_HDR: 0 m_AllowMSAA: 1 m_AllowDynamicResolution: 0 m_ForceIntoRT: 0 m_OcclusionCulling: 1 m_StereoConvergence: 10 m_StereoSeparation: 0.022 --- !u!4 &1926334443 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1926334437} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 320, y: 240, z: -20} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1926334444 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1926334437} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c2ea8601668b5c64488fed0712837d69, type: 3} m_Name: m_EditorClassIdentifier: ResetSG: {fileID: 1826168420} ResetPG: {fileID: 1212751806} ClearSave: {fileID: 110168062} Safe: {fileID: 73542488} Retro: {fileID: 763680581} Scale: {fileID: 1716142122} Discord: {fileID: 1958569516} Keys: {fileID: 998100204} Crate: {fileID: 267279031} Exit: {fileID: 1583719773} Description: {fileID: 666042083} --- !u!1001 &1958569514 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 64571900} m_Modifications: - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: -20 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889262, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_FontData.m_Alignment value: 4 objectReference: {fileID: 0} - target: {fileID: 6408004042313889263, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Text value: 'Discord Display: Everything' objectReference: {fileID: 0} - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.r value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.g value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004042703340344, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.b value: 0.1254902 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: -10 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004042703340351, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Name value: Discord objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.x value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.y value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.z value: -0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_RootOrder value: 9 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.x value: -155 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchoredPosition.y value: -80 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.x value: 250 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_SizeDelta.y value: 40 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Pivot.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.a value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039571, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: m_Color.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.r value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.g value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: NormalColor.b value: 0.2509804 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.r value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.g value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.b value: 0.5019608 objectReference: {fileID: 0} - target: {fileID: 6408004043003039581, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} propertyPath: HoverColor.a value: 0.5019608 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} --- !u!224 &1958569515 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 6408004043003039569, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 1958569514} m_PrefabAsset: {fileID: 0} --- !u!1 &1958569516 stripped GameObject: m_CorrespondingSourceObject: {fileID: 6408004043003039568, guid: 06a74376a3db7d744b36f7bb52973cf7, type: 3} m_PrefabInstance: {fileID: 1958569514} m_PrefabAsset: {fileID: 0} ================================================ FILE: Assets/Scenes/Options.unity.meta ================================================ fileFormatVersion: 2 guid: a67f45e3d89aa5743b3a5c9fe7ee5a1a DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scenes/Secret.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 3 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 11 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_TemporalCoherenceThreshold: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 0 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 10 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 0 m_CompAOExponentDirect: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 1024 m_ReflectionCompression: 2 m_MixedBakeMode: 1 m_BakeBackend: 0 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 500 m_PVRBounces: 2 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVRFilteringMode: 1 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ShowResolutionOverlay: 1 m_LightingDataAsset: {fileID: 0} m_UseShadowmask: 0 --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1 &162992782 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 162992783} - component: {fileID: 162992784} m_Layer: 17 m_Name: Foreground m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &162992783 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 162992782} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 671998501} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!212 &162992784 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 162992782} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 803da1355cd2ccf449cbf55b29751772, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!1 &671998500 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 121140, guid: 81be41ce3a4b1df4ab875cc673214de3, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 671998501} - component: {fileID: 671998502} - component: {fileID: 671998503} m_Layer: 17 m_Name: Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &671998501 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 434316, guid: 81be41ce3a4b1df4ab875cc673214de3, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 671998500} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 320, y: 240, z: 140} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: - {fileID: 918903481} - {fileID: 162992783} - {fileID: 1062652606} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!212 &671998502 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 21203668, guid: 81be41ce3a4b1df4ab875cc673214de3, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 671998500} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 803da1355cd2ccf449cbf55b29751772, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!114 &671998503 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 671998500} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7a4ef58bda0647d48b67028c05b00813, type: 3} m_Name: m_EditorClassIdentifier: music: mus_st_him modToLoad: RTLGeno isMusicKeptBetweenBattles: 0 noRandomEncounter: 0 --- !u!1 &918903480 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 187550, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 918903481} - component: {fileID: 918903482} m_Layer: 19 m_Name: Collider 1 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &918903481 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 479584, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 918903480} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 4.4249997, y: 3.4099998, z: 0} m_LocalScale: {x: 1, y: 1, z: 0} m_Children: [] m_Father: {fileID: 671998501} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!60 &918903482 PolygonCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 918903480} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 m_Points: m_Paths: - - {x: -1.2247264, y: -3.0106802} - {x: -2.8243022, y: -3.0095916} - {x: -2.8255806, y: -2.20855} - {x: -6.5462084, y: -2.2087355} - {x: -6.546339, y: -4.610608} - {x: -2.8266227, y: -4.610477} - {x: -2.8243012, y: -3.810708} - {x: -1.2266362, y: -3.8094332} - {x: -1.2766049, y: -5.8057137} - {x: -7.542716, y: -6.2868958} - {x: -8.08123, y: -0.95475626} - {x: -1.2984793, y: -0.9654999} --- !u!1 &1062652602 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 158784, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1062652606} - component: {fileID: 1062652605} - component: {fileID: 1062652604} - component: {fileID: 1062652603} m_Layer: 0 m_Name: TP m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &1062652603 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11456550, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1062652602} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: cafce2c3f7e465f478d7b302ab1b8236, type: 3} m_Name: m_EditorClassIdentifier: sceneName: test2 position: {x: 320, y: 80} direction: 8 activated: 0 noFadeIn: 0 noFadeOut: 0 --- !u!50 &1062652604 Rigidbody2D: serializedVersion: 4 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 5026480, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1062652602} m_BodyType: 1 m_Simulated: 1 m_UseFullKinematicContacts: 0 m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_Material: {fileID: 0} m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 4 --- !u!68 &1062652605 EdgeCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6824242, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1062652602} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 1 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: -0.5, y: 0} - {x: 0.5, y: 0} --- !u!4 &1062652606 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 474894, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1062652602} m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071067} m_LocalPosition: {x: 2.8, y: 0, z: 0} m_LocalScale: {x: 2, y: 1, z: 1} m_Children: [] m_Father: {fileID: 671998501} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} --- !u!1001 &1776571716 Prefab: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 22460244, guid: eadfbd6437c330a4e8538c4969ddbb0d, type: 2} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22460244, guid: eadfbd6437c330a4e8538c4969ddbb0d, type: 2} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22460244, guid: eadfbd6437c330a4e8538c4969ddbb0d, type: 2} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22460244, guid: eadfbd6437c330a4e8538c4969ddbb0d, type: 2} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22460244, guid: eadfbd6437c330a4e8538c4969ddbb0d, type: 2} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22460244, guid: eadfbd6437c330a4e8538c4969ddbb0d, type: 2} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22460244, guid: eadfbd6437c330a4e8538c4969ddbb0d, type: 2} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22460244, guid: eadfbd6437c330a4e8538c4969ddbb0d, type: 2} propertyPath: m_RootOrder value: 1 objectReference: {fileID: 0} - target: {fileID: 22460244, guid: eadfbd6437c330a4e8538c4969ddbb0d, type: 2} propertyPath: m_AnchoredPosition.x value: 160 objectReference: {fileID: 0} - target: {fileID: 22460244, guid: eadfbd6437c330a4e8538c4969ddbb0d, type: 2} propertyPath: m_AnchoredPosition.y value: 221 objectReference: {fileID: 0} - target: {fileID: 22460244, guid: eadfbd6437c330a4e8538c4969ddbb0d, type: 2} propertyPath: m_SizeDelta.x value: 0.4 objectReference: {fileID: 0} - target: {fileID: 22460244, guid: eadfbd6437c330a4e8538c4969ddbb0d, type: 2} propertyPath: m_SizeDelta.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 22460244, guid: eadfbd6437c330a4e8538c4969ddbb0d, type: 2} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22460244, guid: eadfbd6437c330a4e8538c4969ddbb0d, type: 2} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22460244, guid: eadfbd6437c330a4e8538c4969ddbb0d, type: 2} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22460244, guid: eadfbd6437c330a4e8538c4969ddbb0d, type: 2} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22460244, guid: eadfbd6437c330a4e8538c4969ddbb0d, type: 2} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22460244, guid: eadfbd6437c330a4e8538c4969ddbb0d, type: 2} propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: eadfbd6437c330a4e8538c4969ddbb0d, type: 2} m_IsPrefabAsset: 0 --- !u!1 &1776571717 stripped GameObject: m_CorrespondingSourceObject: {fileID: 174636, guid: eadfbd6437c330a4e8538c4969ddbb0d, type: 2} m_PrefabInternal: {fileID: 1776571716} --- !u!114 &1776571718 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1776571717} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: ================================================ FILE: Assets/Scenes/Secret.unity.meta ================================================ fileFormatVersion: 2 guid: 74c9ad964ce5f0a4f927d3e206d1804f timeCreated: 1464291091 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scenes/Shop.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 3 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 11 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 0 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 10 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 1 m_CompAOExponentDirect: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 256 m_ReflectionCompression: 2 m_MixedBakeMode: 2 m_BakeBackend: 0 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 500 m_PVRBounces: 2 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVRFilteringMode: 1 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ShowResolutionOverlay: 1 m_LightingDataAsset: {fileID: 0} m_UseShadowmask: 1 --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1 &24893793 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 24893794} m_Layer: 5 m_Name: BelowPlayerLayer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &24893794 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 24893793} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1053457376} m_RootOrder: 11 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &116576158 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 126142, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 116576159} - component: {fileID: 116576161} - component: {fileID: 116576160} m_Layer: 5 m_Name: info_border_outer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &116576159 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22438742, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 116576158} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 534657686} m_Father: {fileID: 1053457376} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 420, y: 70} m_SizeDelta: {x: 220, y: 168} m_Pivot: {x: 0, y: 0} --- !u!114 &116576160 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11488738, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 116576158} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &116576161 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22237998, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 116576158} m_CullTransparentMesh: 0 --- !u!1 &121037843 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 142508, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 121037844} - component: {fileID: 121037846} - component: {fileID: 121037845} m_Layer: 5 m_Name: ImageSave m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 0 --- !u!224 &121037844 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22420856, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 121037843} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1053457376} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &121037845 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11446620, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 121037843} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: 0f9ce02f0b7f9594494206ca2d908ad4, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &121037846 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22211202, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 121037843} m_CullTransparentMesh: 0 --- !u!1 &534657685 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 188422, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 534657686} - component: {fileID: 534657688} - component: {fileID: 534657687} m_Layer: 5 m_Name: info_interior m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &534657686 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22443130, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 534657685} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1426570118} m_Father: {fileID: 116576159} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 208, y: 156} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &534657687 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11427710, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 534657685} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &534657688 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22247638, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 534657685} m_CullTransparentMesh: 0 --- !u!1 &612950020 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 196304, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 612950023} - component: {fileID: 612950022} - component: {fileID: 612950021} m_Layer: 0 m_Name: TextManager Item m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!82 &612950021 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8212490, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 612950020} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &612950022 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11449538, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 612950020} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 columnShift: 265 columnNumber: 2 blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!224 &612950023 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22424056, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 612950020} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1053457376} m_RootOrder: 9 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 240, y: -176} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!1 &661136827 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 188422, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 661136828} - component: {fileID: 661136830} - component: {fileID: 661136829} m_Layer: 5 m_Name: choice_interior m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &661136828 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22443130, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 661136827} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1331393607} m_Father: {fileID: 1225570642} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 208, y: 228} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &661136829 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11427710, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 661136827} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &661136830 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22247638, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 661136827} m_CullTransparentMesh: 0 --- !u!1 &735839752 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 126142, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 735839753} - component: {fileID: 735839755} - component: {fileID: 735839754} m_Layer: 5 m_Name: main_border_outer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &735839753 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22438742, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 735839752} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1308600306} m_Father: {fileID: 1053457376} m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 426, y: 240} m_Pivot: {x: 0, y: 0} --- !u!114 &735839754 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11488738, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 735839752} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &735839755 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22237998, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 735839752} m_CullTransparentMesh: 0 --- !u!1 &956183517 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 126142, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 956183518} - component: {fileID: 956183520} - component: {fileID: 956183519} m_Layer: 5 m_Name: bigtalk_border_outer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &956183518 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22438742, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 956183517} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1541950372} m_Father: {fileID: 1053457376} m_RootOrder: 10 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 640, y: 240} m_Pivot: {x: 0, y: 0} --- !u!114 &956183519 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11488738, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 956183517} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &956183520 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22237998, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 956183517} m_CullTransparentMesh: 0 --- !u!1 &1053457372 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 138530, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1053457376} - component: {fileID: 1053457375} - component: {fileID: 1053457374} - component: {fileID: 1053457373} - component: {fileID: 1053457377} m_Layer: 5 m_Name: Canvas m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &1053457373 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11406992, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1053457372} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1301386320, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 4294967295 --- !u!114 &1053457374 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11450476, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1053457372} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1980459831, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_UiScaleMode: 0 m_ReferencePixelsPerUnit: 100 m_ScaleFactor: 1 m_ReferenceResolution: {x: 800, y: 600} m_ScreenMatchMode: 0 m_MatchWidthOrHeight: 0 m_PhysicalUnit: 3 m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 --- !u!223 &1053457375 Canvas: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22343828, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1053457372} m_Enabled: 1 serializedVersion: 3 m_RenderMode: 2 m_Camera: {fileID: 0} m_PlaneDistance: 100 m_PixelPerfect: 0 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_AdditionalShaderChannelsFlag: 25 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 --- !u!224 &1053457376 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22435900, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1053457372} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1701512145} - {fileID: 121037844} - {fileID: 1310941139} - {fileID: 1823239362} - {fileID: 2033653814} - {fileID: 116576159} - {fileID: 735839753} - {fileID: 1225570642} - {fileID: 1727654155} - {fileID: 612950023} - {fileID: 956183518} - {fileID: 24893794} - {fileID: 1288303642} - {fileID: 1372833085} - {fileID: 1872943037} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 320, y: 240} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1053457377 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1053457372} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 47f2627eecbdab3448e2f99131e367e9, type: 3} m_Name: m_EditorClassIdentifier: tmMain: {fileID: 1494352340} tmChoice: {fileID: 1331393609} tmInfo: {fileID: 1426570120} tmBigTalk: {fileID: 1064379240} tmGold: {fileID: 1727654154} tmItem: {fileID: 612950022} tmInfoParent: {fileID: 116576158} utHeart: {fileID: 1288303641} --- !u!1 &1064379237 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 196304, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1064379238} - component: {fileID: 1064379240} - component: {fileID: 1064379239} m_Layer: 0 m_Name: TextManager BigTalk m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1064379238 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22424056, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1064379237} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1541950372} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -280, y: 103} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &1064379239 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8212490, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1064379237} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &1064379240 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11449538, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1064379237} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 574 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 columnShift: 265 columnNumber: 2 blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &1225570641 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 126142, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1225570642} - component: {fileID: 1225570644} - component: {fileID: 1225570643} m_Layer: 5 m_Name: choice_border_outer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1225570642 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22438742, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1225570641} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 661136828} m_Father: {fileID: 1053457376} m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 420, y: 0} m_SizeDelta: {x: 220, y: 240} m_Pivot: {x: 0, y: 0} --- !u!114 &1225570643 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11488738, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1225570641} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1225570644 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22237998, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1225570641} m_CullTransparentMesh: 0 --- !u!1 &1288303641 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 102878, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1288303642} - component: {fileID: 1288303644} - component: {fileID: 1288303643} m_Layer: 5 m_Name: utHeart m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1288303642 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22499754, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1288303641} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1053457376} m_RootOrder: 12 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 466, y: 204} m_SizeDelta: {x: 16, y: 16} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1288303643 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11481102, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1288303641} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 0, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: 84380142b5676e44daea94b5219bcf93, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1288303644 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22201302, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1288303641} m_CullTransparentMesh: 0 --- !u!1 &1308600305 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 188422, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1308600306} - component: {fileID: 1308600308} - component: {fileID: 1308600307} m_Layer: 5 m_Name: main_interior m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1308600306 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22443130, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1308600305} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1494352338} m_Father: {fileID: 735839753} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 414, y: 228} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1308600307 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11427710, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1308600305} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1308600308 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22247638, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1308600305} m_CullTransparentMesh: 0 --- !u!1 &1310941138 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 142508, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1310941139} - component: {fileID: 1310941141} - component: {fileID: 1310941140} m_Layer: 5 m_Name: ImageText m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 0 --- !u!224 &1310941139 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22420856, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1310941138} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1053457376} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: -120} m_SizeDelta: {x: 640, y: 240} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1310941140 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11446620, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1310941138} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: e6adce4d15086d64bb3b3fbddff1f69b, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1310941141 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22211202, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1310941138} m_CullTransparentMesh: 0 --- !u!1 &1331393606 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 196304, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1331393607} - component: {fileID: 1331393609} - component: {fileID: 1331393608} m_Layer: 0 m_Name: TextManager Choice m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1331393607 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22424056, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1331393606} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 661136828} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -82, y: 103} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &1331393608 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8212490, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1331393606} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &1331393609 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11449538, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1331393606} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 164 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 columnShift: 265 columnNumber: 1 blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &1372833084 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1372833085} m_Layer: 5 m_Name: TopLayer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1372833085 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1372833084} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1053457376} m_RootOrder: 13 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &1426570117 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 196304, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1426570118} - component: {fileID: 1426570120} - component: {fileID: 1426570119} m_Layer: 0 m_Name: TextManager Info m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1426570118 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22424056, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1426570117} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 534657686} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -82, y: 60} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &1426570119 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8212490, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1426570117} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &1426570120 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11449538, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1426570117} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 164 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 columnShift: 265 columnNumber: 1 blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &1494352337 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 196304, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1494352338} - component: {fileID: 1494352340} - component: {fileID: 1494352339} m_Layer: 0 m_Name: TextManager Main m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1494352338 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22424056, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1494352337} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1308600306} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -173, y: 103} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &1494352339 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8212490, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1494352337} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &1494352340 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11449538, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1494352337} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 364 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 columnShift: 265 columnNumber: 1 blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &1541950371 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 188422, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1541950372} - component: {fileID: 1541950374} - component: {fileID: 1541950373} m_Layer: 5 m_Name: bigtalk_interior m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1541950372 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22443130, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1541950371} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1064379238} m_Father: {fileID: 956183518} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 628, y: 228} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1541950373 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11427710, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1541950371} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1541950374 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22247638, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1541950371} m_CullTransparentMesh: 0 --- !u!1 &1701512144 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1701512145} m_Layer: 5 m_Name: BottomLayer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1701512145 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1701512144} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1053457376} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &1727654152 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 196304, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1727654155} - component: {fileID: 1727654154} - component: {fileID: 1727654153} m_Layer: 0 m_Name: TextManager Gold m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!82 &1727654153 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8212490, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1727654152} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &1727654154 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11449538, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1727654152} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 columnShift: 265 columnNumber: 2 blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!224 &1727654155 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22424056, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1727654152} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1053457376} m_RootOrder: 8 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 140, y: -176} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!1 &1823239361 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 142508, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1823239362} - component: {fileID: 1823239364} - component: {fileID: 1823239363} - component: {fileID: 1823239365} m_Layer: 5 m_Name: Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1823239362 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22420856, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1823239361} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1053457376} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 120} m_SizeDelta: {x: 640, y: 240} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1823239363 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11446620, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1823239361} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1823239364 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22211202, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1823239361} m_CullTransparentMesh: 0 --- !u!114 &1823239365 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1823239361} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1001 &1872943036 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 1053457376} m_Modifications: - target: {fileID: 11413288, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_Text value: Debugger (F9 to toggle, DEBUG(string) to print) objectReference: {fileID: 0} - target: {fileID: 11413288, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_FontData.m_Alignment value: 6 objectReference: {fileID: 0} - target: {fileID: 11413288, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_FontData.m_BestFit value: 0 objectReference: {fileID: 0} - target: {fileID: 11413288, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_FontData.m_HorizontalOverflow value: 0 objectReference: {fileID: 0} - target: {fileID: 11413288, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_FontData.m_VerticalOverflow value: 1 objectReference: {fileID: 0} - target: {fileID: 11413288, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_FontData.m_RichText value: 1 objectReference: {fileID: 0} - target: {fileID: 11413288, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_FontData.m_Font value: objectReference: {fileID: 12800000, guid: abd91933b51b6fc47931c535c62c6929, type: 3} - target: {fileID: 11453098, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: maxLines value: 7 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_LocalPosition.z value: 9080 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_LocalRotation.x value: -0 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_LocalRotation.y value: -0 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_LocalRotation.z value: -0 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_RootOrder value: 14 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_AnchoredPosition.x value: -20 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_SizeDelta.x value: 320 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_SizeDelta.y value: 140 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_AnchorMin.x value: 1 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_AnchorMin.y value: 1 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_AnchorMax.x value: 1 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_AnchorMax.y value: 1 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_Pivot.x value: 1 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_Pivot.y value: 1 objectReference: {fileID: 0} - target: {fileID: 22474774, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22474774, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_SizeDelta.x value: -10 objectReference: {fileID: 0} - target: {fileID: 22474774, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22474774, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_SizeDelta.y value: -10 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} --- !u!224 &1872943037 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} m_PrefabInstance: {fileID: 1872943036} m_PrefabAsset: {fileID: 0} --- !u!1 &2033653813 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2033653814} m_Layer: 5 m_Name: BelowUILayer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &2033653814 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2033653813} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1053457376} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} ================================================ FILE: Assets/Scenes/Shop.unity.meta ================================================ fileFormatVersion: 2 guid: f4bbae101a4c667429ad4c726c7bf820 timeCreated: 1495372340 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scenes/SpecialAnnouncement.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 3 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 11 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_TemporalCoherenceThreshold: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 0 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 10 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 1 m_CompAOExponentDirect: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 256 m_ReflectionCompression: 2 m_MixedBakeMode: 2 m_BakeBackend: 0 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 500 m_PVRBounces: 2 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVRFilteringMode: 1 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ShowResolutionOverlay: 1 m_LightingDataAsset: {fileID: 0} m_UseShadowmask: 1 --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1 &290530034 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 290530035} - component: {fileID: 290530037} - component: {fileID: 290530036} m_Layer: 0 m_Name: MisriHalek m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &290530035 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 290530034} m_LocalRotation: {x: 0, y: 0, z: 0.2588191, w: 0.9659258} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1479783780} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 30} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 360, y: -360} m_SizeDelta: {x: 166, y: 161} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &290530036 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 290530034} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 21300000, guid: 18b9457afe53ce64c8f7b4bae220df09, type: 3} m_Type: 0 m_PreserveAspect: 1 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!222 &290530037 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 290530034} m_CullTransparentMesh: 0 --- !u!1 &479130292 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 479130293} m_Layer: 0 m_Name: DefaultLayer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &479130293 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 479130292} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1479783780} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &680331694 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 680331695} - component: {fileID: 680331697} - component: {fileID: 680331696} m_Layer: 0 m_Name: MainText m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &680331695 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 680331694} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1479783780} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: -60} m_SizeDelta: {x: 620, y: 30} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &680331696 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 680331694} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 32 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 40 m_Alignment: 1 m_AlignByGeometry: 0 m_RichText: 0 m_HorizontalOverflow: 0 m_VerticalOverflow: 1 m_LineSpacing: 1 m_Text: --- !u!222 &680331697 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 680331694} m_CullTransparentMesh: 0 --- !u!1001 &1068206063 Prefab: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} propertyPath: m_LocalPosition.x value: 320 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} propertyPath: m_LocalPosition.y value: 240 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} propertyPath: m_LocalPosition.z value: -10000 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} propertyPath: m_RootOrder value: 0 objectReference: {fileID: 0} - target: {fileID: 116878, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} propertyPath: m_Name value: MainAudio objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} m_IsPrefabAsset: 0 --- !u!1 &1068206064 stripped GameObject: m_CorrespondingSourceObject: {fileID: 116878, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} m_PrefabInternal: {fileID: 1068206063} --- !u!114 &1068206065 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1068206064} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 68da3a59a7fef2545a932ae833649006, type: 3} m_Name: m_EditorClassIdentifier: mainText: {fileID: 680331696} subText: {fileID: 1141650572} mainAudio: {fileID: 1068206066} subAudio: {fileID: 1915116489} misriHalek: {fileID: 290530036} --- !u!82 &1068206066 stripped AudioSource: m_CorrespondingSourceObject: {fileID: 8273166, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} m_PrefabInternal: {fileID: 1068206063} --- !u!1 &1141650570 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1141650571} - component: {fileID: 1141650573} - component: {fileID: 1141650572} m_Layer: 0 m_Name: SubText m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1141650571 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1141650570} m_LocalRotation: {x: 0, y: 0, z: -0.01745245, w: 0.99984777} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1479783780} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: -2} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: -352} m_SizeDelta: {x: 640, y: 30} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1141650572 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1141650570} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 708705254, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_FontData: m_Font: {fileID: 12800000, guid: a5a3b9aa4e92cfd4a9014c429c6a7e4e, type: 3} m_FontSize: 32 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 0 m_MaxSize: 40 m_Alignment: 1 m_AlignByGeometry: 0 m_RichText: 0 m_HorizontalOverflow: 0 m_VerticalOverflow: 1 m_LineSpacing: 1 m_Text: The event has ended, don't send this! --- !u!222 &1141650573 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1141650570} m_CullTransparentMesh: 0 --- !u!1 &1479783776 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1479783780} - component: {fileID: 1479783779} - component: {fileID: 1479783778} - component: {fileID: 1479783777} m_Layer: 0 m_Name: Canvas Two m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &1479783777 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1479783776} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1301386320, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 4294967295 --- !u!114 &1479783778 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1479783776} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: 1980459831, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_UiScaleMode: 0 m_ReferencePixelsPerUnit: 100 m_ScaleFactor: 1 m_ReferenceResolution: {x: 800, y: 600} m_ScreenMatchMode: 0 m_MatchWidthOrHeight: 0 m_PhysicalUnit: 3 m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 --- !u!223 &1479783779 Canvas: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1479783776} m_Enabled: 1 serializedVersion: 3 m_RenderMode: 2 m_Camera: {fileID: 0} m_PlaneDistance: 100 m_PixelPerfect: 0 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_AdditionalShaderChannelsFlag: 0 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 --- !u!224 &1479783780 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1479783776} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 290530035} - {fileID: 680331695} - {fileID: 479130293} - {fileID: 1141650571} - {fileID: 1971279469} m_Father: {fileID: 0} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 320, y: 240} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &1915116488 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1915116490} - component: {fileID: 1915116489} m_Layer: 0 m_Name: SubAudio m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!82 &1915116489 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1915116488} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 1 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 500 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!4 &1915116490 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1915116488} m_LocalRotation: {x: -0, y: -0, z: 0.2588191, w: 0.9659258} m_LocalPosition: {x: 600, y: 40, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1971279468 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1971279469} m_Layer: 0 m_Name: LuLayer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1971279469 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1971279468} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -6.75} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1479783780} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ================================================ FILE: Assets/Scenes/SpecialAnnouncement.unity.meta ================================================ fileFormatVersion: 2 guid: f9d2349a99292a24c91eaee50a95a87e timeCreated: 1498846643 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scenes/TitleScreen.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 3 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 11 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_TemporalCoherenceThreshold: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 0 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 10 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 0 m_CompAOExponentDirect: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 1024 m_ReflectionCompression: 2 m_MixedBakeMode: 1 m_BakeBackend: 0 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 500 m_PVRBounces: 2 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVRFilteringMode: 1 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ShowResolutionOverlay: 1 m_LightingDataAsset: {fileID: 0} m_UseShadowmask: 0 --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1001 &22035582 Prefab: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 1883718665} m_Modifications: - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_LocalRotation.x value: -0 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_LocalRotation.y value: -0 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_LocalRotation.z value: -0 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_RootOrder value: 0 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_AnchoredPosition.y value: -140 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_SizeDelta.x value: 250 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_SizeDelta.y value: 189 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_AnchorMax.y value: 0 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} m_IsPrefabAsset: 0 --- !u!224 &22035583 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 224140591129239992, guid: 966f7de4bcc923b419ada0e7a348eab3, type: 2} m_PrefabInternal: {fileID: 22035582} --- !u!1001 &60733399 Prefab: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} propertyPath: m_LocalPosition.x value: 320 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} propertyPath: m_LocalPosition.y value: 240 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} propertyPath: m_LocalPosition.z value: -10000 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 405216, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} propertyPath: m_RootOrder value: 8 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 9c0c29340fc4a6347aa18ffb6f5a7eea, type: 2} m_IsPrefabAsset: 0 --- !u!1 &91423222 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 91423225} - component: {fileID: 91423224} - component: {fileID: 91423223} m_Layer: 0 m_Name: EventSystem m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &91423223 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 91423222} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1077351063, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_HorizontalAxis: Horizontal m_VerticalAxis: Vertical m_SubmitButton: Submit m_CancelButton: Cancel m_InputActionsPerSecond: 10 m_RepeatDelay: 0.5 m_ForceModuleActive: 0 --- !u!114 &91423224 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 91423222} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -619905303, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_FirstSelected: {fileID: 0} m_sendNavigationEvents: 1 m_DragThreshold: 10 --- !u!4 &91423225 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 91423222} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 9 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1001 &422848137 Prefab: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 534368387} m_Modifications: - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_RootOrder value: 4 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchoredPosition.x value: 130 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchoredPosition.y value: 125 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_SizeDelta.x value: 20 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_SizeDelta.y value: 20 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_Pivot.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_Pivot.y value: 1 objectReference: {fileID: 0} - target: {fileID: 133404, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_Name value: TextManagerTime objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 11454028, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_SourcePrefab: {fileID: 100100000, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_IsPrefabAsset: 0 --- !u!224 &422848138 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_PrefabInternal: {fileID: 422848137} --- !u!114 &422848139 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 11440668, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_PrefabInternal: {fileID: 422848137} m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} --- !u!1 &497701414 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 497701415} - component: {fileID: 497701416} m_Layer: 5 m_Name: Blank m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &497701415 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 497701414} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -1} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: [] m_Father: {fileID: 847724189} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!212 &497701416 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 497701414} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 62f8426a429498442af34752c971234e, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 0} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!1 &534368386 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 534368387} - component: {fileID: 534368390} - component: {fileID: 534368389} - component: {fileID: 534368388} m_Layer: 5 m_Name: CanvasLoad m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &534368387 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 534368386} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -10} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 620306486} - {fileID: 748592234} - {fileID: 1775912997} - {fileID: 1173535491} - {fileID: 422848138} - {fileID: 1361511623} - {fileID: 2030943847} - {fileID: 677694269} - {fileID: 1094656776} m_Father: {fileID: 0} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 320, y: 240} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &534368388 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 534368386} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1301386320, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 4294967295 --- !u!114 &534368389 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 534368386} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1980459831, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_UiScaleMode: 0 m_ReferencePixelsPerUnit: 100 m_ScaleFactor: 1 m_ReferenceResolution: {x: 800, y: 600} m_ScreenMatchMode: 0 m_MatchWidthOrHeight: 0 m_PhysicalUnit: 3 m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 --- !u!223 &534368390 Canvas: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 534368386} m_Enabled: 1 serializedVersion: 3 m_RenderMode: 2 m_Camera: {fileID: 0} m_PlaneDistance: 100 m_PixelPerfect: 0 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_AdditionalShaderChannelsFlag: 25 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 --- !u!1 &620306485 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 620306486} - component: {fileID: 620306488} - component: {fileID: 620306487} m_Layer: 5 m_Name: BackgroundTitle m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &620306486 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 620306485} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 534368387} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &620306487 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 620306485} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 21300000, guid: 815782bea8ab5fd4f99184135b371bb2, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!222 &620306488 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 620306485} m_CullTransparentMesh: 0 --- !u!1 &677694268 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 677694269} - component: {fileID: 677694270} m_Layer: 5 m_Name: Reset m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &677694269 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 677694268} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 64, y: 4, z: -1} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: [] m_Father: {fileID: 534368387} m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!212 &677694270 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 677694268} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 3631c48bf5ca2be4a88bf9b6ab930a96, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!1 &748592231 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 748592234} - component: {fileID: 748592233} - component: {fileID: 748592232} m_Layer: 5 m_Name: TitleExample m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 0 --- !u!114 &748592232 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 748592231} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_Sprite: {fileID: 21300000, guid: c5a5df2c01b8beb42866a076ba6b76d3, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 --- !u!222 &748592233 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 748592231} m_CullTransparentMesh: 0 --- !u!224 &748592234 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 748592231} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 534368387} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &847724185 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 847724189} - component: {fileID: 847724188} - component: {fileID: 847724187} - component: {fileID: 847724186} m_Layer: 0 m_Name: CanvasReset m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &847724186 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 847724185} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1301386320, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 4294967295 --- !u!114 &847724187 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 847724185} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1980459831, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_UiScaleMode: 0 m_ReferencePixelsPerUnit: 100 m_ScaleFactor: 1 m_ReferenceResolution: {x: 800, y: 600} m_ScreenMatchMode: 0 m_MatchWidthOrHeight: 0 m_PhysicalUnit: 3 m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 --- !u!223 &847724188 Canvas: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 847724185} m_Enabled: 1 serializedVersion: 3 m_RenderMode: 2 m_Camera: {fileID: 0} m_PlaneDistance: 100 m_PixelPerfect: 0 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_AdditionalShaderChannelsFlag: 25 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 --- !u!224 &847724189 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 847724185} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1494429938} - {fileID: 1359285300} - {fileID: 1432567924} - {fileID: 497701415} - {fileID: 1942607625} m_Father: {fileID: 0} m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 320, y: 240} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &935519599 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 935519601} - component: {fileID: 935519600} m_Layer: 0 m_Name: PressEnterOrZ m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!212 &935519600 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 935519599} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: ce6788712929f4b419f8f4f7df4dc62e, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 0} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1.72, y: 0.1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!4 &935519601 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 935519599} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 320, y: 120, z: -100} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1094656775 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1094656776} - component: {fileID: 1094656777} m_Layer: 5 m_Name: ChangeName m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1094656776 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1094656775} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: -20, y: -40, z: -1} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: [] m_Father: {fileID: 534368387} m_RootOrder: 8 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!212 &1094656777 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1094656775} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: a814fdd708dbc85448d29e3118f67370, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!1001 &1173535490 Prefab: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 534368387} m_Modifications: - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_RootOrder value: 3 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchoredPosition.y value: 125 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_SizeDelta.x value: 20 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_SizeDelta.y value: 20 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_Pivot.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_Pivot.y value: 1 objectReference: {fileID: 0} - target: {fileID: 133404, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_Name value: TextManagerLevel objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 11454028, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_SourcePrefab: {fileID: 100100000, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_IsPrefabAsset: 0 --- !u!224 &1173535491 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_PrefabInternal: {fileID: 1173535490} --- !u!114 &1173535492 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 11440668, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_PrefabInternal: {fileID: 1173535490} m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} --- !u!1 &1359285298 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1359285300} - component: {fileID: 1359285299} m_Layer: 5 m_Name: No m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!212 &1359285299 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1359285298} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 1def9b36a090c9740a3f028535e37275, type: 3} m_Color: {r: 1, g: 1, b: 0, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!4 &1359285300 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1359285298} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -167, y: -177, z: 0} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: [] m_Father: {fileID: 847724189} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1001 &1361511622 Prefab: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 534368387} m_Modifications: - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_RootOrder value: 5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchoredPosition.x value: -180 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchoredPosition.y value: 85 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_SizeDelta.x value: 20 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_SizeDelta.y value: 20 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_Pivot.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_Pivot.y value: 1 objectReference: {fileID: 0} - target: {fileID: 133404, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_Name value: TextManagerMap objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 11454028, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_SourcePrefab: {fileID: 100100000, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_IsPrefabAsset: 0 --- !u!224 &1361511623 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_PrefabInternal: {fileID: 1361511622} --- !u!114 &1361511624 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 11440668, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_PrefabInternal: {fileID: 1361511622} m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} --- !u!1001 &1378308733 Prefab: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 847724189} m_Modifications: - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_RootOrder value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchoredPosition.x value: -71 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchoredPosition.y value: 110 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_SizeDelta.x value: 20 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_SizeDelta.y value: 20 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_Pivot.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_Pivot.y value: 1 objectReference: {fileID: 0} - target: {fileID: 133404, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_Name value: TextManagerResetName objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 11454028, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_SourcePrefab: {fileID: 100100000, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_IsPrefabAsset: 0 --- !u!114 &1378308734 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 11440668, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_PrefabInternal: {fileID: 1378308733} m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} --- !u!1 &1395967705 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1395967707} - component: {fileID: 1395967706} m_Layer: 0 m_Name: LogoCrate m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!212 &1395967706 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1395967705} m_Enabled: 0 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 397584d4b962e854cbaa80432fb093be, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!4 &1395967707 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1395967705} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 320, y: 270, z: -100} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1432567923 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1432567924} - component: {fileID: 1432567925} m_Layer: 5 m_Name: Yes m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1432567924 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1432567923} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 120, y: -177, z: 0} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: [] m_Father: {fileID: 847724189} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!212 &1432567925 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1432567923} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 29c15bdcc32cf89498e0235af855008b, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!224 &1494429938 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_PrefabInternal: {fileID: 1378308733} --- !u!1 &1701587689 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1701587691} - component: {fileID: 1701587690} m_Layer: 0 m_Name: TitleScript m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &1701587690 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1701587689} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9008bedd3313d2c4e8f6e9c44a31edf9, type: 3} m_Name: m_EditorClassIdentifier: phase: 0 indexChoice: 0 tmName: {fileID: 1378308734} TextManagerName: {fileID: 1775912998} TextManagerLevel: {fileID: 1173535492} TextManagerTime: {fileID: 422848139} TextManagerMap: {fileID: 1361511624} Logo: {fileID: 1774586986} LogoCrate: {fileID: 1395967705} RetromodeCanvas: {fileID: 1883718661} PressEnterOrZ: {fileID: 935519600} --- !u!4 &1701587691 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1701587689} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 320, y: 240, z: -99} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1774586986 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1774586988} - component: {fileID: 1774586987} m_Layer: 0 m_Name: Logo m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!212 &1774586987 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1774586986} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 0674d045b33b0ab428293d6c06be0106, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!4 &1774586988 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1774586986} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 320, y: 270, z: -100} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1001 &1775912996 Prefab: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 534368387} m_Modifications: - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_RootOrder value: 2 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchoredPosition.x value: -180 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchoredPosition.y value: 125 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_SizeDelta.x value: 20 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_SizeDelta.y value: 20 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_Pivot.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_Pivot.y value: 1 objectReference: {fileID: 0} - target: {fileID: 133404, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} propertyPath: m_Name value: TextManagerName objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 11454028, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_SourcePrefab: {fileID: 100100000, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_IsPrefabAsset: 0 --- !u!224 &1775912997 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 22415740, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_PrefabInternal: {fileID: 1775912996} --- !u!114 &1775912998 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 11440668, guid: 3a23d2c086616ee478252340c1f504ff, type: 2} m_PrefabInternal: {fileID: 1775912996} m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} --- !u!1 &1883718661 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1883718665} - component: {fileID: 1883718664} - component: {fileID: 1883718663} - component: {fileID: 1883718662} m_Layer: 5 m_Name: CanvasRetromode m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &1883718662 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1883718661} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1301386320, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 4294967295 --- !u!114 &1883718663 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1883718661} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1980459831, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_UiScaleMode: 0 m_ReferencePixelsPerUnit: 100 m_ScaleFactor: 1 m_ReferenceResolution: {x: 800, y: 600} m_ScreenMatchMode: 0 m_MatchWidthOrHeight: 0 m_PhysicalUnit: 3 m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 --- !u!223 &1883718664 Canvas: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1883718661} m_Enabled: 1 serializedVersion: 3 m_RenderMode: 0 m_Camera: {fileID: 0} m_PlaneDistance: 100 m_PixelPerfect: 0 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_AdditionalShaderChannelsFlag: 0 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 --- !u!224 &1883718665 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1883718661} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0, y: 0, z: 0} m_Children: - {fileID: 22035583} m_Father: {fileID: 0} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0, y: 0} --- !u!1 &1942607624 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1942607625} - component: {fileID: 1942607626} m_Layer: 0 m_Name: ResetExample m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1942607625 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1942607624} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 1} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: [] m_Father: {fileID: 847724189} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!212 &1942607626 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1942607624} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: d0d25ef900e510d4c84291eb5c75d42b, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!1 &1957316842 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1957316845} - component: {fileID: 1957316844} m_Layer: 0 m_Name: Back1 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!212 &1957316844 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1957316842} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 5a15fea0f60c14a449b67566953ba18a, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!4 &1957316845 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1957316842} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 320, y: 240, z: -99} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &2030943846 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2030943847} - component: {fileID: 2030943848} m_Layer: 5 m_Name: Continue m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &2030943847 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 2030943846} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -95, y: 5, z: -1} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: [] m_Father: {fileID: 534368387} m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!212 &2030943848 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 2030943846} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: a9d09dc4972d49d479aa26c1b75bf971, type: 3} m_Color: {r: 1, g: 1, b: 0, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 ================================================ FILE: Assets/Scenes/TitleScreen.unity.meta ================================================ fileFormatVersion: 2 guid: 02f3ab2d62766e944aa9da3b343ad0c8 timeCreated: 1463849010 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scenes/TransitionOverworld.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 3 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 11 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 0 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 10 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 0 m_CompAOExponentDirect: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 1024 m_ReflectionCompression: 2 m_MixedBakeMode: 1 m_BakeBackend: 0 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 500 m_PVRBounces: 2 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVRFilteringMode: 1 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ShowResolutionOverlay: 1 m_LightingDataAsset: {fileID: 0} m_UseShadowmask: 0 --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1 &12034619 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 111604, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 12034620} - component: {fileID: 12034622} - component: {fileID: 12034621} m_Layer: 0 m_Name: TextManagerStatWeapon m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &12034620 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22430634, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 12034619} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1824575478} m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -157, y: -69} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &12034621 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8227254, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 12034619} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &12034622 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11424568, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 12034619} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &37236981 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 164878, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 37236982} - component: {fileID: 37236984} - component: {fileID: 37236983} m_Layer: 0 m_Name: TextManagerLevel m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &37236982 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22403394, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 37236981} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 835577668} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 68} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &37236983 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8254826, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 37236981} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &37236984 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11489994, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 37236981} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1001 &43590226 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 1779322336} m_Modifications: - target: {fileID: 11413288, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_Text value: Debugger (F9 to toggle, DEBUG(string) to print) objectReference: {fileID: 0} - target: {fileID: 11413288, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_FontData.m_Alignment value: 6 objectReference: {fileID: 0} - target: {fileID: 11413288, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_FontData.m_BestFit value: 0 objectReference: {fileID: 0} - target: {fileID: 11413288, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_FontData.m_HorizontalOverflow value: 0 objectReference: {fileID: 0} - target: {fileID: 11413288, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_FontData.m_VerticalOverflow value: 1 objectReference: {fileID: 0} - target: {fileID: 11413288, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_FontData.m_RichText value: 1 objectReference: {fileID: 0} - target: {fileID: 11413288, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_FontData.m_Font value: objectReference: {fileID: 12800000, guid: abd91933b51b6fc47931c535c62c6929, type: 3} - target: {fileID: 11453098, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: maxLines value: 7 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_LocalPosition.z value: 90 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_RootOrder value: 7 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_AnchoredPosition.x value: -20 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_SizeDelta.x value: 320 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_SizeDelta.y value: 140 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_AnchorMin.x value: 1 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_AnchorMin.y value: 1 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_AnchorMax.x value: 1 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_AnchorMax.y value: 1 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_Pivot.x value: 1 objectReference: {fileID: 0} - target: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_Pivot.y value: 1 objectReference: {fileID: 0} - target: {fileID: 22474774, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22474774, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_SizeDelta.x value: -10 objectReference: {fileID: 0} - target: {fileID: 22474774, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22474774, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} propertyPath: m_SizeDelta.y value: -10 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} --- !u!1 &124672994 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 169666, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 124672995} - component: {fileID: 124672997} - component: {fileID: 124672996} m_Layer: 0 m_Name: TextManagerItem4 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &124672995 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22444640, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 124672994} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1168944912} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -129, y: 59} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &124672996 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8284956, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 124672994} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &124672997 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11404458, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 124672994} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &147928540 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 129530, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 147928541} - component: {fileID: 147928543} - component: {fileID: 147928542} m_Layer: 5 m_Name: PlayerEncounter m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &147928541 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22473642, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 147928540} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -5040} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: [] m_Father: {fileID: 1779322336} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0} m_AnchorMax: {x: 0.5, y: 0} m_AnchoredPosition: {x: 0, y: -4760} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0} --- !u!114 &147928542 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11485054, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 147928540} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &147928543 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22247274, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 147928540} m_CullTransparentMesh: 0 --- !u!1 &189985682 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 189985683} m_Layer: 0 m_Name: DefaultLayer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &189985683 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 189985682} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 495211066} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 1, y: 1} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &212244439 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 155676, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 212244440} - component: {fileID: 212244442} - component: {fileID: 212244441} m_Layer: 0 m_Name: TextManagerReturn m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &212244440 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22460088, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 212244439} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 835577668} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 30, y: -32} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &212244441 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8235390, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 212244439} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &212244442 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11460566, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 212244439} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &247211483 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 198980, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 247211484} - component: {fileID: 247211486} - component: {fileID: 247211485} - component: {fileID: 247211487} m_Layer: 5 m_Name: Mugshot m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &247211484 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22435714, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 247211483} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1.001, y: 1.001, z: 1} m_Children: [] m_Father: {fileID: 1395240487} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -225, y: 0} m_SizeDelta: {x: 140, y: 140} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &247211485 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11438250, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 247211483} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &247211486 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22248334, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 247211483} m_CullTransparentMesh: 0 --- !u!114 &247211487 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 247211483} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1 &256024069 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 196304, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 256024070} - component: {fileID: 256024072} - component: {fileID: 256024071} m_Layer: 0 m_Name: TextManager OW m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &256024070 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22424056, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 256024069} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1395240487} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -267, y: 65} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &256024071 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8212490, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 256024069} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &256024072 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11449538, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 256024069} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 534 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &260230355 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 116950, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 260230356} - component: {fileID: 260230358} - component: {fileID: 260230357} m_Layer: 0 m_Name: TextManagerMenuStat m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &260230356 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22495040, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 260230355} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 2020485661} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -48, y: 20} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &260230357 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8245112, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 260230355} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &260230358 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11473182, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 260230355} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &268140599 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 153806, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 268140600} - component: {fileID: 268140602} - component: {fileID: 268140601} m_Layer: 0 m_Name: TextManagerStatLevel m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &268140600 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22410726, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 268140599} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1824575478} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -157, y: 119} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &268140601 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8293506, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 268140599} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &268140602 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11425818, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 268140599} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &373771159 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 172992, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 373771160} - component: {fileID: 373771162} - component: {fileID: 373771161} m_Layer: 0 m_Name: TextManagerStatGold m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &373771160 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22431834, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 373771159} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1824575478} m_RootOrder: 9 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -157, y: -141} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &373771161 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8235822, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 373771159} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &373771162 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11443542, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 373771159} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &424356986 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 126142, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 424356987} - component: {fileID: 424356989} - component: {fileID: 424356988} m_Layer: 5 m_Name: textframe_border_outer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &424356987 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22438742, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 424356986} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1395240487} m_Father: {fileID: 1779322336} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 20, y: 20} m_SizeDelta: {x: 600, y: 150} m_Pivot: {x: 0, y: 0} --- !u!114 &424356988 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11488738, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 424356986} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &424356989 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22237998, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 424356986} m_CullTransparentMesh: 0 --- !u!1 &483941558 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 127248, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 483941559} - component: {fileID: 483941561} - component: {fileID: 483941560} m_Layer: 0 m_Name: TextManagerStatATK m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &483941559 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22478606, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 483941558} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1824575478} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -157, y: 23} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &483941560 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8216894, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 483941558} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &483941561 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11468106, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 483941558} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &495211062 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 495211066} - component: {fileID: 495211065} - component: {fileID: 495211064} - component: {fileID: 495211063} m_Layer: 5 m_Name: Canvas Two m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &495211063 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 495211062} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1301386320, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 4294967295 --- !u!114 &495211064 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 495211062} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1980459831, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_UiScaleMode: 0 m_ReferencePixelsPerUnit: 100 m_ScaleFactor: 1 m_ReferenceResolution: {x: 800, y: 600} m_ScreenMatchMode: 0 m_MatchWidthOrHeight: 0 m_PhysicalUnit: 3 m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 --- !u!223 &495211065 Canvas: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 495211062} m_Enabled: 1 serializedVersion: 3 m_RenderMode: 2 m_Camera: {fileID: 0} m_PlaneDistance: 100 m_PixelPerfect: 0 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_AdditionalShaderChannelsFlag: 25 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 --- !u!224 &495211066 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 495211062} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 189985683} m_Father: {fileID: 0} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0, y: 0} --- !u!1 &557343004 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 135856, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 557343005} - component: {fileID: 557343007} - component: {fileID: 557343006} m_Layer: 0 m_Name: TextManagerItem3 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &557343005 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22422088, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 557343004} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1168944912} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -129, y: 91} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &557343006 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8273024, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 557343004} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &557343007 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11498876, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 557343004} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &566465743 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 176660, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 566465744} - component: {fileID: 566465746} - component: {fileID: 566465745} m_Layer: 0 m_Name: TextManagerStatDEF m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &566465744 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22459112, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 566465743} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1824575478} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -157, y: -9} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &566465745 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8286316, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 566465743} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &566465746 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11479976, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 566465743} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &573195106 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 127570, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 573195107} - component: {fileID: 573195109} - component: {fileID: 573195108} m_Layer: 0 m_Name: TextManagerMenuStatName m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &573195107 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22414798, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 573195106} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1369875160} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -86, y: 49} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &573195108 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8272772, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 573195106} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 --- !u!114 &573195109 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11456694, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 573195106} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1001 &586924196 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 224554813039956440, guid: a606ee4e085f7114e8a4bb167d4e644b, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 224554813039956440, guid: a606ee4e085f7114e8a4bb167d4e644b, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 224554813039956440, guid: a606ee4e085f7114e8a4bb167d4e644b, type: 3} propertyPath: m_LocalPosition.z value: -10000 objectReference: {fileID: 0} - target: {fileID: 224554813039956440, guid: a606ee4e085f7114e8a4bb167d4e644b, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 224554813039956440, guid: a606ee4e085f7114e8a4bb167d4e644b, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 224554813039956440, guid: a606ee4e085f7114e8a4bb167d4e644b, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 224554813039956440, guid: a606ee4e085f7114e8a4bb167d4e644b, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 224554813039956440, guid: a606ee4e085f7114e8a4bb167d4e644b, type: 3} propertyPath: m_RootOrder value: 0 objectReference: {fileID: 0} - target: {fileID: 224554813039956440, guid: a606ee4e085f7114e8a4bb167d4e644b, type: 3} propertyPath: m_AnchoredPosition.x value: 320 objectReference: {fileID: 0} - target: {fileID: 224554813039956440, guid: a606ee4e085f7114e8a4bb167d4e644b, type: 3} propertyPath: m_AnchoredPosition.y value: 240 objectReference: {fileID: 0} - target: {fileID: 224554813039956440, guid: a606ee4e085f7114e8a4bb167d4e644b, type: 3} propertyPath: m_SizeDelta.x value: 100 objectReference: {fileID: 0} - target: {fileID: 224554813039956440, guid: a606ee4e085f7114e8a4bb167d4e644b, type: 3} propertyPath: m_SizeDelta.y value: 100 objectReference: {fileID: 0} - target: {fileID: 224554813039956440, guid: a606ee4e085f7114e8a4bb167d4e644b, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224554813039956440, guid: a606ee4e085f7114e8a4bb167d4e644b, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224554813039956440, guid: a606ee4e085f7114e8a4bb167d4e644b, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224554813039956440, guid: a606ee4e085f7114e8a4bb167d4e644b, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224554813039956440, guid: a606ee4e085f7114e8a4bb167d4e644b, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224554813039956440, guid: a606ee4e085f7114e8a4bb167d4e644b, type: 3} propertyPath: m_Pivot.y value: 0.5 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: a606ee4e085f7114e8a4bb167d4e644b, type: 3} --- !u!1001 &619600879 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 1654311716} m_Modifications: - target: {fileID: 465484, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_LocalScale.x value: 1 objectReference: {fileID: 0} - target: {fileID: 465484, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_LocalScale.y value: 1 objectReference: {fileID: 0} - target: {fileID: 5003194, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_BodyType value: 1 objectReference: {fileID: 0} - target: {fileID: 6156472, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_SpriteTilingProperty.pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6156472, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_SpriteTilingProperty.pivot.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6156472, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.x value: 0.38 objectReference: {fileID: 0} - target: {fileID: 6156472, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.y value: 0.66 objectReference: {fileID: 0} - target: {fileID: 6156472, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_SpriteTilingProperty.newSize.x value: 0.38 objectReference: {fileID: 0} - target: {fileID: 6156472, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_SpriteTilingProperty.newSize.y value: 0.58 objectReference: {fileID: 0} - target: {fileID: 6156472, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_SpriteTilingProperty.adaptiveTilingThreshold value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6156472, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_Size.x value: 0.3 objectReference: {fileID: 0} - target: {fileID: 6156472, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_Size.y value: 0.2 objectReference: {fileID: 0} - target: {fileID: 6156472, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_Offset.y value: 0.1 objectReference: {fileID: 0} - target: {fileID: 6156472, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_EdgeRadius value: 0 objectReference: {fileID: 0} - target: {fileID: 6156472, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_Enabled value: 1 objectReference: {fileID: 0} - target: {fileID: 6156472, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_Offset.x value: 0 objectReference: {fileID: 0} - target: {fileID: 11463766, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: speed value: 3 objectReference: {fileID: 0} - target: {fileID: 21207398, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: ba3bc926f01aa7e4782aa6b0faf2a3d8, type: 3} - target: {fileID: 21207398, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_Size.x value: 0.38 objectReference: {fileID: 0} - target: {fileID: 21207398, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_Size.y value: 0.58 objectReference: {fileID: 0} - target: {fileID: 21207398, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_WasSpriteAssigned value: 1 objectReference: {fileID: 0} - target: {fileID: 22441604, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22441604, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22441604, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22441604, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_LocalRotation.x value: -0 objectReference: {fileID: 0} - target: {fileID: 22441604, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_LocalRotation.y value: -0 objectReference: {fileID: 0} - target: {fileID: 22441604, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_LocalRotation.z value: -0 objectReference: {fileID: 0} - target: {fileID: 22441604, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22441604, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_RootOrder value: 0 objectReference: {fileID: 0} - target: {fileID: 22441604, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22441604, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22441604, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_SizeDelta.x value: 0.38 objectReference: {fileID: 0} - target: {fileID: 22441604, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_SizeDelta.y value: 0.58 objectReference: {fileID: 0} - target: {fileID: 22441604, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22441604, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22441604, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22441604, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_AnchorMax.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22441604, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22441604, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.size value: 49 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[40].name value: BoosterMovingDown objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[40].anims value: BoosterOW/0, BoosterOW/1, BoosterOW/2, BoosterOW/3 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[40].transitionTime value: 0.1875 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[41].name value: BoosterMovingLeft objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[41].anims value: BoosterOW/4, BoosterOW/5, BoosterOW/6, BoosterOW/7 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[41].transitionTime value: 0.1875 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[42].name value: BoosterMovingRight objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[42].anims value: BoosterOW/8, BoosterOW/9, BoosterOW/10, BoosterOW/11 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[42].transitionTime value: 0.1875 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[43].name value: BoosterMovingUp objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[43].anims value: BoosterOW/12, BoosterOW/13, BoosterOW/14, BoosterOW/15 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[43].transitionTime value: 0.1875 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[44].name value: BoosterStopDown objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[44].anims value: BoosterOW/1, BoosterOW/3 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[44].transitionTime value: 1 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[45].name value: BoosterStopLeft objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[45].anims value: BoosterOW/5, BoosterOW/7 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[45].transitionTime value: 1 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[46].name value: BoosterStopRight objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[46].anims value: BoosterOW/9, BoosterOW/11 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[46].transitionTime value: 1 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[47].name value: BoosterStopUp objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[47].anims value: BoosterOW/13, BoosterOW/15 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[47].transitionTime value: 1 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[48].name value: NoAnim objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[48].anims value: empty2, empty2 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[48].transitionTime value: 60 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[4].anims value: FriskUT/1, FriskUT/3 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[0].transitionTime value: 0.1875 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[3].transitionTime value: 0.1875 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[2].transitionTime value: 0.1875 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[1].transitionTime value: 0.1875 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[8].transitionTime value: 0.1875 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[9].transitionTime value: 0.1875 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[10].transitionTime value: 0.1875 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[11].transitionTime value: 0.1875 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[16].transitionTime value: 0.1875 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[17].transitionTime value: 0.1875 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[18].transitionTime value: 0.1875 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[19].transitionTime value: 0.1875 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[24].transitionTime value: 0.1875 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[25].transitionTime value: 0.1875 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[26].transitionTime value: 0.1875 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[27].transitionTime value: 0.1875 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[32].transitionTime value: 0.1875 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[34].transitionTime value: 0.1875 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[33].transitionTime value: 0.1875 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[35].transitionTime value: 0.1875 objectReference: {fileID: 0} - target: {fileID: 114937843077718580, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} propertyPath: anims.Array.data[0].anims value: FriskUT/0, FriskUT/1, FriskUT/2, FriskUT/3 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} --- !u!224 &619600880 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 22441604, guid: e40c2f31a47b71446a21f2839cf50317, type: 3} m_PrefabInstance: {fileID: 619600879} m_PrefabAsset: {fileID: 0} --- !u!1 &629619426 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 190998, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 629619427} - component: {fileID: 629619429} - component: {fileID: 629619428} m_Layer: 0 m_Name: TextManagerMenuStatLevel m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &629619427 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22458834, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 629619426} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1369875160} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -86, y: 25} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &629619428 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8217906, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 629619426} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 --- !u!114 &629619429 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11431062, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 629619426} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &634136909 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 634136910} m_Layer: 0 m_Name: GameOverContainer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &634136910 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 634136909} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 320, y: 240, z: 100000} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 2043428502} - {fileID: 1024388665} m_Father: {fileID: 0} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &670959143 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 149078, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 670959144} - component: {fileID: 670959146} - component: {fileID: 670959145} m_Layer: 5 m_Name: item_border_outer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &670959144 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22459614, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 670959143} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1168944912} m_Father: {fileID: 1731033919} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: -27, y: -124} m_SizeDelta: {x: 345, y: 362} m_Pivot: {x: 0, y: 0} --- !u!114 &670959145 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11404624, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 670959143} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &670959146 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22240298, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 670959143} m_CullTransparentMesh: 0 --- !u!1 &715141001 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 138530, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1779322336} - component: {fileID: 715141004} - component: {fileID: 715141003} - component: {fileID: 715141002} m_Layer: 5 m_Name: Canvas OW m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &715141002 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11406992, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 715141001} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1301386320, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 4294967295 --- !u!114 &715141003 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11450476, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 715141001} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1980459831, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_UiScaleMode: 0 m_ReferencePixelsPerUnit: 100 m_ScaleFactor: 1 m_ReferenceResolution: {x: 800, y: 600} m_ScreenMatchMode: 0 m_MatchWidthOrHeight: 0 m_PhysicalUnit: 3 m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 --- !u!223 &715141004 Canvas: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22343828, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 715141001} m_Enabled: 1 serializedVersion: 3 m_RenderMode: 2 m_Camera: {fileID: 0} m_PlaneDistance: 100 m_PixelPerfect: 0 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_AdditionalShaderChannelsFlag: 25 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 --- !u!1 &717195414 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 154400, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 717195415} - component: {fileID: 717195417} - component: {fileID: 717195416} m_Layer: 0 m_Name: TextManagerItem6 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &717195415 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22402256, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 717195414} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1168944912} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -129, y: -5} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &717195416 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8238284, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 717195414} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &717195417 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11410186, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 717195414} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &738094585 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 170660, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 738094586} - component: {fileID: 738094588} - component: {fileID: 738094587} m_Layer: 0 m_Name: TextManagerItemUse m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &738094586 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22425382, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 738094585} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1168944912} m_RootOrder: 8 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -129, y: -125} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &738094587 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8227190, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 738094585} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &738094588 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11424364, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 738094585} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &743800823 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 193974, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 743800824} - component: {fileID: 743800826} - component: {fileID: 743800825} m_Layer: 5 m_Name: menuchoice_border_outer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &743800824 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22475042, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 743800823} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 2020485661} m_Father: {fileID: 1731033919} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: -238, y: -26} m_SizeDelta: {x: 200, y: 148} m_Pivot: {x: 0, y: 0} --- !u!114 &743800825 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11470070, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 743800823} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &743800826 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22250412, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 743800823} m_CullTransparentMesh: 0 --- !u!1 &749788066 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 133030, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 749788067} - component: {fileID: 749788069} - component: {fileID: 749788068} m_Layer: 0 m_Name: TextManagerMenuStatHP m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &749788067 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22428066, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 749788066} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1369875160} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -86, y: 7} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &749788068 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8259096, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 749788066} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 --- !u!114 &749788069 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11485060, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 749788066} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &770504841 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 187396, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 770504842} - component: {fileID: 770504844} - component: {fileID: 770504843} m_Layer: 0 m_Name: black m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &770504842 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22453338, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 770504841} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -4990} m_LocalScale: {x: 1, y: 1, z: 0} m_Children: [] m_Father: {fileID: 1779322336} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &770504843 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11458820, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 770504841} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: 62f8426a429498442af34752c971234e, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &770504844 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22262554, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 770504841} m_CullTransparentMesh: 0 --- !u!1 &804708091 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 131400, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 804708092} - component: {fileID: 804708094} - component: {fileID: 804708093} m_Layer: 0 m_Name: TextManagerMenuItem m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &804708092 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22412628, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 804708091} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 2020485661} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -48, y: 56} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &804708093 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8277832, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 804708091} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &804708094 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11489992, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 804708091} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &820532155 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 109072, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 820532156} - component: {fileID: 820532158} - component: {fileID: 820532157} m_Layer: 0 m_Name: TextManagerItem1 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &820532156 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22473384, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 820532155} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1168944912} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -129, y: 155} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &820532157 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8246416, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 820532155} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &820532158 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11403628, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 820532155} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &835577667 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 188448, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 835577668} - component: {fileID: 835577670} - component: {fileID: 835577669} m_Layer: 5 m_Name: save_interior m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &835577668 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22405568, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 835577667} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1841481151} - {fileID: 37236982} - {fileID: 983044191} - {fileID: 1299325994} - {fileID: 2064810221} - {fileID: 212244440} m_Father: {fileID: 1269631941} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 410, y: 160} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &835577669 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11458296, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 835577667} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &835577670 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22237520, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 835577667} m_CullTransparentMesh: 0 --- !u!1 &841160939 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 126430, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 841160940} - component: {fileID: 841160942} - component: {fileID: 841160941} m_Layer: 0 m_Name: TextManagerStatName m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &841160940 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22445310, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 841160939} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1824575478} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -157, y: 179} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &841160941 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8255908, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 841160939} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &841160942 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11447966, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 841160939} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &891869946 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 185926, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 891869947} - component: {fileID: 891869949} - component: {fileID: 891869948} m_Layer: 0 m_Name: TextManagerMenuStatGold m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &891869947 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22480922, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 891869946} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1369875160} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -86, y: -11} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &891869948 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8222898, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 891869946} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 --- !u!114 &891869949 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11408826, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 891869946} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &911517697 stripped GameObject: m_CorrespondingSourceObject: {fileID: 132834, guid: a606ee4e085f7114e8a4bb167d4e644b, type: 3} m_PrefabInstance: {fileID: 586924196} m_PrefabAsset: {fileID: 0} --- !u!114 &911517698 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 911517697} m_Enabled: 0 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: b7283c6f35cfc2a40b16bb214a8d4f62, type: 3} m_Name: m_EditorClassIdentifier: material: {fileID: 0} --- !u!1 &920785481 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 104722, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 920785482} - component: {fileID: 920785484} - component: {fileID: 920785483} m_Layer: 0 m_Name: TextManagerItem7 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &920785482 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22464902, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 920785481} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1168944912} m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -129, y: -37} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &920785483 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8240498, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 920785481} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &920785484 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11425914, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 920785481} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &952942991 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 183300, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 952942992} - component: {fileID: 952942994} - component: {fileID: 952942993} m_Layer: 5 m_Name: stat_border_outer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &952942992 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22418524, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 952942991} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1824575478} m_Father: {fileID: 1731033919} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: -27, y: -180} m_SizeDelta: {x: 370, y: 418} m_Pivot: {x: 0, y: 0} --- !u!114 &952942993 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11481144, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 952942991} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &952942994 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22269356, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 952942991} m_CullTransparentMesh: 0 --- !u!1 &983044190 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 125440, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 983044191} - component: {fileID: 983044193} - component: {fileID: 983044192} m_Layer: 0 m_Name: TextManagerTime m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &983044191 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22408348, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 983044190} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 835577668} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 130, y: 68} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &983044192 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8292336, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 983044190} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &983044193 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11406152, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 983044190} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &1024388664 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1024388665} - component: {fileID: 1024388668} - component: {fileID: 1024388667} - component: {fileID: 1024388666} m_Layer: 5 m_Name: Canvas GameOver m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1024388665 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1024388664} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1147174115} - {fileID: 1977298765} - {fileID: 1101583712} - {fileID: 1442682133} m_Father: {fileID: 634136910} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1024388666 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1024388664} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1301386320, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 4294967295 --- !u!114 &1024388667 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1024388664} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1980459831, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_UiScaleMode: 0 m_ReferencePixelsPerUnit: 100 m_ScaleFactor: 1 m_ReferenceResolution: {x: 800, y: 600} m_ScreenMatchMode: 0 m_MatchWidthOrHeight: 0 m_PhysicalUnit: 3 m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 --- !u!223 &1024388668 Canvas: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1024388664} m_Enabled: 1 serializedVersion: 3 m_RenderMode: 2 m_Camera: {fileID: 0} m_PlaneDistance: 100 m_PixelPerfect: 0 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_AdditionalShaderChannelsFlag: 25 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 --- !u!1 &1101583711 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1101583712} - component: {fileID: 1101583713} m_Layer: 5 m_Name: ReviveText m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1101583712 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1101583711} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1024388665} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 160, y: -120} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1101583713 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1101583711} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: $ currentLine: 0 _textMaxWidth: 320 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &1101770078 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 175004, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1101770079} - component: {fileID: 1101770081} - component: {fileID: 1101770080} m_Layer: 0 m_Name: TextManagerItemInfo m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1101770079 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22487528, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1101770078} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1168944912} m_RootOrder: 9 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -33, y: -125} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &1101770080 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8261376, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1101770078} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &1101770081 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11473512, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1101770078} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &1117834468 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 165910, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1117834469} - component: {fileID: 1117834471} - component: {fileID: 1117834470} m_Layer: 5 m_Name: utHeartMenu m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1117834469 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22448448, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1117834468} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -5090} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1731033919} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: -53, y: 161} m_SizeDelta: {x: 16, y: 16} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1117834470 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11489796, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1117834468} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 0, b: 0, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: 84380142b5676e44daea94b5219bcf93, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1117834471 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22251132, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1117834468} m_CullTransparentMesh: 0 --- !u!1 &1147174114 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1147174115} - component: {fileID: 1147174117} - component: {fileID: 1147174116} m_Layer: 5 m_Name: GameOver m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1147174115 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1147174114} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1024388665} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 1} m_AnchorMax: {x: 0.5, y: 1} m_AnchoredPosition: {x: 0, y: -30} m_SizeDelta: {x: 422, y: 182} m_Pivot: {x: 0.5, y: 1} --- !u!114 &1147174116 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1147174114} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: 62f8426a429498442af34752c971234e, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1147174117 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1147174114} m_CullTransparentMesh: 0 --- !u!1 &1152682277 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 139210, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1152682278} - component: {fileID: 1152682280} - component: {fileID: 1152682279} m_Layer: 0 m_Name: TextManagerStatNext m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1152682278 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22457314, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1152682277} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1824575478} m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 11, y: -9} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &1152682279 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8280518, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1152682277} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &1152682280 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11428126, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1152682277} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &1168944911 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 191150, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1168944912} - component: {fileID: 1168944914} - component: {fileID: 1168944913} m_Layer: 5 m_Name: item_interior m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1168944912 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22421098, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1168944911} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 820532156} - {fileID: 2006300310} - {fileID: 557343005} - {fileID: 124672995} - {fileID: 1928767902} - {fileID: 717195415} - {fileID: 920785482} - {fileID: 1977618865} - {fileID: 738094586} - {fileID: 1101770079} - {fileID: 1801786522} m_Father: {fileID: 670959144} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 334, y: 350} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1168944913 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11491106, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1168944911} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1168944914 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22260962, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1168944911} m_CullTransparentMesh: 0 --- !u!1 &1269631940 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 168814, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1269631941} - component: {fileID: 1269631943} - component: {fileID: 1269631942} m_Layer: 5 m_Name: save_border_outer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1269631941 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22451430, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1269631940} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 835577668} m_Father: {fileID: 1779322336} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 108, y: 187} m_SizeDelta: {x: 424, y: 174} m_Pivot: {x: 0, y: 0} --- !u!114 &1269631942 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11493082, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1269631940} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1269631943 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22264470, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1269631940} m_CullTransparentMesh: 0 --- !u!1 &1299325993 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 168326, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1299325994} - component: {fileID: 1299325996} - component: {fileID: 1299325995} m_Layer: 0 m_Name: TextManagerMap m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1299325994 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22435978, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1299325993} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 835577668} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -180, y: 28} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &1299325995 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8280770, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1299325993} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &1299325996 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11438302, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1299325993} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &1369875159 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 192008, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1369875160} - component: {fileID: 1369875162} - component: {fileID: 1369875161} m_Layer: 5 m_Name: menustat_interior m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1369875160 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22465874, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1369875159} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 573195107} - {fileID: 629619427} - {fileID: 749788067} - {fileID: 891869947} m_Father: {fileID: 2078350987} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 188, y: 98} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1369875161 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11421820, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1369875159} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1369875162 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22266498, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1369875159} m_CullTransparentMesh: 0 --- !u!1 &1395240486 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 188422, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1395240487} - component: {fileID: 1395240489} - component: {fileID: 1395240488} m_Layer: 5 m_Name: textframe_interior m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1395240487 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22443130, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1395240486} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 256024070} - {fileID: 247211484} m_Father: {fileID: 424356987} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 590, y: 140} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1395240488 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11427710, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1395240486} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1395240489 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22247638, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1395240486} m_CullTransparentMesh: 0 --- !u!1 &1442682132 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1442682133} - component: {fileID: 1442682135} - component: {fileID: 1442682134} m_Layer: 5 m_Name: ReviveFade m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1442682133 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1442682132} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 100} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1024388665} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 1} m_AnchorMax: {x: 0.5, y: 1} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 1} --- !u!114 &1442682134 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1442682132} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: 62f8426a429498442af34752c971234e, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1442682135 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1442682132} m_CullTransparentMesh: 0 --- !u!1 &1654311714 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1654311716} - component: {fileID: 1654311715} m_Layer: 0 m_Name: SpritePivot m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!210 &1654311715 SortingGroup: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 210702407409670196, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1654311714} m_Enabled: 1 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 --- !u!4 &1654311716 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1654311714} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -320, y: 211, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 619600880} m_Father: {fileID: 0} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!224 &1706295054 stripped RectTransform: m_CorrespondingSourceObject: {fileID: 22465858, guid: 1ccc044534d366d4abebb5047dfda396, type: 3} m_PrefabInstance: {fileID: 43590226} m_PrefabAsset: {fileID: 0} --- !u!1 &1731033918 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 175106, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1731033919} m_Layer: 5 m_Name: MenuContainer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1731033919 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22420338, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1731033918} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 2078350987} - {fileID: 743800824} - {fileID: 670959144} - {fileID: 952942992} - {fileID: 1957097253} - {fileID: 1117834469} m_Father: {fileID: 1779322336} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &1753446871 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 111108, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1753446872} - component: {fileID: 1753446874} - component: {fileID: 1753446873} m_Layer: 0 m_Name: TextManagerStatEXP m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1753446872 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22418640, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1753446871} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1824575478} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 11, y: 23} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &1753446873 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8239556, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1753446871} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &1753446874 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11477156, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1753446871} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!224 &1779322336 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22435900, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 715141001} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -10} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 424356987} - {fileID: 770504842} - {fileID: 1942351438} - {fileID: 147928541} - {fileID: 1269631941} - {fileID: 1731033919} - {fileID: 1805120652} - {fileID: 1706295054} m_Father: {fileID: 0} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 320, y: 240} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &1801786521 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 139748, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1801786522} - component: {fileID: 1801786524} - component: {fileID: 1801786523} m_Layer: 0 m_Name: TextManagerItemDrop m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1801786522 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22452400, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1801786521} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1168944912} m_RootOrder: 10 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 81, y: -125} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &1801786523 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8254856, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1801786521} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &1801786524 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11491632, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1801786521} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &1805120651 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 102878, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1805120652} - component: {fileID: 1805120654} - component: {fileID: 1805120653} m_Layer: 5 m_Name: utHeart m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1805120652 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22499754, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1805120651} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -5090} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1779322336} m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 320, y: 240} m_SizeDelta: {x: 16, y: 16} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1805120653 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11481102, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1805120651} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 0, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: 84380142b5676e44daea94b5219bcf93, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1805120654 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22201302, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1805120651} m_CullTransparentMesh: 0 --- !u!1 &1824575477 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 186728, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1824575478} - component: {fileID: 1824575480} - component: {fileID: 1824575479} m_Layer: 5 m_Name: stat_interior m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1824575478 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22442236, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1824575477} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 841160940} - {fileID: 268140600} - {fileID: 2084897706} - {fileID: 483941559} - {fileID: 566465744} - {fileID: 1753446872} - {fileID: 1152682278} - {fileID: 12034620} - {fileID: 2055631346} - {fileID: 373771160} m_Father: {fileID: 952942992} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 358, y: 406} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1824575479 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11484428, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1824575477} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1824575480 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22267156, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1824575477} m_CullTransparentMesh: 0 --- !u!1 &1841481150 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 148386, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1841481151} - component: {fileID: 1841481153} - component: {fileID: 1841481152} m_Layer: 0 m_Name: TextManagerName m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1841481151 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22435654, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1841481150} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 835577668} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -180, y: 68} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &1841481152 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8297074, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1841481150} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &1841481153 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11496254, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1841481150} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &1901620771 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1901620774} - component: {fileID: 1901620773} - component: {fileID: 1901620772} m_Layer: 0 m_Name: EventSystem m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &1901620772 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1901620771} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 1077351063, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_HorizontalAxis: Horizontal m_VerticalAxis: Vertical m_SubmitButton: Submit m_CancelButton: Cancel m_InputActionsPerSecond: 10 m_RepeatDelay: 0.5 m_ForceModuleActive: 0 --- !u!114 &1901620773 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1901620771} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -619905303, guid: f70555f144d8491a825f0804e09c671c, type: 3} m_Name: m_EditorClassIdentifier: m_FirstSelected: {fileID: 0} m_sendNavigationEvents: 1 m_DragThreshold: 10 --- !u!4 &1901620774 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1901620771} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1928767901 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 162050, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1928767902} - component: {fileID: 1928767904} - component: {fileID: 1928767903} m_Layer: 0 m_Name: TextManagerItem5 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1928767902 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22420958, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1928767901} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1168944912} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -129, y: 27} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &1928767903 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8218406, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1928767901} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &1928767904 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11433446, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1928767901} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &1942351437 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 188432, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1942351438} - component: {fileID: 1942351441} - component: {fileID: 1942351440} m_Layer: 0 m_Name: Don't show it again m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1942351438 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22417472, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1942351437} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -11} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1779322336} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1942351440 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11489894, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1942351437} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: 62f8426a429498442af34752c971234e, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1942351441 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22241294, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1942351437} m_CullTransparentMesh: 0 --- !u!1 &1957097252 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 183300, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1957097253} - component: {fileID: 1957097255} - component: {fileID: 1957097254} m_Layer: 5 m_Name: itembox m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1957097253 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22418524, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1957097252} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1731033919} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -320, y: -240} m_SizeDelta: {x: 640, y: 480} m_Pivot: {x: 0, y: 0} --- !u!114 &1957097254 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11481144, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1957097252} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 21300000, guid: 1940471d360cdfc4390f579caff5a009, type: 3} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &1957097255 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22269356, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1957097252} m_CullTransparentMesh: 0 --- !u!1 &1977298764 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1977298765} - component: {fileID: 1977298766} m_Layer: 5 m_Name: TextParent m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1977298765 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1977298764} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1024388665} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 160, y: -368} m_SizeDelta: {x: 100, y: 100} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1977298766 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1977298764} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: $ currentLine: 0 _textMaxWidth: 320 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &1977618864 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 174536, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1977618865} - component: {fileID: 1977618867} - component: {fileID: 1977618866} m_Layer: 0 m_Name: TextManagerItem8 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1977618865 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22457004, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1977618864} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1168944912} m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -129, y: -69} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &1977618866 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8238304, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1977618864} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &1977618867 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11491416, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1977618864} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &2006300309 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 127532, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2006300310} - component: {fileID: 2006300312} - component: {fileID: 2006300311} m_Layer: 0 m_Name: TextManagerItem2 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &2006300310 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22462822, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2006300309} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1168944912} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -129, y: 123} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &2006300311 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8239926, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2006300309} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &2006300312 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11427334, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2006300309} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &2020485660 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 148338, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2020485661} - component: {fileID: 2020485663} - component: {fileID: 2020485662} m_Layer: 5 m_Name: menuchoice_interior m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &2020485661 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22450696, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2020485660} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 804708092} - {fileID: 260230356} - {fileID: 2105879892} m_Father: {fileID: 743800824} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 188, y: 136} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &2020485662 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11429386, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2020485660} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0, g: 0, b: 0, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &2020485663 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22227018, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2020485660} m_CullTransparentMesh: 0 --- !u!1 &2043428501 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2043428502} - component: {fileID: 2043428508} - component: {fileID: 2043428507} - component: {fileID: 2043428506} - component: {fileID: 2043428505} - component: {fileID: 2043428504} - component: {fileID: 2043428503} m_Layer: 0 m_Name: Main Camera GameOver m_TagString: MainCamera m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &2043428502 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2043428501} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -500} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 634136910} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &2043428503 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2043428501} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: e994334232641bd4ca342c48fcdb1605, type: 3} m_Name: m_EditorClassIdentifier: --- !u!82 &2043428504 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2043428501} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 8300000, guid: 2e1ec241201bfc14db4c5eddec053733, type: 3} m_PlayOnAwake: 0 m_Volume: 0.901 m_Pitch: 1 Loop: 1 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 500 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 0 --- !u!81 &2043428505 AudioListener: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2043428501} m_Enabled: 1 --- !u!124 &2043428506 Behaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2043428501} m_Enabled: 1 --- !u!92 &2043428507 Behaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2043428501} m_Enabled: 1 --- !u!20 &2043428508 Camera: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2043428501} m_Enabled: 1 serializedVersion: 2 m_ClearFlags: 1 m_BackGroundColor: {r: 0, g: 0, b: 0, a: 0.019607844} m_projectionMatrixMode: 1 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} m_GateFitMode: 2 m_FocalLength: 50 m_NormalizedViewPortRect: serializedVersion: 2 x: 0 y: 0 width: 1 height: 1 near clip plane: 0.3 far clip plane: 2000 field of view: 60 orthographic: 1 orthographic size: 240 m_Depth: -1 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingPath: -1 m_TargetTexture: {fileID: 0} m_TargetDisplay: 0 m_TargetEye: 3 m_HDR: 0 m_AllowMSAA: 1 m_AllowDynamicResolution: 0 m_ForceIntoRT: 0 m_OcclusionCulling: 1 m_StereoConvergence: 10 m_StereoSeparation: 0.022 --- !u!1 &2055631345 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 190766, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2055631346} - component: {fileID: 2055631348} - component: {fileID: 2055631347} m_Layer: 0 m_Name: TextManagerStatArmor m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &2055631346 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22435204, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2055631345} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1824575478} m_RootOrder: 8 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -157, y: -101} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &2055631347 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8200024, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2055631345} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &2055631348 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11422436, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2055631345} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &2064810220 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 186548, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2064810221} - component: {fileID: 2064810223} - component: {fileID: 2064810222} m_Layer: 0 m_Name: TextManagerSave m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &2064810221 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22431496, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2064810220} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 835577668} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -150, y: -32} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &2064810222 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8252388, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2064810220} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &2064810223 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11457128, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2064810220} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &2078350986 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 144218, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2078350987} - component: {fileID: 2078350989} - component: {fileID: 2078350988} m_Layer: 5 m_Name: menustat_border_outer m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &2078350987 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22461734, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2078350986} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1369875160} m_Father: {fileID: 1731033919} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: -238, y: 128} m_SizeDelta: {x: 200, y: 110} m_Pivot: {x: 0, y: 0} --- !u!114 &2078350988 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11493134, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2078350986} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 0} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_Sprite: {fileID: 0} m_Type: 0 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 m_FillAmount: 1 m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 --- !u!222 &2078350989 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22235086, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2078350986} m_CullTransparentMesh: 0 --- !u!1 &2084897705 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 142056, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2084897706} - component: {fileID: 2084897708} - component: {fileID: 2084897707} m_Layer: 0 m_Name: TextManagerStatHP m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &2084897706 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22459620, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2084897705} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1824575478} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -157, y: 87} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &2084897707 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8251932, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2084897705} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &2084897708 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11420884, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2084897705} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 --- !u!1 &2105879891 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 102584, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2105879892} - component: {fileID: 2105879894} - component: {fileID: 2105879893} m_Layer: 0 m_Name: TextManagerMenuCell m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &2105879892 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22405520, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2105879891} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 2020485661} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -48, y: -16} m_SizeDelta: {x: 20, y: 20} m_Pivot: {x: 0, y: 1} --- !u!82 &2105879893 AudioSource: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 8235252, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2105879891} m_Enabled: 1 serializedVersion: 4 OutputAudioMixerGroup: {fileID: 0} m_audioClip: {fileID: 0} m_PlayOnAwake: 0 m_Volume: 1 m_Pitch: 1 Loop: 0 Mute: 0 Spatialize: 0 SpatializePostEffects: 0 Priority: 128 DopplerLevel: 1 MinDistance: 1 MaxDistance: 419.68408 Pan2D: 0 rolloffMode: 0 BypassEffects: 0 BypassListenerEffects: 0 BypassReverbZones: 0 rolloffCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 - serializedVersion: 3 time: 1 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 panLevelCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 spreadCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 0 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 reverbZoneMixCustomCurve: serializedVersion: 2 m_Curve: - serializedVersion: 3 time: 0 value: 1 inSlope: 0 outSlope: 0 tangentMode: 0 weightedMode: 0 inWeight: 0.33333334 outWeight: 0.33333334 m_PreInfinity: 2 m_PostInfinity: 2 m_RotationOrder: 4 --- !u!114 &2105879894 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11425900, guid: 65ee94c713ee95942a47240fb8f2ae5c, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2105879891} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 96dc5aa61b3446942acd3e628a7d73d0, type: 3} m_Name: m_EditorClassIdentifier: letterSound: ( currentLine: 0 _textMaxWidth: 0 currentCharacter: 0 currentReferenceCharacter: 0 nextMonsterDialogueOnce: 0 wasStated: 0 localPosition: {x: 0, y: 0} blockSkip: 0 skipNowIfBlocked: 0 lateStartWaiting: 0 ================================================ FILE: Assets/Scenes/TransitionOverworld.unity.meta ================================================ fileFormatVersion: 2 guid: 2b6255523adf4cb44b2e70e054ad1894 timeCreated: 1459041519 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scenes/Void.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 3 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 11 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_TemporalCoherenceThreshold: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 0 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 10 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 0 m_CompAOExponentDirect: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 1024 m_ReflectionCompression: 2 m_MixedBakeMode: 1 m_BakeBackend: 0 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 500 m_PVRBounces: 2 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVRFilteringMode: 1 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ShowResolutionOverlay: 1 m_LightingDataAsset: {fileID: 0} m_UseShadowmask: 0 --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1 &202822055 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 202822056} - component: {fileID: 202822057} m_Layer: 0 m_Name: New Sprite m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &202822056 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 202822055} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 5.8, y: 0.4, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 956959288} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!212 &202822057 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 202822055} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 18f0e8db1cbad064b8398e1c8d47f79c, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!1 &283179575 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 283179581} - component: {fileID: 283179580} - component: {fileID: 283179579} - component: {fileID: 283179578} - component: {fileID: 283179577} - component: {fileID: 283179576} - component: {fileID: 283179582} m_Layer: 0 m_Name: TheFinalChoice m_TagString: Event m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &283179576 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 283179575} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5b6761159c8f6224a8a895abea10dd25, type: 3} m_Name: m_EditorClassIdentifier: SetNativeSize: 1 SpritePath: Punderbolt/PunderRight1 Loop: 0 done: 0 --- !u!114 &283179577 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 283179575} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 846d0d1a9b9e1c14884c79473a1f1d14, type: 3} m_Name: m_EditorClassIdentifier: scriptToLoad: TheFinalChoice actualPage: 2 eventTriggers: - {x: 1, y: 1} - {x: 2, y: 2} moveSpeed: 1 isMovingWaitEnd: 0 isRotatingWaitEnd: 0 --- !u!61 &283179578 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 283179575} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 1 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: -0.8, y: -0.05} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0.5, y: 0.5} oldSize: {x: 0.01, y: 0.01} newSize: {x: 0.28, y: 0.38} adaptiveTilingThreshold: 0.5 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 0.001, y: 10} m_EdgeRadius: 0 --- !u!50 &283179579 Rigidbody2D: serializedVersion: 4 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 283179575} m_BodyType: 0 m_Simulated: 1 m_UseFullKinematicContacts: 0 m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_Material: {fileID: 0} m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 4 --- !u!212 &283179580 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 283179575} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 876f2cc47fea2394b98c7950cde30cd9, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 0.28, y: 0.38} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!224 &283179581 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 283179575} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 200, y: 200, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0} m_AnchorMax: {x: 0.5, y: 0} m_AnchoredPosition: {x: 1480, y: 255} m_SizeDelta: {x: 28, y: 38} m_Pivot: {x: 0.5, y: 0} --- !u!114 &283179582 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 283179575} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1 &358459829 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 168310, guid: 2a197ba458fd7604f8764d355d1a4934, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 358459830} - component: {fileID: 358459831} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &358459830 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 460918, guid: 2a197ba458fd7604f8764d355d1a4934, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 358459829} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -9.2, y: 0.4, z: 0} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 956959288} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &358459831 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6198640, guid: 2a197ba458fd7604f8764d355d1a4934, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 358459829} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 10, y: -40} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 20, y: 320} m_EdgeRadius: 0 --- !u!1 &366643400 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 109456, guid: 2a197ba458fd7604f8764d355d1a4934, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 366643401} - component: {fileID: 366643402} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &366643401 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 405938, guid: 2a197ba458fd7604f8764d355d1a4934, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 366643400} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -9, y: -1.6, z: 0} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 956959288} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &366643402 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6158276, guid: 2a197ba458fd7604f8764d355d1a4934, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 366643400} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 900, y: -40} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 1800, y: 80} m_EdgeRadius: 0 --- !u!1 &805095760 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 109456, guid: 2a197ba458fd7604f8764d355d1a4934, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 805095761} - component: {fileID: 805095762} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &805095761 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 405938, guid: 2a197ba458fd7604f8764d355d1a4934, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 805095760} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -9, y: 2.4, z: 0} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 956959288} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &805095762 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6158276, guid: 2a197ba458fd7604f8764d355d1a4934, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 805095760} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 900, y: -40} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 1800, y: 80} m_EdgeRadius: 0 --- !u!1 &956959285 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 134422, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 956959288} - component: {fileID: 956959287} - component: {fileID: 956959286} m_Layer: 0 m_Name: Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!212 &956959286 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 21251718, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 956959285} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 0 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!114 &956959287 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11414468, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 956959285} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7a4ef58bda0647d48b67028c05b00813, type: 3} m_Name: m_EditorClassIdentifier: music: none modToLoad: '@0.5.0_SEE_CRATE' isMusicKeptBetweenBattles: 0 noRandomEncounter: 1 --- !u!224 &956959288 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22411040, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 956959285} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 140} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: - {fileID: 805095761} - {fileID: 358459830} - {fileID: 366643401} - {fileID: 1599154565} - {fileID: 202822056} - {fileID: 2039418732} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 900, y: 240} m_SizeDelta: {x: 18, y: 4.8} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &1599154564 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 168310, guid: 2a197ba458fd7604f8764d355d1a4934, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1599154565} - component: {fileID: 1599154566} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1599154565 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 460918, guid: 2a197ba458fd7604f8764d355d1a4934, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1599154564} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 9, y: 0.39999998, z: 0} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 956959288} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &1599154566 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6198640, guid: 2a197ba458fd7604f8764d355d1a4934, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1599154564} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 10, y: -40} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 20, y: 320} m_EdgeRadius: 0 --- !u!1 &2039418731 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 168770, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2039418732} - component: {fileID: 2039418735} - component: {fileID: 2039418734} - component: {fileID: 2039418733} m_Layer: 0 m_Name: TP Right m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &2039418732 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 425052, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 2039418731} m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071067} m_LocalPosition: {x: 8.9, y: 0, z: 0} m_LocalScale: {x: 3.2, y: 1, z: 1} m_Children: [] m_Father: {fileID: 956959288} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} --- !u!114 &2039418733 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11498914, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 2039418731} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: cafce2c3f7e465f478d7b302ab1b8236, type: 3} m_Name: m_EditorClassIdentifier: sceneName: test2 position: {x: 40, y: 240} direction: 6 activated: 0 noFadeIn: 0 noFadeOut: 0 --- !u!50 &2039418734 Rigidbody2D: serializedVersion: 4 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 5034292, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 2039418731} m_BodyType: 1 m_Simulated: 1 m_UseFullKinematicContacts: 0 m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_Material: {fileID: 0} m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 4 --- !u!68 &2039418735 EdgeCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6853106, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 2039418731} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 1 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: -0.5, y: 0} - {x: 0.5, y: 0} ================================================ FILE: Assets/Scenes/Void.unity.meta ================================================ fileFormatVersion: 2 guid: 596e0ee3d3ed69d4096eea1844c02b39 timeCreated: 1477095818 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scenes/newhome1.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 3 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 11 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_TemporalCoherenceThreshold: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 0 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 10 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 0 m_CompAOExponentDirect: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 1024 m_ReflectionCompression: 2 m_MixedBakeMode: 1 m_BakeBackend: 0 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 500 m_PVRBounces: 2 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVRFilteringMode: 1 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ShowResolutionOverlay: 1 m_LightingDataAsset: {fileID: 0} m_UseShadowmask: 0 --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1 &213791540 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 105456, guid: 08b1dc3ae1be450438a2fe2411896d36, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 213791541} - component: {fileID: 213791542} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &213791541 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 419236, guid: 08b1dc3ae1be450438a2fe2411896d36, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 213791540} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 10, y: 0, z: 100} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 650345020} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &213791542 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6164060, guid: 08b1dc3ae1be450438a2fe2411896d36, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 213791540} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 10, y: -40} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 20, y: 80} m_EdgeRadius: 0 --- !u!1 &382517128 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 382517133} - component: {fileID: 382517132} - component: {fileID: 382517131} - component: {fileID: 382517130} - component: {fileID: 382517129} - component: {fileID: 382517134} - component: {fileID: 382517135} m_Layer: 0 m_Name: Story2 m_TagString: Event m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &382517129 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 382517128} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 846d0d1a9b9e1c14884c79473a1f1d14, type: 3} m_Name: m_EditorClassIdentifier: scriptToLoad: Story2 actualPage: 2 eventTriggers: - {x: 1, y: 1} - {x: 2, y: 2} moveSpeed: 1 isMovingWaitEnd: 0 isRotatingWaitEnd: 0 --- !u!61 &382517130 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 382517128} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 1 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0.5, y: 0.5} oldSize: {x: 0.01, y: 0.01} newSize: {x: 0.01, y: 0.01} adaptiveTilingThreshold: 0.5 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 1, y: 0.26} m_EdgeRadius: 0 --- !u!50 &382517131 Rigidbody2D: serializedVersion: 4 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 382517128} m_BodyType: 0 m_Simulated: 1 m_UseFullKinematicContacts: 0 m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_Material: {fileID: 0} m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 4 --- !u!212 &382517132 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 382517128} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 876f2cc47fea2394b98c7950cde30cd9, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 0.01, y: 0.01} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!224 &382517133 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 382517128} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 1} m_LocalScale: {x: 1, y: 300, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 1600, y: 200} m_SizeDelta: {x: 1, y: 1} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &382517134 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 382517128} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5b6761159c8f6224a8a895abea10dd25, type: 3} m_Name: m_EditorClassIdentifier: SetNativeSize: 0 SpritePath: empty Loop: 0 done: 0 --- !u!114 &382517135 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 382517128} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1 &518920274 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 157358, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 518920275} - component: {fileID: 518920278} - component: {fileID: 518920277} - component: {fileID: 518920276} m_Layer: 0 m_Name: TP Right m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &518920275 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 406064, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 518920274} m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071067} m_LocalPosition: {x: 9.8, y: -0.4, z: 0} m_LocalScale: {x: 0.79999995, y: 1, z: 1} m_Children: [] m_Father: {fileID: 650345020} m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} --- !u!114 &518920276 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11494438, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 518920274} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: cafce2c3f7e465f478d7b302ab1b8236, type: 3} m_Name: m_EditorClassIdentifier: sceneName: newhome2 position: {x: 40, y: 200} direction: 6 activated: 0 noFadeIn: 0 noFadeOut: 0 --- !u!50 &518920277 Rigidbody2D: serializedVersion: 4 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 5032938, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 518920274} m_BodyType: 1 m_Simulated: 1 m_UseFullKinematicContacts: 0 m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_Material: {fileID: 0} m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 4 --- !u!68 &518920278 EdgeCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6882432, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 518920274} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 1 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: -0.5, y: 0} - {x: 0.5, y: 0} --- !u!1 &650345017 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 134422, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 650345020} - component: {fileID: 650345019} - component: {fileID: 650345018} m_Layer: 0 m_Name: Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!212 &650345018 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 21251718, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 650345017} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 0 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!114 &650345019 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11414468, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 650345017} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7a4ef58bda0647d48b67028c05b00813, type: 3} m_Name: m_EditorClassIdentifier: music: mus_undertale modToLoad: '@0.5.0_SEE_CRATE' isMusicKeptBetweenBattles: 1 noRandomEncounter: 1 --- !u!224 &650345020 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22411040, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 650345017} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 140} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: - {fileID: 1800751970} - {fileID: 1409354216} - {fileID: 213791541} - {fileID: 989033144} - {fileID: 1766862395} - {fileID: 1009522989} - {fileID: 518920275} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 1000, y: 240} m_SizeDelta: {x: 20, y: 4.8} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &989033143 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 190886, guid: 08b1dc3ae1be450438a2fe2411896d36, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 989033144} - component: {fileID: 989033145} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &989033144 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 408210, guid: 08b1dc3ae1be450438a2fe2411896d36, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 989033143} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -10, y: 0, z: 100} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 650345020} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &989033145 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6166184, guid: 08b1dc3ae1be450438a2fe2411896d36, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 989033143} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 80, y: -40} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 160, y: 80} m_EdgeRadius: 0 --- !u!1 &1009522988 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 168770, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1009522989} - component: {fileID: 1009522992} - component: {fileID: 1009522991} - component: {fileID: 1009522990} m_Layer: 0 m_Name: TP Left m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1009522989 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 425052, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1009522988} m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071067} m_LocalPosition: {x: -8, y: -0.4, z: 0} m_LocalScale: {x: 0.79999995, y: 1, z: 1} m_Children: [] m_Father: {fileID: 650345020} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} --- !u!114 &1009522990 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11498914, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1009522988} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: cafce2c3f7e465f478d7b302ab1b8236, type: 3} m_Name: m_EditorClassIdentifier: sceneName: test2 position: {x: 600, y: 200} direction: 4 activated: 0 noFadeIn: 0 noFadeOut: 0 --- !u!50 &1009522991 Rigidbody2D: serializedVersion: 4 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 5034292, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1009522988} m_BodyType: 1 m_Simulated: 1 m_UseFullKinematicContacts: 0 m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_Material: {fileID: 0} m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 4 --- !u!68 &1009522992 EdgeCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6853106, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1009522988} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 1 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: -0.5, y: 0} - {x: 0.5, y: 0} --- !u!1 &1409354215 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 124114, guid: 08b1dc3ae1be450438a2fe2411896d36, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1409354216} - component: {fileID: 1409354217} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1409354216 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 415362, guid: 08b1dc3ae1be450438a2fe2411896d36, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1409354215} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -10, y: 2.3999999, z: 100} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 650345020} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &1409354217 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6111158, guid: 08b1dc3ae1be450438a2fe2411896d36, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1409354215} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 1000, y: -120} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 2000, y: 240} m_EdgeRadius: 0 --- !u!1 &1414454721 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1414454726} - component: {fileID: 1414454725} - component: {fileID: 1414454724} - component: {fileID: 1414454723} - component: {fileID: 1414454722} - component: {fileID: 1414454727} - component: {fileID: 1414454728} m_Layer: 0 m_Name: Story1 m_TagString: Event m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &1414454722 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1414454721} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 846d0d1a9b9e1c14884c79473a1f1d14, type: 3} m_Name: m_EditorClassIdentifier: scriptToLoad: Story1 actualPage: 2 eventTriggers: - {x: 1, y: 1} - {x: 2, y: 2} moveSpeed: 1 isMovingWaitEnd: 0 isRotatingWaitEnd: 0 --- !u!61 &1414454723 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1414454721} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 1 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0.5, y: 0.5} oldSize: {x: 0.01, y: 0.01} newSize: {x: 0.01, y: 0.01} adaptiveTilingThreshold: 0.5 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 1, y: 0.26} m_EdgeRadius: 0 --- !u!50 &1414454724 Rigidbody2D: serializedVersion: 4 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1414454721} m_BodyType: 0 m_Simulated: 1 m_UseFullKinematicContacts: 0 m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_Material: {fileID: 0} m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 4 --- !u!212 &1414454725 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1414454721} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 876f2cc47fea2394b98c7950cde30cd9, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 0.01, y: 0.01} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!224 &1414454726 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1414454721} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 1} m_LocalScale: {x: 1, y: 300, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 800, y: 200} m_SizeDelta: {x: 1, y: 1} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1414454727 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1414454721} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5b6761159c8f6224a8a895abea10dd25, type: 3} m_Name: m_EditorClassIdentifier: SetNativeSize: 0 SpritePath: empty Loop: 0 done: 0 --- !u!114 &1414454728 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1414454721} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1 &1766862394 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 116394, guid: 08b1dc3ae1be450438a2fe2411896d36, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1766862395} - component: {fileID: 1766862396} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1766862395 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 440206, guid: 08b1dc3ae1be450438a2fe2411896d36, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1766862394} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -10, y: -0.79999995, z: 100} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 650345020} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &1766862396 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6103466, guid: 08b1dc3ae1be450438a2fe2411896d36, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1766862394} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 1000, y: -80} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 2000, y: 160} m_EdgeRadius: 0 --- !u!1 &1800751969 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 137128, guid: 08b1dc3ae1be450438a2fe2411896d36, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1800751970} - component: {fileID: 1800751974} - component: {fileID: 1800751973} - component: {fileID: 1800751972} - component: {fileID: 1800751971} m_Layer: 0 m_Name: UT NewHome 1 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1800751970 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 461400, guid: 08b1dc3ae1be450438a2fe2411896d36, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1800751969} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -10, y: 2.4, z: 140} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 650345020} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1800751971 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11452010, guid: 08b1dc3ae1be450438a2fe2411896d36, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1800751969} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 74efee4889073914b8ae070d65688ce4, type: 3} m_Name: m_EditorClassIdentifier: InitialOpacity: 1 --- !u!114 &1800751972 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11448190, guid: 08b1dc3ae1be450438a2fe2411896d36, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1800751969} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1874989c5e2da094ea00112c6a895694, type: 3} m_Name: m_EditorClassIdentifier: --- !u!23 &1800751973 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 2349500, guid: 08b1dc3ae1be450438a2fe2411896d36, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1800751969} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_Materials: - {fileID: 2100000, guid: d7b1f2149f5fc5e48aea6aec865fa420, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 --- !u!33 &1800751974 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 3311786, guid: 08b1dc3ae1be450438a2fe2411896d36, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1800751969} m_Mesh: {fileID: 4300000, guid: f7a5fd19a8dcf144b8ef11e16f9d560f, type: 3} ================================================ FILE: Assets/Scenes/newhome1.unity.meta ================================================ fileFormatVersion: 2 guid: 3aab454a770252846ae6eeaae96a96a9 timeCreated: 1476904865 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scenes/newhome2.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 3 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 11 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_TemporalCoherenceThreshold: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 0 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 10 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 0 m_CompAOExponentDirect: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 1024 m_ReflectionCompression: 2 m_MixedBakeMode: 1 m_BakeBackend: 0 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 500 m_PVRBounces: 2 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVRFilteringMode: 1 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ShowResolutionOverlay: 1 m_LightingDataAsset: {fileID: 0} m_UseShadowmask: 0 --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1 &354093670 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 354093675} - component: {fileID: 354093674} - component: {fileID: 354093673} - component: {fileID: 354093672} - component: {fileID: 354093671} - component: {fileID: 354093676} - component: {fileID: 354093677} m_Layer: 0 m_Name: Story3 m_TagString: Event m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &354093671 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 354093670} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 846d0d1a9b9e1c14884c79473a1f1d14, type: 3} m_Name: m_EditorClassIdentifier: scriptToLoad: Story3 actualPage: 2 eventTriggers: - {x: 1, y: 1} - {x: 2, y: 2} moveSpeed: 1 isMovingWaitEnd: 0 isRotatingWaitEnd: 0 --- !u!61 &354093672 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 354093670} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 1 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0.5, y: 0.5} oldSize: {x: 0.01, y: 0.01} newSize: {x: 0.01, y: 0.01} adaptiveTilingThreshold: 0.5 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 1, y: 0.53333336} m_EdgeRadius: 0 --- !u!50 &354093673 Rigidbody2D: serializedVersion: 4 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 354093670} m_BodyType: 0 m_Simulated: 1 m_UseFullKinematicContacts: 0 m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_Material: {fileID: 0} m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 4 --- !u!212 &354093674 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 354093670} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 876f2cc47fea2394b98c7950cde30cd9, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 0.01, y: 0.01} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!224 &354093675 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 354093670} m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071067} m_LocalPosition: {x: 0, y: 0, z: 1} m_LocalScale: {x: 1, y: 300, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 320, y: 400} m_SizeDelta: {x: 1, y: 1} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &354093676 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 354093670} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5b6761159c8f6224a8a895abea10dd25, type: 3} m_Name: m_EditorClassIdentifier: SetNativeSize: 0 SpritePath: empty Loop: 0 done: 0 --- !u!114 &354093677 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 354093670} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1 &405518739 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 146966, guid: 081a13da8a2ea474ea99134f388d27dd, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 405518740} - component: {fileID: 405518741} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &405518740 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 414930, guid: 081a13da8a2ea474ea99134f388d27dd, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 405518739} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0.79999936, y: 0.79999995, z: -140} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 840304678} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &405518741 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6196036, guid: 081a13da8a2ea474ea99134f388d27dd, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 405518739} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 120, y: -280} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 240, y: 560} m_EdgeRadius: 0 --- !u!1 &780903468 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 152760, guid: 081a13da8a2ea474ea99134f388d27dd, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 780903469} - component: {fileID: 780903473} - component: {fileID: 780903472} - component: {fileID: 780903471} - component: {fileID: 780903470} m_Layer: 0 m_Name: UT NewHome 2 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &780903469 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 451980, guid: 081a13da8a2ea474ea99134f388d27dd, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 780903468} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -3.1999998, y: 4.8, z: 0} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 840304678} m_RootOrder: 8 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &780903470 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11497666, guid: 081a13da8a2ea474ea99134f388d27dd, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 780903468} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 74efee4889073914b8ae070d65688ce4, type: 3} m_Name: m_EditorClassIdentifier: InitialOpacity: 1 --- !u!114 &780903471 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11405838, guid: 081a13da8a2ea474ea99134f388d27dd, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 780903468} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1874989c5e2da094ea00112c6a895694, type: 3} m_Name: m_EditorClassIdentifier: --- !u!23 &780903472 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 2352800, guid: 081a13da8a2ea474ea99134f388d27dd, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 780903468} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_Materials: - {fileID: 2100000, guid: 9fa45d50e3268fe48af9f3318f903b16, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 --- !u!33 &780903473 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 3312910, guid: 081a13da8a2ea474ea99134f388d27dd, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 780903468} m_Mesh: {fileID: 4300000, guid: 05b8ddbb245e56444b786abc2a30e625, type: 3} --- !u!1 &840304675 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 134422, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 840304678} - component: {fileID: 840304677} - component: {fileID: 840304676} m_Layer: 0 m_Name: Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!212 &840304676 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 21251718, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 840304675} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 0 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!114 &840304677 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11414468, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 840304675} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7a4ef58bda0647d48b67028c05b00813, type: 3} m_Name: m_EditorClassIdentifier: music: mus_undertale modToLoad: '@0.5.0_SEE_CRATE' isMusicKeptBetweenBattles: 1 noRandomEncounter: 1 --- !u!224 &840304678 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22411040, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 840304675} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 140} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: - {fileID: 1267759076} - {fileID: 1521590635} - {fileID: 405518740} - {fileID: 1914452776} - {fileID: 2120089011} - {fileID: 1795500976} - {fileID: 1775264167} - {fileID: 1458263259} - {fileID: 780903469} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 320, y: 480} m_SizeDelta: {x: 6.4, y: 9.6} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &1267759075 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1267759076} - component: {fileID: 1267759077} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1267759076 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1267759075} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -3.1999998, y: 4.7999997, z: -140} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 840304678} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &1267759077 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1267759075} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 320, y: -160} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 640, y: 320} m_EdgeRadius: 0 --- !u!1 &1458263258 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 157358, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1458263259} - component: {fileID: 1458263262} - component: {fileID: 1458263261} - component: {fileID: 1458263260} m_Layer: 0 m_Name: TP Right m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1458263259 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 406064, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1458263258} m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071067} m_LocalPosition: {x: 3, y: 1.2, z: 0} m_LocalScale: {x: 0.79999995, y: 1, z: 1} m_Children: [] m_Father: {fileID: 840304678} m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} --- !u!114 &1458263260 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11494438, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1458263258} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: cafce2c3f7e465f478d7b302ab1b8236, type: 3} m_Name: m_EditorClassIdentifier: sceneName: newhome3 position: {x: 40, y: 120} direction: 6 activated: 0 noFadeIn: 0 noFadeOut: 0 --- !u!50 &1458263261 Rigidbody2D: serializedVersion: 4 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 5032938, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1458263258} m_BodyType: 1 m_Simulated: 1 m_UseFullKinematicContacts: 0 m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_Material: {fileID: 0} m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 4 --- !u!68 &1458263262 EdgeCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6882432, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1458263258} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 1 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: -0.5, y: 0} - {x: 0.5, y: 0} --- !u!1 &1521590634 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1521590635} - component: {fileID: 1521590636} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1521590635 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1521590634} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -3.1999998, y: 1.6000006, z: -140} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 840304678} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &1521590636 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1521590634} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 120, y: -200} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 240, y: 400} m_EdgeRadius: 0 --- !u!1 &1775264166 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 168770, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1775264167} - component: {fileID: 1775264170} - component: {fileID: 1775264169} - component: {fileID: 1775264168} m_Layer: 0 m_Name: TP Left m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1775264167 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 425052, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1775264166} m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071067} m_LocalPosition: {x: -3, y: -3, z: 0} m_LocalScale: {x: 1.2, y: 1, z: 1} m_Children: [] m_Father: {fileID: 840304678} m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} --- !u!114 &1775264168 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11498914, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1775264166} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: cafce2c3f7e465f478d7b302ab1b8236, type: 3} m_Name: m_EditorClassIdentifier: sceneName: newhome1 position: {x: 1960, y: 200} direction: 4 activated: 0 noFadeIn: 0 noFadeOut: 0 --- !u!50 &1775264169 Rigidbody2D: serializedVersion: 4 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 5034292, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1775264166} m_BodyType: 1 m_Simulated: 1 m_UseFullKinematicContacts: 0 m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_Material: {fileID: 0} m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 4 --- !u!68 &1775264170 EdgeCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6853106, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1775264166} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 1 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: -0.5, y: 0} - {x: 0.5, y: 0} --- !u!1 &1795500975 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1795500976} - component: {fileID: 1795500977} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1795500976 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1795500975} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 3.1999986, y: 1.6000006, z: -140} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 840304678} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &1795500977 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1795500975} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 10, y: -40} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 20, y: 80} m_EdgeRadius: 0 --- !u!1 &1914452775 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1914452776} - component: {fileID: 1914452777} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1914452776 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1914452775} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -3.1999998, y: -3.5999994, z: -140} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 840304678} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &1914452777 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1914452775} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 200, y: -60} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 400, y: 120} m_EdgeRadius: 0 --- !u!1 &2120089010 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2120089011} - component: {fileID: 2120089012} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &2120089011 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 2120089010} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -3.3999994, y: -2.3999996, z: -140} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 840304678} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &2120089012 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 2120089010} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 10, y: -60} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 20, y: 120} m_EdgeRadius: 0 ================================================ FILE: Assets/Scenes/newhome2.unity.meta ================================================ fileFormatVersion: 2 guid: 7664dfad80480374f8018ed47dba88d0 timeCreated: 1476907422 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scenes/newhome3.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 3 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 11 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 0 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 10 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 0 m_CompAOExponentDirect: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 1024 m_ReflectionCompression: 2 m_MixedBakeMode: 1 m_BakeBackend: 0 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 500 m_PVRBounces: 2 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVRFilteringMode: 1 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ShowResolutionOverlay: 1 m_LightingDataAsset: {fileID: 0} m_UseShadowmask: 0 --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1 &308986565 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 109456, guid: 2a197ba458fd7604f8764d355d1a4934, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 308986566} - component: {fileID: 308986567} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &308986566 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 405938, guid: 2a197ba458fd7604f8764d355d1a4934, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 308986565} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -18, y: -1.5999999, z: 0} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 716850861} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &308986567 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6158276, guid: 2a197ba458fd7604f8764d355d1a4934, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 308986565} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 1800, y: -40} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 3640, y: 80} m_EdgeRadius: 0 --- !u!1 &417886228 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 417886233} - component: {fileID: 417886232} - component: {fileID: 417886231} - component: {fileID: 417886230} - component: {fileID: 417886229} - component: {fileID: 417886234} - component: {fileID: 417886235} m_Layer: 0 m_Name: Story4 m_TagString: Event m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &417886229 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 417886228} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 846d0d1a9b9e1c14884c79473a1f1d14, type: 3} m_Name: m_EditorClassIdentifier: scriptToLoad: Story4 actualPage: 2 eventTriggers: - {x: 1, y: 1} - {x: 2, y: 2} moveSpeed: 1 isMovingWaitEnd: 0 isRotatingWaitEnd: 0 --- !u!61 &417886230 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 417886228} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 1 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0.5, y: 0.5} oldSize: {x: 0.01, y: 0.01} newSize: {x: 0.01, y: 0.01} adaptiveTilingThreshold: 0.5 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 1, y: 0.2675} m_EdgeRadius: 0 --- !u!50 &417886231 Rigidbody2D: serializedVersion: 4 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 417886228} m_BodyType: 0 m_Simulated: 1 m_UseFullKinematicContacts: 0 m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_Material: {fileID: 0} m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 4 --- !u!212 &417886232 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 417886228} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_RendererPriority: 0 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 876f2cc47fea2394b98c7950cde30cd9, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 0.01, y: 0.01} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!224 &417886233 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 417886228} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 1} m_LocalScale: {x: 1, y: 300, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 400, y: 120} m_SizeDelta: {x: 1, y: 1} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &417886234 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 417886228} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5b6761159c8f6224a8a895abea10dd25, type: 3} m_Name: m_EditorClassIdentifier: SpritePath: empty Loop: 0 --- !u!114 &417886235 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 417886228} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1 &716850858 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 134422, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 716850861} - component: {fileID: 716850860} - component: {fileID: 716850859} m_Layer: 0 m_Name: Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!212 &716850859 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 21251718, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 716850858} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_RendererPriority: 0 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 0 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!114 &716850860 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11414468, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 716850858} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7a4ef58bda0647d48b67028c05b00813, type: 3} m_Name: m_EditorClassIdentifier: music: mus_undertale modToLoad: '@0.5.0_SEE_CRATE' isMusicKeptBetweenBattles: 1 noRandomEncounter: 1 --- !u!224 &716850861 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22411040, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 716850858} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 140} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: - {fileID: 1138192097} - {fileID: 828439519} - {fileID: 308986566} - {fileID: 1967538839} - {fileID: 754946257} - {fileID: 1385992953} - {fileID: 1753661296} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 1820, y: 240} m_SizeDelta: {x: 36.4, y: 4.8} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &754946256 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 127852, guid: 2a197ba458fd7604f8764d355d1a4934, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 754946257} - component: {fileID: 754946258} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &754946257 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 475476, guid: 2a197ba458fd7604f8764d355d1a4934, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 754946256} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 18.2, y: -0.79999995, z: 0} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 716850861} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &754946258 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6104952, guid: 2a197ba458fd7604f8764d355d1a4934, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 754946256} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 10, y: -40} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 20, y: 80} m_EdgeRadius: 0 --- !u!1 &828439518 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 141804, guid: 2a197ba458fd7604f8764d355d1a4934, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 828439519} - component: {fileID: 828439520} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &828439519 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 489280, guid: 2a197ba458fd7604f8764d355d1a4934, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 828439518} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -18, y: 2.3999999, z: 0} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 716850861} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &828439520 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6111054, guid: 2a197ba458fd7604f8764d355d1a4934, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 828439518} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 1800, y: -160} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 3640, y: 320} m_EdgeRadius: 0 --- !u!1 &1138192096 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 134422, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1138192097} - component: {fileID: 1138192098} m_Layer: 0 m_Name: UT NewHome 3 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &1138192097 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22411040, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1138192096} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 716850861} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: -1.85, y: 0} m_SizeDelta: {x: 36, y: 4.8} m_Pivot: {x: 0.5, y: 0.5} --- !u!212 &1138192098 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 21251718, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1138192096} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_RendererPriority: 0 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 969e2abca5380e74288a26233ef80551, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 32.7, y: 4.8} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!1 &1302973905 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1302973912} - component: {fileID: 1302973911} - component: {fileID: 1302973910} - component: {fileID: 1302973909} - component: {fileID: 1302973908} - component: {fileID: 1302973907} - component: {fileID: 1302973906} m_Layer: 0 m_Name: MusicWarper m_TagString: Event m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &1302973906 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1302973905} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!114 &1302973907 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1302973905} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5b6761159c8f6224a8a895abea10dd25, type: 3} m_Name: m_EditorClassIdentifier: SpritePath: empty Loop: 0 --- !u!114 &1302973908 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1302973905} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 846d0d1a9b9e1c14884c79473a1f1d14, type: 3} m_Name: m_EditorClassIdentifier: scriptToLoad: MusicWarper actualPage: 3 eventTriggers: - {x: 1, y: 1} - {x: 2, y: 3} - {x: 3, y: 2} moveSpeed: 1 isMovingWaitEnd: 0 isRotatingWaitEnd: 0 --- !u!61 &1302973909 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1302973905} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 1 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0.5, y: 0.5} oldSize: {x: 0.01, y: 0.01} newSize: {x: 0.01, y: 0.01} adaptiveTilingThreshold: 0.5 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 1, y: 0.2675} m_EdgeRadius: 0 --- !u!50 &1302973910 Rigidbody2D: serializedVersion: 4 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1302973905} m_BodyType: 0 m_Simulated: 1 m_UseFullKinematicContacts: 0 m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_Material: {fileID: 0} m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 4 --- !u!212 &1302973911 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1302973905} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_RendererPriority: 0 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 876f2cc47fea2394b98c7950cde30cd9, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 0.01, y: 0.01} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!224 &1302973912 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1302973905} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 1} m_LocalScale: {x: 1, y: 300, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 2040, y: 120} m_SizeDelta: {x: 1, y: 1} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &1385992952 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 157358, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1385992953} - component: {fileID: 1385992956} - component: {fileID: 1385992955} - component: {fileID: 1385992954} m_Layer: 0 m_Name: TP Left m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1385992953 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 406064, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1385992952} m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071067} m_LocalPosition: {x: -18, y: -1.2, z: 0} m_LocalScale: {x: 0.79999995, y: 1, z: 1} m_Children: [] m_Father: {fileID: 716850861} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} --- !u!114 &1385992954 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11494438, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1385992952} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: cafce2c3f7e465f478d7b302ab1b8236, type: 3} m_Name: m_EditorClassIdentifier: sceneName: newhome2 position: {x: 600, y: 600} direction: 4 activated: 0 noFadeIn: 0 noFadeOut: 0 --- !u!50 &1385992955 Rigidbody2D: serializedVersion: 4 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 5032938, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1385992952} m_BodyType: 1 m_Simulated: 1 m_UseFullKinematicContacts: 0 m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_Material: {fileID: 0} m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 4 --- !u!68 &1385992956 EdgeCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6882432, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1385992952} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 1 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: -0.5, y: 0} - {x: 0.5, y: 0} --- !u!1 &1753661295 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 168770, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1753661296} - component: {fileID: 1753661299} - component: {fileID: 1753661298} - component: {fileID: 1753661297} m_Layer: 0 m_Name: TP Right m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1753661296 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 425052, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1753661295} m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071067} m_LocalPosition: {x: 18, y: -1.2, z: 0} m_LocalScale: {x: 0.79999995, y: 1, z: 1} m_Children: [] m_Father: {fileID: 716850861} m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} --- !u!114 &1753661297 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11498914, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1753661295} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: cafce2c3f7e465f478d7b302ab1b8236, type: 3} m_Name: m_EditorClassIdentifier: sceneName: Void position: {x: 80, y: 240} direction: 6 activated: 0 noFadeIn: 0 noFadeOut: 0 --- !u!50 &1753661298 Rigidbody2D: serializedVersion: 4 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 5034292, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1753661295} m_BodyType: 1 m_Simulated: 1 m_UseFullKinematicContacts: 0 m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_Material: {fileID: 0} m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 4 --- !u!68 &1753661299 EdgeCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6853106, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1753661295} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 1 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: -0.5, y: 0} - {x: 0.5, y: 0} --- !u!1 &1871179663 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1871179668} - component: {fileID: 1871179667} - component: {fileID: 1871179666} - component: {fileID: 1871179665} - component: {fileID: 1871179664} - component: {fileID: 1871179669} - component: {fileID: 1871179670} m_Layer: 0 m_Name: Story5 m_TagString: Event m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &1871179664 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1871179663} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 846d0d1a9b9e1c14884c79473a1f1d14, type: 3} m_Name: m_EditorClassIdentifier: scriptToLoad: Story5 actualPage: 2 eventTriggers: - {x: 1, y: 1} - {x: 2, y: 2} moveSpeed: 1 isMovingWaitEnd: 0 isRotatingWaitEnd: 0 --- !u!61 &1871179665 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1871179663} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 1 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0.5, y: 0.5} oldSize: {x: 0.01, y: 0.01} newSize: {x: 0.01, y: 0.01} adaptiveTilingThreshold: 0.5 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 1, y: 0.2675} m_EdgeRadius: 0 --- !u!50 &1871179666 Rigidbody2D: serializedVersion: 4 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1871179663} m_BodyType: 0 m_Simulated: 1 m_UseFullKinematicContacts: 0 m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_Material: {fileID: 0} m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 4 --- !u!212 &1871179667 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1871179663} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_RendererPriority: 0 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 876f2cc47fea2394b98c7950cde30cd9, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 0.01, y: 0.01} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!224 &1871179668 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1871179663} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 1} m_LocalScale: {x: 1, y: 300, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 1600, y: 120} m_SizeDelta: {x: 1, y: 1} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1871179669 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1871179663} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5b6761159c8f6224a8a895abea10dd25, type: 3} m_Name: m_EditorClassIdentifier: SpritePath: empty Loop: 0 --- !u!114 &1871179670 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1871179663} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6c7b8a91bf13f244b93c1a72a65984e5, type: 3} m_Name: m_EditorClassIdentifier: --- !u!1 &1967538838 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 168310, guid: 2a197ba458fd7604f8764d355d1a4934, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1967538839} - component: {fileID: 1967538840} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1967538839 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 460918, guid: 2a197ba458fd7604f8764d355d1a4934, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1967538838} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -18.4, y: -0.79999995, z: 0} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 716850861} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &1967538840 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6198640, guid: 2a197ba458fd7604f8764d355d1a4934, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1967538838} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 10, y: -40} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 20, y: 80} m_EdgeRadius: 0 ================================================ FILE: Assets/Scenes/newhome3.unity.meta ================================================ fileFormatVersion: 2 guid: 0cad95f36cca48e4ca140c57732d39c2 timeCreated: 1477094821 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scenes/test-1.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 8 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 3 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_TemporalCoherenceThreshold: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 0 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 8 m_Resolution: 2 m_BakeResolution: 40 m_TextureWidth: 1024 m_TextureHeight: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 0 m_CompAOExponentDirect: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 1024 m_ReflectionCompression: 2 m_MixedBakeMode: 1 m_BakeBackend: 0 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 500 m_PVRBounces: 2 m_PVRFiltering: 0 m_PVRFilteringMode: 1 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousColorSigma: 1 m_PVRFilteringAtrousNormalSigma: 1 m_PVRFilteringAtrousPositionSigma: 1 m_LightingDataAsset: {fileID: 0} m_ShadowMaskMode: 2 --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 m_NavMeshData: {fileID: 0} --- !u!1 &38373892 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 162326, guid: 3de01dac45642694eb6ac38a6c21f6d5, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 5 m_Component: - component: {fileID: 38373893} - component: {fileID: 38373897} - component: {fileID: 38373896} - component: {fileID: 38373895} - component: {fileID: 38373894} m_Layer: 0 m_Name: PC Computer - Undertale - Core Tileset(1) m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &38373893 Transform: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 499602, guid: 3de01dac45642694eb6ac38a6c21f6d5, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 38373892} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -7.625, y: 2.19, z: 0} m_LocalScale: {x: 0.02, y: 0.02, z: 2} m_Children: [] m_Father: {fileID: 94241785} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &38373894 MonoBehaviour: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 11457996, guid: 3de01dac45642694eb6ac38a6c21f6d5, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 38373892} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 74efee4889073914b8ae070d65688ce4, type: 3} m_Name: m_EditorClassIdentifier: InitialOpacity: 1 --- !u!114 &38373895 MonoBehaviour: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 11495032, guid: 3de01dac45642694eb6ac38a6c21f6d5, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 38373892} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1874989c5e2da094ea00112c6a895694, type: 3} m_Name: m_EditorClassIdentifier: --- !u!23 &38373896 MeshRenderer: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 2361752, guid: 3de01dac45642694eb6ac38a6c21f6d5, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 38373892} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_Materials: - {fileID: 2100000, guid: b90bff42e575b504a9929ba56d216286, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 --- !u!33 &38373897 MeshFilter: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 3340166, guid: 3de01dac45642694eb6ac38a6c21f6d5, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 38373892} m_Mesh: {fileID: 4300000, guid: 20329d7969f2b264a9502e7f16e1cade, type: 3} --- !u!1 &83589988 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 168272, guid: 3de01dac45642694eb6ac38a6c21f6d5, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 5 m_Component: - component: {fileID: 83589989} - component: {fileID: 83589990} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &83589989 Transform: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 414520, guid: 3de01dac45642694eb6ac38a6c21f6d5, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 83589988} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -4.0225, y: -0.53249997, z: -140} m_LocalScale: {x: 0.02, y: 0.02, z: 2} m_Children: [] m_Father: {fileID: 94241785} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &83589990 BoxCollider2D: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 6126868, guid: 3de01dac45642694eb6ac38a6c21f6d5, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 83589988} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 29.5, y: -61} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 59, y: 122} m_EdgeRadius: 0 --- !u!1 &94241782 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 134422, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 5 m_Component: - component: {fileID: 94241785} - component: {fileID: 94241784} - component: {fileID: 94241783} m_Layer: 0 m_Name: Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!212 &94241783 SpriteRenderer: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 21251718, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 94241782} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 0 --- !u!114 &94241784 MonoBehaviour: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 11414468, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 94241782} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7a4ef58bda0647d48b67028c05b00813, type: 3} m_Name: m_EditorClassIdentifier: id: -1 music: bastards modToLoad: Mionn 2.1 isMusicKeptBetweenBattles: 0 noRandomEncounter: 0 --- !u!224 &94241785 RectTransform: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 22411040, guid: d781acdb7c86dff4081250e8c5edd546, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 94241782} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 140} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: - {fileID: 38373893} - {fileID: 1824251591} - {fileID: 83589989} - {fileID: 1461630939} - {fileID: 1182590397} - {fileID: 1078267313} m_Father: {fileID: 0} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 912.5, y: 581} m_SizeDelta: {x: 15.25, y: 11.62} m_Pivot: {x: 0.5, y: 0.5} --- !u!1001 &607952636 Prefab: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 2} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 2} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 2} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 2} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 2} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 2} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 2} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 2} propertyPath: m_RootOrder value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 2} propertyPath: m_AnchoredPosition.x value: 490 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 2} propertyPath: m_AnchoredPosition.y value: 200 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 2} propertyPath: m_SizeDelta.x value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 2} propertyPath: m_SizeDelta.y value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 2} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 2} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 2} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 2} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 2} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 2} propertyPath: m_Pivot.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 2} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: 876f2cc47fea2394b98c7950cde30cd9, type: 3} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 2} propertyPath: m_Size.x value: 0.01 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 2} propertyPath: m_Size.y value: 0.01 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 2} propertyPath: m_WasSpriteAssigned value: 1 objectReference: {fileID: 0} m_RemovedComponents: [] m_ParentPrefab: {fileID: 100100000, guid: a0add8308da8d24468328221253c3ec7, type: 2} m_IsPrefabParent: 0 --- !u!1 &1078267312 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 114192, guid: 3de01dac45642694eb6ac38a6c21f6d5, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 5 m_Component: - component: {fileID: 1078267313} - component: {fileID: 1078267314} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1078267313 Transform: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 487464, guid: 3de01dac45642694eb6ac38a6c21f6d5, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1078267312} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -4.0225, y: 0.1325, z: -140} m_LocalScale: {x: 0.02, y: 0.02, z: 2} m_Children: [] m_Father: {fileID: 94241785} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &1078267314 BoxCollider2D: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 6119396, guid: 3de01dac45642694eb6ac38a6c21f6d5, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1078267312} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 47.5, y: -139} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 95, y: 278} m_EdgeRadius: 0 --- !u!1 &1182590396 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 159022, guid: 3de01dac45642694eb6ac38a6c21f6d5, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 5 m_Component: - component: {fileID: 1182590397} - component: {fileID: 1182590398} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1182590397 Transform: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 410966, guid: 3de01dac45642694eb6ac38a6c21f6d5, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1182590396} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -7.8525, y: -3.81, z: -140} m_LocalScale: {x: 0.02, y: 0.02, z: 2} m_Children: [] m_Father: {fileID: 94241785} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &1182590398 BoxCollider2D: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 6113384, guid: 3de01dac45642694eb6ac38a6c21f6d5, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1182590396} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 107.5, y: -29.5} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 215, y: 59} m_EdgeRadius: 0 --- !u!1 &1305184232 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 175212, guid: 3de01dac45642694eb6ac38a6c21f6d5, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 5 m_Component: - component: {fileID: 1305184233} m_Layer: 0 m_Name: Tile Layer 2 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1305184233 Transform: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 478356, guid: 3de01dac45642694eb6ac38a6c21f6d5, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1305184232} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 150, y: 800, z: -1} m_LocalScale: {x: 2, y: 2, z: 2} m_Children: - {fileID: 1867074029} m_Father: {fileID: 0} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1461630938 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 121558, guid: 3de01dac45642694eb6ac38a6c21f6d5, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 5 m_Component: - component: {fileID: 1461630939} - component: {fileID: 1461630940} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1461630939 Transform: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 439186, guid: 3de01dac45642694eb6ac38a6c21f6d5, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1461630938} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -8.264999, y: -1.43, z: -140} m_LocalScale: {x: 0.02, y: 0.02, z: 2} m_Children: [] m_Father: {fileID: 94241785} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &1461630940 BoxCollider2D: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 6188076, guid: 3de01dac45642694eb6ac38a6c21f6d5, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1461630938} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 25.5, y: -68} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 51, y: 136} m_EdgeRadius: 0 --- !u!1 &1824251590 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 178540, guid: 3de01dac45642694eb6ac38a6c21f6d5, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 5 m_Component: - component: {fileID: 1824251591} - component: {fileID: 1824251592} m_Layer: 0 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1824251591 Transform: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 401984, guid: 3de01dac45642694eb6ac38a6c21f6d5, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1824251590} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -7.105, y: -0.7475, z: -140} m_LocalScale: {x: 0.02, y: 0.02, z: 2} m_Children: [] m_Father: {fileID: 94241785} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &1824251592 BoxCollider2D: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 6172380, guid: 3de01dac45642694eb6ac38a6c21f6d5, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1824251590} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 77, y: -36.5} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 154, y: 73} m_EdgeRadius: 0 --- !u!1 &1867074028 GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 136672, guid: 3de01dac45642694eb6ac38a6c21f6d5, type: 2} m_PrefabInternal: {fileID: 0} serializedVersion: 5 m_Component: - component: {fileID: 1867074029} - component: {fileID: 1867074033} - component: {fileID: 1867074032} - component: {fileID: 1867074031} - component: {fileID: 1867074030} m_Layer: 0 m_Name: PC Computer - Undertale - Core Tileset(1) m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1867074029 Transform: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 454324, guid: 3de01dac45642694eb6ac38a6c21f6d5, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1867074028} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1305184233} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1867074030 MonoBehaviour: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 11413308, guid: 3de01dac45642694eb6ac38a6c21f6d5, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1867074028} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 74efee4889073914b8ae070d65688ce4, type: 3} m_Name: m_EditorClassIdentifier: InitialOpacity: 1 --- !u!114 &1867074031 MonoBehaviour: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 11449396, guid: 3de01dac45642694eb6ac38a6c21f6d5, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1867074028} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1874989c5e2da094ea00112c6a895694, type: 3} m_Name: m_EditorClassIdentifier: --- !u!23 &1867074032 MeshRenderer: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 2377232, guid: 3de01dac45642694eb6ac38a6c21f6d5, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1867074028} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_Materials: - {fileID: 2100000, guid: b90bff42e575b504a9929ba56d216286, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 --- !u!33 &1867074033 MeshFilter: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 3368084, guid: 3de01dac45642694eb6ac38a6c21f6d5, type: 2} m_PrefabInternal: {fileID: 0} m_GameObject: {fileID: 1867074028} m_Mesh: {fileID: 4300002, guid: 20329d7969f2b264a9502e7f16e1cade, type: 3} ================================================ FILE: Assets/Scenes/test-1.unity.meta ================================================ fileFormatVersion: 2 guid: 2771e7a1bf8bd234abdb4e55f2b156d8 timeCreated: 1472345584 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scenes/test.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 3 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 11 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 0 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 10 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 0 m_CompAOExponentDirect: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 1024 m_ReflectionCompression: 2 m_MixedBakeMode: 1 m_BakeBackend: 0 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 500 m_PVRBounces: 2 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVRFilteringMode: 1 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ShowResolutionOverlay: 1 m_LightingDataAsset: {fileID: 0} m_UseShadowmask: 0 --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1001 &89432780 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 124458, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: 4eab1af3ab6a932c23b3cdb8ef618b1af9c02088 objectReference: {fileID: 0} - target: {fileID: 124458, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Layer value: 21 objectReference: {fileID: 0} - target: {fileID: 5055424, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_BodyType value: 2 objectReference: {fileID: 0} - target: {fileID: 5055424, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Simulated value: 1 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.01 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.01 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.x value: 0.19 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.y value: 0.48 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.newSize.x value: 0.28 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.newSize.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.adaptiveTilingThreshold value: 0.5 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 2 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 1 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 3 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: moveSpeed value: 2 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: Secret/nothing objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[0].x value: 0 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: actualPage value: 1 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: 4fc2fb526f4a28c4d8c3ecb33259d8eb, type: 3} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.28 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Color.a value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 2 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.x value: 1040 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.y value: 740 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.x value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.y value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.x value: 200 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.y value: 200 objectReference: {fileID: 0} - target: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: 4eab1af3ab6a932c23b3cdb8ef618b1af9c02088 objectReference: {fileID: 0} - target: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: SpritePivot objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 6 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 300 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 400 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.x value: 0.19 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.y value: 0.48 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.38 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.4 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0.2 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.y value: 0 objectReference: {fileID: 0} - target: {fileID: 114226206946908324, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SpritePath value: objectReference: {fileID: 0} - target: {fileID: 114226206946908324, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Enabled value: 0 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: Secret/nothing objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[0].x value: 0 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 3 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 114980733475525374, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SpritePath value: Overworld/Punder/1 objectReference: {fileID: 0} - target: {fileID: 114980733475525374, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SetNativeSize value: 0 objectReference: {fileID: 0} - target: {fileID: 212134501322781040, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: 4fc2fb526f4a28c4d8c3ecb33259d8eb, type: 3} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.x value: 300 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.y value: 390 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.x value: 100 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.y value: 100 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 8 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.z value: 1 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.x value: 100 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.y value: 100 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.x value: 1 objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 114980733475525374, guid: a0add8308da8d24468328221253c3ec7, type: 3} - {fileID: 114226206946908324, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_SourcePrefab: {fileID: 100100000, guid: a0add8308da8d24468328221253c3ec7, type: 3} --- !u!1 &387083019 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 1161035551607804, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 387083020} - component: {fileID: 387083021} m_Layer: 19 m_Name: Collider m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &387083020 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 4205393937864470, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 387083019} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 1446132282} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!60 &387083021 PolygonCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 387083019} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: -35, y: 20} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 m_Points: m_Paths: - - {x: 0, y: 15} - {x: -15, y: 0} - {x: 0, y: -15} - {x: 70, y: -15} - {x: 85, y: 0} - {x: 70, y: 15} --- !u!1 &480496901 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 1161035551607804, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 480496902} - component: {fileID: 480496903} m_Layer: 19 m_Name: Collider m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &480496902 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 4205393937864470, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 480496901} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 1731488818} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!60 &480496903 PolygonCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 480496901} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: -35, y: 20} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 m_Points: m_Paths: - - {x: 0, y: 15} - {x: -15, y: 0} - {x: 0, y: -15} - {x: 70, y: -15} - {x: 85, y: 0} - {x: 70, y: 15} --- !u!1 &674305607 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 674305610} - component: {fileID: 674305609} - component: {fileID: 674305608} m_Layer: 0 m_Name: Tree m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!212 &674305608 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 674305607} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_RendererPriority: 0 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: e262c95b4713ba547ae661365d99795b, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!210 &674305609 SortingGroup: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 210702407409670196, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 674305607} m_Enabled: 1 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 --- !u!224 &674305610 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 674305607} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: - {fileID: 1408707710} m_Father: {fileID: 0} m_RootOrder: 13 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 265, y: 727} m_SizeDelta: {x: 1, y: 1} m_Pivot: {x: 0.5, y: 0} --- !u!1001 &957516868 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 124458, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: bee6bcfc (1) objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.18 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.2 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0.098 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.x value: 0.28 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.newSize.x value: 0.28 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.newSize.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.adaptiveTilingThreshold value: 0.5 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 0 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 1 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 2 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: moveSpeed value: 3 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: Secret/bee6bcfc objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[0].x value: 0 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: 876f2cc47fea2394b98c7950cde30cd9, type: 3} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.01 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.01 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_WasSpriteAssigned value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 2 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.x value: 1040 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.y value: 740 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.x value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.y value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.x value: 200 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.y value: 200 objectReference: {fileID: 0} - target: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: dac97760 (1) objectReference: {fileID: 0} - target: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: SpritePivot objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 5 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.0001 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.0001 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_UsedByComposite value: 0 objectReference: {fileID: 0} - target: {fileID: 114226206946908324, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SpritePath value: empty objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 0 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: none objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: actualPage value: 1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[0].x value: 1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 3 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 114980733475525374, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SpritePath value: empty objectReference: {fileID: 0} - target: {fileID: 114980733475525374, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SetNativeSize value: 0 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.x value: 100 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.y value: 100 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 1 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: a0add8308da8d24468328221253c3ec7, type: 3} --- !u!1 &957516869 stripped GameObject: m_CorrespondingSourceObject: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_PrefabInstance: {fileID: 957516868} m_PrefabAsset: {fileID: 0} --- !u!114 &957516870 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 957516869} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 44f4eb1dd5662834c949b35a8b28394c, type: 3} m_Name: m_EditorClassIdentifier: movementDirection: 0 beginAnim: StopDown specialHeader: anims: - name: Fall anims: FriskUT/Fall/f0, FriskUT/Fall/f1, FriskUT/Fall/f2 transitionTime: 0.25 - name: Reveal anims: FriskUT/Fall/f3, FriskUT/Fall/f4 transitionTime: 0.16666667 - name: StopDown anims: empty, empty transitionTime: 60 --- !u!1001 &1053321142 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 124458, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: 68302eae (1) objectReference: {fileID: 0} - target: {fileID: 5055424, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_BodyType value: 2 objectReference: {fileID: 0} - target: {fileID: 5055424, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Simulated value: 0 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.34 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.3 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0.148 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.x value: 0.38 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.y value: 0.58 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.newSize.x value: 0.28 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.newSize.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.adaptiveTilingThreshold value: 0.5 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 0 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 0 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 3 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: moveSpeed value: 2 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: Secret/68302eae objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[0].x value: 1 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: 5a15fea0f60c14a449b67566953ba18a, type: 3} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.28 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Color.a value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 2 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.x value: 1040 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.y value: 740 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.x value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.y value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.x value: 200 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.y value: 200 objectReference: {fileID: 0} - target: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: bee6bcfc (1) objectReference: {fileID: 0} - target: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: SpritePivot objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 3 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.0001 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.0001 objectReference: {fileID: 0} - target: {fileID: 114226206946908324, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SpritePath value: empty objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 0 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: none objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[0].x value: 1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 3 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 114980733475525374, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SpritePath value: Overworld/Punder/1 objectReference: {fileID: 0} - target: {fileID: 114980733475525374, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SetNativeSize value: 0 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.x value: 400 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.y value: 200.5 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.x value: 100 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.y value: 100 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 5 objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 114980733475525374, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_SourcePrefab: {fileID: 100100000, guid: a0add8308da8d24468328221253c3ec7, type: 3} --- !u!1 &1053321143 stripped GameObject: m_CorrespondingSourceObject: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_PrefabInstance: {fileID: 1053321142} m_PrefabAsset: {fileID: 0} --- !u!114 &1053321144 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1053321143} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 44f4eb1dd5662834c949b35a8b28394c, type: 3} m_Name: m_EditorClassIdentifier: movementDirection: 0 beginAnim: StopDown specialHeader: anims: - name: StopDown anims: empty, empty transitionTime: 60 - name: Glitch anims: FriskUT/Glitch/g2, FriskUT/Glitch/g1, FriskUT/Glitch/g0 transitionTime: 0.2 --- !u!1 &1408707709 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 1161035551607804, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1408707710} - component: {fileID: 1408707711} m_Layer: 19 m_Name: Collider m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1408707710 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 4205393937864470, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1408707709} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 674305610} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!60 &1408707711 PolygonCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1408707709} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: -35, y: 20} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 m_Points: m_Paths: - - {x: 0, y: 15} - {x: -15, y: 0} - {x: 0, y: -15} - {x: 70, y: -15} - {x: 85, y: 0} - {x: 70, y: 15} --- !u!1 &1446132279 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1446132282} - component: {fileID: 1446132281} - component: {fileID: 1446132280} m_Layer: 0 m_Name: Tree m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!212 &1446132280 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1446132279} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_RendererPriority: 0 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: e262c95b4713ba547ae661365d99795b, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!210 &1446132281 SortingGroup: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 210702407409670196, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1446132279} m_Enabled: 1 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 --- !u!224 &1446132282 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1446132279} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: - {fileID: 387083020} m_Father: {fileID: 0} m_RootOrder: 11 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 1346, y: 802} m_SizeDelta: {x: 1, y: 1} m_Pivot: {x: 0.5, y: 0} --- !u!1001 &1459585894 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 124458, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: 68302eae objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.34 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.3 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0.148 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.x value: 0.38 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.y value: 0.58 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.newSize.x value: 0.28 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.newSize.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.adaptiveTilingThreshold value: 0.5 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 2 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 0 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 3 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: moveSpeed value: 2 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: Secret/68302eae objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: 29b8b27a4045bde4c8ba97c1a30b2095, type: 3} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.28 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Color.a value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 2 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.x value: 1040 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.y value: 740 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.x value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.y value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.x value: 200 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.y value: 200 objectReference: {fileID: 0} - target: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: bee6bcfc objectReference: {fileID: 0} - target: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: SpritePivot objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 2 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 1060 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 680 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.x value: 0.56 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.y value: 0.76 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.38 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.3 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0.15 objectReference: {fileID: 0} - target: {fileID: 114226206946908324, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SpritePath value: Overworld/Punder/1 objectReference: {fileID: 0} - target: {fileID: 114226206946908324, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SetNativeSize value: 0 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 3 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[0].x value: 0 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: moveSpeed value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: Secret/bee6bcfc objectReference: {fileID: 0} - target: {fileID: 114980733475525374, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SpritePath value: objectReference: {fileID: 0} - target: {fileID: 114980733475525374, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SetNativeSize value: 0 objectReference: {fileID: 0} - target: {fileID: 212134501322781040, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: aa445937c50f03946b0a19d4716f59de, type: 3} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.x value: 400 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.y value: 200 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.x value: 100 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.y value: 100 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 4 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.x value: 100 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.y value: 100 objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 114980733475525374, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_SourcePrefab: {fileID: 100100000, guid: a0add8308da8d24468328221253c3ec7, type: 3} --- !u!1 &1459585895 stripped GameObject: m_CorrespondingSourceObject: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_PrefabInstance: {fileID: 1459585894} m_PrefabAsset: {fileID: 0} --- !u!114 &1459585896 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1459585895} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 44f4eb1dd5662834c949b35a8b28394c, type: 3} m_Name: m_EditorClassIdentifier: movementDirection: 0 beginAnim: StopDown specialHeader: anims: - name: NoAnim anims: empty, empty transitionTime: 60 - name: StopDown anims: Overworld/Punder/1, Overworld/Punder/1 transitionTime: 60 - name: StopLeft anims: Overworld/Punder/5, Overworld/Punder/5 transitionTime: 60 - name: StopRight anims: Overworld/Punder/9, Overworld/Punder/9 transitionTime: 60 - name: StopUp anims: Overworld/Punder/13, Overworld/Punder/13 transitionTime: 60 - name: MovingDown anims: Overworld/Punder/0, Overworld/Punder/1, Overworld/Punder/2, Overworld/Punder/3 transitionTime: 0.25 - name: MovingLeft anims: Overworld/Punder/4, Overworld/Punder/5, Overworld/Punder/6, Overworld/Punder/7 transitionTime: 0.25 - name: MovingRight anims: Overworld/Punder/8, Overworld/Punder/9, Overworld/Punder/10, Overworld/Punder/11 transitionTime: 0.35 - name: MovingUp anims: Overworld/Punder/12, Overworld/Punder/13, Overworld/Punder/14, Overworld/Punder/15 transitionTime: 0.25 - name: Knockout anims: Overworld/Punder/Secret/Knockout, Overworld/Punder/Secret/Knockout transitionTime: 60 --- !u!1001 &1465603899 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 124458, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: dac97760 (1) objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.18 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.2 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0.098 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.x value: 0.28 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.newSize.x value: 0.28 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.newSize.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.adaptiveTilingThreshold value: 0.5 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 0 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 1 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 2 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: moveSpeed value: 3 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: Secret/dac97760 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[0].x value: 0 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: 876f2cc47fea2394b98c7950cde30cd9, type: 3} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.1 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.1 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_WasSpriteAssigned value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 2 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.x value: 1040 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.y value: 740 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.x value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.y value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.x value: 200 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.y value: 200 objectReference: {fileID: 0} - target: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: 68302eae (1) objectReference: {fileID: 0} - target: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: SpritePivot objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 1 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.0001 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.0001 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 0 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 3 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[0].x value: 0 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: none objectReference: {fileID: 0} - target: {fileID: 114980733475525374, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SpritePath value: empty objectReference: {fileID: 0} - target: {fileID: 114980733475525374, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SetNativeSize value: 0 objectReference: {fileID: 0} - target: {fileID: 212134501322781040, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Color.a value: 0 objectReference: {fileID: 0} - target: {fileID: 212134501322781040, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: c9f3271be80940e43ba5e5eaa5513eff, type: 3} - target: {fileID: 212134501322781040, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_WasSpriteAssigned value: 1 objectReference: {fileID: 0} - target: {fileID: 212134501322781040, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.08 objectReference: {fileID: 0} - target: {fileID: 212134501322781040, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.08 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.x value: 100 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.y value: 100 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 7 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 114226206946908324, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_SourcePrefab: {fileID: 100100000, guid: a0add8308da8d24468328221253c3ec7, type: 3} --- !u!1 &1465603900 stripped GameObject: m_CorrespondingSourceObject: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_PrefabInstance: {fileID: 1465603899} m_PrefabAsset: {fileID: 0} --- !u!114 &1465603901 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1465603900} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5b6761159c8f6224a8a895abea10dd25, type: 3} m_Name: m_EditorClassIdentifier: SpritePath: black Loop: 0 --- !u!1001 &1524005578 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: Ladder objectReference: {fileID: 0} - target: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: SpritePivot objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 350 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 720 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.x value: -0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.y value: -0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.z value: -0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 9 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0.19 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.4 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: Ladder objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 3 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.x value: 0.4 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 114226206946908324, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_SourcePrefab: {fileID: 100100000, guid: a0add8308da8d24468328221253c3ec7, type: 3} --- !u!1001 &1551304559 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 134422, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Name value: Background objectReference: {fileID: 0} - target: {fileID: 406064, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_RootOrder value: 8 objectReference: {fileID: 0} - target: {fileID: 407264, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_RootOrder value: 5 objectReference: {fileID: 0} - target: {fileID: 425052, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_RootOrder value: 9 objectReference: {fileID: 0} - target: {fileID: 474894, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_RootOrder value: 7 objectReference: {fileID: 0} - target: {fileID: 477142, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_RootOrder value: 2 objectReference: {fileID: 0} - target: {fileID: 479136, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_RootOrder value: 4 objectReference: {fileID: 0} - target: {fileID: 479584, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_RootOrder value: 0 objectReference: {fileID: 0} - target: {fileID: 480500, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_RootOrder value: 6 objectReference: {fileID: 0} - target: {fileID: 480924, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_RootOrder value: 3 objectReference: {fileID: 0} - target: {fileID: 499438, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_RootOrder value: 1 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.size value: 25 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[4].y value: 2.6 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[4].x value: -3.125 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[5].x value: -3.125 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[5].y value: 3.775 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[6].x value: -2.825 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[6].y value: 3.775 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[7].x value: -2.825 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[7].y value: 2.2 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[8].x value: -1.225 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[8].y value: 0.6 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[9].x value: -1.225 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[9].y value: 0.2 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[10].x value: -2.425 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[10].y value: 0.2 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[11].x value: -2.825 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[11].y value: -0.2 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[12].x value: -3.525 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[12].y value: -0.2 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[13].x value: -3.95 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[13].y value: -0.625 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[14].x value: -4.825 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[14].y value: -0.625 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[15].x value: -6.015 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[15].y value: -1.815 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[16].x value: -6.015 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[16].y value: -3 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[17].x value: -4.405 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[17].y value: -4.61 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[18].x value: 3.175 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[18].y value: -4.61 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[19].x value: 3.585 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[19].y value: -4.2 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[20].x value: 5.575 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[20].y value: -4.2 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[21].x value: 5.975 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[21].y value: -3.8 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[22].x value: 7.625 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[22].y value: -3.8 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[23].x value: 7.625 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[23].y value: -5.81 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[24].x value: -7.625 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[24].y value: -5.81 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[25].x value: -7.6244817 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[25].y value: -5.8117347 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[26].x value: -7.6244817 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[26].y value: -5.8117347 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[27].x value: -7.6244817 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[27].y value: -5.8117347 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[28].x value: -7.6244817 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[28].y value: -5.8117347 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[29].x value: -7.6244817 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[29].y value: -5.8117347 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[30].x value: -7.6244817 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[30].y value: -5.8117347 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[31].x value: -7.6244817 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[31].y value: -5.8117347 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[32].x value: -7.6244817 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[32].y value: -5.8117347 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[0].x value: -7.625 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[0].y value: 2.2 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[1].y value: 2.2 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[1].x value: -6.825 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[2].y value: 1.8 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[3].y value: 1.8 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[2].x value: -6.425 objectReference: {fileID: 0} - target: {fileID: 6053462, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Points.m_Paths.Array.data[0].Array.data[3].x value: -3.925 objectReference: {fileID: 0} - target: {fileID: 11456550, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: position.x value: 40 objectReference: {fileID: 0} - target: {fileID: 11456550, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: position.y value: 160 objectReference: {fileID: 0} - target: {fileID: 11456550, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: direction value: 6 objectReference: {fileID: 0} - target: {fileID: 11456550, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: sceneName value: test5 objectReference: {fileID: 0} - target: {fileID: 11494438, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: sceneName value: test4 objectReference: {fileID: 0} - target: {fileID: 11494438, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: position.x value: 1200 objectReference: {fileID: 0} - target: {fileID: 11494438, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: position.y value: 240 objectReference: {fileID: 0} - target: {fileID: 11494438, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: direction value: 4 objectReference: {fileID: 0} - target: {fileID: 21251718, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: 1349755d19b4ea14db229a36b82e13f0, type: 3} - target: {fileID: 21251718, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Size.x value: 15.25 objectReference: {fileID: 0} - target: {fileID: 21251718, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Size.y value: 11.62 objectReference: {fileID: 0} - target: {fileID: 21251718, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_WasSpriteAssigned value: 1 objectReference: {fileID: 0} - target: {fileID: 22411040, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22411040, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22411040, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_LocalPosition.z value: 140 objectReference: {fileID: 0} - target: {fileID: 22411040, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22411040, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22411040, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22411040, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22411040, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_RootOrder value: 7 objectReference: {fileID: 0} - target: {fileID: 22411040, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_AnchoredPosition.x value: 762.5 objectReference: {fileID: 0} - target: {fileID: 22411040, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_AnchoredPosition.y value: 581 objectReference: {fileID: 0} - target: {fileID: 22411040, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_SizeDelta.x value: 15.25 objectReference: {fileID: 0} - target: {fileID: 22411040, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_SizeDelta.y value: 11.62 objectReference: {fileID: 0} - target: {fileID: 22411040, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22411040, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22411040, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22411040, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22411040, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22411040, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} propertyPath: m_Pivot.y value: 0.5 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} --- !u!1 &1675059907 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1675059910} - component: {fileID: 1675059909} - component: {fileID: 1675059908} m_Layer: 0 m_Name: Tree m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!212 &1675059908 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1675059907} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_RendererPriority: 0 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: e262c95b4713ba547ae661365d99795b, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!210 &1675059909 SortingGroup: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 210702407409670196, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1675059907} m_Enabled: 1 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 --- !u!224 &1675059910 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1675059907} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: - {fileID: 2024213114} m_Father: {fileID: 0} m_RootOrder: 12 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 1022, y: 400} m_SizeDelta: {x: 1, y: 1} m_Pivot: {x: 0.5, y: 0} --- !u!1 &1731488815 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1731488818} - component: {fileID: 1731488817} - component: {fileID: 1731488816} m_Layer: 0 m_Name: Tree m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!212 &1731488816 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1731488815} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_RendererPriority: 0 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: e262c95b4713ba547ae661365d99795b, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!210 &1731488817 SortingGroup: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 210702407409670196, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1731488815} m_Enabled: 1 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 --- !u!224 &1731488818 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1731488815} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: - {fileID: 480496902} m_Father: {fileID: 0} m_RootOrder: 10 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 222, y: 318} m_SizeDelta: {x: 1, y: 1} m_Pivot: {x: 0.5, y: 0} --- !u!1001 &1829774938 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 124458, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: bee6bcfc objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.18 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.2 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0.098 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.x value: 0.28 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.newSize.x value: 0.28 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.newSize.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.adaptiveTilingThreshold value: 0.5 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 3 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 1 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 2 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: moveSpeed value: 3 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: Secret/bee6bcfc objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[0].x value: 0 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: 7801b99d48f55d844bbe1a64c451983b, type: 3} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.28 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 2 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.x value: 1040 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.y value: 740 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.x value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.y value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.x value: 200 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.y value: 200 objectReference: {fileID: 0} - target: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: 68302eae objectReference: {fileID: 0} - target: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: SpritePivot objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 400 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 200 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.x value: 0.38 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.y value: 0.58 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.4 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.4 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0.15 objectReference: {fileID: 0} - target: {fileID: 114226206946908324, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SpritePath value: FriskUT/5 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: Secret/68302eae objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 3 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[0].x value: 0 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 1 objectReference: {fileID: 0} - target: {fileID: 114980733475525374, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SpritePath value: Overworld/Punder/1 objectReference: {fileID: 0} - target: {fileID: 114980733475525374, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SetNativeSize value: 0 objectReference: {fileID: 0} - target: {fileID: 212134501322781040, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: bf4f3c556ff738e43a6f8efd808d3fd2, type: 3} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.x value: 1080 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.y value: 680 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.x value: 200 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.y value: 200 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.x value: 1 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.y value: 1 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: a0add8308da8d24468328221253c3ec7, type: 3} --- !u!1 &1829774939 stripped GameObject: m_CorrespondingSourceObject: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_PrefabInstance: {fileID: 1829774938} m_PrefabAsset: {fileID: 0} --- !u!114 &1829774940 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1829774939} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 44f4eb1dd5662834c949b35a8b28394c, type: 3} m_Name: m_EditorClassIdentifier: movementDirection: 0 beginAnim: StopLeft specialHeader: anims: - name: StopLeft anims: FriskUT/5, FriskUT/5 transitionTime: 60 - name: StopRight anims: FriskUT/9, FriskUT/9 transitionTime: 60 - name: Huggu1 anims: 'AsrielOW/Huggu/h0, AsrielOW/Huggu/h1, AsrielOW/Huggu/h2, AsrielOW/Huggu/h2, AsrielOW/Huggu/h2, AsrielOW/Huggu/h2, AsrielOW/Huggu/h3, AsrielOW/Huggu/h4, AsrielOW/Huggu/h5, AsrielOW/Huggu/h6, AsrielOW/Huggu/h6, AsrielOW/Huggu/h6, AsrielOW/Huggu/h6, AsrielOW/Huggu/h7 ' transitionTime: 0.25 - name: Huggu2 anims: AsrielOW/Huggu/h7, AsrielOW/Huggu/h8 transitionTime: 1 - name: Huggu3 anims: AsrielOW/Huggu/h9, AsrielOW/Huggu/h7, AsrielOW/Huggu/h9, AsrielOW/Huggu/h7, AsrielOW/Huggu/h9 transitionTime: 0.2 - name: StopDown anims: empty, empty transitionTime: 60 --- !u!1001 &1908988710 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 124458, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: bee6bcfc (1) objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.18 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.2 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0.098 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.x value: 0.28 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.newSize.x value: 0.28 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.newSize.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.adaptiveTilingThreshold value: 0.5 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 0 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 1 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 2 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: moveSpeed value: 3 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: Secret/bee6bcfc objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[0].x value: 0 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: 876f2cc47fea2394b98c7950cde30cd9, type: 3} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.01 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.01 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_WasSpriteAssigned value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 2 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.x value: 1040 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.y value: 740 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.x value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.y value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.x value: 200 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.y value: 200 objectReference: {fileID: 0} - target: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: dac97760 objectReference: {fileID: 0} - target: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Layer value: 0 objectReference: {fileID: 0} - target: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: SpritePivot objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 4 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 1160 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 280 objectReference: {fileID: 0} - target: {fileID: 50155291888853208, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_BodyType value: 0 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.01 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 2.4 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_IsTrigger value: 1 objectReference: {fileID: 0} - target: {fileID: 114226206946908324, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SpritePath value: empty objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: Secret/dac97760 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[0].x value: 0 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].y value: 1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 3 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 114980733475525374, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SpritePath value: empty objectReference: {fileID: 0} - target: {fileID: 114980733475525374, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SetNativeSize value: 0 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.x value: 100 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.y value: 100 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 1 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: a0add8308da8d24468328221253c3ec7, type: 3} --- !u!1 &2024213113 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 1161035551607804, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2024213114} - component: {fileID: 2024213115} m_Layer: 19 m_Name: Collider m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &2024213114 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 4205393937864470, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2024213113} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 1675059910} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!60 &2024213115 PolygonCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2024213113} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: -35, y: 20} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 m_Points: m_Paths: - - {x: 0, y: 15} - {x: -15, y: 0} - {x: 0, y: -15} - {x: 70, y: -15} - {x: 85, y: 0} - {x: 70, y: 15} --- !u!1001 &2085461523 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: Save objectReference: {fileID: 0} - target: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: SpritePivot objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 200 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 1000 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 8 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0.19 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.y value: 0 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.x value: 0.4 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.4 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: SaveTest objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 3 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[0].x value: 0 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 1 objectReference: {fileID: 0} - target: {fileID: 212134501322781040, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: fe0fb303d866c974ab18bdf7ecff6ba4, type: 3} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.x value: 0.4 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 114226206946908324, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_SourcePrefab: {fileID: 100100000, guid: a0add8308da8d24468328221253c3ec7, type: 3} ================================================ FILE: Assets/Scenes/test.unity.meta ================================================ fileFormatVersion: 2 guid: b409eeea8aa246847b09eebcd266ef18 timeCreated: 1458141189 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scenes/test2.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 3 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 11 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 0 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 10 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 0 m_CompAOExponentDirect: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 1024 m_ReflectionCompression: 2 m_MixedBakeMode: 1 m_BakeBackend: 0 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 500 m_PVRBounces: 2 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVRFilteringMode: 1 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ShowResolutionOverlay: 1 m_LightingDataAsset: {fileID: 0} m_UseShadowmask: 0 --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1 &43529137 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 43529138} - component: {fileID: 43529141} - component: {fileID: 43529140} - component: {fileID: 43529139} m_Layer: 0 m_Name: TP Right m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &43529138 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 43529137} m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071067} m_LocalPosition: {x: 3, y: -0.4, z: 0.125} m_LocalScale: {x: 0.8, y: 1, z: 1} m_Children: [] m_Father: {fileID: 689712512} m_RootOrder: 10 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} --- !u!114 &43529139 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 43529137} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: cafce2c3f7e465f478d7b302ab1b8236, type: 3} m_Name: m_EditorClassIdentifier: sceneName: newhome1 position: {x: 240, y: 200} direction: 6 activated: 0 noFadeIn: 0 noFadeOut: 0 --- !u!50 &43529140 Rigidbody2D: serializedVersion: 4 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 43529137} m_BodyType: 1 m_Simulated: 1 m_UseFullKinematicContacts: 0 m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_Material: {fileID: 0} m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 4 --- !u!68 &43529141 EdgeCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 43529137} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 1 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: -0.5, y: 0} - {x: 0.5, y: 0} --- !u!1 &178145621 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 129262, guid: 81be41ce3a4b1df4ab875cc673214de3, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 178145622} - component: {fileID: 178145623} m_Layer: 19 m_Name: Collider 2 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &178145622 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 418202, guid: 81be41ce3a4b1df4ab875cc673214de3, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 178145621} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -13.099998} m_LocalScale: {x: 1, y: 1, z: 0} m_Children: [] m_Father: {fileID: 689712512} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!60 &178145623 PolygonCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6031574, guid: 81be41ce3a4b1df4ab875cc673214de3, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 178145621} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 m_Points: m_Paths: - - {x: 0.5509384, y: -2.400375} - {x: 0.5516791, y: -1.5003725} - {x: 0.94992584, y: -1.5009695} - {x: 0.95015806, y: -1.1004298} - {x: 1.3500717, y: -1.099744} - {x: 1.350824, y: -0.70216584} - {x: 2.9896252, y: -0.70052826} - {x: 2.989768, y: -1.0396613} - {x: 3.2003381, y: -1.0392646} - {x: 3.1991937, y: -2.3980544} --- !u!1001 &252612462 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: Save objectReference: {fileID: 0} - target: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: SpritePivot objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 160 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 280 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 2 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0.19 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.y value: 0 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.x value: 0.4 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.4 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: SaveTest objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 3 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[0].x value: 0 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 1 objectReference: {fileID: 0} - target: {fileID: 212134501322781040, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: fe0fb303d866c974ab18bdf7ecff6ba4, type: 3} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.x value: 0.4 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.y value: 0.5 objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 114226206946908324, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_SourcePrefab: {fileID: 100100000, guid: a0add8308da8d24468328221253c3ec7, type: 3} --- !u!1001 &317963910 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: CharacterSelector objectReference: {fileID: 0} - target: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: SpritePivot objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 167 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 286 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 3 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.4 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.4 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[0].x value: 0 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 3 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].y value: 3 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: CharacterSelector objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.y value: 0.5 objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 114226206946908324, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_SourcePrefab: {fileID: 100100000, guid: a0add8308da8d24468328221253c3ec7, type: 3} --- !u!1 &413061391 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 413061392} - component: {fileID: 413061395} - component: {fileID: 413061394} - component: {fileID: 413061393} m_Layer: 0 m_Name: TP Up m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &413061392 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 413061391} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 2, z: 0.125} m_LocalScale: {x: 2, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 689712512} m_RootOrder: 8 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &413061393 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 413061391} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: cafce2c3f7e465f478d7b302ab1b8236, type: 3} m_Name: m_EditorClassIdentifier: sceneName: test position: {x: 60, y: 880} direction: 6 activated: 0 noFadeIn: 0 noFadeOut: 0 --- !u!50 &413061394 Rigidbody2D: serializedVersion: 4 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 413061391} m_BodyType: 1 m_Simulated: 1 m_UseFullKinematicContacts: 0 m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_Material: {fileID: 0} m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 4 --- !u!68 &413061395 EdgeCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 413061391} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 1 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: -0.5, y: 0} - {x: 0.5, y: 0} --- !u!1 &689712511 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 121140, guid: 81be41ce3a4b1df4ab875cc673214de3, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 689712512} - component: {fileID: 689712513} - component: {fileID: 689712514} m_Layer: 17 m_Name: Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &689712512 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 689712511} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 140} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: - {fileID: 930831121} - {fileID: 178145622} - {fileID: 756508359} - {fileID: 1889494567} - {fileID: 1153289609} - {fileID: 2088941611} - {fileID: 1534585419} - {fileID: 1137831013} - {fileID: 413061392} - {fileID: 1174268684} - {fileID: 43529138} - {fileID: 1366681680} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 320, y: 240} m_SizeDelta: {x: 6.4, y: 4.8} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &689712513 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 689712511} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7a4ef58bda0647d48b67028c05b00813, type: 3} m_Name: m_EditorClassIdentifier: music: mus_anothermedium modToLoad: Examples isMusicKeptBetweenBattles: 0 noRandomEncounter: 0 --- !u!212 &689712514 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 21203668, guid: 81be41ce3a4b1df4ab875cc673214de3, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 689712511} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_RendererPriority: 0 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: c3ad58fda775ce54b9976acfec17c105, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!1 &756508358 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 127166, guid: 81be41ce3a4b1df4ab875cc673214de3, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 756508359} - component: {fileID: 756508360} m_Layer: 19 m_Name: Collider 3 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &756508359 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 497532, guid: 81be41ce3a4b1df4ab875cc673214de3, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 756508358} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -13.099998} m_LocalScale: {x: 1, y: 1, z: 0} m_Children: [] m_Father: {fileID: 689712512} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!60 &756508360 PolygonCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6021280, guid: 81be41ce3a4b1df4ab875cc673214de3, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 756508358} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 m_Points: m_Paths: - - {x: 0.9500885, y: 1.1998773} - {x: 0.55014527, y: 1.1999298} - {x: 0.54902524, y: 2.4017448} - {x: 3.2004633, y: 2.3974154} - {x: 3.198639, y: 0.40022612} - {x: 2.991422, y: 0.40037322} - {x: 2.9896746, y: 0.00040969846} - {x: 1.3471515, y: 0.00085479737} - {x: 1.3499792, y: 0.80002105} - {x: 0.9499954, y: 0.8000055} --- !u!1 &930831120 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 195286, guid: 81be41ce3a4b1df4ab875cc673214de3, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 930831121} - component: {fileID: 930831122} m_Layer: 19 m_Name: Collider 1 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &930831121 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 489144, guid: 81be41ce3a4b1df4ab875cc673214de3, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 930831120} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -13.099998} m_LocalScale: {x: 1, y: 1, z: 0} m_Children: [] m_Father: {fileID: 689712512} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!60 &930831122 PolygonCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6077432, guid: 81be41ce3a4b1df4ab875cc673214de3, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 930831120} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 m_Points: m_Paths: - - {x: -3.200124, y: -0.29991865} - {x: -2.6095998, y: -0.30078062} - {x: -2.6098986, y: -0.7008682} - {x: -1.4099472, y: -0.7007852} - {x: -1.4099177, y: -1.499385} - {x: -0.6101056, y: -1.4999833} - {x: -0.606358, y: -2.399723} - {x: -3.1997173, y: -2.4001143} --- !u!1 &1137831012 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 103182, guid: 81be41ce3a4b1df4ab875cc673214de3, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1137831013} - component: {fileID: 1137831014} m_Layer: 19 m_Name: EdgeCollider 4 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1137831013 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 477860, guid: 81be41ce3a4b1df4ab875cc673214de3, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1137831012} m_LocalRotation: {x: -0, y: -0, z: 0.7071068, w: 0.7071067} m_LocalPosition: {x: -3.2, y: 0, z: 0} m_LocalScale: {x: 1.5999991, y: 0.9999997, z: 1} m_Children: [] m_Father: {fileID: 689712512} m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} --- !u!68 &1137831014 EdgeCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6816892, guid: 81be41ce3a4b1df4ab875cc673214de3, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1137831012} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: -0.5, y: 0} - {x: 0.5, y: 0} --- !u!1 &1153289608 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 103182, guid: 81be41ce3a4b1df4ab875cc673214de3, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1153289609} - component: {fileID: 1153289610} m_Layer: 19 m_Name: EdgeCollider 1 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1153289609 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 477860, guid: 81be41ce3a4b1df4ab875cc673214de3, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1153289608} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: -2.4, z: 0} m_LocalScale: {x: 2, y: 1, z: 1} m_Children: [] m_Father: {fileID: 689712512} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!68 &1153289610 EdgeCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6816892, guid: 81be41ce3a4b1df4ab875cc673214de3, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1153289608} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: -0.5, y: 0} - {x: 0.5, y: 0} --- !u!1 &1174268683 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1174268684} - component: {fileID: 1174268687} - component: {fileID: 1174268686} - component: {fileID: 1174268685} m_Layer: 0 m_Name: TP Down m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1174268684 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1174268683} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: -2.1999998, z: 0.125} m_LocalScale: {x: 2, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 689712512} m_RootOrder: 9 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1174268685 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1174268683} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: cafce2c3f7e465f478d7b302ab1b8236, type: 3} m_Name: m_EditorClassIdentifier: sceneName: test4 position: {x: 40, y: 240} direction: 6 activated: 0 noFadeIn: 0 noFadeOut: 0 --- !u!50 &1174268686 Rigidbody2D: serializedVersion: 4 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1174268683} m_BodyType: 1 m_Simulated: 1 m_UseFullKinematicContacts: 0 m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_Material: {fileID: 0} m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 4 --- !u!68 &1174268687 EdgeCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1174268683} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 1 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: -0.5, y: 0} - {x: 0.5, y: 0} --- !u!1001 &1323007553 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: Bpie objectReference: {fileID: 0} - target: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: SpritePivot objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 90 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 170 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 1 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0.14 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.28 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.4 objectReference: {fileID: 0} - target: {fileID: 114226206946908324, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SpritePath value: Overworld/Bpie objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: Bpie objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 3 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.x value: 0.4 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.y value: 0.28 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: a0add8308da8d24468328221253c3ec7, type: 3} --- !u!1 &1366681679 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1366681680} - component: {fileID: 1366681683} - component: {fileID: 1366681682} - component: {fileID: 1366681681} m_Layer: 0 m_Name: TP Left m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1366681680 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1366681679} m_LocalRotation: {x: -0, y: -0, z: 0.7071068, w: 0.7071067} m_LocalPosition: {x: -3, y: 0, z: 0.125} m_LocalScale: {x: 0.8, y: 1, z: 1} m_Children: [] m_Father: {fileID: 689712512} m_RootOrder: 11 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} --- !u!114 &1366681681 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1366681679} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: cafce2c3f7e465f478d7b302ab1b8236, type: 3} m_Name: m_EditorClassIdentifier: sceneName: test5 position: {x: 2040, y: 200} direction: 4 activated: 0 noFadeIn: 0 noFadeOut: 0 --- !u!50 &1366681682 Rigidbody2D: serializedVersion: 4 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1366681679} m_BodyType: 1 m_Simulated: 1 m_UseFullKinematicContacts: 0 m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_Material: {fileID: 0} m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 4 --- !u!68 &1366681683 EdgeCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1366681679} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 1 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: -0.5, y: 0} - {x: 0.5, y: 0} --- !u!1001 &1392546541 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 7 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[5].x value: 6 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[6].x value: 666 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 5 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: 876f2cc47fea2394b98c7950cde30cd9, type: 3} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.01 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.01 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_WasSpriteAssigned value: 1 objectReference: {fileID: 0} - target: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: SpritePivot objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 170 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 5 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.x value: -0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.y value: -0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.z value: -0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 490 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 8 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: EventTest objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 10 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 14 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 368395 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[5].x value: 69 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[6].x value: 4 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[6].y value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[0].y value: 0 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].y value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].y value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].y value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].y value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[5].y value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[7].x value: 5 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[7].y value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[8].x value: 3 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[8].y value: 2 objectReference: {fileID: 0} - target: {fileID: 212134501322781040, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: 78086316886eefc40ad1bf4b05215ba0, type: 3} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 5 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.x value: 490 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.y value: 170 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.x value: 1 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.y value: 1 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: a0add8308da8d24468328221253c3ec7, type: 3} --- !u!1001 &1505561506 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 124458, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: 68302eae objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.34 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.3 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0.148 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.x value: 0.38 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.y value: 0.58 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.newSize.x value: 0.28 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.newSize.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.adaptiveTilingThreshold value: 0.5 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 2 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 0 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 3 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: moveSpeed value: 2 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: Secret/68302eae objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: 29b8b27a4045bde4c8ba97c1a30b2095, type: 3} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.28 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Color.a value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 2 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.x value: 1040 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.y value: 740 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.x value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.y value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.x value: 200 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.y value: 200 objectReference: {fileID: 0} - target: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: Punder objectReference: {fileID: 0} - target: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: SpritePivot objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 4 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 400 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 260 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.x value: 0.56 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.y value: 0.76 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.38 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.3 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0.15 objectReference: {fileID: 0} - target: {fileID: 114226206946908324, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SpritePath value: Overworld/Punder/1 objectReference: {fileID: 0} - target: {fileID: 114226206946908324, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SetNativeSize value: 0 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 3 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[0].x value: 0 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: moveSpeed value: 1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: PunderTest objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[5].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[6].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[7].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[8].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[9].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[10].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[11].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[12].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[13].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[14].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[15].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[16].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[17].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[18].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[19].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[20].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[21].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[22].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].y value: 3 objectReference: {fileID: 0} - target: {fileID: 114980733475525374, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SpritePath value: objectReference: {fileID: 0} - target: {fileID: 114980733475525374, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SetNativeSize value: 0 objectReference: {fileID: 0} - target: {fileID: 212134501322781040, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: aa445937c50f03946b0a19d4716f59de, type: 3} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.x value: 400 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.y value: 200 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.x value: 100 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.y value: 100 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 4 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.x value: 100 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.y value: 100 objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 114980733475525374, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_SourcePrefab: {fileID: 100100000, guid: a0add8308da8d24468328221253c3ec7, type: 3} --- !u!1 &1505561507 stripped GameObject: m_CorrespondingSourceObject: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_PrefabInstance: {fileID: 1505561506} m_PrefabAsset: {fileID: 0} --- !u!114 &1505561508 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1505561507} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 44f4eb1dd5662834c949b35a8b28394c, type: 3} m_Name: m_EditorClassIdentifier: movementDirection: 0 beginAnim: StopDown specialHeader: anims: - name: NoAnim anims: empty, empty transitionTime: 60 - name: StopDown anims: Overworld/Punder/1, Overworld/Punder/1 transitionTime: 60 - name: StopLeft anims: Overworld/Punder/5, Overworld/Punder/5 transitionTime: 60 - name: StopRight anims: Overworld/Punder/9, Overworld/Punder/9 transitionTime: 60 - name: StopUp anims: Overworld/Punder/13, Overworld/Punder/13 transitionTime: 60 - name: MovingDown anims: Overworld/Punder/0, Overworld/Punder/1, Overworld/Punder/2, Overworld/Punder/3 transitionTime: 0.25 - name: MovingLeft anims: Overworld/Punder/4, Overworld/Punder/5, Overworld/Punder/6, Overworld/Punder/7 transitionTime: 0.25 - name: MovingRight anims: Overworld/Punder/8, Overworld/Punder/9, Overworld/Punder/10, Overworld/Punder/11 transitionTime: 0.35 - name: MovingUp anims: Overworld/Punder/12, Overworld/Punder/13, Overworld/Punder/14, Overworld/Punder/15 transitionTime: 0.25 - name: Knockout anims: Overworld/Punder/Secret/Knockout, Overworld/Punder/Secret/Knockout transitionTime: 60 - name: SunStopDown anims: Overworld/Punder/sun/1, Overworld/Punder/sun/1 transitionTime: 60 - name: SunStopLeft anims: Overworld/Punder/sun/5, Overworld/Punder/sun/5 transitionTime: 60 - name: SunStopRight anims: Overworld/Punder/sun/9, Overworld/Punder/sun/9 transitionTime: 60 - name: SunStopUp anims: Overworld/Punder/13, Overworld/Punder/13 transitionTime: 60 - name: SunMovingDown anims: Overworld/Punder/sun/0, Overworld/Punder/sun/1, Overworld/Punder/sun/2, Overworld/Punder/sun/3 transitionTime: 0.25 - name: SunMovingLeft anims: Overworld/Punder/sun/4, Overworld/Punder/sun/5, Overworld/Punder/sun/6, Overworld/Punder/sun/7 transitionTime: 0.25 - name: SunMovingRight anims: Overworld/Punder/sun/8, Overworld/Punder/sun/9, Overworld/Punder/sun/10, Overworld/Punder/sun/11 transitionTime: 0.25 - name: SunMovingUp anims: Overworld/Punder/12, Overworld/Punder/13, Overworld/Punder/14, Overworld/Punder/15 transitionTime: 0.25 --- !u!1 &1534585418 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 103182, guid: 81be41ce3a4b1df4ab875cc673214de3, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1534585419} - component: {fileID: 1534585420} m_Layer: 19 m_Name: EdgeCollider 3 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1534585419 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 477860, guid: 81be41ce3a4b1df4ab875cc673214de3, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1534585418} m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071067} m_LocalPosition: {x: 3.2, y: -0.4, z: 0} m_LocalScale: {x: 1.6, y: 1, z: 1} m_Children: [] m_Father: {fileID: 689712512} m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} --- !u!68 &1534585420 EdgeCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6816892, guid: 81be41ce3a4b1df4ab875cc673214de3, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1534585418} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: -0.5, y: 0} - {x: 0.5, y: 0} --- !u!1001 &1692212090 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 7 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[5].x value: 6 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[6].x value: 666 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 5 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: 876f2cc47fea2394b98c7950cde30cd9, type: 3} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.01 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.01 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_WasSpriteAssigned value: 1 objectReference: {fileID: 0} - target: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: Stare objectReference: {fileID: 0} - target: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: SpritePivot objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 7 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.y value: 0 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.x value: 0.6 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.y value: 0.57 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 4 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].y value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].y value: 3 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].y value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: StareTest objectReference: {fileID: 0} - target: {fileID: 212134501322781040, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: 876f2cc47fea2394b98c7950cde30cd9, type: 3} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 5 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.x value: 490 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.y value: 170 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.x value: 1 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.y value: 1 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 114226206946908324, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_SourcePrefab: {fileID: 100100000, guid: a0add8308da8d24468328221253c3ec7, type: 3} --- !u!1 &1889494566 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 114590, guid: 81be41ce3a4b1df4ab875cc673214de3, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1889494567} - component: {fileID: 1889494568} m_Layer: 19 m_Name: Collider 4 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1889494567 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 434968, guid: 81be41ce3a4b1df4ab875cc673214de3, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1889494566} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -13.099998} m_LocalScale: {x: 1, y: 1, z: 0} m_Children: [] m_Father: {fileID: 689712512} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!60 &1889494568 PolygonCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6083686, guid: 81be41ce3a4b1df4ab875cc673214de3, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1889494566} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 m_Points: m_Paths: - - {x: -3.2001936, y: 2.3988638} - {x: -0.61007965, y: 2.399927} - {x: -0.61000884, y: 0.7999924} - {x: -1.8100262, y: 0.8000238} - {x: -1.8101139, y: 0.40003508} - {x: -3.2000644, y: 0.39905334} --- !u!1001 &1973657632 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 124458, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: 68302eae objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.34 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.3 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0.148 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.x value: 0.38 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.y value: 0.58 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.newSize.x value: 0.28 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.newSize.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.adaptiveTilingThreshold value: 0.5 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 2 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 0 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 3 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: moveSpeed value: 2 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: Secret/68302eae objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: 29b8b27a4045bde4c8ba97c1a30b2095, type: 3} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.28 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Color.a value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 2 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.x value: 1040 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.y value: 740 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.x value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.y value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.x value: 200 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.y value: 200 objectReference: {fileID: 0} - target: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: Boxybox objectReference: {fileID: 0} - target: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: SpritePivot objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 6 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 214 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 96 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.x value: 0.4 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.y value: 0.4 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.4 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.4 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0.2 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.y value: 0 objectReference: {fileID: 0} - target: {fileID: 114226206946908324, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SpritePath value: spr_chestbox_0 objectReference: {fileID: 0} - target: {fileID: 114226206946908324, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SetNativeSize value: 0 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[0].x value: 1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: moveSpeed value: 0 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: BoxTest objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[5].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[6].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[7].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[8].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[9].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[10].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[11].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[12].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[13].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[14].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[15].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[16].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[17].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[18].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[19].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[20].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[21].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[22].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].y value: 3 objectReference: {fileID: 0} - target: {fileID: 114980733475525374, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SpritePath value: objectReference: {fileID: 0} - target: {fileID: 114980733475525374, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SetNativeSize value: 0 objectReference: {fileID: 0} - target: {fileID: 212134501322781040, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: 0acd4547315eb914f93ba1859fa4f79b, type: 3} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.x value: 400 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.y value: 200 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.x value: 100 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.y value: 100 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 4 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.x value: 100 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.y value: 100 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.x value: 1 objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 114980733475525374, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_SourcePrefab: {fileID: 100100000, guid: a0add8308da8d24468328221253c3ec7, type: 3} --- !u!1 &2088941609 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 140050, guid: 81be41ce3a4b1df4ab875cc673214de3, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2088941611} - component: {fileID: 2088941610} m_Layer: 19 m_Name: EdgeCollider 2 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!68 &2088941610 EdgeCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6820472, guid: 81be41ce3a4b1df4ab875cc673214de3, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2088941609} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: -0.5, y: 0} - {x: 0.5, y: 0} --- !u!4 &2088941611 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 465334, guid: 81be41ce3a4b1df4ab875cc673214de3, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2088941609} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 2.4, z: 0} m_LocalScale: {x: 2, y: 1, z: 1} m_Children: [] m_Father: {fileID: 689712512} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ================================================ FILE: Assets/Scenes/test2.unity.meta ================================================ fileFormatVersion: 2 guid: c103ad422a1e2b844899434ccbb60e2a timeCreated: 1460668890 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scenes/test4.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 3 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 11 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 0 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 10 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 0 m_CompAOExponentDirect: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 1024 m_ReflectionCompression: 2 m_MixedBakeMode: 1 m_BakeBackend: 0 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 500 m_PVRBounces: 2 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVRFilteringMode: 1 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ShowResolutionOverlay: 1 m_LightingDataAsset: {fileID: 0} m_UseShadowmask: 0 --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1001 &5702134 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: Save objectReference: {fileID: 0} - target: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: SpritePivot objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 1140 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 280 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 6 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0.19 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.y value: 0 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.x value: 0.4 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.4 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: SaveTest objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 3 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[0].x value: 0 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 1 objectReference: {fileID: 0} - target: {fileID: 212134501322781040, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: fe0fb303d866c974ab18bdf7ecff6ba4, type: 3} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.x value: 0.4 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 114226206946908324, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_SourcePrefab: {fileID: 100100000, guid: a0add8308da8d24468328221253c3ec7, type: 3} --- !u!1001 &429742953 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: 8ba3f2c2 objectReference: {fileID: 0} - target: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Layer value: 0 objectReference: {fileID: 0} - target: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: SpritePivot objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 380 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 240 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 7 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.01 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.8 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_IsTrigger value: 1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: Secret/8ba3f2c2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[0].x value: 0 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].y value: 1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].y value: 1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: actualPage value: 1 objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 114226206946908324, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_SourcePrefab: {fileID: 100100000, guid: a0add8308da8d24468328221253c3ec7, type: 3} --- !u!1 &1268756797 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 177562, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1268756798} - component: {fileID: 1268756802} - component: {fileID: 1268756801} - component: {fileID: 1268756800} - component: {fileID: 1268756799} m_Layer: 0 m_Name: PC Computer - Undertale - Core Tileset(1) m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1268756798 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 431592, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1268756797} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1778780348} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1268756799 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11452048, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1268756797} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 74efee4889073914b8ae070d65688ce4, type: 3} m_Name: m_EditorClassIdentifier: InitialOpacity: 1 --- !u!114 &1268756800 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11422268, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1268756797} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1874989c5e2da094ea00112c6a895694, type: 3} m_Name: m_EditorClassIdentifier: --- !u!23 &1268756801 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 2389372, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1268756797} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 2 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_RendererPriority: 0 m_Materials: - {fileID: 2100000, guid: b90bff42e575b504a9929ba56d216286, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 --- !u!33 &1268756802 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 3361588, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1268756797} m_Mesh: {fileID: 4300000, guid: 6b8f1b32149de0c418bdc62a7f9eba86, type: 3} --- !u!1 &1323470861 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 100150, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1323470862} - component: {fileID: 1323470866} - component: {fileID: 1323470865} - component: {fileID: 1323470864} - component: {fileID: 1323470863} m_Layer: 0 m_Name: PC Computer - Undertale - Core Tileset(1) m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1323470862 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 405108, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1323470861} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -6.2, y: 2.4, z: 0} m_LocalScale: {x: 0.02, y: 0.02, z: 1} m_Children: [] m_Father: {fileID: 2052254822} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1323470863 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11410426, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1323470861} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 74efee4889073914b8ae070d65688ce4, type: 3} m_Name: m_EditorClassIdentifier: InitialOpacity: 1 --- !u!114 &1323470864 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11409522, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1323470861} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1874989c5e2da094ea00112c6a895694, type: 3} m_Name: m_EditorClassIdentifier: --- !u!23 &1323470865 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 2356494, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1323470861} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_RendererPriority: 0 m_Materials: - {fileID: 2100000, guid: b90bff42e575b504a9929ba56d216286, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 --- !u!33 &1323470866 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 3350656, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1323470861} m_Mesh: {fileID: 4300002, guid: 6b8f1b32149de0c418bdc62a7f9eba86, type: 3} --- !u!1 &1372627567 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 157358, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1372627568} - component: {fileID: 1372627571} - component: {fileID: 1372627570} - component: {fileID: 1372627569} m_Layer: 0 m_Name: TP Right m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1372627568 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 406064, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1372627567} m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071067} m_LocalPosition: {x: 6, y: 0, z: 0} m_LocalScale: {x: 0.79999995, y: 1, z: 1} m_Children: [] m_Father: {fileID: 2052254822} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} --- !u!114 &1372627569 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11494438, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1372627567} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: cafce2c3f7e465f478d7b302ab1b8236, type: 3} m_Name: m_EditorClassIdentifier: sceneName: test position: {x: 1480, y: 960} direction: 4 activated: 0 noFadeIn: 0 noFadeOut: 0 --- !u!50 &1372627570 Rigidbody2D: serializedVersion: 4 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 5032938, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1372627567} m_BodyType: 1 m_Simulated: 1 m_UseFullKinematicContacts: 0 m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_Material: {fileID: 0} m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 4 --- !u!68 &1372627571 EdgeCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6882432, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1372627567} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 1 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: -0.5, y: 0} - {x: 0.5, y: 0} --- !u!1 &1523043056 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 168770, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1523043057} - component: {fileID: 1523043060} - component: {fileID: 1523043059} - component: {fileID: 1523043058} m_Layer: 0 m_Name: TP Left m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1523043057 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 425052, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1523043056} m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071067} m_LocalPosition: {x: -6, y: 0, z: 0} m_LocalScale: {x: 0.79999995, y: 1, z: 1} m_Children: [] m_Father: {fileID: 2052254822} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} --- !u!114 &1523043058 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11498914, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1523043056} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: cafce2c3f7e465f478d7b302ab1b8236, type: 3} m_Name: m_EditorClassIdentifier: sceneName: test2 position: {x: 320, y: 80} direction: 8 activated: 0 noFadeIn: 0 noFadeOut: 0 --- !u!50 &1523043059 Rigidbody2D: serializedVersion: 4 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 5034292, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1523043056} m_BodyType: 1 m_Simulated: 1 m_UseFullKinematicContacts: 0 m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_Material: {fileID: 0} m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 4 --- !u!68 &1523043060 EdgeCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6853106, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1523043056} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 1 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: -0.5, y: 0} - {x: 0.5, y: 0} --- !u!1 &1552866258 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 189286, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1552866259} - component: {fileID: 1552866260} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1552866259 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 457758, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1552866258} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -6.2, y: 2.4, z: -140} m_LocalScale: {x: 0.02, y: 0.02, z: 1} m_Children: [] m_Father: {fileID: 2052254822} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &1552866260 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6142724, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1552866258} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 330, y: -50} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 660, y: 100} m_EdgeRadius: 0 --- !u!1 &1602858720 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 178842, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1602858721} m_Layer: 0 m_Name: Foreground m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1602858721 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 437592, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1602858720} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 480, z: -1} m_LocalScale: {x: 2, y: 2, z: 1} m_Children: - {fileID: 1753844028} m_Father: {fileID: 0} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1001 &1683666805 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 124458, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: 68302eae objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.34 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.3 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0.148 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.x value: 0.38 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.y value: 0.58 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.newSize.x value: 0.28 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.newSize.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.adaptiveTilingThreshold value: 0.5 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 2 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 0 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 3 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: moveSpeed value: 2 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: Secret/68302eae objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: 29b8b27a4045bde4c8ba97c1a30b2095, type: 3} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.28 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Color.a value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 2 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.x value: 1040 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.y value: 740 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.x value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.y value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.x value: 200 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.y value: 200 objectReference: {fileID: 0} - target: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: Punder1 objectReference: {fileID: 0} - target: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: SpritePivot objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 5 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 1060 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 240 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.x value: 0.56 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.y value: 0.76 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.38 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.3 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0.15 objectReference: {fileID: 0} - target: {fileID: 114226206946908324, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SpritePath value: Overworld/Punder/1 objectReference: {fileID: 0} - target: {fileID: 114226206946908324, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SetNativeSize value: 0 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[0].x value: 0 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: moveSpeed value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: punderTest1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[5].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[6].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[7].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[8].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[9].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[10].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[11].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[12].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[13].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[14].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[15].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[16].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[17].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[18].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[19].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[20].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[21].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[22].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114980733475525374, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SpritePath value: objectReference: {fileID: 0} - target: {fileID: 114980733475525374, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SetNativeSize value: 0 objectReference: {fileID: 0} - target: {fileID: 212134501322781040, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: aa445937c50f03946b0a19d4716f59de, type: 3} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.x value: 400 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.y value: 200 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.x value: 100 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.y value: 100 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 4 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.x value: 100 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.y value: 100 objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 114980733475525374, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_SourcePrefab: {fileID: 100100000, guid: a0add8308da8d24468328221253c3ec7, type: 3} --- !u!1 &1683666806 stripped GameObject: m_CorrespondingSourceObject: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_PrefabInstance: {fileID: 1683666805} m_PrefabAsset: {fileID: 0} --- !u!114 &1683666807 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1683666806} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 44f4eb1dd5662834c949b35a8b28394c, type: 3} m_Name: m_EditorClassIdentifier: movementDirection: 0 beginAnim: StopDown specialHeader: anims: - name: NoAnim anims: empty, empty transitionTime: 60 - name: StopDown anims: Overworld/Punder/1, Overworld/Punder/1 transitionTime: 60 - name: StopLeft anims: Overworld/Punder/5, Overworld/Punder/5 transitionTime: 60 - name: StopRight anims: Overworld/Punder/9, Overworld/Punder/9 transitionTime: 60 - name: StopUp anims: Overworld/Punder/13, Overworld/Punder/13 transitionTime: 60 - name: MovingDown anims: Overworld/Punder/0, Overworld/Punder/1, Overworld/Punder/2, Overworld/Punder/3 transitionTime: 0.25 - name: MovingLeft anims: Overworld/Punder/4, Overworld/Punder/5, Overworld/Punder/6, Overworld/Punder/7 transitionTime: 0.25 - name: MovingRight anims: Overworld/Punder/8, Overworld/Punder/9, Overworld/Punder/10, Overworld/Punder/11 transitionTime: 0.35 - name: MovingUp anims: Overworld/Punder/12, Overworld/Punder/13, Overworld/Punder/14, Overworld/Punder/15 transitionTime: 0.25 - name: Knockout anims: Overworld/Punder/Secret/Knockout, Overworld/Punder/Secret/Knockout transitionTime: 60 --- !u!1 &1753844027 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 194538, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1753844028} - component: {fileID: 1753844032} - component: {fileID: 1753844031} - component: {fileID: 1753844030} - component: {fileID: 1753844029} m_Layer: 0 m_Name: PC Computer - Undertale - Core Tileset(1) m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1753844028 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 439314, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1753844027} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1602858721} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1753844029 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11451652, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1753844027} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 74efee4889073914b8ae070d65688ce4, type: 3} m_Name: m_EditorClassIdentifier: InitialOpacity: 1 --- !u!114 &1753844030 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11443456, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1753844027} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1874989c5e2da094ea00112c6a895694, type: 3} m_Name: m_EditorClassIdentifier: --- !u!23 &1753844031 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 2359872, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1753844027} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_RendererPriority: 0 m_Materials: - {fileID: 2100000, guid: b90bff42e575b504a9929ba56d216286, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 --- !u!33 &1753844032 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 3360044, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1753844027} m_Mesh: {fileID: 4300004, guid: 6b8f1b32149de0c418bdc62a7f9eba86, type: 3} --- !u!1 &1778780347 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 160736, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1778780348} m_Layer: 0 m_Name: Bottom m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1778780348 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 419426, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1778780347} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 480, z: 141} m_LocalScale: {x: 2, y: 2, z: 1} m_Children: - {fileID: 1268756798} m_Father: {fileID: 0} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1001 &1864644675 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 124458, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: 8ba3f2c2 (1) objectReference: {fileID: 0} - target: {fileID: 124458, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Layer value: 0 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.18 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.2 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: -0.09 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.x value: 0.38 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.y value: 0.66 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.newSize.x value: 0.28 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.newSize.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.adaptiveTilingThreshold value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_IsTrigger value: 1 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 0 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 0 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 3 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: moveSpeed value: 3 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: Secret/8ba3f2c2 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[0].x value: 1 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: 876f2cc47fea2394b98c7950cde30cd9, type: 3} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.01 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.01 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_WasSpriteAssigned value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 2 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.x value: 1040 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.y value: 740 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.x value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.y value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.x value: 200 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.y value: 200 objectReference: {fileID: 0} - target: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: 8ba3f2c2 (1) objectReference: {fileID: 0} - target: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: SpritePivot objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: -20 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 240 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.2 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.2 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0.1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 0 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: none objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[0].x value: 1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 3 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: moveSpeed value: 2 objectReference: {fileID: 0} - target: {fileID: 114980733475525374, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SpritePath value: empty objectReference: {fileID: 0} - target: {fileID: 114980733475525374, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SetNativeSize value: 0 objectReference: {fileID: 0} - target: {fileID: 212134501322781040, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: ba3bc926f01aa7e4782aa6b0faf2a3d8, type: 3} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.x value: 100 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.y value: 240 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.x value: 100 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.y value: 100 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 6 objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 114226206946908324, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_SourcePrefab: {fileID: 100100000, guid: a0add8308da8d24468328221253c3ec7, type: 3} --- !u!1 &1864644676 stripped GameObject: m_CorrespondingSourceObject: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_PrefabInstance: {fileID: 1864644675} m_PrefabAsset: {fileID: 0} --- !u!114 &1864644677 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1864644676} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 44f4eb1dd5662834c949b35a8b28394c, type: 3} m_Name: m_EditorClassIdentifier: movementDirection: 0 beginAnim: StopDown specialHeader: NoAnim anims: - name: StopDown anims: FriskUT/1, FriskUT/1 transitionTime: 60 - name: MovingRight anims: FriskUT/8, FriskUT/9, FriskUT/10, FriskUT/11 transitionTime: 0.25 - name: Glitch anims: FriskUT/Glitch/g0, FriskUT/Glitch/g1, FriskUT/Glitch/g2 transitionTime: 0.2 - name: CharaStopDown anims: CharaOW/1, CharaOW/1 transitionTime: 60 - name: NoAnim anims: empty, empty transitionTime: 60 - name: MovingDown anims: FriskUT/1, FriskUT/1 transitionTime: 60 --- !u!1001 &1976352766 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 124458, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: Punder1 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.18 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.2 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0.085 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.x value: 0.28 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.newSize.x value: 0.28 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.newSize.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 6188160, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.adaptiveTilingThreshold value: 0.5 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 2 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 1 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 3 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: moveSpeed value: 2 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: punderTest1 objectReference: {fileID: 0} - target: {fileID: 11460532, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[0].x value: 0 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: 7801b99d48f55d844bbe1a64c451983b, type: 3} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.28 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 21250564, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_WasSpriteAssigned value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 3 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.x value: 490 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.y value: 240 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.x value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.y value: 1 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.x value: 0.5 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Pivot.y value: 0 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.x value: 200 objectReference: {fileID: 0} - target: {fileID: 22437642, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.y value: 200 objectReference: {fileID: 0} - target: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: 8ba3f2c2 (2) objectReference: {fileID: 0} - target: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: SpritePivot objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 1 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.2 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.2 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0.1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 0 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: none objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[0].x value: 1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 3 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: moveSpeed value: 2 objectReference: {fileID: 0} - target: {fileID: 114980733475525374, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SpritePath value: Overworld/Punder/1 objectReference: {fileID: 0} - target: {fileID: 114980733475525374, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: SetNativeSize value: 0 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.x value: 800 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchoredPosition.y value: 240 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.x value: 200 objectReference: {fileID: 0} - target: {fileID: 224194490068971162, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalScale.y value: 200 objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 114226206946908324, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_SourcePrefab: {fileID: 100100000, guid: a0add8308da8d24468328221253c3ec7, type: 3} --- !u!1 &1976352767 stripped GameObject: m_CorrespondingSourceObject: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_PrefabInstance: {fileID: 1976352766} m_PrefabAsset: {fileID: 0} --- !u!114 &1976352768 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1976352767} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 44f4eb1dd5662834c949b35a8b28394c, type: 3} m_Name: m_EditorClassIdentifier: movementDirection: 0 beginAnim: StopDown specialHeader: anims: - name: Fall anims: MonsterKidOW/f0, MonsterKidOW/f1, MonsterKidOW/f0, MonsterKidOW/f1 transitionTime: 0.25 - name: Fallen anims: MonsterKidOW/13, MonsterKidOW/13 transitionTime: 60 - name: Fallen2 anims: MonsterKidOW/12, MonsterKidOW/13, MonsterKidOW/14, MonsterKidOW/15 transitionTime: 0.1 - name: StopDown anims: empty, empty transitionTime: 60 --- !u!1 &2010831946 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 199562, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2010831947} - component: {fileID: 2010831948} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &2010831947 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 474438, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2010831946} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -6.2, y: -0.4, z: -140} m_LocalScale: {x: 0.02, y: 0.02, z: 1} m_Children: [] m_Father: {fileID: 2052254822} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &2010831948 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6163526, guid: f25522319d7cd2e4a94cbb960fb4e6c7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2010831946} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 330, y: -50} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 660, y: 100} m_EdgeRadius: 0 --- !u!1 &2052254819 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 134422, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2052254822} - component: {fileID: 2052254821} - component: {fileID: 2052254820} m_Layer: 0 m_Name: Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!212 &2052254820 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 21251718, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2052254819} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_RendererPriority: 0 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 0} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 0 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!114 &2052254821 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11414468, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2052254819} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7a4ef58bda0647d48b67028c05b00813, type: 3} m_Name: m_EditorClassIdentifier: music: mus_core modToLoad: '@OverWorld Test' isMusicKeptBetweenBattles: 1 noRandomEncounter: 0 --- !u!224 &2052254822 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22411040, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2052254819} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 140} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: - {fileID: 1323470862} - {fileID: 1552866259} - {fileID: 2010831947} - {fileID: 1523043057} - {fileID: 1372627568} m_Father: {fileID: 0} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 620, y: 240} m_SizeDelta: {x: 12.4, y: 4.8} m_Pivot: {x: 0.5, y: 0.5} ================================================ FILE: Assets/Scenes/test4.unity.meta ================================================ fileFormatVersion: 2 guid: 3b343858ba50a2246ac6163b00a8384a timeCreated: 1488873528 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scenes/test5.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 3 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 11 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 0 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 10 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 1 m_CompAOExponentDirect: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 256 m_ReflectionCompression: 2 m_MixedBakeMode: 1 m_BakeBackend: 0 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 500 m_PVRBounces: 2 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVRFilteringMode: 1 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ShowResolutionOverlay: 1 m_LightingDataAsset: {fileID: 0} m_UseShadowmask: 0 --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1 &10025048 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 1757683408647010, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 10025049} - component: {fileID: 10025050} m_Layer: 19 m_Name: PolylineObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &10025049 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 4598805064824768, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 10025048} m_LocalRotation: {x: -0, y: -0, z: -0.7071068, w: 0.7071068} m_LocalPosition: {x: -7.205, y: -0.79999995, z: -140} m_LocalScale: {x: 0.010000004, y: 0.010000004, z: 1} m_Children: [] m_Father: {fileID: 750405499} m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!68 &10025050 EdgeCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 68369455898468872, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 10025048} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: 0, y: 0.5625} - {x: 40, y: -39.5} --- !u!1 &194666131 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 1070681132078748, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 194666132} - component: {fileID: 194666133} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &194666132 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 4346538951897100, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 194666131} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: -7.2, y: 0.39999998, z: -140} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 750405499} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &194666133 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 61153385514969244, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 194666131} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 660, y: -20} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 1320, y: 40} m_EdgeRadius: 0 --- !u!1 &506967177 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 1161035551607804, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 506967178} - component: {fileID: 506967179} m_Layer: 19 m_Name: PolylineObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &506967178 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 4205393937864470, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 506967177} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: -8.4, y: 0.79999995, z: -140} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 750405499} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!68 &506967179 EdgeCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 68072420332171870, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 506967177} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: -0.0416667, y: 0.0208333} - {x: -120, y: -120} --- !u!1 &521334822 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 1151812770722732, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 521334823} - component: {fileID: 521334824} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &521334823 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 4529729036647938, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 521334822} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: -10.4, y: -1.1999999, z: -140} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 750405499} m_RootOrder: 8 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &521334824 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 61385251179982890, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 521334822} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 140, y: -20} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 280, y: 40} m_EdgeRadius: 0 --- !u!1 &567811968 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 1195497376485132, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 567811969} - component: {fileID: 567811970} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &567811969 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 4605571963405776, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 567811968} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: -7.2, y: -0.39999998, z: -140} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 750405499} m_RootOrder: 9 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &567811970 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 61904730147415522, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 567811968} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 660, y: -20} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 1320, y: 40} m_EdgeRadius: 0 --- !u!1 &577914315 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 1760979035267770, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 577914316} - component: {fileID: 577914317} m_Layer: 19 m_Name: PolylineObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &577914316 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 4838777674642716, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 577914315} m_LocalRotation: {x: -0, y: -0, z: -0.7071068, w: 0.7071068} m_LocalPosition: {x: 6.3949986, y: 0.79999995, z: -140} m_LocalScale: {x: 0.010000004, y: 0.010000004, z: 1} m_Children: [] m_Father: {fileID: 750405499} m_RootOrder: 10 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!68 &577914317 EdgeCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 68811772085747062, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 577914315} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: 0, y: 0.5625} - {x: 40, y: -39.5} --- !u!1 &640508262 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 1787832774283786, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 640508263} - component: {fileID: 640508264} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &640508263 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 4983500857017358, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 640508262} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 6.3999996, y: -1.1999999, z: -140} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 750405499} m_RootOrder: 17 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &640508264 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 61171404436155026, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 640508262} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 160, y: -20} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 320, y: 40} m_EdgeRadius: 0 --- !u!1 &646992162 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 157358, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 646992163} - component: {fileID: 646992166} - component: {fileID: 646992165} - component: {fileID: 646992164} m_Layer: 0 m_Name: TP Right m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &646992163 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 406064, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 646992162} m_LocalRotation: {x: -0, y: -0, z: 0.7071068, w: 0.7071067} m_LocalPosition: {x: 10.2, y: -0.4, z: 0} m_LocalScale: {x: 0.7999994, y: 1, z: 1} m_Children: [] m_Father: {fileID: 750405499} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} --- !u!114 &646992164 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11494438, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 646992162} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: cafce2c3f7e465f478d7b302ab1b8236, type: 3} m_Name: m_EditorClassIdentifier: sceneName: test2 position: {x: 40, y: 240} direction: 6 activated: 0 noFadeIn: 0 noFadeOut: 0 --- !u!50 &646992165 Rigidbody2D: serializedVersion: 4 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 5032938, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 646992162} m_BodyType: 1 m_Simulated: 1 m_UseFullKinematicContacts: 0 m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_Material: {fileID: 0} m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 4 --- !u!68 &646992166 EdgeCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6882432, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 646992162} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 1 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: -0.5, y: 0} - {x: 0.5, y: 0} --- !u!1 &750405496 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 134422, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 750405499} - component: {fileID: 750405498} - component: {fileID: 750405497} m_Layer: 0 m_Name: Background m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!212 &750405497 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 21251718, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 750405496} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_RendererPriority: 0 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 0996476ab00fe2c46babfe4c374acb51, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 20.8, y: 4.7999997} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!114 &750405498 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11414468, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 750405496} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7a4ef58bda0647d48b67028c05b00813, type: 3} m_Name: m_EditorClassIdentifier: music: mus_snowy modToLoad: Examples 2 isMusicKeptBetweenBattles: 0 noRandomEncounter: 0 --- !u!224 &750405499 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 22411040, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 750405496} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 140} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: - {fileID: 1677029747} - {fileID: 646992163} - {fileID: 194666132} - {fileID: 506967178} - {fileID: 1495977421} - {fileID: 1370588189} - {fileID: 821340574} - {fileID: 10025049} - {fileID: 521334823} - {fileID: 567811969} - {fileID: 577914316} - {fileID: 929373715} - {fileID: 2047385491} - {fileID: 873920483} - {fileID: 2046660587} - {fileID: 1402197616} - {fileID: 1554140765} - {fileID: 640508263} m_Father: {fileID: 0} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 1040, y: 240} m_SizeDelta: {x: 20.8, y: 4.8} m_Pivot: {x: 0.5, y: 0.5} --- !u!1001 &797913842 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: caf144b2 objectReference: {fileID: 0} - target: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Layer value: 0 objectReference: {fileID: 0} - target: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: SpritePivot objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 1000 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 220 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 0 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.01 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.4 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_IsTrigger value: 1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: Secret/caf144b2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 3 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[0].x value: 0 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].y value: 1 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 114226206946908324, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_SourcePrefab: {fileID: 100100000, guid: a0add8308da8d24468328221253c3ec7, type: 3} --- !u!1 &821340573 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 1694266021406360, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 821340574} - component: {fileID: 821340575} m_Layer: 19 m_Name: PolylineObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &821340574 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 4527790992299656, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 821340573} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: -7.6, y: 0.79499996, z: -140} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 750405499} m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!68 &821340575 EdgeCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 68415795411351456, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 821340573} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: 0, y: 0.5625} - {x: 40, y: -39.5} --- !u!1 &873920482 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 1910794801251156, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 873920483} - component: {fileID: 873920484} m_Layer: 19 m_Name: PolylineObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &873920483 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 4852167593473878, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 873920482} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 6, y: -0.79999995, z: -140} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 750405499} m_RootOrder: 13 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!68 &873920484 EdgeCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 68353605231433050, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 873920482} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: 0, y: -0.0738636} - {x: 40, y: -40.0455} --- !u!1001 &888482714 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: Save objectReference: {fileID: 0} - target: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: SpritePivot objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 1840 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 280 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 6 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Offset.y value: 0.19 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.pivot.y value: 0 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.x value: 0.4 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SpriteTilingProperty.oldSize.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.x value: 0.4 objectReference: {fileID: 0} - target: {fileID: 61614148327684554, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Size.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: SaveTest objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 3 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[0].x value: 0 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 1 objectReference: {fileID: 0} - target: {fileID: 212134501322781040, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Sprite value: objectReference: {fileID: 21300000, guid: fe0fb303d866c974ab18bdf7ecff6ba4, type: 3} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.x value: 0.4 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_SizeDelta.y value: 0.38 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMin.y value: 0.5 objectReference: {fileID: 0} - target: {fileID: 224528923083268334, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_AnchorMax.y value: 0.5 objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 114226206946908324, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_SourcePrefab: {fileID: 100100000, guid: a0add8308da8d24468328221253c3ec7, type: 3} --- !u!1 &929373714 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 1345539823582904, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 929373715} - component: {fileID: 929373716} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &929373715 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 4535569777836866, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 929373714} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 6.3999996, y: 1.1999999, z: -140} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 750405499} m_RootOrder: 11 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &929373716 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 61202526088194468, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 929373714} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 160, y: -20} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 320, y: 40} m_EdgeRadius: 0 --- !u!1 &1142746680 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1142746682} - component: {fileID: 1142746681} m_Layer: 0 m_Name: Parallax1 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!212 &1142746681 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1142746680} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_RendererPriority: 0 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: 1a2b8a18cc98a4e4a93a05ba9a838727, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!224 &1142746682 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1142746680} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 141} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 653, y: 240} m_SizeDelta: {x: 13.06, y: 4.8} m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &1370588188 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 1102268064559802, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1370588189} - component: {fileID: 1370588190} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1370588189 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 4629995627236018, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1370588188} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: -8.4, y: 1.1999999, z: -140} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 750405499} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &1370588190 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 61132017150951326, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1370588188} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 40, y: -20} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 80, y: 40} m_EdgeRadius: 0 --- !u!1 &1402197615 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 1242799010098532, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1402197616} - component: {fileID: 1402197617} m_Layer: 19 m_Name: PolylineObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1402197616 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 4266183532546440, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1402197615} m_LocalRotation: {x: -0, y: -0, z: -0.7071068, w: 0.7071068} m_LocalPosition: {x: 9.995, y: -0.79999995, z: -140} m_LocalScale: {x: 0.010000004, y: 0.010000004, z: 1} m_Children: [] m_Father: {fileID: 750405499} m_RootOrder: 15 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!68 &1402197617 EdgeCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 68830159985401728, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1402197615} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: 0, y: 0.5625} - {x: 40, y: -39.5} --- !u!1 &1495977420 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 1535449735655230, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1495977421} - component: {fileID: 1495977422} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1495977421 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 4586177013734896, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1495977420} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: -10.4, y: 0, z: -140} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 750405499} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &1495977422 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 61427001335369136, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1495977420} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 40, y: -20} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 80, y: 40} m_EdgeRadius: 0 --- !u!1 &1554140764 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 1830991993780378, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1554140765} - component: {fileID: 1554140766} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1554140765 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 4139305849416020, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1554140764} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 10, y: -0.8, z: -140} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 750405499} m_RootOrder: 16 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &1554140766 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 61181203576953738, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1554140764} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 20, y: -20} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 40, y: 40} m_EdgeRadius: 0 --- !u!1 &1577340199 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1577340202} - component: {fileID: 1577340201} - component: {fileID: 1577340200} m_Layer: 0 m_Name: Foreground m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!212 &1577340200 SpriteRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1577340199} m_Enabled: 1 m_CastShadows: 0 m_ReceiveShadows: 0 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 0 m_ReflectionProbeUsage: 0 m_RenderingLayerMask: 4294967295 m_RendererPriority: 0 m_Materials: - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 0 m_SelectedEditorRenderState: 0 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_Sprite: {fileID: 21300000, guid: fef3242f55fcdcf4e87d7c7c749ebf91, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 1, y: 1} m_AdaptiveModeThreshold: 0.5 m_SpriteTileMode: 0 m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 --- !u!210 &1577340201 SortingGroup: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 210702407409670196, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1577340199} m_Enabled: 1 m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 --- !u!224 &1577340202 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1577340199} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -1} m_LocalScale: {x: 100, y: 100, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 980, y: 217} m_SizeDelta: {x: 1, y: 1} m_Pivot: {x: 0.5, y: 0} --- !u!1001 &1581974915 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: caf144b2 (1) objectReference: {fileID: 0} - target: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Layer value: 0 objectReference: {fileID: 0} - target: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: SpritePivot objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 540 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 220 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 0 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: none objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[0].x value: 1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 3 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: moveSpeed value: 2 objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 114226206946908324, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_SourcePrefab: {fileID: 100100000, guid: a0add8308da8d24468328221253c3ec7, type: 3} --- !u!1 &1581974916 stripped GameObject: m_CorrespondingSourceObject: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_PrefabInstance: {fileID: 1581974915} m_PrefabAsset: {fileID: 0} --- !u!114 &1581974917 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1581974916} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 44f4eb1dd5662834c949b35a8b28394c, type: 3} m_Name: m_EditorClassIdentifier: movementDirection: 0 beginAnim: StopDown specialHeader: anims: - name: MovingLeft anims: CharaOW/4, CharaOW/5, CharaOW/6, CharaOW/7 transitionTime: 0.25 - name: MovingRight anims: CharaOW/8, CharaOW/9, CharaOW/10, CharaOW/11 transitionTime: 0.25 - name: StopLeft anims: CharaOW/5, CharaOW/5 transitionTime: 60 - name: StopRight anims: CharaOW/9, CharaOW/9 transitionTime: 60 - name: StopDown anims: empty, empty transitionTime: 60 --- !u!1 &1677029746 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 168770, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1677029747} - component: {fileID: 1677029750} - component: {fileID: 1677029749} - component: {fileID: 1677029748} m_Layer: 0 m_Name: TP Left m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1677029747 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 425052, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1677029746} m_LocalRotation: {x: -0, y: -0, z: 0.7071068, w: 0.7071067} m_LocalPosition: {x: -10.2, y: -0.8, z: 0} m_LocalScale: {x: 0.7999994, y: 1, z: 1} m_Children: [] m_Father: {fileID: 750405499} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90} --- !u!114 &1677029748 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 11498914, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1677029746} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: cafce2c3f7e465f478d7b302ab1b8236, type: 3} m_Name: m_EditorClassIdentifier: sceneName: test position: {x: 1480, y: 280} direction: 4 activated: 0 noFadeIn: 0 noFadeOut: 0 --- !u!50 &1677029749 Rigidbody2D: serializedVersion: 4 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 5034292, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1677029746} m_BodyType: 1 m_Simulated: 1 m_UseFullKinematicContacts: 0 m_UseAutoMass: 0 m_Mass: 1 m_LinearDrag: 0 m_AngularDrag: 0 m_GravityScale: 0 m_Material: {fileID: 0} m_Interpolate: 0 m_SleepingMode: 1 m_CollisionDetection: 0 m_Constraints: 4 --- !u!68 &1677029750 EdgeCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 6853106, guid: d781acdb7c86dff4081250e8c5edd546, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1677029746} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 1 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: -0.5, y: 0} - {x: 0.5, y: 0} --- !u!1001 &1843310489 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: caf144b2 (2) objectReference: {fileID: 0} - target: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Layer value: 0 objectReference: {fileID: 0} - target: {fileID: 1849668906715600, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_Name value: SpritePivot objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.x value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.y value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalPosition.z value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.x value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.y value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.z value: 0 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - target: {fileID: 4671881132980978, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: m_RootOrder value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.size value: 0 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: scriptToLoad value: none objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[0].x value: 1 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[1].x value: 2 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[2].x value: 3 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[3].x value: 4 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: eventTriggers.Array.data[4].x value: 666 objectReference: {fileID: 0} - target: {fileID: 114879940000294058, guid: a0add8308da8d24468328221253c3ec7, type: 3} propertyPath: moveSpeed value: 2 objectReference: {fileID: 0} m_RemovedComponents: - {fileID: 114226206946908324, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_SourcePrefab: {fileID: 100100000, guid: a0add8308da8d24468328221253c3ec7, type: 3} --- !u!1 &1843310490 stripped GameObject: m_CorrespondingSourceObject: {fileID: 1649222073514108, guid: a0add8308da8d24468328221253c3ec7, type: 3} m_PrefabInstance: {fileID: 1843310489} m_PrefabAsset: {fileID: 0} --- !u!114 &1843310491 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1843310490} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 44f4eb1dd5662834c949b35a8b28394c, type: 3} m_Name: m_EditorClassIdentifier: movementDirection: 0 beginAnim: StopDown specialHeader: anims: - name: MovingLeft anims: BoosterOW/4, BoosterOW/5, BoosterOW/6, BoosterOW/7 transitionTime: 0.25 - name: StopLeft anims: BoosterOW/5, BoosterOW/5 transitionTime: 60 - name: StopDown anims: empty, empty transitionTime: 60 --- !u!1 &2046660586 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 1341082084791428, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2046660587} - component: {fileID: 2046660588} m_Layer: 19 m_Name: PolylineObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &2046660587 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 4204999113919738, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2046660586} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 9.599998, y: 0.79999995, z: -140} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 750405499} m_RootOrder: 14 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!68 &2046660588 EdgeCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 68611834399267132, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2046660586} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} m_EdgeRadius: 0 m_Points: - {x: 0, y: -0.0738636} - {x: 40, y: -40.0455} --- !u!1 &2047385490 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 1181203595476496, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 2047385491} - component: {fileID: 2047385492} m_Layer: 19 m_Name: RectangleObject m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &2047385491 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 4890667143594728, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2047385490} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 10, y: 0.39999998, z: -140} m_LocalScale: {x: 0.01, y: 0.01, z: 1} m_Children: [] m_Father: {fileID: 750405499} m_RootOrder: 12 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!61 &2047385492 BoxCollider2D: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 61279817987866440, guid: a09f87100ed37ef47bc40405617328e4, type: 3} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2047385490} m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 20, y: -20} m_SpriteTilingProperty: border: {x: 0, y: 0, z: 0, w: 0} pivot: {x: 0, y: 0} oldSize: {x: 0, y: 0} newSize: {x: 0, y: 0} adaptiveTilingThreshold: 0 drawMode: 0 adaptiveTiling: 0 m_AutoTiling: 0 serializedVersion: 2 m_Size: {x: 40, y: 40} m_EdgeRadius: 0 ================================================ FILE: Assets/Scenes/test5.unity.meta ================================================ fileFormatVersion: 2 guid: a8499d3c1b60c944bb407ff4c58dff87 timeCreated: 1491600239 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scenes.meta ================================================ fileFormatVersion: 2 guid: d0388d223b099364f996d20174262bcf folderAsset: yes timeCreated: 1448032231 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Animation/Keyframe.cs ================================================ using UnityEngine; public class Keyframe { public Sprite sprite; public string name; public Keyframe(Sprite sprite, string name = "empty") { this.sprite = sprite; this.name = name; } } ================================================ FILE: Assets/Scripts/Animation/Keyframe.cs.meta ================================================ fileFormatVersion: 2 guid: 4e00ec5e07da508418c7d3adbed924c6 timeCreated: 1454953779 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Animation/KeyframeCollection.cs ================================================ using UnityEngine; public class KeyframeCollection : MonoBehaviour { public float timePerFrame = 1 / 30f; public Keyframe[] keyframes; public float currTime; internal LuaSpriteController spr; internal LoopMode loop = LoopMode.LOOP; public float totalTime; public static Keyframe EMPTY_KEYFRAME = new Keyframe(SpriteRegistry.EMPTY_SPRITE); public bool paused = false; public enum LoopMode { ONESHOT, ONESHOTEMPTY, LOOP } public void SetLoop(LoopMode l) { loop = l; currTime %= totalTime; } public void Set(Keyframe[] newKeyframes, float newTimePerFrame = 1/30f) { keyframes = newKeyframes; timePerFrame = newTimePerFrame; totalTime = newTimePerFrame * newKeyframes.Length; currTime = -Time.deltaTime; } public Keyframe getCurrent() { if (!paused) currTime += Time.deltaTime; if (loop == LoopMode.LOOP) { int index = (int)((currTime % totalTime) / timePerFrame); return keyframes[index]; } else { int index = (int)(currTime / timePerFrame); if (index < keyframes.Length) return keyframes[index]; return loop == LoopMode.ONESHOT ? null : EMPTY_KEYFRAME; } } // Gets the index of the current sprite. public int getIndex() { int index; if (loop == LoopMode.LOOP) index = (int)((currTime % totalTime) / timePerFrame); else index = (int)(currTime / timePerFrame); return index + 1; } public bool animationComplete() { if (loop == LoopMode.ONESHOT || loop == LoopMode.ONESHOTEMPTY) return (currTime / timePerFrame) >= keyframes.Length; return false; } private void Update() { spr.UpdateAnimation(); } } ================================================ FILE: Assets/Scripts/Animation/KeyframeCollection.cs.meta ================================================ fileFormatVersion: 2 guid: eb9fac8acea48164880a3fbc6c6086a7 timeCreated: 1454953789 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Animation.meta ================================================ fileFormatVersion: 2 guid: 34ffa5c0f68a2b24ea23d9e567dca531 folderAsset: yes timeCreated: 1451688933 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Battle/ArenaManager.cs ================================================ using UnityEngine; using UnityEngine.UI; /// /// Behaviour attached to the arena used to resize it. /// public class ArenaManager : MonoBehaviour { public const int UIWidth = 565; // width of the inner Undertale UI box public const int UIHeight = 130; // height of the inner Undertale UI box public Vector2 basisCoordinates; public static ArenaManager instance; // Static instance of this class for referencing purposes. [HideInInspector] public static Rect arenaAbs; // arena hitbox [HideInInspector] public static Vector2 arenaCenter; // arena center, updated here to save computation time on doing it per frame [HideInInspector] public static LuaArenaStatus luaStatus { get; private set; } // The Lua Arena object on the C# side public LuaSpriteController innerSprite; // inner part's sprite public LuaSpriteController outerSprite; // outer part's sprite private RectTransform outer; // RectTransform of the slightly larger white box under the arena (it's the border). private RectTransform inner; // RectTransform of the inner part of the arena. private const int pxPerSecond = 100 * 10; // How many pixels per second the arena should resize and move public float currentWidth; // Current width of the arena as it is resizing public float currentHeight; // Current height of the arena as it is resizing public float currentX; // Current X of the arena as it is moving public float currentY; // Current Y of the arena as it is moving public float desiredWidth; // Desired width of the arena; internal so the Lua Arena object may refer to it (lazy) public float desiredHeight; // Desired height of the arena; internal so the Lua Arena object may refer to it (lazy) public float desiredX; // Desired x of the arena; internal so the Lua Arena object may refer to it (lazy) public float desiredY; // Desired y of the arena; internal so the Lua Arena object may refer to it (lazy) public bool showWhenWaveEnds = false; // Used to know if we need to run Arena.Show() at the end of a wave private bool movePlayer; /// /// Initialization. /// private void Awake() { // unlike the player we really dont want this on two components at the same time if (instance != null) throw new CYFException("Currently, the ArenaManager may only be attached to one object."); outer = GetComponent(); inner = outer.GetChild(outer.childCount - 1).GetComponent(); innerSprite = LuaSpriteController.GetOrCreate(GameObject.Find("arena")); outerSprite = LuaSpriteController.GetOrCreate(GameObject.Find("arena_border_outer")); desiredX = outer.position.x; desiredY = outer.position.y; desiredWidth = currentWidth; desiredHeight = currentHeight; instance = this; luaStatus = new LuaArenaStatus(); } private void Start() { if (inner == null || outer == null) { inner = GameObject.Find("arena").GetComponent(); outer = inner.parent.GetComponent(); } arenaAbs = new Rect(inner.position.x - inner.sizeDelta.x / 2, inner.position.y - inner.sizeDelta.y / 2, inner.rect.width, inner.rect.height); arenaCenter = RTUtil.AbsCenterOf(inner); desiredX = currentX = 320; desiredY = currentY = 90; currentWidth = inner.rect.width; currentHeight = inner.rect.height; basisCoordinates = arenaCenter; } /// /// Set the desired size of this arena, after which it will keep resizing until it reaches the desired size. /// /// Desired width of the arena /// Desired height of the arena public void Resize(float newWidth, float newHeight) { desiredWidth = newWidth; desiredHeight = newHeight; } /// /// Move the arena, after which it will keep moving until it reaches the desired position. /// /// Desired x of the arena /// Desired y of the arena /// public void Move(float newX, float newY, bool newMovePlayer = true) { desiredX += newX; desiredY += newY; movePlayer = newMovePlayer; } /// /// Set the desired position of this arena, after which it will keep moving until it reaches the desired position. /// /// Desired x of the arena /// Desired y of the arena /// public void MoveTo(float newX, float newY, bool newMovePlayer = true) { desiredX = newX; desiredY = newY; movePlayer = newMovePlayer; } /// /// Set the desired position and size of this arena, after which it will keep moving and resizing until it reaches the desired size and position. /// /// Desired x of the arena /// Desired y of the arena /// Desired width of the arena /// Desired height of the arena /// public void MoveAndResize(float newX, float newY, float newWidth, float newHeight, bool newMovePlayer = true) { desiredX += newX; desiredY += newY; desiredWidth = newWidth; desiredHeight = newHeight; movePlayer = newMovePlayer; } /// /// Set the desired position and size of this arena, after which it will keep moving and resizing until it reaches the desired size and position. /// /// Desired x of the arena /// Desired y of the arena /// Desired width of the arena /// Desired height of the arena /// public void MoveToAndResize(float newX, float newY, float newWidth, float newHeight, bool newMovePlayer = true) { desiredX = newX; desiredY = newY; desiredWidth = newWidth; desiredHeight = newHeight; movePlayer = newMovePlayer; } /// /// Set the desired size of this arena immediately, without the animation. /// /// Desired width of the arena /// Desired height of the arena public void ResizeImmediate(float newWidth, float newHeight) { Resize(newWidth, newHeight); currentWidth = desiredWidth; currentHeight = desiredHeight; ApplyChanges(currentX, currentY, currentWidth, currentHeight); } /// /// Set the desired position of this arena immediately, without the animation. /// /// Desired x of the arena /// Desired y of the arena /// public void MoveImmediate(float newX, float newY, bool newMovePlayer = true) { Move(newX, newY, newMovePlayer); currentX = desiredX; currentY = desiredY; ApplyChanges(currentX, currentY, currentWidth, currentHeight); } /// /// Set the desired position of this arena immediately, without the animation. /// /// Desired x of the arena /// Desired y of the arena /// public void MoveToImmediate(float newX, float newY, bool newMovePlayer = true) { MoveTo(newX, newY, newMovePlayer); currentX = desiredX; currentY = desiredY; ApplyChanges(currentX, currentY, currentWidth, currentHeight); } /// /// Set the desired position and size of this arena immediately, without the animation. /// /// Desired width of the arena /// Desired height of the arena /// Desired width of the arena /// Desired height of the arena /// public void MoveAndResizeImmediate(float newX, float newY, float newWidth, float newHeight, bool newMovePlayer = true) { MoveAndResize(newX, newY, newWidth, newHeight, newMovePlayer); currentX = desiredX; currentY = desiredY; currentWidth = desiredWidth; currentHeight = desiredHeight; ApplyChanges(currentX, currentY, currentWidth, currentHeight); } /// /// Set the desired position and size of this arena immediately, without the animation. /// /// Desired width of the arena /// Desired height of the arena /// Desired width of the arena /// Desired height of the arena /// public void MoveToAndResizeImmediate(float newX, float newY, float newWidth, float newHeight, bool newMovePlayer = true) { MoveToAndResize(newX, newY, newWidth, newHeight, newMovePlayer); currentX = desiredX; currentY = desiredY; currentWidth = desiredWidth; currentHeight = desiredHeight; ApplyChanges(currentX, currentY, currentWidth, currentHeight); } /// /// Makes the arena invisible, but it will stay active. /// public void Hide() { inner.GetComponent().enabled = false; outer.GetComponent().enabled = false; } /// /// Makes the arena visible, if it was previously set invisible with Hide(). /// public void Show() { inner.GetComponent().enabled = true; outer.GetComponent().enabled = true; } /// /// Gets how far along this arena is with changes. Does this by returning the lowest of ratios of desired width/height/x/y to intended width/height/x/y. /// /// 0.0 if the changes has just started, 1.0 if it has finished. public float getProgress() { // depending on whether arena gets larger or smaller or its movement, adjust division order float widthFrac = desiredWidth > currentWidth ? currentWidth / desiredWidth : desiredWidth / currentWidth; float heightFrac = desiredHeight > currentHeight ? currentHeight / desiredHeight : desiredHeight / currentHeight; float xFrac = desiredX > currentX ? currentX / desiredX : desiredX / currentX; float yFrac = desiredY > currentY ? currentY / desiredY : desiredY / currentY; return Mathf.Min(widthFrac, heightFrac, xFrac, yFrac); } /// /// Used to check if the arena is currently in the process of resizing. /// /// true if it hasn't reached the intended size yet, false otherwise public bool isResizeInProgress() { return currentWidth != desiredWidth || currentHeight != desiredHeight; } public bool isMoveInProgress() { return currentX != desiredX || currentX != desiredX; } /// /// Resizes the arena if the desired size is different from the current size. /// private void Update() { // do not resize the arena if the state is frozen with PAUSE if (!UIController.instance || UIController.instance.frozenState != "PAUSE") return; if (currentWidth != desiredWidth) { float sign = Mathf.Sign(desiredWidth - currentWidth); currentWidth += sign * pxPerSecond * Time.deltaTime; if (Mathf.Sign(desiredWidth - currentWidth) != sign) currentWidth = desiredWidth; } if (currentHeight != desiredHeight) { float sign = Mathf.Sign(desiredHeight - currentHeight); currentHeight += sign * pxPerSecond * Time.deltaTime; if (Mathf.Sign(desiredHeight - currentHeight) != sign) currentHeight = desiredHeight; } if (currentX != desiredX) { float sign = Mathf.Sign(desiredX - currentX); currentX += sign * pxPerSecond * Time.deltaTime / 2; if (Mathf.Sign(desiredX - currentX) != sign) currentX = desiredX; } if (currentY != desiredY) { float sign = Mathf.Sign(desiredY - currentY); currentY += sign * pxPerSecond * Time.deltaTime / 2; if (Mathf.Sign(desiredY - currentY) != sign) currentY = desiredY; } ApplyChanges(currentX, currentY, currentWidth, currentHeight); if (outer.position == new Vector3(0, 0, outer.position.z)) outer.position = new Vector3(320, 90, outer.position.z); } /// /// Takes care of actually applying the resize and updating the arena's rectangle. /// /// /// /// New width /// New height private void ApplyChanges(float arenaX, float arenaY, float arenaWidth, float arenaHeight) { inner.sizeDelta = new Vector2(arenaWidth, arenaHeight); outer.sizeDelta = new Vector2(arenaWidth + 10, arenaHeight + 10); if (movePlayer && UIController.instance.state != "ACTIONSELECT") PlayerController.instance.MoveDirect(new Vector2(arenaX - outer.position.x, arenaY - outer.position.y)); outer.position = new Vector2(arenaX, arenaY); outer.localPosition = new Vector3(outer.localPosition.x, outer.localPosition.y, 0); arenaAbs.x = inner.position.x - inner.sizeDelta.x / 2; arenaAbs.y = inner.position.y - inner.sizeDelta.y / 2; arenaAbs.width = inner.rect.width; arenaAbs.height = inner.rect.height; arenaCenter = new Vector2(inner.transform.position.x, inner.transform.position.y); } public void ResetArena() { MoveToImmediate(320, 90, false); Resize(UIWidth, UIHeight); } } ================================================ FILE: Assets/Scripts/Battle/ArenaManager.cs.meta ================================================ fileFormatVersion: 2 guid: a91ef8095a607e34b90bda1f89e683c0 timeCreated: 1446650222 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Battle/BackgroundLoader.cs ================================================ using UnityEngine; using UnityEngine.UI; /// /// Extremely lazy background loader which is only slightly better than not having a background. /// Currently attempts to load the 'bg' file from the Sprites folder, otherwise does nothing. /// Attached to the Background object in the Battle scene. /// public class BackgroundLoader : MonoBehaviour { // Use this for initialization private void Start() { LuaSpriteController sprite = LuaSpriteController.GetOrCreate(gameObject); try { sprite.Set("bg"); sprite.color = new float[4] { 1, 1, 1, 1 }; } catch (CYFException) { // Background failed loading, no need to do anything. UnitaleUtil.Warn("No background file found. Using empty background."); } sprite.Scale(640 / sprite.width, 480 / sprite.height); } } ================================================ FILE: Assets/Scripts/Battle/BackgroundLoader.cs.meta ================================================ fileFormatVersion: 2 guid: 8da84050e7192c3478c338bc5a5df523 timeCreated: 1448024906 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Battle/BulletPool.cs ================================================ using System.Collections.Generic; using UnityEngine; /// /// The bullet pool where Projectiles are drawn from for performance reasons. /// public class BulletPool : MonoBehaviour { public static BulletPool instance; public static int POOLSIZE = 100; private static readonly Queue pool = new Queue(); private static Projectile bPrefab; // bullet prefab //private static int currentProjectile = 0; /// /// Initialize the pool with POOLSIZE Projectiles ready to go. /// private void Start() { instance = this; bPrefab = Resources.Load("Prefabs/LUAProjectile"); pool.Clear(); for (int i = 0; i < POOLSIZE; i++) createPooledBullet(); } /// /// Creates a new Projectile and adds it to the pool. Used during instantion and when the pool is empty. /// private void createPooledBullet() { Projectile lp = Instantiate(bPrefab); lp.transform.SetParent(transform); lp.GetComponent().position = new Vector2(-999, -999); // Move offscreen to be safe, but shouldn't be necessary. pool.Enqueue(lp); lp.gameObject.SetActive(false); } /// /// Retrieve a Projectile from the pool, or create a new one if it's empty. /// /// A Projectile object for further modification. public Projectile Retrieve() { if (pool.Count == 0) createPooledBullet(); Projectile dq = pool.Dequeue(); // had some other stuff going on dq.renewController(); return dq; } /// /// Return a projectile to the pool. /// /// Projectile to return public void Requeue(Projectile p) { if (p.transform.parent != gameObject.transform) p.transform.SetParent(gameObject.transform); p.GetComponent().position = new Vector2(-999, -999); p.gameObject.SetActive(false); pool.Enqueue(p); } } ================================================ FILE: Assets/Scripts/Battle/BulletPool.cs.meta ================================================ fileFormatVersion: 2 guid: 637c0b0085a6c1d4fb27b6adf117252e timeCreated: 1447534484 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Battle/EnemyController.cs ================================================ using System; using System.Linq; using MoonSharp.Interpreter; using UnityEngine; using UnityEngine.UI; using Random = UnityEngine.Random; public class EnemyController : MonoBehaviour { public GameObject bubbleObject; protected UIController ui; public enum BubbleSideEnum { LEFT, RIGHT, UP, DOWN, NONE } public BubbleSideEnum GetReverseBubbleSide(BubbleSideEnum val) { switch (val) { case BubbleSideEnum.LEFT: return BubbleSideEnum.RIGHT; case BubbleSideEnum.RIGHT: return BubbleSideEnum.LEFT; case BubbleSideEnum.UP: return BubbleSideEnum.DOWN; case BubbleSideEnum.DOWN: return BubbleSideEnum.UP; default: return val; } } public void Handle(string command) { string cmd = command.ToUpper().Trim(); if (CanCheck && cmd.Equals("CHECK")) HandleCheck(); else HandleCustomCommand(cmd); } public virtual void HandleCheck() { ui.ActionDialogResult(new RegularMessage(Name.ToUpper() + " " + Attack + " ATK " + Defense + " DEF\n" + CheckData)); } public void doDamage(int damage) { int newHP = HP - damage; HP = newHP; } private int realPresetDmg = FightUIController.DAMAGE_NOT_SET; public int presetDmg { set { realPresetDmg = value == FightUIController.DAMAGE_NOT_SET ? realPresetDmg : value; } get { return realPresetDmg; } } internal string scriptName; internal ScriptWrapper script; internal bool inFight = true; // if false, enemy will no longer be considered as an option in menus and such private string lastBubbleName; public float xFightAnimShift = 0; public LuaSpriteController sprite; public float bubbleWidth = 0; public int index = -1; public Vector2[] offsets = { new Vector2(0, 0), new Vector2(0, 0), new Vector2(0, 0) }; //SliceAnimOffset BubbleOffset DamageUIOffset internal bool spared; internal bool killed; public string Name { get { return script.GetVar("name").String; } set { script.SetVar("name", DynValue.NewString(value)); } } public string[] ActCommands { get { DynValue actCmds = script.GetVar("commands"); string[] tempActCmds; int add = 0; if (!CanCheck) tempActCmds = new string[actCmds.Table.Length]; else { tempActCmds = new string[actCmds.Table.Length + 1]; tempActCmds[0] = "Check"; // HACK: remove hardcoding of Check, but otherwise gets converted to Tuple? idk add = 1; } for (int i = add; i < actCmds.Table.Length + add; i++) tempActCmds[i] = actCmds.Table.Get(i - add + 1).String; return tempActCmds; } set { DynValue[] values = new DynValue[value.Length]; for (int i = 0; i < value.Length; i++) values[i] = DynValue.NewString(value[i]); script.SetVar("commands", DynValue.NewTuple(values)); } } public string[] Comments { get { DynValue comments = script.GetVar("comments"); string[] tempComments = new string[comments.Table.Length]; for (int i = 0; i < comments.Table.Length; i++) tempComments[i] = comments.Table.Get(i + 1).String; return tempComments; } set { DynValue[] values = new DynValue[value.Length]; for (int i = 0; i < value.Length; i++) values[i] = DynValue.NewString(value[i]); script.SetVar("comments", DynValue.NewTuple(values)); } } public string[] Dialogue { get { DynValue randDialogue = script.GetVar("randomdialogue"); if (randDialogue == null || randDialogue.Table == null) return null; string[] tempDialogue = new string[randDialogue.Table.Length]; for (int i = 0; i < randDialogue.Table.Length; i++) tempDialogue[i] = randDialogue.Table.Get(i + 1).String; return tempDialogue; } set { DynValue[] values = new DynValue[value.Length]; for (int i = 0; i < value.Length; i++) values[i] = DynValue.NewString(value[i]); script.SetVar("randomdialogue", DynValue.NewTuple(values)); } } public string CheckData { get { return script.GetVar("check").String; } set { script.SetVar("check", DynValue.NewString(value)); } } public int HP { get { if (GlobalControls.retroMode && (int)script.GetVar("hp").Number > MaxHP) MaxHP = (int)script.GetVar("hp").Number; return (int)script.GetVar("hp").Number; } set { script.SetVar("hp", DynValue.NewNumber(value)); } } public int MaxHP { get { return (int)script.GetVar("maxhp").Number; } set { script.SetVar("maxhp", DynValue.NewNumber(value)); } } public int Attack { get { return (int)script.GetVar("atk").Number; } set { script.SetVar("atk", DynValue.NewNumber(value)); } } public int Defense { get { return (int)script.GetVar("def").Number; } set { script.SetVar("def", DynValue.NewNumber(value)); } } public int XP { get { return (int)script.GetVar("xp").Number; } set { script.SetVar("xp", DynValue.NewNumber(value)); } } public int Gold { get { return (int)script.GetVar("gold").Number; } set { script.SetVar("gold", DynValue.NewNumber(value)); } } public bool CanSpare { get { DynValue spareVal = script.GetVar("canspare"); if (spareVal == null) return false; return spareVal.Boolean; } set { script.SetVar("canspare", DynValue.NewBoolean(value)); } } public bool CanCheck { get { DynValue checkVal = script.GetVar("cancheck"); if (checkVal == null) return true; return checkVal.Boolean; } set { script.SetVar("cancheck", DynValue.NewBoolean(value)); } } public bool Unkillable { get { DynValue checkVal = script.GetVar("unkillable"); if (checkVal == null) return false; return checkVal.Boolean; } set { script.SetVar("unkillable", DynValue.NewBoolean(value)); } } public string DialogBubble { get { if (script.GetVar("dialogbubble") == null) return "UI/SpeechBubbles/right"; return "UI/SpeechBubbles/" + script.GetVar("dialogbubble").String; } } public string DialoguePrefix { get { DynValue dialoguePrefix = script.GetVar("dialogueprefix"); if (dialoguePrefix == null || dialoguePrefix.Type == DataType.Nil) return "[effect:rotate]"; return dialoguePrefix.String; } set { script.SetVar("dialogueprefix", DynValue.NewString(value)); } } public string Font { get { DynValue fontVal = script.GetVar("font"); if (fontVal == null || fontVal.Type == DataType.Nil) return SpriteFontRegistry.UI_MONSTERTEXT_NAME; return fontVal.String; } set { script.SetVar("font", DynValue.NewString(value)); } } public string Voice { get { DynValue voiceVal = script.GetVar("voice"); if (voiceVal == null || voiceVal.Type == DataType.Nil) return ""; return voiceVal.String; } set { script.SetVar("voice", DynValue.NewString(value)); } } public string DefenseMissText { get { return script.GetVar("defensemisstext").String; } set { script.SetVar("defensemisstext", DynValue.NewString(value)); } } public string NoAttackMissText { get { return script.GetVar("noattackmisstext").String; } set { script.SetVar("noattackmisstext", DynValue.NewString(value)); } } public Color SpareColor { get { DynValue spareColor = script.GetVar("sparecolor"); DynValue spareColor32 = script.GetVar("sparecolor32"); DynValue val = spareColor.IsNotNil() ? spareColor : spareColor32; if (val.IsNil()) return new Color(1, 1, 0, 1); if (val.Type != DataType.Table) throw new CYFException("An enemy's spare color must be a table with 3 or 4 numbers: type is " + val.Type.ToString() + "."); Table tab = val.Table; if (tab.Length < 3 || tab.Length > 4) throw new CYFException("An enemy's spare color must be a table with 3 or 4 numbers: the table has " + tab.Length + " elements."); foreach (TablePair p in tab.Pairs) { if (p.Key.Type != DataType.Number) throw new CYFException("An enemy's spare color must be a table with 3 or 4 numbers: the table's " + p.Key.ToString() + " value doesn't have a numbered key."); if (p.Value.Type != DataType.Number) throw new CYFException("An enemy's spare color must be a table with 3 or 4 numbers: the table's " + p.Key.ToString() + " value is of type " + p.Value.Type.ToString() + "."); } bool is32 = spareColor.IsNil(); return new Color( Mathf.Clamp01((float)tab.Get(1).Number / (is32 ? 255 : 1)), Mathf.Clamp01((float)tab.Get(2).Number / (is32 ? 255 : 1)), Mathf.Clamp01((float)tab.Get(3).Number / (is32 ? 255 : 1)), tab.Get(4).Type == DataType.Nil ? 1 : Mathf.Clamp01((float)tab.Get(4).Number / (is32 ? 255 : 1)) ); } } public float PosX { get { return GetComponent().position.x; } } public float PosY { get { return GetComponent().position.y; } } public Vector2 DialogBubblePosition { get { RectTransform t = GetComponent(); Vector2 spr = new Vector2(Mathf.Abs(t.rect.width), t.rect.height); Vector2 bubSize; if (DialogBubble == "UI/SpeechBubbles/") { LuaTextManager text = GetComponentInChildren(); bubSize = text.GetBubbleSize(); Vector2 bubbleShift = text.GetBubbleShift(); Vector2 res; switch (BubbleSide) { case BubbleSideEnum.LEFT: res = new Vector2(-spr.x / 2 - bubSize.x - 25, bubSize.y / 2); break; case BubbleSideEnum.UP: res = new Vector2(-bubSize.x / 2, spr.y / 2 + bubSize.y + 25); break; case BubbleSideEnum.DOWN: res = new Vector2(-bubSize.x / 2, -spr.y / 2 - 25); break; default: res = new Vector2(spr.x / 2 + 25, bubSize.y / 2); break; // rightside default } return res - bubbleShift; } Sprite diagBubbleSpr = SpriteRegistry.Get(DialogBubble); bubSize = new Vector2(diagBubbleSpr.rect.width, diagBubbleSpr.rect.height); if (diagBubbleSpr.name.StartsWith("left")) return new Vector2(-spr.x / 2 - bubSize.x - 5, bubSize.y / 2); if (diagBubbleSpr.name.StartsWith("top")) return new Vector2(-bubSize.x / 2, spr.y / 2 + bubSize.y + 5); if (diagBubbleSpr.name.StartsWith("bottom")) return new Vector2(-bubSize.x / 2, -spr.y / 2 - 5); return new Vector2(spr.x / 2 + 5, bubSize.y / 2); // rightside default } } public BubbleSideEnum BubbleSide { get { if (script.GetVar("bubbleside").Type == DataType.Nil) throw new CYFException("You need to set the value of the variable bubbleside if you want the engine to create a text bubble automatically.\nIts possible values are \"LEFT\", \"RIGHT\", \"UP\", \"DOWN\" or \"NONE\"."); if (script.GetVar("bubbleside").Type != DataType.String) throw new CYFException("The bubbleside value can only be \"LEFT\", \"RIGHT\", \"UP\", \"DOWN\" or \"NONE\", but its value isn't a string."); string s = script.GetVar("bubbleside").String.ToUpper(); try { return (BubbleSideEnum)Enum.Parse(typeof(BubbleSideEnum), s); } catch { throw new CYFException("The bubbleside value can only be \"LEFT\", \"RIGHT\", \"UP\", \"DOWN\" or \"NONE\", but its value is \"" + s.ToUpper() + "\"."); } } set { script.SetVar("bubbleside", DynValue.NewString(value.ToString())); } } public double BubbleWidth { get { if (script.GetVar("bubblewidth").Type != DataType.Number) throw new CYFException("The bubblewidth value of the monster " + Name + " isn't a number.\nIt must be a number above or equal to 16."); double val = script.GetVar("bubblewidth").Number; if (val < 16) throw new CYFException("The bubblewidth value of the monster " + Name + " is too low (" + val + ").\nIt must be a number above or equal to 16."); return val; } set { script.SetVar("bubblewidth", DynValue.NewNumber(value)); } } public void InitializeEnemy() { try { string scriptText = FileLoader.GetScript("Monsters/" + scriptName, StaticInits.ENCOUNTER, "monster"); script.scriptname = scriptName; script.Bind("SetSprite", (Action)SetSprite); script.Bind("SetActive", (Action)SetActive); script.Bind("isactive", DynValue.NewBoolean(true)); script.Bind("Kill", (Action)DoKill); script.Bind("Spare", (Action)DoSpare); script.Bind("Move", (Action)Move); script.Bind("MoveTo", (Action)MoveTo); script.Bind("BindToArena", (Action)BindToArena); script.Bind("SetDamage", (Action)SetDamage); script.Bind("SetBubbleOffset", (Action)SetBubbleOffset); script.Bind("SetDamageUIOffset", (Action)SetDamageUIOffset); script.Bind("SetSliceAnimOffset", (Action)SetSliceAnimOffset); script.Bind("State", (Action)UIController.SwitchStateOnString); script.Bind("Remove", (Action)Remove); script.SetVar("canmove", DynValue.NewBoolean(true)); sprite = LuaSpriteController.GetOrCreate(gameObject); script.SetVar("monstersprite", UserData.Create(sprite, LuaSpriteController.data)); script.SetVar("bubblesprite", UserData.Create(LuaSpriteController.GetOrCreate(bubbleObject))); script.SetVar("textobject", UserData.Create(bubbleObject.GetComponentInChildren())); script.DoString(scriptText); string spriteFile = script.GetVar("sprite").String; if (spriteFile != null) SetSprite(spriteFile); else throw new CYFException("The monster script " + scriptName + ".lua's sprite value is not a string."); ui = FindObjectOfType(); if (MaxHP == 0) MaxHP = HP; /*if (script.GetVar("canspare") == null) CanSpare = false; if (script.GetVar("cancheck") == null) CanCheck = true;*/ } catch (InterpreterException ex) { UnitaleUtil.DisplayLuaError(scriptName, ex.DecoratedMessage != null ? UnitaleUtil.FormatErrorSource(ex.DecoratedMessage, ex.Message) + ex.Message : ex.Message); } catch (Exception ex) { UnitaleUtil.DisplayLuaError(scriptName, "Unknown error. Usually means you're missing a sprite.\nSee documentation for details.\nStacktrace below in case you wanna notify a dev.\n\nError: " + ex.Message + "\n\n" + ex.StackTrace); } } public void HandleAttack(int hitStatus) { UnitaleUtil.TryCall(script, "HandleAttack", new[] { DynValue.NewNumber(hitStatus) }); } public string[] GetDefenseDialog() { DynValue dialogues = script.GetVar("currentdialogue"); if (dialogues.Table == null) if (dialogues.String != null) return new[] { dialogues.String }; else if (Dialogue == null) return null; else return new[] { Dialogue[Random.Range(0, Dialogue.Length)] }; string[] dialogueStrings = new string[dialogues.Table.Length]; for (int i = 0; i < dialogues.Table.Length; i++) dialogueStrings[i] = dialogues.Table.Get(i + 1).String; script.SetVar("currentdialogue", DynValue.NewNil()); return dialogueStrings; } protected void HandleCustomCommand(string command) { UnitaleUtil.TryCall(script, "HandleCustomCommand", new[] { DynValue.NewString(command) }); } public void CreateBubble() { GameObject speechBub = Instantiate(SpriteFontRegistry.BUBBLE_OBJECT); speechBub.transform.SetParent(transform); LuaTextManager sbTextMan = speechBub.GetComponentInChildren(); sbTextMan.SetCaller(script); sbTextMan.HideBubble(); sbTextMan.SetText(DynValue.NewString("")); sbTextMan.GetComponent().pivot = new Vector2(0, 1); sbTextMan.adjustTextDisplay = true; bubbleObject = speechBub; } public void UpdateBubble(int enemyID) { LuaTextManager sbTextMan = bubbleObject.GetComponentInChildren(); bool usingAutoBubble = DialogBubble == "UI/SpeechBubbles/"; Image speechBubImg = bubbleObject.GetComponent(); speechBubImg.enabled = !usingAutoBubble; // Bubble management: can be a normal bubble OR an auto bubble from text objects if (!usingAutoBubble) { try { SpriteUtil.SwapSpriteFromFile(speechBubImg, DialogBubble, enemyID); } catch (Exception e) { UnitaleUtil.DisplayLuaError(scriptName + ": Creating a dialogue bubble", "An error was encountered. It's highly possible the dialogue bubble " + script.GetVar("dialogbubble") + " doesn't exist.\n\nError: " + e.Message); return; } Sprite speechBubSpr = speechBubImg.sprite; float xMov = speechBubSpr.border.x; float yMov = -speechBubSpr.border.w - sbTextMan.font.LineSpacing; float angle = sbTextMan.rotation * Mathf.Deg2Rad; sbTextMan.MoveTo((int)(Mathf.Cos(angle) * xMov - Mathf.Sin(angle) * yMov), (int)(Mathf.Sin(angle) * xMov + Mathf.Cos(angle) * yMov)); speechBubImg.color = new Color(speechBubImg.color.r, speechBubImg.color.g, speechBubImg.color.b, sbTextMan.letters.Count == 0 ? 0 : 1); if (bubbleWidth == 0) bubbleWidth = speechBubSpr.textureRect.width - speechBubSpr.border.x - speechBubSpr.border.z; sbTextMan.HideBubble(); } else { try { bubbleWidth = (float)BubbleWidth; } catch (Exception e) { UnitaleUtil.DisplayLuaError(scriptName + ": Creating a dialogue bubble", e.Message); return; } if (sbTextMan.letters.Count > 0) sbTextMan.ShowBubble(GetReverseBubbleSide(BubbleSide).ToString(), DynValue.NewString("50%")); else sbTextMan.HideBubble(); sbTextMan.MoveTo(0, 0); } sbTextMan._textMaxWidth = (int)bubbleWidth; speechBubImg.transform.SetAsLastSibling(); bubbleObject.GetComponent().anchoredPosition = DialogBubblePosition + offsets[1]; sbTextMan.Move(0, 0); // Used to even out the text object's position so it's only using integers if (Voice != "") sbTextMan.fontVoice = Voice; } public void HideBubble() { bubbleObject.GetComponent().enabled = false; bubbleObject.GetComponentInChildren().HideBubble(); } public void Remove() { try { UIController.instance.encounter.enemies.Remove(this); script.Remove(); Destroy(gameObject); } catch (MissingReferenceException) { throw new CYFException("Attempt to remove a removed enemy."); } } public void SetSprite(string filename) { sprite.Set(filename); } /// /// Call function to grey out enemy and pop the smoke particles, and mark it as spared. /// public void DoSpare(bool playSound = true) { if (!inFight) return; UIController.instance.gold += Gold; // We have to code the particles separately because they don't work well in UI screenspace. Great stuff. ParticleSystem spareSmoke = Instantiate(Resources.Load("Prefabs/MonsterSpareParticleSys")); spareSmoke.Emit(10); ParticleSystem.Particle[] particles = new ParticleSystem.Particle[10]; spareSmoke.GetParticles(particles); Vector3 particlePos = RTUtil.AbsCenterOf(GetComponent()); particlePos.z = 5; for (int i = 0; i < particles.Length; i++) particles[i].position = particlePos + particles[i].velocity.normalized * 5; spareSmoke.SetParticles(particles, particles.Length); spareSmoke.gameObject.transform.SetParent(UIController.instance.psContainer.transform); // The actually relevant part of sparing code. GetComponent().color = new Color(1.0f, 1.0f, 1.0f, 0.4f); if (playSound) UIController.PlaySoundSeparate("enemydust"); SetActive(false); spared = true; FightUIController.instance.DestroyAllAttackInstances(this); UIController.instance.CheckAndTriggerVictory(); } /// /// Call function to turn enemy to dust and mark it as killed. /// public void DoKill(bool playSound = true) { if (!inFight) return; UIController.instance.gold += Gold; UIController.instance.exp += XP; UnitaleUtil.Dust(gameObject, sprite); SetActive(false); killed = true; if (playSound) UIController.PlaySoundSeparate("enemydust"); FightUIController.instance.DestroyAllAttackInstances(this); UIController.instance.CheckAndTriggerVictory(); } /// /// Set if we should consider this monster for menus e.g. /// /// public void SetActive(bool active) { inFight = active; script.SetVar("isactive", DynValue.NewBoolean(active)); } public void Move(float x, float y) { GetComponent().position = new Vector2(GetComponent().position.x + x, GetComponent().position.y + y); } public void MoveTo(float x, float y) { GetComponent().position = new Vector2(x, y); } public void BindToArena(bool bind, bool isUnderArena = false) { int count = 0; if (bind) { count += FindObjectsOfType().Count(luaec => luaec.transform.parent.name == "LuaEnemyEncounterGO" && luaec.index < index); transform.SetParent(GameObject.Find("LuaEnemyEncounterGO").transform, true); } else { count += FindObjectsOfType().Count(luaec => luaec.transform.parent.name == "arena_container" && luaec.index <= index && (isUnderArena && luaec.transform.GetSiblingIndex() < GameObject.Find("arena_border_outer").transform.GetSiblingIndex() || !isUnderArena)); if (!isUnderArena) count++; transform.SetParent(GameObject.Find("arena_container").transform, true); } transform.SetSiblingIndex(count); } public void SetDamage(int dmg) { presetDmg = dmg; } public void Update() { try { script.SetVar("posx", DynValue.NewNumber(GetComponent().position.x)); script.SetVar("posy", DynValue.NewNumber(GetComponent().position.y)); } catch { /* ignored */ } } public void SetSliceAnimOffset(int x, int y) { offsets[0] = new Vector2(x, y); } public void SetBubbleOffset(int x, int y) { offsets[1] = new Vector2(x, y); } public void SetDamageUIOffset(int x, int y) { offsets[2] = new Vector2(x, y); } public void ResetPresetDamage() { realPresetDmg = FightUIController.DAMAGE_NOT_SET; } } ================================================ FILE: Assets/Scripts/Battle/EnemyController.cs.meta ================================================ fileFormatVersion: 2 guid: 4ccc4510dd1610c46be8204aaf9c3a93 timeCreated: 1447536519 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 180 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Battle/EnemyEncounter.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using MoonSharp.Interpreter; using UnityEngine; using UnityEngine.UI; using Random = UnityEngine.Random; public class EnemyEncounter : MonoBehaviour { public List enemies; public Vector2[] enemyPositions; internal float waveTimer; public int turnCount; public string EncounterText { get; set; } public bool CanRun = true; public static ScriptWrapper script; public float waveBeginTime; private ScriptWrapper[] waves; private string[] waveNames; public bool gameOverStance; public static bool doNotGivePreviousEncounterToSelf; private delegate TResult Func(T1 arg, T2 arg2, T3 arg3, T4 arg4, T5 arg5); public void Awake() { InitScript(); } public void OnDestroy() { ScriptWrapper.instances.Clear(); } /// /// Attempts to initialize the encounter's script file and bind encounter-specific functions to it. /// /// True if initialization succeeded, false if there was an error. public void InitScript() { doNotGivePreviousEncounterToSelf = true; script = new ScriptWrapper { scriptname = StaticInits.ENCOUNTER }; script.DoString(FileLoader.GetScript("Encounters/" + StaticInits.ENCOUNTER, StaticInits.ENCOUNTER, "encounter")); script.Bind("State", (Action)UIController.SwitchStateOnString); script.Bind("RandomEncounterText", (Func)RandomEncounterText); script.Bind("CreateProjectile", (Func)CreateProjectile); script.Bind("CreateProjectileAbs", (Func)CreateProjectileAbs); script.Bind("SetButtonLayer", (Action)LuaScriptBinder.SetButtonLayer); script.Bind("CreateEnemy", (Func)CreateEnemy); script.Bind("Flee", (Action)Flee); LoadEnemiesAndPositions(); } public DynValue CreateEnemy(string enemyScript, float x, float y) { GameObject enemyObject = Instantiate(Resources.Load("Prefabs/LUAEnemy")); enemyObject.transform.SetParent(gameObject.transform); enemyObject.transform.localScale = new Vector3(1, 1, 1); // apparently this was suddenly required or the scale would be (0,0,0) EnemyController enemyController = enemyObject.GetComponent(); enemyController.scriptName = enemyScript; enemyController.index = enemies.Count - 1; enemyController.GetComponent().anchoredPosition = new Vector2(x, y); enemyController.script = new ScriptWrapper(); enemies.Add(enemyController); enemyController.CreateBubble(); enemyController.InitializeEnemy(); return UserData.Create(enemyController.script); } public void Flee() { StartCoroutine(UIController.instance.ISuperFlee()); } public bool CallOnSelfOrChildren(string func, DynValue[] param = null) { // TODO: Don't stop execution if the function has been run in the Encounter script if (UnitaleUtil.TryCall(script, func, param)) return true; bool calledOne = false; foreach (EnemyController enemy in enemies) if (UnitaleUtil.TryCall(enemy.script, func, param)) calledOne = true; return calledOne; } public EnemyController[] EnabledEnemies { get { return enemies.Where(x => x.inFight).ToArray(); } } public Vector2 ArenaSize { get { if (script.GetVar("arenasize") == null) return new Vector2(155, 130); Table size = script.GetVar("arenasize").Table; if (size == null) return new Vector2(155, 130); if (size.Get(1).Number < 16 || size.Get(2).Number < 16) // TODO remove hardcoding (but player never changes size so nobody cares) return new Vector2(size.Get(1).Number > 16 ? (int)size.Get(1).Number : 16, size.Get(2).Number > 16 ? (int)size.Get(2).Number : 16); return new Vector2((int)size.Get(1).Number, (int)size.Get(2).Number); } } public Color SpareColor { get { DynValue spareColor = script.GetVar("sparecolor"); DynValue spareColor32 = script.GetVar("sparecolor32"); DynValue val = spareColor.IsNotNil() ? spareColor : spareColor32; if (val.IsNil()) return new Color(1, 1, 0, 1); if (val.Type != DataType.Table) throw new CYFException("An enemy's spare color must be a table with 3 or 4 numbers: type is " + val.Type.ToString() + "."); Table tab = val.Table; if (tab.Length < 3 || tab.Length > 4) throw new CYFException("An enemy's spare color must be a table with 3 or 4 numbers: the table has " + tab.Length + " elements."); foreach (TablePair p in tab.Pairs) { if (p.Key.Type != DataType.Number) throw new CYFException("An enemy's spare color must be a table with 3 or 4 numbers: the table's " + p.Key.ToString() + " value doesn't have a numbered key."); if (p.Value.Type != DataType.Number) throw new CYFException("An enemy's spare color must be a table with 3 or 4 numbers: the table's " + p.Key.ToString() + " value is of type " + p.Value.Type.ToString() + "."); } bool is32 = spareColor.IsNil(); return new Color( Mathf.Clamp01((float)tab.Get(1).Number / (is32 ? 255 : 1)), Mathf.Clamp01((float)tab.Get(2).Number / (is32 ? 255 : 1)), Mathf.Clamp01((float)tab.Get(3).Number / (is32 ? 255 : 1)), tab.Get(4).Type == DataType.Nil ? 1 : Mathf.Clamp01((float)tab.Get(4).Number / (is32 ? 255 : 1)) ); } } protected void LoadEnemiesAndPositions() { AudioSource musicSource = GameObject.Find("Main Camera").GetComponent(); EncounterText = script.GetVar("encountertext").String; DynValue enemyScriptsLua = script.GetVar("enemies"); DynValue enemyPositionsLua = script.GetVar("enemypositions"); string musicFile = script.GetVar("music").String; if (enemyScriptsLua.Table == null) { UnitaleUtil.DisplayLuaError(StaticInits.ENCOUNTER, "There has to be an enemies table in your encounter's file."); return; } int enemyCount = enemyScriptsLua.Table.Length; if (enemyPositionsLua != null && enemyPositionsLua.Table != null) { enemyPositions = new Vector2[enemyPositionsLua.Table.Length]; for (int i = 0; i < enemyPositionsLua.Table.Length; i++) { Table posTable = enemyPositionsLua.Table.Get(i + 1).Table; if (i >= enemyCount) break; enemyPositions[i] = new Vector2((float)posTable.Get(1).Number, (float)posTable.Get(2).Number); } } if (MusicManager.IsStoppedOrNull(PlayerOverworld.audioKept)) { if (musicFile != null) { try { AudioClip music = AudioClipRegistry.GetMusic(musicFile); musicSource.clip = music; MusicManager.filename = "music:" + musicFile.ToLower(); } catch (Exception) { UnitaleUtil.Warn("Loading custom music failed."); } } else { musicSource.clip = AudioClipRegistry.GetMusic("mus_battle1"); musicSource.volume = .6f; MusicManager.filename = "music:mus_battle1"; } NewMusicManager.audioname["src"] = MusicManager.filename; } // Instantiate all the enemy objects if (enemyCount > enemyPositions.Length) { UnitaleUtil.DisplayLuaError(StaticInits.ENCOUNTER, "All enemies in an encounter must have a screen position defined. Either your enemypositions table is missing, " + "or there are more enemies than available positions. Refer to the documentation's Basic Setup section on how to do this."); return; } Table luaEnemyTable = script.GetVar("enemies").Table; enemies = new List(); for (int i = 0; i < enemyCount; i++) luaEnemyTable.Set(i + 1, CreateEnemy(enemyScriptsLua.Table.Get(i + 1).String, enemyPositions[i].x, enemyPositions[i].y)); script.SetVar("enemies", DynValue.NewTable(luaEnemyTable)); Table luaWaveTable = new Table(null); script.SetVar("Wave", DynValue.NewTable(luaWaveTable)); //if (MusicManager.isStoppedOrNull(PlayerOverworld.audioKept)) // musicSource.Play(); // play that funky music } protected string RandomEncounterText() { if (EnabledEnemies.Length <= 0) return ""; int randomEnemy = Random.Range(0, EnabledEnemies.Length); string[] comments; try { comments = EnabledEnemies[randomEnemy].Comments; } catch { throw new CYFException("RandomEncounterText: Can not read the \"comments\" table of enemy #" + (randomEnemy + 1) + ".\nAre you sure it's set?"); } if (comments.Length <= 0) return ""; int randomComment = Random.Range(0, comments.Length); return comments[randomComment]; } public static void BattleDialog(Script scr, DynValue arg) { if (UIController.instance == null) UnitaleUtil.Warn("BattleDialog can only be used as early as EncounterStarting."); else { UIController.instance.battleDialogueStarted = true; EnemyController enemy = UIController.instance.encounter.enemies.Find(e => e.script.script == scr); if (enemy) UIController.instance.mainTextManager.SetCaller(enemy.script); TextMessage[] msgs = null; if (arg.Type == DataType.String) msgs = new TextMessage[]{new RegularMessage(arg.String)}; else if (arg.Type == DataType.Table && (GlobalControls.retroMode || arg.Table.Length > 0)) { // Check if the data is right for (int i = 0; i < arg.Table.Length; i++) if (arg.Table.Get(i + 1).Type != DataType.String) throw new CYFException("BattleDialog: You need to input a non-empty array or a string here." + "\n\nIf you're sure that you've entered what's needed, you may contact the dev."); msgs = new TextMessage[arg.Table.Length]; for (int i = 0; i < arg.Table.Length; i++) msgs[i] = new RegularMessage(arg.Table.Get(i + 1).String); } else if (!GlobalControls.retroMode) throw new CYFException("BattleDialog: You need to input a non-empty array or a string here." + "\n\nIf you're sure that you've entered what's needed, you may contact the dev."); if (!GlobalControls.retroMode) UIController.instance.mainTextManager.SetEffect(new TwitchEffect(UIController.instance.mainTextManager)); UIController.instance.ActionDialogResult(msgs); } } public void HandleItem(int ID) { Inventory.UseItem(ID); } // // Overrideable item handler on a per-encounter basis. Should return true if a custom action is executed for the given item. // // Item to be checked for custom action // true if a custom action should be executed for given item, false if the default action should happen /*public virtual bool CustomItemHandler(UnderItem item) { UIController.instance.encounter.CallOnSelfOrChildren("HandleItem", new MoonSharp.Interpreter.DynValue[] { MoonSharp.Interpreter.DynValue.NewString(item.Name) }); return false;*/ // the following was test code that allowed you to activate dogs in order 2-3-1 to replace all bullets with dogs /*if (dogTest[0] && dogTest[1] && dogTest[2]) { UIController.instance.ActionDialogResult(new RegularMessage[]{ new RegularMessage("After unlocking the\r[color:ffff00]Secret of Dog[color:ffffff],\ryou don't feel like using dog " + item.ID[7] + "."), new RegularMessage("So you released it.\nFarewell, dog!") }, UIController.UIState.ENEMYDIALOGUE); Inventory.container.Remove(item); return true; } if (item.ID == "DOGTEST2") { UIController.instance.ActionDialogResult(new RegularMessage("Selected dog 2.\nMight be part of a pattern."), UIController.UIState.ENEMYDIALOGUE); dogTest[0] = true; return true; } if (item.ID == "DOGTEST3" && dogTest[0]) { UIController.instance.ActionDialogResult(new RegularMessage("Selected dog 3.\nThis seems about right..."), UIController.UIState.ENEMYDIALOGUE); dogTest[1] = true; return true; } if (item.ID == "DOGTEST1" && dogTest[1]) { AudioClip yay = Resources.Load("Sounds/dogsecret"); AudioSource.PlayClipAtPoint(yay, Camera.main.transform.position); UIController.instance.ActionDialogResult(new RegularMessage[]{ new RegularMessage("You have unlocked the\r[color:ffff00]Secret of Dog[color:ffffff].\nYou are overcome with happiness."), new RegularMessage("And spiders, too.") }, UIController.UIState.ENEMYDIALOGUE); dogTest[2] = true; return true; } if (dogTest[0] || dogTest[1] || dogTest[2]) UIController.instance.ActionDialogResult(new RegularMessage("Selected dog " + item.ID[7] + ".\nNo... that's not it."), UIController.UIState.ENEMYDIALOGUE); else UIController.instance.ActionDialogResult(new RegularMessage("Selected dog " + item.ID[7] + ".\nIt feels off."), UIController.UIState.ENEMYDIALOGUE); dogTest[0] = false; dogTest[1] = false; dogTest[2] = false; return true;*/ //} public void HandleSpare() { //bool sparedAny = false; foreach (EnemyController enemy in enemies) if (enemy.CanSpare) enemy.GetComponent().color = new Color(0.2f, 0.2f, 0.2f); } [HideInInspector] public DynValue CreateProjectileAbs(Script s, string sprite, float xpos, float ypos, string layerName = "") { LuaProjectile projectile = (LuaProjectile)BulletPool.instance.Retrieve(); if (sprite == null) throw new CYFException("You can't create a projectile with a nil sprite!"); SpriteUtil.SwapSpriteFromFile(projectile, sprite); // TODO: Restore in 0.7 //projectile.name = sprite; projectile.GetComponent().ctrl.spritename = sprite; projectile.owner = s; projectile.gameObject.SetActive(true); projectile.ctrl.MoveToAbs(xpos, ypos); //projectile.ctrl.z = Projectile.Z_INDEX_NEXT; //doesn't work yet, thanks unity UI projectile.transform.SetAsLastSibling(); //projectile.ctrl.UpdatePosition(); projectile.ctrl.sprite.Set(sprite); if (layerName != "") try { projectile.transform.SetParent(GameObject.Find(layerName + "Bullet").transform); } catch { try { projectile.transform.SetParent(GameObject.Find(layerName + "Layer").transform); } catch { /* ignored */ } } DynValue projectileController = UserData.Create(projectile.ctrl); //Texture2D tex = (Texture2D)projectile.GetComponent().mainTexture; //projectile.selfAbs = UnitaleUtil.GetFurthestCoordinates(tex.GetPixels32(), tex.height, projectile.self); return projectileController; } private DynValue CreateProjectile(Script s, string sprite, float xpos, float ypos, string layerName = "") { return CreateProjectileAbs(s, sprite, ArenaManager.arenaCenter.x + xpos, ArenaManager.arenaCenter.y + ypos, layerName); } public void UpdateWave() { string currentScript = ""; try { for (int i = 0; i < waves.Length; i++) { currentScript = waveNames[i]; try { waves[i].Call("Update"); } catch (InterpreterException ex) { UnitaleUtil.DisplayLuaError(currentScript, UnitaleUtil.FormatErrorSource(ex.DecoratedMessage, ex.Message) + ex.Message); return; } catch (Exception ex) { if (GlobalControls.retroMode) return; if (waves[i].script.Globals["Update"] == null) UnitaleUtil.DisplayLuaError(currentScript, "All the wave scripts need an Update() function!"); else UnitaleUtil.DisplayLuaError(currentScript, "This error is a " + ex.GetType() + " error.\nPlease send this error to the main dev.\n\n" + ex.Message + "\n\n" + ex.StackTrace); return; } } } catch (InterpreterException ex) { UnitaleUtil.DisplayLuaError(currentScript, UnitaleUtil.FormatErrorSource(ex.DecoratedMessage, ex.Message) + ex.Message); } } private void PrepareWave() { DynValue nextWaves = script.GetVar("nextwaves"); if (nextWaves.Type != DataType.Table) { if (nextWaves.Type == DataType.Nil) UnitaleUtil.DisplayLuaError(StaticInits.ENCOUNTER, "nextwaves is not defined in your script."); else UnitaleUtil.DisplayLuaError(StaticInits.ENCOUNTER, "nextwaves is a " + nextWaves.Type + ", but should be a table."); return; } if (waves != null) foreach (ScriptWrapper wrap in waves) wrap.Remove(); waves = new ScriptWrapper[nextWaves.Table.Length]; waveNames = new string[waves.Length]; int currentWaveScript = 0; try { List indexes = new List(); for (int i = 0; i < waves.Length; i++) { currentWaveScript = i; waves[i] = new ScriptWrapper { scriptname = nextWaves.Table.Get(i + 1).String }; waves[i].script.Globals["EndWave"] = (Action)EndWaveTimer; waves[i].script.Globals["State"] = (Action)UIController.SwitchStateOnString; waves[i].script.Globals["CreateProjectile"] = (Func)CreateProjectile; waves[i].script.Globals["CreateProjectileAbs"] = (Func)CreateProjectileAbs; if (nextWaves.Table.Get(i + 1).Type != DataType.String){ UnitaleUtil.DisplayLuaError(StaticInits.ENCOUNTER, "Non-string value encountered in nextwaves table"); return; } waveNames[i] = nextWaves.Table.Get(i + 1).String; waves[i].script.Globals["wavename"] = nextWaves.Table.Get(i + 1).String; try { waves[i].DoString(FileLoader.GetScript("Waves/" + nextWaves.Table.Get(i + 1).String, nextWaves.Table.Get(i + 1).String + ".lua", "wave")); indexes.Add(i); } catch (InterpreterException ex) { UnitaleUtil.DisplayLuaError(nextWaves.Table.Get(i + 1).String + ".lua", UnitaleUtil.FormatErrorSource(ex.DecoratedMessage, ex.Message) + ex.Message); } catch (Exception ex) { UnitaleUtil.DisplayLuaError("", ex.Message + "\n\n" + ex.StackTrace); } } Table luaWaveTable = new Table(null); for (int i = 0; i < indexes.Count; i++) luaWaveTable.Set(i + 1, UserData.Create(waves[indexes[i]])); script.SetVar("Wave", DynValue.NewTable(luaWaveTable)); } catch (InterpreterException ex) { UnitaleUtil.DisplayLuaError(nextWaves.Table.Get(currentWaveScript + 1).String + ".lua", UnitaleUtil.FormatErrorSource(ex.DecoratedMessage, ex.Message) + ex.Message); } } public void NextWave() { waveBeginTime = Time.time; turnCount++; PrepareWave(); if (script.GetVar("wavetimer") != null) waveTimer = Time.time + (float)script.GetVar("wavetimer").Number; else waveTimer = Time.time + 4.0f; } public void EndWave(bool death = false) { Table t = script["Wave"].Table; if (!death) foreach (DynValue obj in t.Keys) { try { (t[obj] as ScriptWrapper).Call("EndingWave"); ScriptWrapper.instances.Remove((ScriptWrapper)t[obj]); } catch { UnitaleUtil.DisplayLuaError(StaticInits.ENCOUNTER, "You shouldn't override Wave, now you get an error :P"); } } if (!GlobalControls.retroMode) foreach (LuaProjectile p in FindObjectsOfType()) if (!p.ctrl.isPersistent) p.ctrl.Remove(); if (ArenaManager.instance.showWhenWaveEnds) ArenaManager.instance.Show(); if (!death) CallOnSelfOrChildren("DefenseEnding"); if (GlobalControls.retroMode) EncounterText = script.GetVar("encountertext").String; script.SetVar("Wave", DynValue.NewTable(new Table(null))); // Projectile.Z_INDEX_NEXT = Projectile.Z_INDEX_INITIAL; // doesn't work yet } public void EndWaveTimer() { waveTimer = Time.time; } public bool WaveInProgress() { return Time.time < waveTimer; } } ================================================ FILE: Assets/Scripts/Battle/EnemyEncounter.cs.meta ================================================ fileFormatVersion: 2 guid: 5a65416e168c49b428ba746d73f328f3 timeCreated: 1447799141 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 120 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Battle/FightUI.cs ================================================ using MoonSharp.Interpreter; using UnityEngine; using UnityEngine.UI; public class FightUI : MonoBehaviour { public LuaSpriteController slice; public LifeBarController lifeBar; public TextManager damageText; public bool shakeInProgress; private int[] shakeX = { 12, -12, 7, -7, 3, -3, 1, -1, 0 }; //private int[] shakeX = new int[] { 24, 0, 0, 0, 0, -48, 0, 0, 0, 0, 38, 0, 0, 0, 0, -28, 0, 0, 0, 0, 20, 0, 0, 0, 0, -12, 0, 0, 0, 0, 8, 0, 0, 0, 0, -2, 0, 0, 0, 0}; private int shakeIndex = -1; private int Damage = FightUIController.DAMAGE_NOT_SET; private int enemyIndex = 1; private float shakeTimer; private float totalShakeTime = 1.5f; public float sliceAnimFrequency = 1 / 6f; public EnemyController enemy; public Vector2 eneSize; private string[] sliceAnim = { "UI/Battle/spr_slice_o_0", "UI/Battle/spr_slice_o_1", "UI/Battle/spr_slice_o_2", "UI/Battle/spr_slice_o_3", "UI/Battle/spr_slice_o_4", "UI/Battle/spr_slice_o_5" }; private bool wait1frame; //Hacky way to wait one frame before launching the lifebars anim private bool needAgain; private bool showedup; public bool stopped; public bool waitingToFade; public bool isInit; public void Setup() { if (isInit) return; lifeBar = transform.GetComponentInChildren(); lifeBar.Start(); lifeBar.AddOutline(1); lifeBar.outline.SetPivot(0.5f, 0.5f); lifeBar.outline.SetAnchor(0.5f, 1); lifeBar.SetVisible(false); damageText = transform.GetComponentInChildren(); damageText.SetFont(SpriteFontRegistry.Get(SpriteFontRegistry.UI_DAMAGETEXT_NAME)); damageText.SetMute(true); slice = LuaSpriteController.GetOrCreate(transform.GetComponentInChildren().gameObject); sliceAnim = UIController.instance.fightUI.sliceAnim; sliceAnimFrequency = UIController.instance.fightUI.sliceAnimFrequency; shakeX = UIController.instance.fightUI.shakeX; if (enemy == null) enemy = UIController.instance.encounter.EnabledEnemies[enemyIndex]; transform.SetParent(enemy.transform); transform.localEulerAngles = Vector3.zero; GetComponent().anchoredPosition = Vector3.zero; isInit = true; } public void Init(int eIndex) { enemyIndex = eIndex; Setup(); } public void QuickInit(int enemyIndex, EnemyController target, int damage) { Init(enemyIndex); enemy = target; if (damage != FightUIController.DAMAGE_NOT_SET) Damage = damage; } public bool Finished() { if (shakeTimer > 0) return shakeTimer >= totalShakeTime; return false; } public void ChangeTarget(EnemyController target) { enemy = target; if (Damage != FightUIController.DAMAGE_NOT_SET) Damage = 0; Damage = FightUIController.instance.GetDamage(enemy, PlayerController.instance.lastHitMult); transform.SetParent(enemy.transform); } public void StopAction(float atkMult) { PlayerController.instance.lastHitMult = FightUIController.instance.GetAtkMult(); bool damagePredefined = Damage != FightUIController.DAMAGE_NOT_SET; stopped = true; UnitaleUtil.TryCall(enemy.script, "BeforeDamageCalculation"); if (!damagePredefined) Damage = FightUIController.instance.GetDamage(enemy, atkMult); //slice.StopAnimation(); slice.SetAnimation(sliceAnim, sliceAnimFrequency); slice.loopmode = "ONESHOT"; } // Update is called once per frame private void Update() { // do not update the attack UI if the ATTACKING state is frozen if (UIController.instance.frozenState != "PAUSE" || !isInit) return; eneSize = enemy.GetComponent().sizeDelta; if (shakeInProgress) { int shakeidx = (int)Mathf.Floor(shakeTimer * shakeX.Length / totalShakeTime); if (Damage > 0 && shakeIndex != shakeidx) { if (shakeIndex != shakeidx && shakeIndex >= shakeX.Length) shakeIndex = shakeX.Length - 1; shakeIndex = shakeidx; Vector2 localEnePos = enemy.GetComponent().anchoredPosition; // get local position to do the shake enemy.GetComponent().anchoredPosition = new Vector2(localEnePos.x + shakeX[shakeIndex], localEnePos.y); } if (shakeTimer < 1.5f) damageText.transform.localPosition = new Vector2(-UnitaleUtil.PredictTextWidth(damageText) / 2 + enemy.offsets[2].x, -eneSize.y / 2 + enemy.offsets[2].y + 40 * (2 + Mathf.Sin(shakeTimer * Mathf.PI * 0.75f))); shakeTimer += Time.deltaTime; if (shakeTimer >= totalShakeTime) shakeInProgress = false; } else if (((!slice.isactive || slice.animcomplete && !slice.img.GetComponent().enabled) && stopped &&!showedup) || needAgain) { needAgain = true; if (!wait1frame) { wait1frame = true; slice.StopAnimation(); slice.Set("empty"); UnitaleUtil.TryCall(enemy.script, "BeforeDamageValues", new[] { DynValue.NewNumber(Damage) }); if (Damage > 0) { AudioSource aSrc = GetComponent(); aSrc.clip = AudioClipRegistry.GetSound("hitsound"); aSrc.Play(); } // set damage numbers and positioning string damageTextStr; if (Damage == 0) { if (enemy.DefenseMissText == null) damageTextStr = "[color:c0c0c0]MISS"; else damageTextStr = "[color:c0c0c0]" + enemy.DefenseMissText; } else if (Damage > 0) damageTextStr = "[color:ff0000]" + Damage; else damageTextStr = "[color:00ff00]" + Damage; damageText.SetText(new TextMessage(damageTextStr, false, true)); damageText.transform.localPosition = new Vector2(-UnitaleUtil.PredictTextWidth(damageText) / 2 + enemy.offsets[2].x, -eneSize.y / 2 + enemy.offsets[2].y + 40); // initiate lifebar and set lerp to its new health value if (Damage != 0) { int newHP = enemy.HP - Damage; lifeBar.outline.img.transform.localPosition = new Vector2(enemy.offsets[2].x - 1, -eneSize.y / 2 + 20 + enemy.offsets[2].y - 1); lifeBar.Resize(enemy.GetComponent().rect.width, 13); lifeBar.SetLerpFull(enemy.HP / (float)enemy.MaxHP, newHP / (float)enemy.MaxHP); lifeBar.SetVisible(true); enemy.doDamage(Damage); } enemy.HandleAttack(Damage); } else { // finally, damage enemy and call its attack handler in case you wanna stop music on death or something shakeInProgress = true; waitingToFade = true; needAgain = false; totalShakeTime = shakeX.Length * (1.5f / 8.0f); showedup = true; } } else if (slice.isactive && !slice.animcomplete) { slice.img.gameObject.GetComponent().sizeDelta = new Vector2(slice.img.GetComponent().sprite.rect.width, slice.img.GetComponent().sprite.rect.height); slice.img.transform.localPosition = new Vector2(enemy.offsets[0].x, enemy.offsets[0].y); } } } ================================================ FILE: Assets/Scripts/Battle/FightUI.cs.meta ================================================ fileFormatVersion: 2 guid: 90650b334312c0e46a40ee76ae7ce652 timeCreated: 1482980917 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Battle/FightUIController.cs ================================================ using System.Collections.Generic; using System.Linq; using UnityEngine; using UnityEngine.UI; public class FightUIController : MonoBehaviour { public static FightUIController instance; public List boundFightUiInstances = new List(); public List allFightUiInstances = new List(); public const int DAMAGE_NOT_SET = -478294; public RectTransform targetRt; public LuaSpriteController line; private float borderX; private const float xSpeed = -450.0f; public int[] shakeX; //Modify it in the Editor if needed //private int[] shakeX = new int[] { 24, 0, 0, 0, 0, -48, 0, 0, 0, 0, 38, 0, 0, 0, 0, -28, 0, 0, 0, 0, 20, 0, 0, 0, 0, -12, 0, 0, 0, 0, 8, 0, 0, 0, 0, -2, 0, 0, 0, 0}; private readonly string[] lineAnim = { "UI/Battle/spr_targetchoice_0", "UI/Battle/spr_targetchoice_1" }; public string[] sliceAnim; //Modify it in the Editor if needed public float sliceAnimFrequency = 1 / 6f; public int targetNumber = 1; public int[] targetIDs = { }; public bool multiHit; public bool stopped; private bool finishingFade; private void LaunchInstance(bool bind = false) { GameObject go = Instantiate(Resources.Load("Prefabs/FightInstance")); go.transform.SetParent(transform); if (bind) boundFightUiInstances.Add(go.GetComponent()); allFightUiInstances.Add(go.GetComponent()); } private void Awake() { line = LuaSpriteController.GetOrCreate(targetRt.gameObject); instance = this; } public void ChangeTarget(EnemyController target) { while (boundFightUiInstances.Count > 1) { allFightUiInstances.Remove(boundFightUiInstances[1]); Destroy(boundFightUiInstances[1].gameObject); boundFightUiInstances.RemoveAt(1); } boundFightUiInstances[0].ChangeTarget(target); } public void SetAlpha(float a) { Color c = Color.white; c.a = a; GetComponent().color = c; } public void Init() { CommonInit(); gameObject.GetComponent().enabled = true; borderX = -GetComponent().rect.width / 2; finishingFade = false; stopped = false; targetRt.anchoredPosition = new Vector2(GetComponent().rect.width / 2, 0); targetRt.GetComponent().enabled = true; line.StopAnimation(); line.Set("UI/Battle/spr_targetchoice_0"); for (int i = 0; i < targetNumber; i++) { LaunchInstance(true); boundFightUiInstances[boundFightUiInstances.Count - 1].Init(targetIDs[i]); } SetAlpha(1.0f); } public void CommonInit() { gameObject.SetActive(true); } public void QuickInit(int damage) { QuickInit(new[] { damage }); } public void QuickInit(int[] damage) { CommonInit(); if (UIController.instance.state == "ATTACKING") return; for (int i = 0; i < targetNumber; i++) { LaunchInstance(); allFightUiInstances[allFightUiInstances.Count - 1].QuickInit(targetIDs[i], UIController.instance.encounter.EnabledEnemies[targetIDs[i]], damage[i]); } if (boundFightUiInstances.Count == 0) HideAttackingUI(); UIController.PlaySoundSeparate("slice"); for (int i = 0; i < targetIDs.Length; i++) allFightUiInstances[allFightUiInstances.Count - 1 - (targetIDs.Length - 1 - i)].StopAction(2.2f); } public void StopAction(float atkMult = -2) { if (stopped) return; stopped = true; foreach (FightUI fight in boundFightUiInstances) fight.StopAction(atkMult); line.SetAnimation(lineAnim, 1 / 12f); UIController.PlaySoundSeparate("slice"); } public int GetDamage(EnemyController enemy, float atkMult) { if (enemy.presetDmg != DAMAGE_NOT_SET) { int dmg = enemy.presetDmg; enemy.ResetPresetDamage(); return dmg; } if (atkMult == -2) atkMult = GetAtkMult(); if (atkMult < 0) return -1; int damage = (int)Mathf.Round(((PlayerCharacter.instance.WeaponATK + PlayerCharacter.instance.ATK - enemy.Defense) + Random.value * 2) * atkMult); if (damage < 0) return 0; if (GlobalControls.crate) damage = -damage; return damage; } public float GetAtkMult() { if (!stopped) return -1.0f; if (Mathf.Abs(targetRt.anchoredPosition.x) <= 12) return 2.2f; float mult = 2.0f - 2.0f * Mathf.Abs(targetRt.anchoredPosition.x * 2.0f / GetComponent().rect.width); if (mult < 0) mult = 0; return mult; } public bool Finished() { if (!stopped) return targetRt.anchoredPosition.x < borderX; return boundFightUiInstances.Count == 0 || boundFightUiInstances.All(fight => fight.Finished()); } public void InitFade() { if (finishingFade) return; finishingFade = true; multiHit = false; targetRt.GetComponent().enabled = false; } public void HideAttackingUI() { if (allFightUiInstances.Count == 0) gameObject.SetActive(false); else { gameObject.GetComponent().enabled = false; targetRt.GetComponent().enabled = false; } } public void DestroyAllAttackInstances(EnemyController enemy) { for (int i = allFightUiInstances.Count - 1; i >= 0; i--) { FightUI f = allFightUiInstances[i]; if (f.enemy != enemy) continue; int boundID = boundFightUiInstances.IndexOf(f); if (boundID != -1) boundFightUiInstances.Remove(f); allFightUiInstances.Remove(f); Destroy(f.gameObject); } if (boundFightUiInstances.Count == 0) HideAttackingUI(); } // Update is called once per frame private void Update() { // do not update the attack UI if the ATTACKING state is frozen if (UIController.instance.frozenState != "PAUSE") return; for (int i = 0; i < allFightUiInstances.Count; i++) if (!boundFightUiInstances.Contains(allFightUiInstances[i])) if (allFightUiInstances[i].Finished()) { Destroy(allFightUiInstances[i].gameObject); allFightUiInstances.RemoveAt(i); i--; if (boundFightUiInstances.Count == 0) HideAttackingUI(); } if (finishingFade) { float resizeProg = 1.0f - ArenaManager.instance.getProgress(); SetAlpha(resizeProg); if (resizeProg != 0.0f) return; while (boundFightUiInstances.Count != 0) { allFightUiInstances.Remove(boundFightUiInstances[boundFightUiInstances.Count - 1]); Destroy(boundFightUiInstances[boundFightUiInstances.Count - 1].gameObject); boundFightUiInstances.RemoveAt(boundFightUiInstances.Count - 1); } gameObject.GetComponent().enabled = true; finishingFade = false; gameObject.SetActive(false); return; } if (boundFightUiInstances.Count != 0) { bool pass = boundFightUiInstances.All(t => t.slice.animcomplete && !t.slice.keyframes.enabled && stopped && t.waitingToFade); if (pass && boundFightUiInstances.All(fightUi => !fightUi.shakeInProgress)) InitFade(); } if (stopped || UIController.instance.state != "ATTACKING") return; float mv = xSpeed * Time.deltaTime; targetRt.anchoredPosition = new Vector2(targetRt.anchoredPosition.x + mv, 0); if (!Finished() || boundFightUiInstances.Count == 0) return; stopped = true; StationaryMissScript smc = Resources.Load("Prefabs/StationaryMiss"); foreach (FightUI fightUi in boundFightUiInstances) { fightUi.enemy.HandleAttack(-1); StationaryMissScript smc2 = Instantiate(smc); if (fightUi.enemy.NoAttackMissText != null) smc2.SetText(fightUi.enemy.NoAttackMissText); smc2.transform.SetParent(GameObject.Find("Canvas").transform); smc2.setPosition(fightUi.transform.position.x, fightUi.transform.position.y + fightUi.eneSize.y / 2 + 40); } InitFade(); } } ================================================ FILE: Assets/Scripts/Battle/FightUIController.cs.meta ================================================ fileFormatVersion: 2 guid: a1cd8741235a5cb47a23270c049ef764 timeCreated: 1447737062 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 190 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Battle/GameOverBehavior.cs ================================================ using System.Collections.Generic; using System.Linq; using MoonSharp.Interpreter; using UnityEngine; using UnityEngine.SceneManagement; using UnityEngine.UI; /// /// The fairly hacky and somewhat unmaintainable Game Over behaviour class. Written in a hurry as it probably wasn't going to get replaced anytime soon. /// This script is attached to the Player object to make it persist on scene switch, and immediately switches to the Game Over scene upon attachment. /// There, the GameOverInit behaviour takes care of calling StartDeath() on this behaviour. /// public class GameOverBehavior : MonoBehaviour { private GameObject brokenHeartPrefab; private GameObject utHeart; private Transform playerParent; public static GameObject battleCamera; public static GameObject battleContainer; public static GameObject gameOverContainer; public static GameObject gameOverContainerOw; private GameObject canvasOW; private GameObject canvasTwo; private readonly string[] heartShardAnim = { "UI/Battle/heartshard_0", "UI/Battle/heartshard_1", "UI/Battle/heartshard_2", "UI/Battle/heartshard_3" }; private TextManager gameOverTxt; private TextManager reviveText; private Image gameOverImage; private Image reviveFade; private Image reviveFade2; private RectTransform[] heartShardInstances = new RectTransform[0]; private Vector2[] heartShardRelocs; private LuaSpriteController[] heartShardCtrl; private AudioSource gameOverMusic; private float breakHeartAfter = 1.0f; private bool breakHeartReviveAfter; private float explodeHeartAfter = 2.5f; private float gameOverAfter = 4.5f; private float fluffybunsAfter = 6.5f; private float internalTimer; private float internalTimerRevive; private float gameOverFadeTimer; private bool started; private bool done; private bool exiting; private bool once; private Vector3 heartPos; private Color heartColor; //private bool overworld = false; private string deathMusic; private string[] deathText; public int playerIndex = -1; public float playerZ = -1; public bool autolinebreakstate; public bool revived; public bool hasRevived; public bool reviveTextSet; public AudioSource musicBefore = null; public AudioClip music = null; public void ResetGameOver() { // Delete instantiated objects Destroy(utHeart); utHeart = null; Destroy(brokenHeartPrefab); brokenHeartPrefab = null; for (int i = 0; i < heartShardInstances.Length; i++) { Destroy(heartShardInstances[i].gameObject); heartShardCtrl[i].Remove(); heartShardCtrl[i] = null; } if (reviveFade2 != null) Destroy(reviveFade2.gameObject); if (!UnitaleUtil.IsOverworld) { UIController.instance.encounter.gameOverStance = false; EnemyEncounter.script.SetVar("autolinebreak", DynValue.NewBoolean(autolinebreakstate)); } heartShardInstances = new RectTransform[0]; breakHeartAfter = 1.0f; breakHeartReviveAfter = false; explodeHeartAfter = 2.5f; gameOverAfter = 4.5f; gameOverMusic.volume = 1; fluffybunsAfter = 6.5f; internalTimer = 0.0f; internalTimerRevive = 0.0f; gameOverFadeTimer = 0.0f; gameOverTxt.HideTextObject(); started = false; done = false; exiting = false; once = false; //overworld = false; playerIndex = -1; playerZ = -1; autolinebreakstate = false; revived = false; reviveTextSet = false; } public void Revive() { revived = true; } public void StartDeath(string[] newDeathText = null, string newDeathMusic = null) { PlayerOverworld.audioCurrTime = 0; if (!UnitaleUtil.IsOverworld) { UIController.instance.encounter.EndWave(true); autolinebreakstate = EnemyEncounter.script.GetVar("autolinebreak").Boolean; EnemyEncounter.script.SetVar("autolinebreak", DynValue.NewBoolean(true)); transform.position = new Vector3(transform.position.x - Misc.cameraX, transform.position.y - Misc.cameraY, transform.position.z); } else autolinebreakstate = true; deathText = newDeathText; deathMusic = newDeathMusic; //Reset the camera's position Misc.MoveCameraTo(0, 0); playerZ = 130; if (UnitaleUtil.IsOverworld) { playerParent = transform.parent.parent; playerIndex = transform.parent.GetSiblingIndex(); // transform.parent.SetParent(null); } else { playerParent = transform.parent; playerIndex = transform.GetSiblingIndex(); transform.SetParent(null); } if (UnitaleUtil.IsOverworld) { /* transform.parent.position = new Vector3(transform.parent.position.x - GameObject.Find("Main Camera OW").transform.position.x - 320, transform.parent.position.y - GameObject.Find("Main Camera OW").transform.position.y - 240, transform.parent.position.z); */ battleCamera = GameObject.Find("Main Camera OW"); battleCamera.SetActive(false); GetComponent().enabled = true; // stop showing the player } else { UIController.instance.encounter.gameOverStance = true; GetComponent().invulTimer = 0; GetComponent().enabled = true; // abort the blink animation if it was playing battleCamera = GameObject.Find("Main Camera"); battleCamera.SetActive(false); battleContainer = GameObject.Find("Canvas"); battleContainer.GetComponent().enabled = false; } // remove all bullets if in retrocompatibility mode if (GlobalControls.retroMode) { foreach (LuaProjectile p in FindObjectsOfType()) BulletPool.instance.Requeue(p); } /*battleContainer = new GameObject("BattleContainer"); foreach (Transform go in UnitaleUtil.GetFirstChildren(null, false)) if (go.name != battleContainer.name &&!go.GetComponent() && go.name != Player.name &&!go.name.Contains("AudioChannel")) go.SetParent(battleContainer.transform); battleContainer.SetActive(false);*/ if (UnitaleUtil.IsOverworld) gameOverContainerOw.SetActive(true); else gameOverContainer.SetActive(true); Camera.main.GetComponent().clip = AudioClipRegistry.GetMusic("mus_gameover"); GameObject.Find("GameOver").GetComponent().sprite = SpriteRegistry.Get("UI/spr_gameoverbg_0"); if (UnitaleUtil.IsOverworld) { utHeart = Instantiate(GameObject.Find("utHeart")); heartColor = utHeart.GetComponent().color; heartColor.a = 1; } else { heartColor = gameObject.GetComponent().color; gameObject.transform.SetParent(GameObject.Find("Canvas GameOver").transform); } //if (overworld) // gameObject.transform.SetParent(GameObject.Find("Canvas OW").transform); //else PlayerCharacter.instance.HP = PlayerCharacter.instance.MaxHP; if (UnitaleUtil.IsOverworld) gameObject.transform.GetComponent().enabled = false;// gameObject.transform.parent.SetParent(GameObject.Find("Canvas GameOver").transform); else { gameObject.transform.SetParent(GameObject.Find("Canvas GameOver").transform); UIStats.instance.setHP(PlayerCharacter.instance.MaxHP); } brokenHeartPrefab = Resources.Load("Prefabs/heart_broken"); reviveText = GameObject.Find("ReviveText").GetComponent(); reviveText.SetCaller(EnemyEncounter.script); reviveFade = GameObject.Find("ReviveFade").GetComponent(); reviveFade.transform.SetAsLastSibling(); gameOverTxt = GameObject.Find("TextParent").GetComponent(); gameOverTxt.SetCaller(EnemyEncounter.script); gameOverImage = GameObject.Find("GameOver").GetComponent(); if (UnitaleUtil.IsOverworld) { /* heartPos = new Vector3(GetComponent().position.x - transform.parent.position.x, GetComponent().position.y + (GetComponent().sizeDelta.y / 2) - transform.parent.position.y, GetComponent().position.z + 100010); */ heartPos = new Vector3((transform.parent.position.x - GameObject.Find("Canvas OW").transform.position.x) + 320, ((transform.parent.position.y + (GetComponent().sizeDelta.y / 2)) - GameObject.Find("Canvas OW").transform.position.y) + 240, GetComponent().position.z + 100010); } else heartPos = gameObject.GetComponent().position; gameOverMusic = Camera.main.GetComponent(); started = true; } // Update is called once per frame private void Update () { if (hasRevived && reviveFade2) { reviveFade2.transform.localPosition = new Vector3(0, 0, 0); if (reviveFade2.color.a > 0.0f) reviveFade2.color = new Color(1, 1, 1, reviveFade2.color.a - Time.deltaTime / 2); else Destroy(reviveFade2.gameObject); } if (!started) return; if (!revived) { if (!once && UnitaleUtil.IsOverworld) { once = true; utHeart.transform.SetParent(GameObject.Find("Canvas GameOver").transform); utHeart.transform.position = heartPos; utHeart.GetComponent().color = heartColor; canvasOW = GameObject.Find("Canvas OW"); canvasOW.SetActive(false); canvasTwo = GameObject.Find("Canvas Two"); canvasTwo.SetActive(false); } else if (!once) { once = true; gameObject.GetComponent().sizeDelta = new Vector2(16, 16); gameObject.GetComponent().enabled = true; // abort the blink animation if it was playing } if (internalTimer > breakHeartAfter) { AudioSource.PlayClipAtPoint(AudioClipRegistry.GetSound("heartbeatbreaker"), Camera.main.transform.position, 0.75f); brokenHeartPrefab = Instantiate(brokenHeartPrefab); brokenHeartPrefab.transform.SetParent(UnitaleUtil.IsOverworld ? GameObject.Find("Canvas GameOver").transform : gameObject.transform); brokenHeartPrefab.GetComponent().position = heartPos; brokenHeartPrefab.GetComponent().color = heartColor; brokenHeartPrefab.GetComponent().enabled = true; if (UnitaleUtil.IsOverworld) utHeart.GetComponent().enabled = false; else { Color color = gameObject.GetComponent().color; gameObject.GetComponent().color = new Color(color.r, color.g, color.b, 0); if (EnemyEncounter.script.GetVar("revive").Boolean) Revive(); } breakHeartAfter = 999.0f; } if (internalTimer > explodeHeartAfter) { AudioSource.PlayClipAtPoint(AudioClipRegistry.GetSound("heartsplosion"), Camera.main.transform.position, 0.75f); brokenHeartPrefab.GetComponent().enabled = false; heartShardInstances = new RectTransform[6]; heartShardRelocs = new Vector2[6]; heartShardCtrl = new LuaSpriteController[6]; for (int i = 0; i < heartShardInstances.Length; i++) { heartShardInstances[i] = Instantiate(SpriteRegistry.GENERIC_SPRITE_PREFAB.gameObject).GetComponent(); heartShardCtrl[i] = LuaSpriteController.GetOrCreate(heartShardInstances[i].gameObject); heartShardInstances[i].transform.SetParent(UnitaleUtil.IsOverworld ? GameObject.Find("Canvas GameOver").transform : gameObject.transform); heartShardInstances[i].GetComponent().position = heartPos; heartShardInstances[i].GetComponent().color = heartColor; heartShardRelocs[i] = Random.insideUnitCircle * 100.0f; heartShardCtrl[i].Set(heartShardAnim[0]); heartShardCtrl[i].SetAnimation(heartShardAnim, 1 / 5f); } explodeHeartAfter = 999.0f; } if (internalTimer > gameOverAfter) { AudioClip originMusic = gameOverMusic.clip; if (deathMusic != null) { try { gameOverMusic.clip = AudioClipRegistry.GetMusic(deathMusic); } catch { UnitaleUtil.DisplayLuaError("game over screen", "The specified death music doesn't exist. (\"" + deathMusic + "\")"); } if (gameOverMusic.clip == null) gameOverMusic.clip = originMusic; } gameOverMusic.Play(); gameOverAfter = 999.0f; } if (internalTimer > fluffybunsAfter) { if (deathText != null) { List text = deathText.Select(str => new TextMessage(str, false, false)).ToList(); TextMessage[] text2 = new TextMessage[text.Count + 1]; for (int i = 0; i < text.Count; i++) text2[i] = text[i]; text2[text.Count] = new TextMessage("", false, false); if (Random.Range(0, 400) == 44) gameOverTxt.SetTextQueue(new[]{ new TextMessage("[color:ffffff][voice:v_fluffybuns][waitall:2]4", false, false), new TextMessage("[color:ffffff][voice:v_fluffybuns][waitall:2]" + PlayerCharacter.instance.Name + "!\n[w:15]Stay determined...", false, false), new TextMessage("", false, false) }); else gameOverTxt.SetTextQueue(text2); } else { // This "4" made us laugh so hard that I kept it :P int fourChance = Random.Range(0, 80); string[] possibleDeathTexts = { "You cannot give up\njust yet...", "It cannot end\nnow...", "Our fate rests upon\nyou...", "Don't lose hope...", "You're going to\nbe alright!"}; if (fourChance == 44) possibleDeathTexts[4] = "4"; gameOverTxt.SetTextQueue(new[]{ new TextMessage("[color:ffffff][voice:v_fluffybuns][waitall:2]" + possibleDeathTexts[Math.RandomRange(0, possibleDeathTexts.Length)], false, false), new TextMessage("[color:ffffff][voice:v_fluffybuns][waitall:2]" + PlayerCharacter.instance.Name + "!\n[w:15]Stay determined...", false, false), new TextMessage("", false, false) }); } fluffybunsAfter = 999.0f; } if (!done) { gameOverImage.color = new Color(1, 1, 1, gameOverFadeTimer); if (gameOverAfter >= 999.0f && gameOverFadeTimer < 1.0f) { gameOverFadeTimer += Time.deltaTime / 2; if (gameOverFadeTimer >= 1.0f) { gameOverFadeTimer = 1.0f; done = true; } } internalTimer += Time.deltaTime; // This is actually dangerous because done can be true before everything's done if timers are modified } else if (!exiting &&!gameOverTxt.AllLinesComplete()) // Note: [noskip] only affects the UI controller's ability to skip, so we have to redo that here. if (InputUtil.Pressed(GlobalControls.input.Confirm) && gameOverTxt.LineComplete()) gameOverTxt.NextLineText(); } else { if (reviveTextSet && !reviveText.AllLinesComplete()) { // Note: [noskip] only affects the UI controller's ability to skip, so we have to redo that here. if (InputUtil.Pressed(GlobalControls.input.Confirm) && reviveText.LineComplete()) reviveText.NextLineText(); } else if (reviveTextSet && !exiting) { exiting = true; } else if (internalTimerRevive >= 5.0f && !reviveTextSet && breakHeartReviveAfter) { if (deathText != null) { List text = new List(); foreach (string str in deathText) text.Add(new TextMessage(str, false, false)); TextMessage[] text2 = new TextMessage[text.Count + 1]; for (int i = 0; i < text.Count; i++) text2[i] = text[i]; text2[text.Count] = new TextMessage("", false, false); reviveText.SetTextQueue(text2); } reviveTextSet = true; } else if (internalTimerRevive > 2.5f && internalTimerRevive < 4.0f) { brokenHeartPrefab.transform.localPosition = new Vector2(Random.Range(-3, 2), Random.Range(-3, 2)); } else if (!breakHeartReviveAfter && internalTimerRevive > 2.5f) { breakHeartReviveAfter = true; AudioSource.PlayClipAtPoint(AudioClipRegistry.GetSound("heartbeatbreaker"), Camera.main.transform.position, 0.75f); if (UnitaleUtil.IsOverworld) utHeart.GetComponent().enabled = true; else { Color color = gameObject.GetComponent().color; gameObject.GetComponent().color = new Color(color.r, color.g, color.b, 1); } Destroy(brokenHeartPrefab); } if (!reviveTextSet) internalTimerRevive += Time.deltaTime; if (exiting && reviveFade.color.a < 1.0f && reviveFade.isActiveAndEnabled) reviveFade.color = new Color(1, 1, 1, reviveFade.color.a + Time.deltaTime / 2); else if (exiting) { // repurposing the timer as a reset delay gameOverFadeTimer -= Time.deltaTime; if (gameOverMusic.volume - Time.deltaTime > 0.0f) gameOverMusic.volume -= Time.deltaTime; else gameOverMusic.volume = 0.0f; if (gameOverFadeTimer < -1.0f) { reviveFade2 = Instantiate(reviveFade.gameObject).GetComponent(); reviveFade2.transform.SetParent(playerParent); reviveFade2.transform.SetAsLastSibling(); reviveFade2.transform.localPosition = new Vector3(0, 0, 0); reviveFade.color = new Color(1, 1, 1, 0); EndGameOverRevive(); if (musicBefore != null) { musicBefore.clip = music; musicBefore.Play(); } hasRevived = true; } } } for (int i = 0; i < heartShardInstances.Length; i++) { heartShardInstances[i].position += (Vector3)heartShardRelocs[i]*Time.deltaTime; heartShardRelocs[i].y -= 100f * Time.deltaTime; } if (!gameOverTxt.isactive) return; if (!exiting && gameOverTxt.AllLinesComplete() && gameOverTxt.LineCount() != 0) { exiting = true; gameOverFadeTimer = 1.0f; } else if (exiting && gameOverFadeTimer > 0.0f) { gameOverImage.color = new Color(1, 1, 1, gameOverFadeTimer); if (!(gameOverFadeTimer > 0.0f)) return; gameOverFadeTimer -= Time.deltaTime / 2; if (gameOverFadeTimer <= 0.0f) gameOverFadeTimer = 0.0f; } else if (exiting) { // repurposing the timer as a reset delay gameOverFadeTimer -= Time.deltaTime; if (gameOverMusic.volume - Time.deltaTime > 0.0f) gameOverMusic.volume -= Time.deltaTime; else gameOverMusic.volume = 0.0f; if (gameOverFadeTimer < -1.0f) { //StaticInits.Reset(); EndGameOver(); } } } public void EndGameOver() { if (!GlobalControls.modDev) SaveLoad.Load(false); if (!UnitaleUtil.IsOverworld) { UIController.EndBattle(true); Destroy(gameObject); if (GlobalControls.modDev) { // Discord Rich Presence DiscordControls.StartModSelect(); SceneManager.LoadScene("ModSelect"); } else { foreach (string str in NewMusicManager.audioname.Keys) if (str == "StaticKeptAudio") { NewMusicManager.Stop(str); ((AudioSource)NewMusicManager.audiolist[str]).clip = null; ((AudioSource)NewMusicManager.audiolist[str]).time = 0; } } } else EndGameOverRevive(); if (GlobalControls.modDev) return; TPHandler tp = Instantiate(Resources.Load("Prefabs/TP On-the-fly")); tp.sceneName = LuaScriptBinder.GetSessionGlobal("PlayerMap").String; if (UnitaleUtil.MapCorrespondanceList.ContainsValue(tp.sceneName)) { foreach (KeyValuePair entry in UnitaleUtil.MapCorrespondanceList) { if (entry.Value != tp.sceneName) continue; tp.sceneName = entry.Key; break; } } tp.position = new Vector3((float)LuaScriptBinder.GetSessionGlobal("PlayerPosX").Number, (float)LuaScriptBinder.GetSessionGlobal("PlayerPosY").Number, LuaScriptBinder.GetSessionGlobal("PlayerPosZ") == null ? 0 : (float)LuaScriptBinder.GetSessionGlobal("PlayerPosZ").Number); tp.direction = 2; tp.noFadeIn = true; tp.noFadeOut = false; DontDestroyOnLoad(tp); tp.LaunchTPInternal(); } public void EndGameOverRevive() { if (!UnitaleUtil.IsOverworld) { transform.SetParent(playerParent); transform.SetSiblingIndex(playerIndex); transform.position = new Vector3(transform.position.x, transform.position.y, playerZ); } else { transform.parent.SetParent(playerParent); transform.parent.SetSiblingIndex(playerIndex); } battleCamera.SetActive(true); if (!UnitaleUtil.IsOverworld) battleContainer.GetComponent().enabled = true; if (UnitaleUtil.IsOverworld) { canvasOW.SetActive(true); canvasTwo.SetActive(true); PlayerOverworld.instance.enabled = true; PlayerOverworld.instance.RestartMusic(); GetComponent().enabled = true; } ResetGameOver(); if (!UnitaleUtil.IsOverworld) { ArenaManager.instance.ResizeImmediate(ArenaManager.UIWidth, ArenaManager.UIHeight); UIController.instance.SwitchState("ACTIONSELECT"); gameOverContainer.SetActive(false); } else gameOverContainerOw.SetActive(false); } } ================================================ FILE: Assets/Scripts/Battle/GameOverBehavior.cs.meta ================================================ fileFormatVersion: 2 guid: 748e7f2c60fd0194f942eef4ac4f63d3 timeCreated: 1498875626 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Battle/GameOverInit.cs ================================================ using UnityEngine; using UnityEngine.UI; /// /// Initiates the death sequence. Used in the Game Over scene to make sure the player doesn't go looking for objects before the Game Over scene has loaded. /// public static class GameOverInit { public static void Launch() { //GameObject.Find("player").GetComponent().sprite = null; Camera.main.GetComponent().clip = AudioClipRegistry.GetMusic("mus_gameover"); GameObject.Find("GameOver").GetComponent().sprite = SpriteRegistry.Get("UI/spr_gameoverbg_0"); Object.FindObjectOfType().StartDeath(); } } ================================================ FILE: Assets/Scripts/Battle/GameOverInit.cs.meta ================================================ fileFormatVersion: 2 guid: bead292e429bf7d4c88fb8f5ade53c50 timeCreated: 1449513303 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Battle/LifeBarController.cs ================================================ using MoonSharp.Interpreter; using UnityEngine; using UnityEngine.UI; /// /// Controller for all the lifebars in the game. To be used with the HPBar prefab. /// Contains a background sprite, a mask sprite, and a fill sprite, parented in that order. /// Sprites can be used instead of the standard "px" sprite, however the sprites for the /// background and fill must have the same size. /// public class LifeBarController : MonoBehaviour { public LuaSpriteController background, mask, fill, outline; [MoonSharpHidden] public RectTransform backgroundRt, maskRt, fillRt, outlineRt; public float currentFill { get; private set; } private float oldFill = 1.0f; private float desiredFill = 1.0f; private float fillLinearTime = 1.0f; // how many seconds does it take to go from current healthbar position to new healthbar position private float fillTimer; private bool init; private bool needInstant; public bool inLerp { get; private set; } public bool hasOutline { get { return outline != null; } } private int _outlineThickness; public int outlineThickness { get { return _outlineThickness; } set { if (outline == null) return; _outlineThickness = value; Resize(background.xscale, background.yscale); } } public bool isactive { get { return background.isactive; } } /// /// Creates a bar object using its position and size. /// /// Absolute X position of the bottom left corner of the bar. /// Absolute Y position of the bottom left corner of the bar. /// Width of the bar object, in pixels. /// Height of the bar object, in pixels. /// public static LifeBarController Create(float x, float y, float width, float height = 20) { LifeBarController lifebar = Instantiate(Resources.Load("Prefabs/HPBar")); lifebar.Start(); lifebar.background.MoveToAbs(x, y); lifebar.Resize(width, height); return lifebar; } /// /// Creates a bar object using its position and either one sprite applied to both sprite objects, or one sprite for each sprite object. /// /// Absolute X position of the bottom left corner of the bar. /// Absolute Y position of the bottom left corner of the bar. /// Path to the sprite used for the bar object's background. /// Path to the sprite used for the bar object's fill. Will use backgroundsprite if not given. /// public static LifeBarController Create(float x, float y, string backgroundSprite, string fillSprite = null) { LifeBarController lifebar = Instantiate(Resources.Load("Prefabs/HPBar")); lifebar.Start(); lifebar.background.MoveToAbs(x, y); lifebar.SetSprites(backgroundSprite, fillSprite); lifebar.background.color = lifebar.fill.color = new float[] { 1, 1, 1 }; if (lifebar.outlineRt) lifebar.outline.color = lifebar.background.color; return lifebar; } /// /// Initializes needed variables as well as the bar object's size. /// [MoonSharpHidden] public void Start() { if (init) return; backgroundRt = GetComponent(); maskRt = backgroundRt.GetChild(0).GetComponent(); fillRt = maskRt.GetChild(0).GetComponent(); background = LuaSpriteController.GetOrCreate(gameObject); mask = LuaSpriteController.GetOrCreate(maskRt.gameObject); fill = LuaSpriteController.GetOrCreate(fillRt.gameObject); if (!backgroundRt.parent) background.layer = "BelowArena"; float width = backgroundRt.sizeDelta.x, height = backgroundRt.sizeDelta.y; background.Set("bar-px"); mask.Set("bar-px"); fill.Set("bar-px"); Resize(width, height); mask.Mask("stencil"); currentFill = 1; init = true; } /// /// Set the healthbar's fill to this value on the same frame. /// /// Healthbar fill in range of [0.0, 1.0]. /// True if the value can go outside of bounds. public void SetInstant(float fillValue, bool allowNonClamped = false) { if (!allowNonClamped) fillValue = Mathf.Clamp01(fillValue); desiredFill = fillValue; fillTimer = fillLinearTime; inLerp = false; needInstant = true; } /// /// Start a linear-time transition from first value to second value. /// /// Value to start the healthbar at, in range of [0.0, 1.0]. /// Value the healthbar should be at when finished, in range of [0.0, 1.0]. /// Time for the healthbar to reach its destination in frames. /// True if values outside of the range [0.0, 1.0] should be kept. public void SetLerpFull(float originalValue, float fillValue, int time = 60, bool allowNonClamped = false) { fillLinearTime = time / 60f; if (!allowNonClamped) { fillValue = Mathf.Clamp01(fillValue); originalValue = Mathf.Clamp01(originalValue); } SetInstant(originalValue); currentFill = originalValue; oldFill = currentFill; desiredFill = fillValue; fillTimer = 0.0f; inLerp = true; } /// /// Start a linear-time transition from the current value to a given value. /// /// Value the healthbar should be at when finished, in range of [0.0, 1.0]. /// Time for the healthbar to reach its destination in frames. /// True if values outside of the range [0.0, 1.0] should be kept. public void SetLerp(float fillValue, int time = 60, bool allowNonClamped = false) { SetLerpFull(currentFill, fillValue, time, allowNonClamped); } /// /// Adds an outline with a given color to the bar object. /// Don't forget to move the outline from now on, not the background! /// /// Thickness of the outline, in pixels. /// Red color of the outline. /// Green color of the outline. /// Blue color of the outline. public void AddOutline(int thickness, float r = 0, float g = 0, float b = 0) { if (!isactive) return; if (outlineRt) RemoveOutline(); outline = (LuaSpriteController)SpriteUtil.MakeIngameSprite("bar-px", -1).UserData.Object; outlineRt = outline.spr.GetComponent(); outlineRt.gameObject.name = "HPBarOutline"; outline.Scale(backgroundRt.sizeDelta.x + 2 * thickness, backgroundRt.sizeDelta.y + 2 * thickness); outline.SetPivot(0, 0); outline.SetAnchor(0, 0); outline.MoveToAbs(background.absx - thickness, background.absy - thickness); outline.color = new[] { r, g, b }; outlineRt.SetParent(backgroundRt.parent); outlineRt.SetSiblingIndex(outlineRt.GetSiblingIndex()); background.SetParent(outline); outlineThickness = thickness; } /// /// Removes the bar object's outline if it has one. /// public void RemoveOutline() { if (!isactive) return; if (!outlineRt) return; backgroundRt.SetParent(outlineRt.parent); backgroundRt.SetSiblingIndex(outlineRt.GetSiblingIndex()); Destroy(outlineRt.gameObject); outline = null; outlineRt = null; outlineThickness = 0; } /// /// Scales all elements of the bar using the given x and y scale. /// /// New x scale of the bar object. /// New y scale of the bar object. /// True of the outline should be resized as well. public void Resize(float width, float height, bool updateOutline = true) { if (!isactive) return; // Update the position and size of the outline if (outlineRt && updateOutline) { outline.Scale((width + outlineThickness * 2) * background.width / outline.width, (height + outlineThickness * 2) * background.height / outline.height); Vector2 oldPos = new Vector2(background.absx, background.absy); background.MoveTo(outlineThickness, outlineThickness); outline.Move(oldPos.x - background.absx, oldPos.y - background.absy); } background.Scale(width, height); mask.Scale(currentFill * width * background.width / mask.width, height * background.height / mask.height); fill.Scale(width, height); if (!inLerp) SetInstant(currentFill, true); } /// /// Sets the sprites for all elements of the bar object, and resizes all elemetns accordingly. /// /// New sprite for the bar object's background. /// New sprite for the bar object's fill. Will copy bgSprite if null or empty. /// New sprite for the bar object's mask. Will do nothing if null or empty. /// New sprite for the bar object's background. Will do nothing if there's no outline, or if null or empty. public void SetSprites(string bgSprite, string fSprite = null, string mSprite = null, string oSprite = null) { if (!isactive) return; background.Set(bgSprite); fill.Set(string.IsNullOrEmpty(fSprite) ? bgSprite : fSprite); if (!string.IsNullOrEmpty(mSprite)) mask.Set(mSprite); if (hasOutline && !string.IsNullOrEmpty(oSprite)) outline.Set(oSprite); Resize(1, 1); } /// /// Set the fill color of this healthbar. /// /// Color for present health. [MoonSharpHidden] public void SetFillColor(Color c) { if (!isactive) return; fill.color = new[] { c.r, c.g, c.b, c.a }; } /// /// Set the background color of this healthbar. /// /// Color for missing health. [MoonSharpHidden] public void SetBackgroundColor(Color c) { if (!isactive) return; background.color = new[] { c.r, c.g, c.b, c.a }; } /// /// Sets visibility for the image components of the healthbar. /// /// True for visible, false for hidden. public void SetVisible(bool visible) { if (!isactive) return; foreach (Image img in (outlineRt ?? backgroundRt).GetComponentsInChildren()) img.enabled = visible; } /// /// Destroys this bar object's instance. /// public void Remove() { if (!isactive) return; if (this == UIStats.instance.lifebar) throw new CYFException("You can't remove the player's lifebar!"); if (hasOutline) outline.Remove(); background.Remove(); } /// /// Takes care of moving the healthbar to its intended position. /// private void Update() { if (!isactive) return; if (!needInstant) { if (!inLerp) return; if (Mathf.Abs(currentFill - desiredFill) < 0.0001f || UIController.instance.frozenState != "PAUSE") { inLerp = false; return; } } currentFill = Mathf.Lerp(oldFill, desiredFill, fillTimer / fillLinearTime); mask.Scale(currentFill * backgroundRt.sizeDelta.x, backgroundRt.sizeDelta.y); if (background.spritename == "bar-px" && mask.spritename == "bar-px" && fill.spritename == "bar-px") { if (currentFill < 0 || currentFill > 1) fill.Scale(currentFill * backgroundRt.sizeDelta.x, backgroundRt.sizeDelta.y); else fill.Scale(backgroundRt.sizeDelta.x, backgroundRt.sizeDelta.y); } fillTimer += Time.deltaTime; needInstant = false; } } ================================================ FILE: Assets/Scripts/Battle/LifeBarController.cs.meta ================================================ fileFormatVersion: 2 guid: 027295703e2bc8b43957a76a2f9357ff timeCreated: 1447699606 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Battle/StationaryMissScript.cs ================================================ using UnityEngine; /// /// Fairly hacky way for the static MISS to appear over enemies if you don't press the attack button. /// public class StationaryMissScript : MonoBehaviour { private TextManager mgr; private const float secondsToDespawn = 1.5f; private float despawnTimer; public string text = "MISS"; public void setPosition(float xPos, float yPos) { mgr.transform.position = new Vector2(xPos - UnitaleUtil.PredictTextWidth(mgr) / 2, Mathf.Min(yPos, 430)); } public void SetText(string _text) { text = _text; } private void Awake() { mgr = GetComponent(); mgr.SetFont(SpriteFontRegistry.Get(SpriteFontRegistry.UI_DAMAGETEXT_NAME)); mgr.SetText(new TextMessage("[color:c0c0c0]" + text, false, true)); } private void Update(){ if (UIController.instance.frozenState != "PAUSE") return; despawnTimer += Time.deltaTime; if (despawnTimer > secondsToDespawn) Destroy(gameObject); } } ================================================ FILE: Assets/Scripts/Battle/StationaryMissScript.cs.meta ================================================ fileFormatVersion: 2 guid: 35a9599780d5954468ee106320acb996 timeCreated: 1450722569 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Battle/UIController.cs ================================================ using System; using System.Collections; using System.Collections.Generic; using System.Linq; using MoonSharp.Interpreter; using UnityEngine; using UnityEngine.SceneManagement; using UnityEngine.UI; /// /// The class responsible for making some people lose faith in the project. In very dire need of refactoring, /// but hard to do until functionality can be split into battle and overworld functions. /// /// As it stands this class is a messy finite state machine that takes care of controlling not only the battle, /// but also a lot of things it shouldn't (text manager, enemy dialogue, keyboard controls etc.) /// If you're familiar with the term cyclomatic complexity, you probably wouldn't want to hire me at this point. /// /// The eventual redesign of the UI controller will try to change over as much of the functionality to Lua. /// As we're missing some key functionality to accomplish this, refactoring has been put off for now. /// public class UIController : MonoBehaviour { public static UIController instance; // The instance of this class, only one UIController should exist at all times public LuaTextManager mainTextManager; // Main text manager in the arena public static Sprite fightButtonSprite, actButtonSprite, itemButtonSprite, mercyButtonSprite; // UI button sprites when the soul is selecting them public Image fightButton, actButton, itemButton, mercyButton; // UI button objects in the scene public Actions action = Actions.FIGHT; // Current action chosen when entering the state ENEMYSELECT public Actions forcedAction = Actions.NONE; // Action forced by the user previously for the next time we enter the state ENEMYSELECT public GameObject arenaParent; // Arena's parent, which will be used to manipulate it public GameObject psContainer; // Container for any particle effect used when using sprite.Dust() and when sparing or killing an enemy private AudioSource uiAudio; // AudioSource only used to play the sound menumove when the Player moves in menus internal EnemyEncounter encounter; // Main encounter script [HideInInspector] public FightUIController fightUI; // Main Player attack handler private readonly Vector2 initialHealthPos = new Vector2(250, -2); // Initial health bar position for target selection public LuaTextManager[] monsterDialogues = new LuaTextManager[0]; // Enemies' dialogue bubbles' text objects appearing in the state ENEMYDIALOGUE public EnemyController[] monsterDialogueEnemy; // Stores the enemies associated with the dialogue bubbles private bool musicPausedFromRunning; // Used to pause the BGM when trying to flee in retromode for a comedic effect private int runAwayAttempts; // Amount of times the Player tried to flee unsuccessfully in this encounter private int selectedAction; // Act option chosen by the Player private int selectedEnemy; // Enemy chosen by the Player private int selectedItem; // Item chosen by the Player private int selectedMercy; // Mercy option chosen by the Player private bool[] disabledActions = { false, false, false, false }; // Actions disabled by the player public Vector2[] playerOffsets = { new Vector2(16, 19), new Vector2(16, 19), new Vector2(16, 19), new Vector2(16, 19) }; // Player can customize its position on the button. private int meCry; // Used to display which dialogue should be displayed if the MECRY button has been selected, in CrateYourFrisk mode public int exp = 0; // Amount of EXP earned by the Player at the end of the encounter public int gold = 0; // Amount of Gold earned by the Player at the end of the encounter internal string state = "ACTIONSELECT"; // Current state of the battle private string stateAfterDialogs = "DEFENDING"; // State to enter after the current arena dialogue is done. Only used after a proper call to BattleDialog() private string lastNewState = "UNUSED"; // Allows the detection of state changes during an OnDeath() call so the engine can switch to it properly private bool parentStateCall = true; // Used to stop the execution of a previous State() call if a new call has been done and to prevent infinite EnteringState() loops private bool childStateCalled; // Used to stop the execution of a previous State() call if a new call has been done and to prevent infinite EnteringState() loops private bool fleeSwitch; // True if the Player fled, and the encounter can be ended public List messages = new List(); // Stores the messages enemies will say in the state ENEMYDIALOGUE public bool[] readyToNextLine; // Used to know which enemy bubbles are done displaying their text public bool checkDeathCall; // Used to force the check on whether the enemies are dead or not private bool onDeathSwitch; // Allows to switch to a given state if State() was used in OnDeath() public bool stateSwitched; // True if the state has been changed this frame, false otherwise public bool battleDialogueStarted; // True if the battle dialog is being displayed, false otherwise. Only used for the state ITEMMENU, and not updated outside of it public enum Actions { FIGHT, ACT, ITEM, MERCY, NONE } // Action enumeration used to know which main UI button we're selecting or we chose // Dictionaries used to link values gracefully public Dictionary buttonDictionary = new Dictionary(); public Dictionary buttonSpriteDictionary = new Dictionary(); public Dictionary buttonBasePositions = new Dictionary(); public Dictionary buttonBasePlayerPositions = new Dictionary(); /* public enum UIState { NONE, // Initial state. Used to see if a modder has changed the state before the UI controller wants to ACTIONSELECT, // Selecting an action (FIGHT/ACT/ITEM/MERCY) ATTACKING, // Player attack screen DEFENDING, // Enemy attack phase, bullet waves appear here ENEMYSELECT, // Selecting an enemy target for FIGHT or ACT ACTMENU, // Open up the act menu ITEMMENU, // Open up the item menu MERCYMENU, // Open up the mercy menu ENEMYDIALOGUE, // The Player is visible and the arena is resizing, but the enemy still has own dialogue DIALOGRESULT, // Transition state leading to either UIState.ENEMYDIALOGUE or UIState.DEFENDING DONE, // Finished state of battle. Returns the Player to the mod selection screen or the overworld UNUSED, // Used for OnDeath(). Keep this state secret, please PAUSE // Used exclusively for State("PAUSE"). Not a real state, but it needs to be listed to allow users to call State("PAUSE") }*/ public List UIStates = new List() {"NONE", "ACTIONSELECT", "ATTACKING", "DEFENDING", "ENEMYSELECT", "ACTMENU", "ITEMMENU", "MERCYMENU", "ENEMYDIALOGUE", "DIALOGRESULT", "DONE", "UNUSED", "PAUSE"}; // Variables for PAUSE's "encounter freezing" behavior public string frozenState = "PAUSE"; // Used to keep track of what state was frozen public float frozenTimestamp; // Used for DEFENDING's wavetimer private bool frozenControlOverride = true; // Used for the Player's control override private bool frozenPlayerVisibility = true; // Used for the Player's invincibility timer when hurt public delegate void Message(); public static event Message SendToStaticInit; public void ActionDialogResult(TextMessage msg, string afterDialogState = "ENEMYDIALOGUE") { ActionDialogResult(new[] { msg }, afterDialogState); } public void ActionDialogResult(TextMessage[] msg, string afterDialogState = "ENEMYDIALOGUE") { stateAfterDialogs = afterDialogState; SwitchState("DIALOGRESULT"); mainTextManager.SetTextQueue(msg); } public static void EndBattle(bool fromGameOver = false) { MusicManager.SetSoundDictionary("RESETDICTIONARY", ""); LuaSpriteController spr = (LuaSpriteController)SpriteUtil.MakeIngameSprite("black", -1).UserData.Object; if (GameObject.Find("TopLayer")) spr.layer = "Top"; spr.Scale(640, 480); if (GlobalControls.modDev) //Empty the inventory if not in the overworld Inventory.inventory.Clear(); Inventory.RemoveAddedItems(); KeyboardInput.ResetEncounterInputs(); if (GlobalControls.modDev) PlayerCharacter.instance.MaxHPShift = 0; PlayerCharacter.instance.ATK = 8 + 2 * PlayerCharacter.instance.LV; PlayerCharacter.instance.DEF = 10 + (int)Mathf.Floor((PlayerCharacter.instance.LV - 1) / 4f); #if UNITY_STANDALONE_WIN || UNITY_EDITOR_WIN Misc.WindowName = GlobalControls.crate ? ControlPanel.instance.WinodwBsaisNmae : ControlPanel.instance.WindowBasisName; #endif if (instance && instance.psContainer != null) instance.psContainer.SetActive(false); //Stop encounter storage for good! if (GlobalControls.modDev) { ScriptWrapper.instances.Clear(); } else { foreach (EnemyController enemy in instance.encounter.enemies) ScriptWrapper.instances.Remove(enemy.script); Table t = EnemyEncounter.script["Wave"].Table; foreach (DynValue obj in t.Keys) { try { ScriptWrapper.instances.Remove(((ScriptWrapper)t[obj])); } catch { /* ignored */ } } ScriptWrapper.instances.Remove(EnemyEncounter.script); } //Properly set "isInFight" to false, as it shouldn't be true anymore GlobalControls.isInFight = false; LuaScriptBinder.ClearBattleGlobals(); GlobalControls.stopScreenShake = true; Cursor.visible = true; MusicManager.hiddenDictionary.Clear(); if (GlobalControls.modDev) { List toDelete = NewMusicManager.audioname.Keys.Where(str => str != "src").ToList(); foreach (string str in toDelete) NewMusicManager.DestroyChannel(str); PlayerCharacter.instance.Reset(); // Discord Rich Presence DiscordControls.StartModSelect(); SceneManager.LoadScene("ModSelect"); } else { foreach (string str in NewMusicManager.audioname.Keys.Where(str => str != "StaticKeptAudio")) NewMusicManager.Stop(str); SceneManager.UnloadSceneAsync("Battle"); PlayerOverworld.ShowOverworld("Battle"); } //Reset to 4:3 ScreenResolution.ResetAfterBattle(); Time.timeScale = 1; } public void SwitchState(string newState, bool first = false) { stateSwitched = true; if (onDeathSwitch) { lastNewState = newState; return; } //Pre-state if (fleeSwitch && newState != "DONE") return; if (parentStateCall) { parentStateCall = false; try { EnemyEncounter.script.Call("EnteringState", new[] { DynValue.NewString(newState), DynValue.NewString(state) }); } catch (InterpreterException ex) { UnitaleUtil.DisplayLuaError(EnemyEncounter.script.scriptname, UnitaleUtil.FormatErrorSource(ex.DecoratedMessage, ex.Message) + ex.Message); } parentStateCall = true; if (childStateCalled) { childStateCalled = false; return; } } else { childStateCalled = true; } // Quick and dirty addition to add some humor to the Run away command. if (musicPausedFromRunning) { Camera.main.GetComponent().UnPause(); musicPausedFromRunning = false; } // END DEBUG // below: actions based on ending a previous state, or actions that affect multiple states // PAUSE can freeze states if (newState == "PAUSE" && frozenState != "PAUSE") return; if (newState == "PAUSE" && frozenState == "PAUSE") { frozenState = state; // execute extra code based on the state that is being frozen switch(frozenState) { case "ACTIONSELECT": case "DIALOGRESULT": mainTextManager.SetPause(true); break; case "DEFENDING": frozenControlOverride = PlayerController.instance.overrideControl; PlayerController.instance.setControlOverride(true); frozenTimestamp = Time.time; break; case "ENEMYDIALOGUE": TextManager[] textManagers = FindObjectsOfType(); foreach (TextManager textManager in textManagers) if (textManager.gameObject.name.StartsWith("DialogBubble")) // game object name is hardcoded as it won't change textManager.SetPause(true); break; case "ATTACKING": FightUI fui = fightUI.boundFightUiInstances[0]; if (fui.slice != null && fui.slice.keyframes != null) fui.slice.keyframes.paused = true; if (fightUI.line != null && fightUI.line.keyframes != null) fightUI.line.keyframes.paused = true; break; } frozenPlayerVisibility = PlayerController.instance.selfImg.enabled; PlayerController.instance.selfImg.enabled = true; return; } if (newState == frozenState && frozenState != "PAUSE") { // execute extra code based on the state that is being un-frozen switch(frozenState) { case "ACTIONSELECT": case "DIALOGRESULT": mainTextManager.SetPause(true); break; case "DEFENDING": PlayerController.instance.setControlOverride(frozenControlOverride); frozenTimestamp = Time.time - frozenTimestamp; encounter.waveTimer += frozenTimestamp; break; case "ENEMYDIALOGUE": TextManager[] textManagers = FindObjectsOfType(); foreach (TextManager textManager in textManagers) if (textManager.gameObject.name.StartsWith("DialogBubble")) // game object name is hardcoded as it won't change textManager.SetPause(false); break; case "ATTACKING": FightUI fui = fightUI.boundFightUiInstances[0]; if (fui.slice != null && fui.slice.keyframes != null) fui.slice.keyframes.paused = false; if (fightUI.line != null && fightUI.line.keyframes != null) fightUI.line.keyframes.paused = false; break; } PlayerController.instance.selfImg.enabled = frozenPlayerVisibility; frozenState = "PAUSE"; return; } frozenState = "PAUSE"; frozenTimestamp = 0.0f; if (newState == "DEFENDING" || newState == "ENEMYDIALOGUE") { PlayerController.instance.setControlOverride(newState != "DEFENDING"); mainTextManager.SetText(DynValue.NewString("")); PlayerController.instance.SetPosition(ArenaManager.instance.currentX, ArenaManager.instance.currentY + 70, true); PlayerController.instance.GetComponent().enabled = true; mainTextManager.SetPause(true); } else if ((state == "DEFENDING" || state == "ENEMYDIALOGUE") && newState != "DEFENDING" && newState != "ENEMYDIALOGUE") { ArenaManager.instance.ResetArena(); PlayerController.instance.invulTimer = 0.0f; PlayerController.instance.setControlOverride(true); } if (state == "ENEMYSELECT" && forcedAction == Actions.FIGHT) foreach (LifeBarController lbc in arenaParent.GetComponentsInChildren()) Destroy(lbc.gameObject); else if (state == "ENEMYDIALOGUE") { foreach (EnemyController enemy in encounter.enemies) { enemy.HideBubble(); if (!enemy.bubbleObject) continue; LuaTextManager sbTextMan = enemy.bubbleObject.GetComponentInChildren(); if (!sbTextMan) continue; sbTextMan.HideTextObject(); } } else if (state == "ATTACKING") FightUIController.instance.HideAttackingUI(); else if (state == "DIALOGRESULT") mainTextManager.SetCaller(EnemyEncounter.script); string oldState = state; state = newState; //encounter.CallOnSelfOrChildren("Entered" + Enum.GetName(typeof(UIState), state).Substring(0, 1) // + Enum.GetName(typeof(UIState), state).Substring(1, Enum.GetName(typeof(UIState), state).Length - 1).ToLower()); if (oldState == "DEFENDING" && state != "DEFENDING") { string current = state; encounter.EndWave(); if (state != current && !GlobalControls.retroMode) return; } mainTextManager.SetMugshot(DynValue.NewNil()); SetPlayerOnAction(action); switch (state) { case "ATTACKING": // Error for no active enemies if (encounter.EnabledEnemies.Length == 0) throw new CYFException("Cannot enter state ATTACKING with no active enemies."); // Disable all current attack instances otherwise they break // TODO: Find the exact reason why they break foreach (EnemyController enemy in encounter.EnabledEnemies) FightUIController.instance.DestroyAllAttackInstances(enemy); mainTextManager.SetText(DynValue.NewString("")); PlayerController.instance.GetComponent().enabled = false; if (!fightUI.multiHit) { fightUI.targetIDs = new[] { selectedEnemy }; fightUI.targetNumber = 1; } fightUI.Init(); break; case "ACTIONSELECT": forcedAction = Actions.NONE; PlayerController.instance.setControlOverride(true); PlayerController.instance.GetComponent().enabled = true; mainTextManager.SetPause(ArenaManager.instance.isResizeInProgress()); if (!GlobalControls.retroMode) { mainTextManager.SetEffect(new TwitchEffect(mainTextManager)); encounter.EncounterText = EnemyEncounter.script.GetVar ("encountertext").String; } if (encounter.EncounterText == null) { encounter.EncounterText = ""; UnitaleUtil.Warn("There is no encounter text!"); } mainTextManager.SetText(new RegularMessage(encounter.EncounterText)); break; case "ACTMENU": string[] actions = new string[encounter.EnabledEnemies[selectedEnemy].ActCommands.Length]; if (actions.Length == 0) throw new CYFException("Cannot enter state ACTMENU without commands."); for (int i = 0; i < actions.Length; i++) actions[i] = encounter.EnabledEnemies[selectedEnemy].ActCommands[i]; selectedAction = 0; SetPlayerOnSelection(selectedAction); if (!GlobalControls.retroMode) mainTextManager.SetEffect(new TwitchEffect(mainTextManager)); mainTextManager.SetText(new SelectMessage(GetActPage(actions, 0, mainTextManager.columnNumber), false, mainTextManager.columnNumber)); break; case "ITEMMENU": battleDialogueStarted = false; // Error for empty inventory if (Inventory.inventory.Count == 0) throw new CYFException("Cannot enter state ITEMMENU with empty inventory."); else { string[] items = GetInventoryPage(0, mainTextManager.columnNumber); selectedItem = 0; if (!GlobalControls.retroMode) mainTextManager.SetEffect(new TwitchEffect(mainTextManager)); mainTextManager.SetText(new SelectMessage(items, false, mainTextManager.columnNumber)); SetPlayerOnSelection(0); /*ActionDialogResult(new TextMessage[] { new TextMessage("Can't open inventory.\nClogged with pasta residue.", true, false), new TextMessage("Might also be a dog.\nIt's ambiguous.",true,false) }, UIState.ENEMYDIALOGUE);*/ } break; case "MERCYMENU": if (LuaScriptBinder.GetSessionGlobal("ForceNoFlee") != null) { EnemyEncounter.script.SetVar("flee", DynValue.NewBoolean(false)); LuaScriptBinder.RemoveSessionGlobal("ForceNoFlee"); } if (!EnemyEncounter.script.GetVar("flee").Boolean && EnemyEncounter.script.GetVar("flee").Type != DataType.Nil) encounter.CanRun = false; else encounter.CanRun = true; selectedMercy = 0; string[] mercyOptions = new string[1 + (encounter.CanRun ? 1 : 0)]; mercyOptions[0] = "Spare"; if (encounter.EnabledEnemies.Any(enemy => enemy.CanSpare)) { string hexColor = ParseUtil.GetBytesFromColor(encounter.SpareColor, true); mercyOptions[0] = "[alpha:" + hexColor.Substring(6) + "][starcolor:" + hexColor.Substring(0, 6) + "][color:" + hexColor.Substring(0, 6) + "]" + mercyOptions[0] + "[color:ffffff]"; } if (encounter.CanRun) mercyOptions[1] = "Flee"; if (!GlobalControls.retroMode) mainTextManager.SetEffect(new TwitchEffect(mainTextManager)); mainTextManager.SetText(new SelectMessage(mercyOptions, true, mainTextManager.columnNumber)); SetPlayerOnSelection(0); break; case "ENEMYSELECT": // Error for no active enemies if (encounter.EnabledEnemies.Length == 0) throw new CYFException("Cannot enter state ENEMYSELECT with no active enemies."); if (!GlobalControls.retroMode) mainTextManager.SetEffect(new TwitchEffect(mainTextManager)); int enemyPage = encounter.EnabledEnemies.Length <= 3 ? 0 : selectedEnemy / 2; string[] colors; string[] textTemp = GetEnemyPage(enemyPage, mainTextManager.columnNumber, out colors); mainTextManager.SetText(new SelectMessage(textTemp, false, mainTextManager.columnNumber, colors)); if (forcedAction != Actions.FIGHT && forcedAction != Actions.ACT) forcedAction = action; if (forcedAction == Actions.FIGHT) { int maxWidth = (int)initialHealthPos.x, count = 0; for (int i = 0; i < encounter.EnabledEnemies.Length; i++) { if (encounter.EnabledEnemies.Length > 3) if (i > 1) break; //int mNameWidth = UnitaleUtil.fontStringWidth(mainTextManager.Charset, "* " + encounter.enabledEnemies[i].Name) + 50; for (int j = count; j < mainTextManager.textQueue[mainTextManager.currentLine].Text.Length; j++) if (mainTextManager.textQueue[mainTextManager.currentLine].Text[j] == '\n' || mainTextManager.textQueue[mainTextManager.currentLine].Text[j] == '\r') break; count++; //int mNameWidth = (int)UnitaleUtil.calcTotalLength(mainTextManager, lastCount, count); for (int j = 0; j <= 1 && j < encounter.EnabledEnemies.Length; j++) { int mNameWidth = (int)UnitaleUtil.PredictTextWidth(mainTextManager) + 50; if (mNameWidth > maxWidth) maxWidth = mNameWidth; } } for (int i = 0; i < encounter.EnabledEnemies.Length; i++) { if (encounter.EnabledEnemies.Length > 3) if (i > 1) break; RenewLifeBars(encounter.EnabledEnemies.Length > 3 ? selectedEnemy / 2 : 0); } } if (selectedEnemy >= encounter.EnabledEnemies.Length) selectedEnemy = 0; SetPlayerOnSelection((encounter.EnabledEnemies.Length > 3 ? selectedEnemy % 2 : selectedEnemy) * mainTextManager.columnNumber); // single list so skip right row by multiplying x2 break; case "DEFENDING": ArenaManager.instance.Resize((int)encounter.ArenaSize.x, (int)encounter.ArenaSize.y); PlayerController.instance.setControlOverride(false); encounter.NextWave(); // ActionDialogResult(new TextMessage("This is where you'd\rdefend yourself.\nBut the code was spaghetti.", true, false), UIState.ACTIONSELECT); break; case "DIALOGRESULT": PlayerController.instance.GetComponent().enabled = false; break; case "ENEMYDIALOGUE": PlayerController.instance.GetComponent().enabled = true; if (!GlobalControls.retroMode) ArenaManager.instance.Resize((int)encounter.ArenaSize.x, (int)encounter.ArenaSize.y); else ArenaManager.instance.Resize(155, 130); encounter.CallOnSelfOrChildren("EnemyDialogueStarting"); if (state != "ENEMYDIALOGUE") return; monsterDialogues = new LuaTextManager[encounter.EnabledEnemies.Length]; monsterDialogueEnemy = new EnemyController[encounter.EnabledEnemies.Length]; messages.Clear(); for (int i = 0; i < encounter.EnabledEnemies.Length; i++) { messages.Add(encounter.EnabledEnemies[i].GetDefenseDialog()); string[] message = messages[i]; if (message == null) { UnitaleUtil.Warn("Entered ENEMYDIALOGUE, but no current/random dialogue was set for " + encounter.EnabledEnemies[i].Name); SwitchState("DEFENDING"); break; } GameObject speechBub = encounter.EnabledEnemies[i].bubbleObject; LuaTextManager sbTextMan = speechBub.GetComponentInChildren(); monsterDialogues[i] = sbTextMan; monsterDialogueEnemy[i] = encounter.EnabledEnemies[i]; UnderFont enemyFont = SpriteFontRegistry.Get(encounter.EnabledEnemies[i].Font ?? string.Empty) ?? SpriteFontRegistry.Get(SpriteFontRegistry.UI_MONSTERTEXT_NAME); sbTextMan.SetFont(enemyFont); TextMessage[] monsterMessages = new TextMessage[message.Length]; for (int j = 0; j < monsterMessages.Length; j++) monsterMessages[j] = new MonsterMessage(encounter.EnabledEnemies[i].DialoguePrefix + message[j]); // UpdateBubble run twice: once to feed the bubble's width to spawn the text properly, // once to update the bubble's visibility after the text has been spawned encounter.EnabledEnemies[i].UpdateBubble(i); sbTextMan.SetTextQueue(monsterMessages); encounter.EnabledEnemies[i].UpdateBubble(i); } readyToNextLine = encounter.enemies.Select(e => !monsterDialogueEnemy.Contains(e)).ToArray(); break; case "DONE": //StaticInits.Reset(); //LuaEnemyEncounter.script.SetVar("unescape", DynValue.NewBoolean(false)); EndBattle(); break; } } public static void SwitchStateOnString(string state) { if (state == null) throw new CYFException("State: Argument cannot be nil."); state = state.ToUpper(); if (instance.encounter.gameOverStance) return; if (!instance.UIStates.Contains(state)) throw new CYFException("The state \"" + state + "\" is not a valid state. Are you sure it exists?\n\nPlease double-check in the Misc. Functions section of the docs for a list of every default valid state."); try { instance.SwitchState(state); } catch (Exception ex) { // a different error has occurred throw new CYFException("An error occurred while trying to enter the state \"" + state + "\":\n\n" + ex.Message + "\n\nTraceback (for devs):\n" + ex); } } public static void CreateNewUIState(string name) { if (instance.UIStates.Contains(name)) throw new CYFException("The state \"" + name + "\" already exists."); instance.UIStates.Add(name); } private void Awake() { if (GlobalControls.crate) { fightButtonSprite = SpriteRegistry.Get("UI/Buttons/gifhtbt_1"); actButtonSprite = SpriteRegistry.Get("UI/Buttons/catbt_1"); itemButtonSprite = SpriteRegistry.Get("UI/Buttons/tembt_1"); mercyButtonSprite = SpriteRegistry.Get("UI/Buttons/mecrybt_1"); } else { fightButtonSprite = SpriteRegistry.Get("UI/Buttons/fightbt_1"); actButtonSprite = SpriteRegistry.Get("UI/Buttons/actbt_1"); itemButtonSprite = SpriteRegistry.Get("UI/Buttons/itembt_1"); mercyButtonSprite = SpriteRegistry.Get("UI/Buttons/mercybt_1"); } //canvasParent = GameObject.Find("Canvas"); uiAudio = GetComponent(); uiAudio.clip = AudioClipRegistry.GetSound("menumove"); instance = this; } private void UpdateMonsterDialogue() { for (int i = 0; i < monsterDialogues.Length; i++) { int enemyIndex = encounter.enemies.IndexOf(monsterDialogueEnemy[i]); if (monsterDialogues[i] == null || !monsterDialogues[i].isactive) { readyToNextLine[enemyIndex] = true; continue; } if (monsterDialogues[i].CanAutoSkipAll()) { DoNextMonsterDialogue(); return; } if (monsterDialogues[i].CanAutoSkip()) { DoNextMonsterDialogue(i); continue; } if (readyToNextLine[enemyIndex]) continue; if (monsterDialogues[i] == null || monsterDialogues[i].CanSkipToNextLine() || monsterDialogues[i].LineComplete()) readyToNextLine[enemyIndex] = true; } } public void DoNextMonsterDialogue(int index = -1) { bool someTextsHaveLinesLeft = false; if (index != -1) { // Forcefully skips only one monster text object if (!monsterDialogues[index]) return; if (monsterDialogues[index].HasNext()) { monsterDialogueEnemy[index].UpdateBubble(index); monsterDialogues[index].NextLineText(); monsterDialogueEnemy[index].UpdateBubble(index); } else { monsterDialogues[index].HideTextObject(); monsterDialogueEnemy[index].HideBubble(); readyToNextLine[index] = true; } foreach (LuaTextManager mgr in monsterDialogues) if (mgr != null && mgr.isactive && mgr.HasNext()) someTextsHaveLinesLeft = true; } else { for (int i = 0; i < monsterDialogues.Length; i++) { EnemyController enemy = monsterDialogueEnemy[i]; if (!enemy.bubbleObject) continue; LuaTextManager sbTextMan = enemy.bubbleObject.GetComponentInChildren(); if (!sbTextMan) continue; if (sbTextMan.HasNext()) { enemy.UpdateBubble(i); sbTextMan.NextLineText(); enemy.UpdateBubble(i); someTextsHaveLinesLeft = true; } else { sbTextMan.HideTextObject(); enemy.HideBubble(); } } } if (someTextsHaveLinesLeft) { for (int i = 0; i < monsterDialogues.Length; i++) readyToNextLine[encounter.enemies.IndexOf(monsterDialogueEnemy[i])] = monsterDialogues[i] == null || monsterDialogues[i].LineComplete(); return; } if (encounter.EnabledEnemies.Length <= 0) return; encounter.CallOnSelfOrChildren("EnemyDialogueEnding"); if (state == "ENEMYDIALOGUE") SwitchState("DEFENDING"); } private string[] GetActPage(string[] acts, int page, int columns) { string[] items = new string[3 * columns]; int actsPerPage = 3 * columns; int maxPages = Mathf.CeilToInt(acts.Length / (float)actsPerPage); // Add the page number text if too many acts if (maxPages > 1) { actsPerPage -= columns; maxPages = Mathf.CeilToInt(acts.Length / (float)actsPerPage); } int pageActNumber = Mathf.Min(acts.Length - (actsPerPage * page), actsPerPage); for (int i = 0; i < pageActNumber; i++) items[i] = acts[i + page * actsPerPage]; if (maxPages > 1) items[3 * columns - 1] = "PAGE " + (page + 1); return items; } private string[] GetInventoryPage(int page, int columns) { int itemsPerPage = 2 * columns; int pageItemNumber = Mathf.Min(Inventory.inventory.Count - (itemsPerPage * page), 2 * columns); int maxPages = Mathf.CeilToInt(Inventory.inventory.Count / (float)itemsPerPage); if (pageItemNumber == 0) return null; string[] items = new string[3 * columns]; for (int i = 0; i < pageItemNumber; i++) items[i] = Inventory.inventory[i + page * itemsPerPage].ShortName; if (maxPages > 1) items[3 * columns - 1] = "PAGE " + (page + 1); return items; } private string[] GetEnemyPage(int page, int columns, out string[] colors) { colors = new string[columns * 3]; int enemyCount = encounter.EnabledEnemies.Length <= 3 ? encounter.EnabledEnemies.Length : Mathf.RoundToInt(Mathf.Clamp(encounter.EnabledEnemies.Length - page * 2, 0, 2)); int maxPages = encounter.EnabledEnemies.Length <= 3 ? 1 : Mathf.CeilToInt(encounter.EnabledEnemies.Length / 2f); string[] enemies = new string[columns * 3]; for (int i = 0; i < enemyCount; i++) { enemies[columns * i] = encounter.EnabledEnemies[page * 2 + i].Name; } for (int i = page * 2; i < encounter.EnabledEnemies.Length && enemyCount > 0; i++) { if (encounter.EnabledEnemies[i].CanSpare) { string hexColor = ParseUtil.GetBytesFromColor(encounter.EnabledEnemies[i].SpareColor, true); colors[(i - page * 2) * columns] = "[color:" + hexColor.Substring(0, 6) + "][alpha:" + hexColor.Substring(6) + "]"; } enemyCount--; } if (maxPages > 1) enemies[columns * 3 - 1] = "PAGE " + (page + 1); return enemies; } private void RenewLifeBars(int page) { int maxWidth = (int)initialHealthPos.x; foreach (LifeBarController lbc in arenaParent.GetComponentsInChildren()) Destroy(lbc.gameObject); int mNameWidth = (int)UnitaleUtil.PredictTextWidth(mainTextManager) + 50; if (mNameWidth > maxWidth) maxWidth = mNameWidth; int enemiesToShow = encounter.EnabledEnemies.Length <= 3 ? 3 : 2; for (int i = page * 2; i <= page * 2 + enemiesToShow - 1 && i < encounter.EnabledEnemies.Length; i++) { LifeBarController lifeBar = LifeBarController.Create(0, 0, 90); lifeBar.transform.SetParent(mainTextManager.transform); lifeBar.transform.SetAsFirstSibling(); lifeBar.background.SetAnchor(0.5f, 0.5f); lifeBar.background.MoveTo(maxWidth, initialHealthPos.y - (i - page * 2) * mainTextManager.font.LineSpacing); lifeBar.fill.rotation = lifeBar.mask.rotation = lifeBar.background.rotation = mainTextManager.rotation; lifeBar.SetFillColor(Color.green); float hpDivide = encounter.EnabledEnemies[i].HP / (float)encounter.EnabledEnemies[i].MaxHP; lifeBar.SetInstant(hpDivide, encounter.EnabledEnemies[i].HP < 0); } } public string GetState() { return state; } private void HandleAction() { if (!stateSwitched || state == "ATTACKING") switch (state) { case "ATTACKING": fightUI.StopAction(); break; case "DIALOGRESULT": if (!mainTextManager.LineComplete()) break; if (!mainTextManager.AllLinesComplete() && mainTextManager.LineComplete()) mainTextManager.NextLineText(); else if (mainTextManager.AllLinesComplete() && mainTextManager.LineCount() != 0) SwitchState(stateAfterDialogs); break; case "ACTIONSELECT": switch (action) { case Actions.FIGHT: if (encounter.EnabledEnemies.Length > 0) SwitchState("ENEMYSELECT"); break; case Actions.ACT: if (GlobalControls.crate) if (ControlPanel.instance.Safe) UnitaleUtil.PlaySound("MEOW", "sounds/meow" + Math.RandomRange(1, 8)); else UnitaleUtil.PlaySound("MEOW", "sounds/meow" + Math.RandomRange(1, 9)); else if (encounter.EnabledEnemies.Length > 0) SwitchState("ENEMYSELECT"); break; case Actions.ITEM: if (GlobalControls.crate) { const string strBasis = "TEM WANT FLAKES!!!1!1"; string strModified = strBasis; for (int i = strBasis.Length - 2; i >= 0; i--) strModified = strModified.Substring(0, i) + "[voice:tem" + Math.RandomRange(1, 7) + "]" + strModified.Substring(i, strModified.Length - i); ActionDialogResult(new TextMessage(strModified, true, false)); } else { if (Inventory.inventory.Count == 0) { PlaySound(AudioClipRegistry.GetSound("menuconfirm")); return; } SwitchState("ITEMMENU"); } break; case Actions.MERCY: if (GlobalControls.crate) { string[] texts = { "You know...\rSeeing the engine like this...\rIt makes me want to cry.", "All these typos...\rCrate Your Frisk is bad.\nWe must destroy it.", "We have two solutions here:\nDestroy the engine's data...", "...Or another way. Though, I'll\rneed some time to find out\rhow to do this...", "*sniffles* I can barely stand\rthe view... This is so\rdisgusting...", "I feel like I'm getting there,\rkeep up the good work!", "Here, just a bit more...", "...No, I don't have it.\nStupid dog!\nPlease give me more time!", "I want to puke...\nEven the engine is a\rplace of shitposts and memes.", "Will there one day be a place\rwhere shitposts and memes\rwill not appear?", "I hope so...\rMy eyes are bleeding.", "Hm? Oh! Look! I have it!", "Let me read:", "\"To remove the big engine\rtypo bug...\"" }; if (meCry < 14) ActionDialogResult(new TextMessage(texts[meCry], true, false)); else if (meCry == 14) ActionDialogResult(new TextMessage[] { new RegularMessage("\"...click the BAD SPELING button\rin CYF's options menu.\""), new RegularMessage("Is that all? Come on, all\rthis time lost for such\ran easy response..."), new RegularMessage("...Sorry for the wait.\nDo whatever you want now! :D"), new RegularMessage("But please..."), new RegularMessage("For the love of all that\ris good..."), new RegularMessage("Remove Crate Your Frisk."), new RegularMessage("Now I'll wash my eyes with\rsome bleach."), new RegularMessage("Cya!") }); else ActionDialogResult(new TextMessage("But the dev is long gone\r(and blind).", true, false)); meCry++; } else SwitchState("MERCYMENU"); break; } PlaySound(AudioClipRegistry.GetSound("menuconfirm")); break; case "ENEMYSELECT": switch (forcedAction) { case Actions.FIGHT: // encounter.enemies[selectedEnemy].HandleAttack(-1); PlayerController.instance.lastEnemyChosen = selectedEnemy + 1; SwitchState("ATTACKING"); break; case Actions.ACT: if (encounter.EnabledEnemies[selectedEnemy].ActCommands.Length != 0) SwitchState("ACTMENU"); break; } PlaySound(AudioClipRegistry.GetSound("menuconfirm")); break; case "ACTMENU": PlayerController.instance.lastEnemyChosen = selectedEnemy + 1; encounter.EnabledEnemies[selectedEnemy].Handle(encounter.EnabledEnemies[selectedEnemy].ActCommands[selectedAction]); PlaySound(AudioClipRegistry.GetSound("menuconfirm")); break; case "ITEMMENU": //encounter.HandleItem(Inventory.container[selectedItem]); encounter.HandleItem(selectedItem); PlaySound(AudioClipRegistry.GetSound("menuconfirm")); break; case "MERCYMENU": switch (selectedMercy) { case 0: { bool[] canSpare = new bool[encounter.enemies.Count]; int count = encounter.enemies.Count; for (int i = 0; i < count; i++) canSpare[i] = encounter.enemies[i].CanSpare; EnemyController[] enabledEnTemp = encounter.EnabledEnemies; bool playSound = true; for (int i = 0; i < count; i++) { if (!enabledEnTemp.Contains(encounter.enemies[i])) continue; if (!canSpare[i]) continue; if (UnitaleUtil.TryCall(encounter.enemies[i].script, "OnSpare")) continue; encounter.enemies[i].DoSpare(playSound); playSound = false; } if (encounter.EnabledEnemies.Length > 0) encounter.CallOnSelfOrChildren("HandleSpare"); break; } case 1: { if (!GlobalControls.retroMode) { bool fleeSuccess = EnemyEncounter.script.GetVar("fleesuccess").Boolean || EnemyEncounter.script.GetVar("fleesuccess").Type != DataType.Boolean && Math.RandomRange(0, 9) + encounter.turnCount > 4; if (encounter.CallOnSelfOrChildren("HandleFlee", new[] { DynValue.NewBoolean(fleeSuccess) })) break; if (fleeSuccess) StartCoroutine(ISuperFlee()); else SwitchState("ENEMYDIALOGUE"); } else { PlayerController.instance.GetComponent().enabled = false; AudioClip yay = AudioClipRegistry.GetSound("runaway"); AudioSource.PlayClipAtPoint(yay, Camera.main.transform.position); string fittingLine; switch (runAwayAttempts) { case 0: fittingLine = "...[w:15]But you realized\rthe overworld was missing."; break; case 1: fittingLine = "...[w:15]But the overworld was\rstill missing."; break; case 2: fittingLine = "You walked off as if there\rwere an overworld, but you\rran into an invisible wall."; break; case 3: fittingLine = "...[w:15]On second thought, the\rembarrassment just now\rwas too much."; break; case 4: fittingLine = "But you became aware\rof the skeleton inside your\rbody, and forgot to run."; break; case 5: fittingLine = "But you needed a moment\rto forget about your\rscary skeleton."; break; case 6: fittingLine = "...[w:15]You feel as if you\rtried this before."; break; case 7: fittingLine = "...[w:15]Maybe if you keep\rsaying that, the\roverworld will appear."; break; case 8: fittingLine = "...[w:15]Or not."; break; default: fittingLine = "...[w:15]But you decided to\rstay anyway."; break; } ActionDialogResult(new TextMessage[] { new RegularMessage("I'm outta here."), new RegularMessage(fittingLine) }); Camera.main.GetComponent().Pause(); musicPausedFromRunning = true; runAwayAttempts++; } break; } } PlaySound(AudioClipRegistry.GetSound("menuconfirm")); break; case "ENEMYDIALOGUE": bool skippableSingleLine = monsterDialogues.Where(mgr => mgr != null && mgr.isactive).All(mgr => mgr.LineCount() <= 1 && mgr.CanSkip()); if (skippableSingleLine || readyToNextLine.All(b => b)) { foreach (LuaTextManager mgr in monsterDialogues) if (mgr != null && mgr.isactive) mgr.DoSkipFromPlayer(); DoNextMonsterDialogue(); } break; } else PlaySound(AudioClipRegistry.GetSound("menuconfirm")); } public static void DisableButton(string btn) { Actions act; try { act = (Actions)Enum.Parse(typeof(Actions), btn); if (act == Actions.NONE) throw new CYFException("DisableButton() can only take \"FIGHT\", \"ACT\", \"ITEM\" or \"MERCY\", but you entered \"" + btn + "\"."); } catch { throw new CYFException("DisableButton() can only take \"FIGHT\", \"ACT\", \"ITEM\" or \"MERCY\", but you entered \"" + btn + "\"."); } instance.disabledActions[(int)act] = true; } public static void EnableButton(string btn) { Actions act; try { act = (Actions)Enum.Parse(typeof(Actions), btn); if (act == Actions.NONE) throw new CYFException("DisableButton() can only take \"FIGHT\", \"ACT\", \"ITEM\" or \"MERCY\", but you entered \"" + btn + "\"."); } catch { throw new CYFException("DisableButton() can only take \"FIGHT\", \"ACT\", \"ITEM\" or \"MERCY\", but you entered \"" + btn + "\"."); } instance.disabledActions[(int)act] = false; } public Actions FindAvailableAction(int change) { // All buttons are disabled: nothing is done if (disabledActions.Count(x => !x) == 0) return action; int actionIndex = Math.Mod((int)action + change, 4); if (!disabledActions[actionIndex]) return (Actions) actionIndex; int nextChange = change >= 0 ? 1 : -1; do { actionIndex = Math.Mod(actionIndex + nextChange, 4); } while (disabledActions[actionIndex]); return (Actions)actionIndex; } private void HandleArrows() { bool left = InputUtil.Pressed(GlobalControls.input.Left); bool right = InputUtil.Pressed(GlobalControls.input.Right); bool up = InputUtil.Pressed(GlobalControls.input.Up); bool down = InputUtil.Pressed(GlobalControls.input.Down); int xMov = left ? -1 : right ? 1 : 0; int yMov = up ? -1 : down ? 1 : 0; int columns = mainTextManager.columnNumber; switch (state) { case "ACTIONSELECT": if (xMov == 0) break; action = FindAvailableAction(left ? -1 : 1); SetPlayerOnAction(action); PlaySound(AudioClipRegistry.GetSound("menumove")); break; case "ENEMYSELECT": if (xMov == 0 && yMov == 0) return; selectedEnemy = UnitaleUtil.SelectionChoice(encounter.EnabledEnemies.Length, selectedEnemy, xMov, yMov, encounter.EnabledEnemies.Length <= 3 ? 3 : 2, 1); int enemyPage = encounter.EnabledEnemies.Length <= 3 ? 0 : selectedEnemy / 2; if (xMov != 0) { string[] colors; mainTextManager.SetText(new SelectMessage(GetEnemyPage(enemyPage, columns, out colors), false, columns, colors)); if (forcedAction == Actions.FIGHT) RenewLifeBars(enemyPage); } SetPlayerOnSelection(Math.Mod(selectedEnemy, encounter.EnabledEnemies.Length <= 3 ? 3 : 2) * 2); break; case "ACTMENU": if (xMov == 0 && yMov == 0) return; string[] acts = encounter.EnabledEnemies[selectedEnemy].ActCommands; bool onePage = acts.Length <= 3 * columns; selectedAction = UnitaleUtil.SelectionChoice(acts.Length, selectedAction, xMov, yMov, onePage ? 3 : 2, columns); SetPlayerOnSelection(selectedAction % ((onePage ? 3 : 2) * columns)); int actPage = onePage ? 0 : Mathf.FloorToInt((float)selectedAction / (2 * columns)); mainTextManager.SetText(new SelectMessage(GetActPage(acts, actPage, columns), false, columns)); break; case "ITEMMENU": if (xMov == 0 && yMov == 0) return; selectedItem = UnitaleUtil.SelectionChoice(Inventory.inventory.Count, selectedItem, xMov, yMov, 2, columns); SetPlayerOnSelection(Math.Mod(selectedItem, 2 * columns)); int itemPage = Mathf.FloorToInt(selectedItem / (2f * columns)); mainTextManager.SetText(new SelectMessage(GetInventoryPage(itemPage, columns), false, columns)); break; case "MERCYMENU": if (yMov == 0) break; selectedMercy = UnitaleUtil.SelectionChoice(encounter.CanRun ? 2 : 1, selectedMercy, 0, yMov, 2, 1); SetPlayerOnSelection(selectedMercy * 2); break; } } private void HandleCancel() { switch (state) { case "ACTIONSELECT": case "DIALOGRESULT": if (mainTextManager.CanSkip() && !mainTextManager.LineComplete()) mainTextManager.DoSkipFromPlayer(); break; case "ENEMYDIALOGUE": bool singleLineAll = true; bool cannotSkip = false; // why two booleans for the same result? 'cause they're different conditions foreach (LuaTextManager mgr in monsterDialogues) { if (mgr != null && !mgr.isactive) continue; if (!mgr.CanSkip()) cannotSkip = true; if (mgr.LineCount() > 1) singleLineAll = false; } if (cannotSkip || singleLineAll) break; foreach (LuaTextManager mgr in monsterDialogues) if (mgr != null && mgr.isactive) mgr.DoSkipFromPlayer(); break; case "ACTMENU": SwitchState("ENEMYSELECT"); break; case "ENEMYSELECT": case "ITEMMENU": case "MERCYMENU": SwitchState("ACTIONSELECT"); break; } } private void PlaySound(AudioClip clip) { if (!uiAudio.clip.Equals(clip)) uiAudio.clip = clip; uiAudio.Play(); } public static void PlaySoundSeparate(string sound) { UnitaleUtil.PlaySound("SeparateSound", sound, 0.95f); } public Vector2 FindPlayerOffsetForAction(Actions action) { string str = action.ToString(); Image image; buttonDictionary.TryGetValue(str, out image); return action != Actions.NONE ? new Vector2(image.transform.position.x + playerOffsets[(int)action].x, image.transform.position.y + playerOffsets[(int)action].y) : Vector2.zero; } private void SetPlayerOnAction(Actions newAction) { fightButton.overrideSprite = null; actButton.overrideSprite = null; itemButton.overrideSprite = null; mercyButton.overrideSprite = null; if (state == "ACTIONSELECT") { switch (newAction) { case Actions.FIGHT: fightButton.overrideSprite = fightButtonSprite; break; case Actions.ACT: actButton.overrideSprite = actButtonSprite; break; case Actions.ITEM: itemButton.overrideSprite = itemButtonSprite; break; case Actions.MERCY: mercyButton.overrideSprite = mercyButtonSprite; break; default: return; } PlayerController.instance.SetPosition(FindPlayerOffsetForAction(newAction).x, FindPlayerOffsetForAction(newAction).y, true); } } public void MovePlayerToAction(Actions act) { action = act; action = FindAvailableAction(0); SetPlayerOnAction(action); } // visualization: // 0 1 // 2 3 // 4 5 private void SetPlayerOnSelection(int selection) { int xMv = selection % mainTextManager.columnNumber; int yMv = selection / mainTextManager.columnNumber; if (mainTextManager.letters.Count > 0) PlayerController.instance.SetPosition(mainTextManager.absx + mainTextManager.letters[0].image.rectTransform.sizeDelta.x / 2 + xMv * mainTextManager.columnShift + 4, mainTextManager.absy + mainTextManager.letters[0].image.rectTransform.sizeDelta.y / 2 - yMv * mainTextManager.font.LineSpacing, true); } private void Start() { // reset GlobalControls' frame timer GlobalControls.frame = 0; arenaParent = GameObject.Find("arena_border_outer"); mainTextManager = GameObject.Find("arena").GetComponentInChildren(); mainTextManager.HideBubble(); mainTextManager.SetEffect(new TwitchEffect(mainTextManager)); mainTextManager.ResetFont(); mainTextManager.SetCaller(EnemyEncounter.script); mainTextManager.SetText(DynValue.NewString("")); encounter = FindObjectOfType(); fightButton = GameObject.Find("FightBt").GetComponent(); actButton = GameObject.Find("ActBt").GetComponent(); itemButton = GameObject.Find("ItemBt").GetComponent(); mercyButton = GameObject.Find("MercyBt").GetComponent(); if (GlobalControls.crate) { fightButton.sprite = SpriteRegistry.Get("UI/Buttons/gifhtbt_0"); fightButton.GetComponent().SpritePath = "UI/Buttons/gifhtbt_0"; actButton.sprite = SpriteRegistry.Get("UI/Buttons/catbt_0"); actButton.GetComponent().SpritePath = "UI/Buttons/catbt_0"; itemButton.sprite = SpriteRegistry.Get("UI/Buttons/tembt_0"); itemButton.GetComponent().SpritePath = "UI/Buttons/tembt_0"; mercyButton.sprite = SpriteRegistry.Get("UI/Buttons/mecrybt_0"); mercyButton.GetComponent().SpritePath = "UI/Buttons/mecrybt_0"; } // Add dictionaries to easily access buttons and their data through strings buttonDictionary.Add("FIGHT", fightButton); buttonDictionary.Add("ACT", actButton); buttonDictionary.Add("ITEM", itemButton); buttonDictionary.Add("MERCY", mercyButton); buttonSpriteDictionary.Add("FIGHT", fightButtonSprite); buttonSpriteDictionary.Add("ACT", actButtonSprite); buttonSpriteDictionary.Add("ITEM", itemButtonSprite); buttonSpriteDictionary.Add("MERCY", mercyButtonSprite); buttonBasePositions.Add("FIGHT", new Vector2(0, 0)); buttonBasePositions.Add("ACT", new Vector2(154, 0)); buttonBasePositions.Add("ITEM", new Vector2(313, 0)); buttonBasePositions.Add("MERCY", new Vector2(467, 0)); buttonBasePlayerPositions.Add("FIGHT", new Vector2(16, 19)); buttonBasePlayerPositions.Add("ACT", new Vector2(16, 19)); buttonBasePlayerPositions.Add("ITEM", new Vector2(16, 19)); buttonBasePlayerPositions.Add("MERCY", new Vector2(16, 19)); ArenaManager.instance.ResizeImmediate(ArenaManager.UIWidth, ArenaManager.UIHeight); //ArenaManager.instance.MoveToImmediate(0, -160, false); /*GameObject.Find("HideEncounter").GetComponent().sprite = Sprite.Create(GlobalControls.texBeforeEncounter, new Rect(0, 0, GlobalControls.texBeforeEncounter.width, GlobalControls.texBeforeEncounter.height), new Vector2(0.5f, 0.5f));*/ //if (GameOverBehavior.gameOverContainer) // GameObject.Destroy(GameOverBehavior.gameOverContainer); GameOverBehavior.gameOverContainer = GameObject.Find("GameOverContainer"); GameOverBehavior.gameOverContainer.SetActive(false); MusicManager.src = Camera.main.GetComponent(); //NewMusicManager.OnLevelWasLoaded(); if (NewMusicManager.audiolist.ContainsKey("src")) NewMusicManager.audiolist.Remove("src"); if (NewMusicManager.audiolist.ContainsKey("StaticKeptAudio")) NewMusicManager.audiolist.Remove("StaticKeptAudio"); MusicManager.src = Camera.main.GetComponent(); NewMusicManager.audiolist.Add("src", MusicManager.src); if (PlayerOverworld.audioKept) NewMusicManager.audiolist.Add("StaticKeptAudio", PlayerOverworld.audioKept); ProjectileController.globalPixelPerfectCollision = false; ControlPanel.instance.FrameBasedMovement = false; LuaScriptBinder.CopySessionGlobalsToBattleGlobals(); GameObject.Find("Main Camera").GetComponent().enabled = !GameObject.Find("Main Camera").GetComponent().enabled; //There are scene init bugs, let's fix them! /*if (GameObject.Find("TopLayer").transform.parent != GameObject.Find("Canvas").transform) { RectTransform[] rts = GameObject.Find("Canvas").GetComponentsInChildren(true); rts[rts.Length - 1].SetParent(rts[rts.Length - 2]); GameObject.Find("TopLayer").transform.SetParent(GameObject.Find("Canvas").transform); rts[rts.Length - 2].SetAsLastSibling(); } else {*/ /*bool toAdd = false; int indexDeb = 0, indexText = 0, j = 0; Transform[] rts = UnitaleUtil.GetFirstChildren(GameObject.Find("Canvas").transform, true); foreach (Transform rt in rts) { if (rt.gameObject.name == "Text") { rt.SetParent(GameObject.Find("Debugger").transform); indexText = j; toAdd = true; break; } else if (rt.gameObject.name == "Debugger") { rt.SetAsLastSibling(); indexDeb = j; break; } j++; } if (toAdd) rts[indexText].SetParent(rts[indexDeb]);*/ //} KeyboardInput.ResetEncounterInputs(); // If retromode is enabled, set the inventory to the one with TESTDOGs (can be overridden) if (GlobalControls.retroMode && GlobalControls.modDev) { // Set the in-game names of these items to TestDogN instead of DOGTESTN for (int i = 1; i <= 7; i++) Inventory.NametoShortName.Add("DOGTEST" + i, "TestDog" + i); Inventory.luaInventory.AddCustomItems(new[] {"DOGTEST1", "DOGTEST2", "DOGTEST3", "DOGTEST4", "DOGTEST5", "DOGTEST6", "DOGTEST7"}, new[] {3, 3, 3, 3, 3, 3, 3}); Inventory.luaInventory.SetInventory(new[] {"DOGTEST1", "DOGTEST2", "DOGTEST3", "DOGTEST4", "DOGTEST5", "DOGTEST6", "DOGTEST7"}); // Undo our changes to this table! for (int i = 1; i <= 7; i++) Inventory.NametoShortName.Remove("DOGTEST" + i); } StaticInits.SendLoaded(); psContainer = new GameObject("psContainer"); // The following is a trick to make psContainer spawn within the battle scene, rather than the overworld scene, if in the overworld psContainer.transform.SetParent(mainTextManager.transform); psContainer.transform.SetParent(null); psContainer.transform.SetAsFirstSibling(); //Play that funky music if (MusicManager.IsStoppedOrNull(PlayerOverworld.audioKept)) GameObject.Find("Main Camera").GetComponent().Play(); if (SendToStaticInit != null) SendToStaticInit(); if (GlobalControls.crate) { UserDebugger.instance.gameObject.transform.GetChild(0).gameObject.GetComponent().text = "DEGUBBER (F9 OT TOGLGE, DEBUG(STIRNG) TO PRNIT)"; LuaSpriteController.GetOrCreate(GameObject.Find("HPLabel")).Set("UI/spr_phname_0"); } // PlayerController.instance.Awake(); PlayerController.instance.playerAbs = new Rect(0, 0, PlayerController.instance.selfImg.sprite.texture.width - 8, PlayerController.instance.selfImg.sprite.texture.height - 8); PlayerController.instance.setControlOverride(true); PlayerController.instance.SetPosition(48, 25, true); fightUI = GameObject.Find("FightUI").GetComponent(); fightUI.gameObject.SetActive(false); if (UnitaleUtil.firstErrorShown) return; encounter.CallOnSelfOrChildren("EncounterStarting"); if (!stateSwitched) SwitchState("ACTIONSELECT", true); } public void CheckAndTriggerVictory() { if (encounter.EnabledEnemies.Length > 0) return; Camera.main.GetComponent().Stop(); bool levelUp = PlayerCharacter.instance.AddBattleResults(exp, gold); Inventory.RemoveAddedItems(); if (levelUp && exp != 0) { UIStats.instance.setPlayerInfo(PlayerCharacter.instance.Name, PlayerCharacter.instance.LV); UIStats.instance.setMaxHP(); UIStats.instance.setHP(PlayerCharacter.instance.HP); ActionDialogResult(new RegularMessage("[sound:levelup]YOU WON!\nYou earned "+ exp +" XP and "+ gold +" gold.\nYour LOVE increased."), "DONE"); } else ActionDialogResult(new RegularMessage("YOU WON!\nYou earned " + exp + " XP and " + gold + " gold."), "DONE"); } public IEnumerator ISuperFlee() { PlayerController.instance.GetComponent().enabled = false; UnitaleUtil.PlaySound("Mercy", "runaway"); List fleeTexts = new List(); DynValue tempFleeTexts = EnemyEncounter.script.GetVar("fleetexts"); if (tempFleeTexts.Type == DataType.Table) for (int i = 0; i < tempFleeTexts.Table.Length; i++) fleeTexts.Add(tempFleeTexts.Table.Get(i + 1).String); else { /*fleeTexts = new List { "I'm outta here.", "I've got better things to do.", "Don't waste my time.", "Nah, I don't like you.", "I just wanted to walk\ra bit. Leave me alone.", "You're cute, I won't kill you :3", "Better safe than sorry.", "Do as if you never saw\rthem and walk away.", "I'll kill you last.", "Nope. [w:5]Nope. Nope. Nope. Nope.", "Wait for me, Rhenaud!", "Flee like sissy!" }; if (!ControlPanel.instance.Safe) { fleeTexts.Add("I've got shit to do."); fleeTexts.Add("Fuck this shit I'm out."); }*/ if (exp > 0 || gold > 0) { string fleeString = "Ran away with " + exp + " EXP\rand " + gold + " GOLD."; bool levelUp = PlayerCharacter.instance.AddBattleResults(exp, gold); if (levelUp && exp > 0) { UIStats.instance.setPlayerInfo(PlayerCharacter.instance.Name, PlayerCharacter.instance.LV); UIStats.instance.setMaxHP(); UIStats.instance.setHP(PlayerCharacter.instance.HP); fleeString = "[sound:levelup]" + fleeString + "\nYour LOVE increased."; } fleeTexts = new List { fleeString }; } else fleeTexts = new List { "Escaped...", "Don't slow me down.", "I've got better to do.", "I'm outta here." }; } ActionDialogResult(new TextMessage[] { new RegularMessage(fleeTexts[Math.RandomRange(0, fleeTexts.Count)]) }); fleeSwitch = true; Camera.main.GetComponent().Pause(); LuaSpriteController spr = (LuaSpriteController)SpriteUtil.MakeIngameSprite("spr_heartgtfo_0", "Top").UserData.Object; spr.absx = PlayerController.instance.transform.position.x; spr.absy = PlayerController.instance.transform.position.y; spr.SetAnimation(new[] { "spr_heartgtfo_0", "spr_heartgtfo_1" }, 1 / 10f); spr.color = new[] { PlayerController.instance.GetComponent().color.r, PlayerController.instance.GetComponent().color.g, PlayerController.instance.GetComponent().color.b }; while (spr.absx > -20) { spr.absx--; yield return 0; } } // Update is called once per frame private void Update() { //frameDebug++; stateSwitched = false; if (encounter.gameOverStance) return; UnitaleUtil.TryCall(EnemyEncounter.script, "Update"); if (frozenState != "PAUSE") return; if (mainTextManager.IsPaused() &&!ArenaManager.instance.isResizeInProgress()) mainTextManager.SetPause(false); if (state == "DIALOGRESULT") if (mainTextManager.CanAutoSkipAny(true)) if (mainTextManager.HasNext()) mainTextManager.NextLineText(); else SwitchState(stateAfterDialogs); if (state == "ENEMYDIALOGUE") UpdateMonsterDialogue(); if (state == "DEFENDING") { if (!encounter.WaveInProgress()) { if (GlobalControls.retroMode) foreach (LuaProjectile p in FindObjectsOfType()) BulletPool.instance.Requeue(p); SwitchState("ACTIONSELECT"); } else if (!encounter.gameOverStance && frozenState == "PAUSE") encounter.UpdateWave(); return; } if (!fleeSwitch) if (InputUtil.Pressed(GlobalControls.input.Confirm)) { if (state == "ACTIONSELECT" && !ArenaManager.instance.isMoveInProgress() && !ArenaManager.instance.isResizeInProgress() || state != "ACTIONSELECT") HandleAction(); } else if (InputUtil.Pressed(GlobalControls.input.Cancel)) HandleCancel(); else HandleArrows(); else if (InputUtil.Pressed(GlobalControls.input.Confirm)) SwitchState("DONE"); if (state == "ATTACKING" && fightUI.Finished() || checkDeathCall) { bool noOnDeath = true; bool playSound = true; foreach (EnemyController enemyController in encounter.EnabledEnemies) { if (enemyController.HP > 0 || enemyController.Unkillable) continue; onDeathSwitch = true; bool hasOnDeath = UnitaleUtil.TryCall(enemyController.script, "OnDeath"); onDeathSwitch = false; if (hasOnDeath) { noOnDeath = false; continue; } enemyController.DoKill(playSound); playSound = false; if (encounter.EnabledEnemies.Length > 0 && !checkDeathCall) SwitchState("ENEMYDIALOGUE"); } if (state == "ATTACKING" && fightUI.Finished()) { if (lastNewState != "UNUSED") { SwitchState(lastNewState); lastNewState = "UNUSED"; } else if (noOnDeath) SwitchState("ENEMYDIALOGUE"); } checkDeathCall = false; } } } ================================================ FILE: Assets/Scripts/Battle/UIController.cs.meta ================================================ fileFormatVersion: 2 guid: 3cd5272475a518749a954d77524c56f1 timeCreated: 1498875626 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 200 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Battle/UIStats.cs ================================================ using UnityEngine; public class UIStats : MonoBehaviour { public static UIStats instance; public LuaTextManager nameLevelTextMan; public LuaTextManager hpTextMan; public LifeBarController lifebar; public LuaSpriteController hpLabel; public GameObject hpRect; public bool stopUIUpdate = false; public bool hiddenUI; private bool initialized; private void Awake() { instance = this; } private void Start() { lifebar = gameObject.GetComponentInChildren(); nameLevelTextMan = GameObject.Find("NameLv").GetComponent(); nameLevelTextMan.SetFont(SpriteFontRegistry.Get(SpriteFontRegistry.UI_SMALLTEXT_NAME)); nameLevelTextMan.progressmode = "NONE"; nameLevelTextMan.HideBubble(); nameLevelTextMan.SetCaller(EnemyEncounter.script); hpRect = GameObject.Find("HPRect"); hpLabel = LuaSpriteController.GetOrCreate(GameObject.Find("HPLabel")); hpTextMan = GameObject.Find("HPText").GetComponent(); hpTextMan.SetFont(SpriteFontRegistry.Get(SpriteFontRegistry.UI_SMALLTEXT_NAME)); hpTextMan.progressmode = "NONE"; hpTextMan.HideBubble(); hpTextMan.SetCaller(EnemyEncounter.script); initialized = true; setMaxHP(); setPlayerInfo(PlayerCharacter.instance.Name, PlayerCharacter.instance.LV); } public void setPlayerInfo(string newName, int newLv) { if (!initialized || stopUIUpdate) return; nameLevelTextMan.enabled = true; nameLevelTextMan.SetText(new TextMessage(newName.ToUpper() + " LV " + newLv, false, true)); setNamePosition(); nameLevelTextMan.enabled = false; } public void setNamePosition() { if (stopUIUpdate) return; nameLevelTextMan.MoveTo(0, -11); hpLabel.MoveTo(0, -9); lifebar.background.MoveTo(31, -14); hpTextMan.MoveTo(0, -11); setMaxHP(); hpRect.transform.localPosition = new Vector3(PlayerCharacter.instance.Name.Length > 6 ? 286 : 215, 0, 0); } public void setHP(float hpCurrent) { if (!initialized || stopUIUpdate) return; float hpMax = PlayerCharacter.instance.MaxHP, hpFrac = hpCurrent / hpMax; lifebar.SetInstant(hpFrac); int count = UnitaleUtil.DecimalCount(hpCurrent); string sHpCurrent = hpCurrent < 10 ? "0" + hpCurrent.ToString("F" + count) : hpCurrent.ToString("F" + count); string sHpMax = hpMax < 10 ? "0" + hpMax : "" + hpMax; hpTextMan.SetText(new TextMessage(sHpCurrent + " / " + sHpMax, false, true)); } public void setMaxHP() { if (!initialized || stopUIUpdate) return; if (lifebar.background.spritename == "bar-px") lifebar.Resize(Mathf.Min(120, PlayerCharacter.instance.MaxHP * 1.2f), 20); hpTextMan.MoveToAbs(lifebar.background.absx + lifebar.backgroundRt.sizeDelta.x + 14, hpTextMan.transform.position.y); setHP(PlayerCharacter.instance.HP); } public void Hide(bool hide) { int alpha = hide ? 0 : 1; nameLevelTextMan.alpha = alpha; hpTextMan.alpha = alpha; lifebar.fill.alpha = alpha; lifebar.background.alpha = alpha; hpLabel.alpha = alpha; UIController.instance.fightButton.color = new Color(1, 1, 1, alpha); UIController.instance.actButton.color = new Color(1, 1, 1, alpha); UIController.instance.itemButton.color = new Color(1, 1, 1, alpha); UIController.instance.mercyButton.color = new Color(1, 1, 1, alpha); hiddenUI = hide; } } ================================================ FILE: Assets/Scripts/Battle/UIStats.cs.meta ================================================ fileFormatVersion: 2 guid: e8e6cf6dc9de35948a8aa4b886b22a86 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 111 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Battle.meta ================================================ fileFormatVersion: 2 guid: 668ae3de169778148ad751e3e4c37232 folderAsset: yes timeCreated: 1446836940 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Debug/ProjectileHitboxRenderer.cs ================================================ using System.Collections; using UnityEngine; /// /// Attempts to render hitboxes for projectiles. Debug functionality attached to the Battle scene's camera. /// public class ProjectileHitboxRenderer : MonoBehaviour { private GameObject[] gos; private Projectile[] projectiles; private GameObject root; private Vector3 topLeft, topRight, bottomLeft, bottomRight; private const int zIndex = -9; private Shader shdr; private Material mat; public static Rect player; public static int fsScreenWidth = 0; private void Start() { root = GameObject.Find("Canvas"); shdr = Shader.Find("Sprites/Default"); mat = new Material(shdr); } private IEnumerator OnPostRender() { yield return new WaitForEndOfFrame(); // need to wait for UI to finish drawing first, or it'll appear under the UI // note: it kinda still appears under the UI due to its rendering settings projectiles = root.GetComponentsInChildren(); Vector2 cameraOffset = new Vector2(Misc.cameraX, Misc.cameraY); float screenWidth = !Screen.fullScreen ? ScreenResolution.windowSize.x : fsScreenWidth; float screenHeight = !Screen.fullScreen ? ScreenResolution.windowSize.y : 480; float xOffset = (screenWidth - 640) / 2; float yOffset = (screenHeight - 480) / 2; foreach (Projectile p in projectiles) { GameObject go = p.gameObject; bottomRight = go.GetComponent().selfAbs.center - cameraOffset + new Vector2(xOffset, yOffset); topLeft.Set (bottomRight.x - go.GetComponent().selfAbs.width / 2, bottomRight.y + go.GetComponent().selfAbs.height / 2, zIndex); topRight.Set (bottomRight.x + go.GetComponent().selfAbs.width / 2, bottomRight.y + go.GetComponent().selfAbs.height / 2, zIndex); bottomLeft.Set (bottomRight.x - go.GetComponent().selfAbs.width / 2, bottomRight.y - go.GetComponent().selfAbs.height / 2, zIndex); bottomRight.Set(bottomRight.x + go.GetComponent().selfAbs.width / 2, bottomRight.y - go.GetComponent().selfAbs.height / 2, zIndex); topLeft.Set (topLeft.x / screenWidth, topLeft.y / screenHeight, zIndex); topRight.Set (topRight.x / screenWidth, topRight.y / screenHeight, zIndex); bottomLeft.Set (bottomLeft.x / screenWidth, bottomLeft.y / screenHeight, zIndex); bottomRight.Set(bottomRight.x / screenWidth, bottomRight.y / screenHeight, zIndex); // draw boxes GL.PushMatrix(); mat.SetPass(0); GL.LoadOrtho(); //GL.MultMatrix(transform.localToWorldMatrix); GL.Begin(GL.LINES); GL.Color(Color.magenta); GL.Vertex(topLeft); GL.Vertex(topRight); GL.Vertex(topRight); GL.Vertex(bottomRight); GL.Vertex(bottomRight); GL.Vertex(bottomLeft); GL.Vertex(bottomLeft); GL.Vertex(topLeft); GL.End(); GL.PopMatrix(); } player = new Rect((PlayerController.instance.playerAbs.x - cameraOffset.x + xOffset) / screenWidth, (PlayerController.instance.playerAbs.y - cameraOffset.y + yOffset) / screenHeight, PlayerController.instance.playerAbs.width / screenWidth, PlayerController.instance.playerAbs.height / screenHeight); GL.PushMatrix(); mat.SetPass(0); GL.LoadOrtho(); //GL.MultMatrix(transform.localToWorldMatrix); GL.Begin(GL.LINES); GL.Color(Color.black); GL.Vertex(new Vector3(player.x, player.y, -9)); GL.Vertex(new Vector3(player.x + player.width, player.y, -9)); GL.Vertex(new Vector3(player.x + player.width, player.y, -9)); GL.Vertex(new Vector3(player.x + player.width, player.y + player.height, -9)); GL.Vertex(new Vector3(player.x + player.width, player.y + player.height, -9)); GL.Vertex(new Vector3(player.x, player.y + player.height, -9)); GL.Vertex(new Vector3(player.x, player.y + player.height, -9)); GL.Vertex(new Vector3(player.x, player.y, -9)); GL.End(); GL.PopMatrix(); } } ================================================ FILE: Assets/Scripts/Debug/ProjectileHitboxRenderer.cs.meta ================================================ fileFormatVersion: 2 guid: 4aa500e896f56ea4291706c581edeb86 timeCreated: 1446393916 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Debug/UserDebugger.cs ================================================ using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; /// /// Behaviour you can use to print lines into a UnityEngine.UI.Text component for debugging, keeping only a set amount of lines in memory. /// public class UserDebugger : MonoBehaviour { public static UserDebugger instance; public Text text; public int maxLines = 7; public Queue dbgContent = new Queue(); public bool canShow = true; private bool firstActive; private string originalText; public static Vector2 offset; public void Warn(string line) { Debug.LogWarning("Frame " + GlobalControls.frame + ": " + line); WriteLine(line); } public void Start() { instance = this; if (originalText == null) originalText = text.text; text.text = originalText; dbgContent.Clear(); gameObject.SetActive(false); firstActive = false; if (UnitaleUtil.printDebuggerBeforeInit == "") return; UserWriteLine(UnitaleUtil.printDebuggerBeforeInit); UnitaleUtil.printDebuggerBeforeInit = ""; } public void Update() { transform.SetAsLastSibling(); } public void UserWriteLine(string line) { line = line ?? "nil"; foreach (string str in line.Split('\n')) WriteLine(str); Debug.Log("Frame " + GlobalControls.frame + ": " + line); // activation of the debug window if you're printing to it for the first time if (!firstActive && canShow) { gameObject.SetActive(true); try { Camera.main.GetComponent().enabled = true; } catch { /* ignored */ } firstActive = true; } } private void WriteLine(string line) { // enqueue the new line and keep queue at capacity dbgContent.Enqueue(line); if (dbgContent.Count > maxLines) dbgContent.Dequeue(); // print to debug console text.text = originalText; foreach (string dbgLine in dbgContent) text.text += "\n" + dbgLine; } public static float x { get { return instance.transform.position.x - Misc.cameraX; } set { offset.x = value - Misc.WindowWidth / 2f - 300; instance.transform.position = new Vector3(value + Misc.cameraX, instance.transform.position.y, instance.transform.position.z); } } public static float y { get { return instance.transform.position.y - Misc.cameraY; } set { offset.y = value - Misc.WindowHeight / 2f - 240; instance.transform.position = new Vector3(instance.transform.position.x, value + Misc.cameraY, instance.transform.position.z); } } public static float absx { get { return instance.transform.position.x; } set { offset.x = value - Misc.WindowWidth / 2f - Misc.cameraX - 300; instance.transform.position = new Vector3(value, instance.transform.position.y, instance.transform.position.z); } } public static float absy { get { return instance.transform.position.y; } set { offset.y = value - Misc.WindowHeight / 2f - Misc.cameraY - 240; instance.transform.position = new Vector3(instance.transform.position.x, value, instance.transform.position.z); } } public static void MoveTo(float new_x, float new_y) { x = new_x; y = new_y; } public static void Move(float new_x, float new_y) { absx += new_x; absy += new_y; } public static void MoveToAbs(float new_x, float new_y) { absx = new_x; absy = new_y; } } ================================================ FILE: Assets/Scripts/Debug/UserDebugger.cs.meta ================================================ fileFormatVersion: 2 guid: 8b8ed2d8ae9b9104180ec6676cf9bfdd timeCreated: 1450588156 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Debug.meta ================================================ fileFormatVersion: 2 guid: deef53a3742c5bb4eaf3ffd87d17ea9d folderAsset: yes timeCreated: 1446836903 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Device/DisclaimerScript.cs ================================================ using UnityEngine; using UnityEngine.UI; using UnityEngine.SceneManagement; using System.Collections; /// /// Attached to the disclaimer screen so you can skip it. /// public class DisclaimerScript : MonoBehaviour { public GameObject Logo, LogoCrate, RedditPlug, LegalStuff, ModSelection, Overworld, LuaKnowledgeDisclaimer, Version; private bool inCredits = false; private int creditsCameraSpeed = 0; private void Start() { if (GlobalControls.crate) { Logo.GetComponent().enabled = false; LogoCrate.GetComponent().enabled = true; RedditPlug.GetComponent().text = "GO TO /R/UNITLAE. FOR UPDTAES!!!!!"; LegalStuff.GetComponent().text = "NO RELESLING HERE!!! IT'S RFEE!!! OR TUBY FEX WILL BE ANGER!!! U'LL HVAE A BED TMIE!!!"; ModSelection.GetComponent().text = "YASS GO OR KLIK TO\nPALY MODS!!!!!"; Overworld.GetComponent().text = "PRSES YUMMY 2\nOOVERWURL!!!!!"; LuaKnowledgeDisclaimer.GetComponent().text = "KNOW YUOR CODE R U'LL HVAE A BED TMIE!!!"; Version.GetComponent().text = "v" + Random.Range(0,9) + "." + Random.Range(0,9) + "." + Random.Range(0,9); } else if (Random.Range(0, 1000) == 021) { Logo.GetComponent().enabled = false; Version.GetComponent().localPosition = new Vector3(0f, 160f, 0f); Version.GetComponent().color = new Color(1f, 1f, 1f, 1f); Version.GetComponent().text = "Not Unitale v0.2.1a"; } else if (GlobalControls.BetaVersion > 0) Version.GetComponent().text = "v" + GlobalControls.CYFversion + "\nLTS " + (GlobalControls.LTSversion + 1) + "\nb" + GlobalControls.BetaVersion + ""; else Version.GetComponent().text = "v" + GlobalControls.CYFversion + "\nLTS " + GlobalControls.LTSversion; Camera.main.GetComponent().clip = AudioClipRegistry.GetMusic("mus_barrier"); Camera.main.GetComponent().Play(); } /// /// Checks if you pressed one of the things the disclaimer tells you to. It's pretty straightforward. /// private void Update() { if (!ScreenResolution.hasInitialized) return; if (inCredits) { UpdateCreditsScroll(); if (creditsCameraSpeed == 0 && inCredits && GlobalControls.input.Up == ButtonState.PRESSED) { EndCreditsScroll(); } return; } if (GlobalControls.input.Menu == ButtonState.PRESSED) { #if UNITY_STANDALONE_WIN || UNITY_EDITOR_WIN Misc.RetargetWindow(); #endif StaticInits.InitAll(StaticInits.EDITOR_MODFOLDER); GlobalControls.modDev = false; SceneManager.LoadScene("Intro"); Destroy(this); } else if (GlobalControls.input.Confirm == ButtonState.PRESSED || Input.GetMouseButtonDown(0)) { #if UNITY_STANDALONE_WIN || UNITY_EDITOR_WIN Misc.RetargetWindow(); #endif StartCoroutine(ModSelect()); } else if (GlobalControls.input.Down == ButtonState.PRESSED) { StartCreditsScroll(); } } /// /// Starts the camera shift to the Credits screen. /// private void StartCreditsScroll() { creditsCameraSpeed = -8; inCredits = true; } /// /// Updates the scroll to and from the Credits screen. /// private void UpdateCreditsScroll() { if (creditsCameraSpeed != 0) { transform.localPosition += new Vector3(0, creditsCameraSpeed, 0); if (Mathf.Abs(transform.localPosition.y) >= 240) { inCredits = transform.localPosition.y < 0; transform.localPosition = new Vector3(transform.localPosition.x, 240 * Mathf.Sign(transform.localPosition.y), transform.localPosition.z); creditsCameraSpeed = 0; } } } /// /// Starts the camera shift back to the Disclaimer screen. /// private void EndCreditsScroll() { creditsCameraSpeed = 8; } // The mod select screen can take some extra time to load, // because it now searches for encounter files on top of mods. // To compensate, this function will add "Loading" text to the Disclaimer screen // whenever it's time to go to the mod select menu. private IEnumerator ModSelect() { LuaKnowledgeDisclaimer.GetComponent().text = GlobalControls.crate ? "LAODING MODS!!!!!" : "Loading mods..."; yield return new WaitForEndOfFrame(); GlobalControls.modDev = true; DiscordControls.StartModSelect(false); SceneManager.LoadScene("ModSelect"); } } ================================================ FILE: Assets/Scripts/Device/DisclaimerScript.cs.meta ================================================ fileFormatVersion: 2 guid: 9bd50ecadbfbacf46ad8dd648d78ede8 timeCreated: 1449065819 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Device/DiscordControls.cs ================================================ using Discord; using System; using MoonSharp.Interpreter; using UnityEngine; public static class DiscordControls { public static Discord.Discord discord; private static Activity activity; private static ActivityManager activityManager; /// /// 0 = Everything /// 1 = Game Only /// 2 = Nothing /// public static int curr_setting; private static readonly string[] settingNames = { "Everything", "Game Only", "Nothing" }; private static readonly DateTime epochStart = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc); private static string oldDetails = activity.Details; private static string oldState = activity.State; private static long oldTime; private static bool updateQueued; public static bool isActive; // Use this for initialization public static void Start() { // Creates the object that manages the Rich Presence Commands. The first argument is the APPID, the second tells the libraries if Discord must be started or not. try { discord = new Discord.Discord(711497963771527219, (ulong)CreateFlags.NoRequireDiscord); activityManager = discord.GetActivityManager(); isActive = true; Debug.Log("Discord Status: Success"); } catch (Exception e) { isActive = false; Debug.Log("Discord Status: Failed - " + e.Message); } // Gets Discord Visibility Setting if (LuaScriptBinder.GetPermanentGlobal("CYFDiscord") == null) curr_setting = 0; else curr_setting = (int)LuaScriptBinder.GetPermanentGlobal("CYFDiscord").Number; // Creates the activity objects that will be modified and used as needed activity = new Activity { Name = GlobalControls.crate ? ControlPanel.instance.WinodwBsaisNmae : ControlPanel.instance.WindowBasisName, Details = "", // The top row State = "", // The second row Timestamps = { // The timer Start = 0, End = 0 }, Assets = { // The CYF Logo LargeImage = "cyf_logo", LargeText = ControlPanel.instance.WindowBasisName } }; // Set initial activity properties and status ChangeVisibilitySetting(0); oldTime = GetCurrentTime(); ClearTime(true); StartTitle(); } /// /// Changes the Discord Rich Presence visibility setting. /// /// Added so the setting can be written out at init time without changing it. /// The name of the current setting. public static string ChangeVisibilitySetting(int spd) { curr_setting += spd; if (curr_setting >= settingNames.Length) curr_setting = 0; if (spd > 0) LuaScriptBinder.SetPermanentGlobal("CYFDiscord", DynValue.NewNumber(curr_setting), true); if (isActive) switch (curr_setting) { case 0: StartModSelect(false); break; case 1: activity.Details = ""; activity.State = ""; activity.Timestamps.Start = 0; activity.Timestamps.End = 0; UpdatePresence(true); break; default: Clear(); break; } return GlobalControls.crate ? Temmify.Convert(settingNames[curr_setting]) : settingNames[curr_setting]; } /// /// Sets the status when you're on the title screen, erasing details and timer /// public static void StartTitle() { activity.Details = "Title Screen"; activity.State = ""; UpdatePresence(); } /// /// Sets the status when you're entering the Overworld, erasing details and timer /// public static void StartOW() { activity.Details = "In the Overworld"; activity.State = ""; ClearTime(false); UpdatePresence(); } /// /// This function runs whenever showing a scene /// public static void ShowOWScene(string mapName) { activity.Details = "In the Overworld"; activity.State = mapName; UnitaleUtil.MapCorrespondanceList.TryGetValue(mapName, out activity.State); ClearTime(false); oldDetails = activity.Details; oldState = activity.State; oldTime = activity.Timestamps.Start; UpdatePresence(); } /// /// Sets the status when you're choosing a mod, erasing details and timer /// /// Whether to reset the timer when loading the mod select scene. public static void StartModSelect(bool reset = true) { activity.Details = "Selecting a Mod"; activity.State = ""; if (reset) oldTime = GetCurrentTime(); ClearTime(true); UpdatePresence(); } /// /// Sets the initial status when you play a mod, erasing details and starting the timer /// /// The name of the mod. /// The name of the encounter. public static void StartBattle(string modName, string encounterName) { activity.Details = "Playing Mod: " + modName; activity.State = encounterName; oldTime = GetCurrentTime(); ClearTime(true); oldDetails = activity.Details; oldState = activity.State; oldTime = activity.Timestamps.Start; UpdatePresence(); } /// /// The function to actually update the discord rich presence status /// /// Forcefully updates presence even when setting is set to "game only" or "nothing". public static void UpdatePresence(bool force = false) { if (!isActive || (!force && curr_setting > 0) || updateQueued) return; updateQueued = true; } /// /// This function will be called one time, on the frame after applying settings, to prevent abuse of the activity manager. /// private static void UpdateActivity() { if (isActive) activityManager.UpdateActivity(activity, (res) => {}); updateQueued = false; } /// /// Sets the text in the top row of the discord rich presence status /// /// New text to display. public static void SetName(string name) { // Work around a very strange bug in the Discord SDK if (name.Length == 1) name += " "; activity.Details = (curr_setting == 0) ? name : ""; } /// /// Resets the text in the top row of the discord rich presence status to blank (or what it would be originally) /// /// If true, text will be reset to its initial value. Otherwise, it will be cleared from the status. public static void ClearName(bool reset) { activity.Details = reset ? oldDetails : ""; } /// /// Sets the text in the second row of the discord rich presence status /// /// New text to display. public static void SetDetails(string details) { // Work around a very strange bug in the Discord SDK if (details.Length == 1) details += " "; activity.State = (curr_setting == 0) ? details : ""; } /// /// Resets the text in the second row of the discord rich presence status to blank (or what it would be originally) /// /// If true, text will be reset to its initial value. Otherwise, it will be cleared from the status. public static void ClearDetails(bool reset) { activity.State = reset ? oldState : ""; } /// /// Sets the timer value in the discord rich presence status, to either elapsed time or a countdown timer /// /// Number of seconds to display in the timer. /// If true, the timer will count down from this value instead of counting up. public static void SetTime(int seconds, bool countdown) { if (!countdown) { activity.Timestamps.Start = GetCurrentTime() - seconds; activity.Timestamps.End = 0; } else { activity.Timestamps.Start = 0; activity.Timestamps.End = GetCurrentTime() + seconds; } } /// /// Resets the timer value in the discord rich presence status to blank (or what it would be originally) /// /// If true, text will be reset to its initial value. Otherwise, it will be cleared from the status. public static void ClearTime(bool reset) { if (reset) { activity.Timestamps.Start = oldTime; activity.Timestamps.End = 0; } else { activity.Timestamps.Start = 0; activity.Timestamps.End = 0; } } /// /// Internal use function that gets a timestamp for the current moment in time. /// private static int GetCurrentTime() { return (int)(DateTime.UtcNow - epochStart).TotalSeconds; } /// /// Internal use function that clears the discord rich presence status. /// public static void Clear() { if (isActive) activityManager.ClearActivity((result) => {}); } // Update is called once per frame public static void Update() { if (!isActive) return; if (updateQueued) UpdateActivity(); try { discord.RunCallbacks(); } catch { isActive = false; } } } ================================================ FILE: Assets/Scripts/Device/DiscordControls.cs.meta ================================================ fileFormatVersion: 2 guid: cfd0f7ea839dfe74196f257ac480cc23 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Device/GlobalControls.cs ================================================ using UnityEngine; using System.Linq; using System.Collections; using System.Collections.Generic; using UnityEngine.SceneManagement; using MoonSharp.Interpreter; /// /// Controls that should be active on all screens. Pretty much a hack to allow people to reset. Now it's more useful. /// public class GlobalControls : MonoBehaviour { public static string CYFversion = "0.6.6"; // Current version of CYF displayed in the main menu and usable in scripts public static string OverworldVersion = "0.6.6"; // Last version in which the overworld was changed, notifying any user with an old save to delete it public static int LTSversion = 4; // LTS version, mainly used for CYF 0.6.6 public static int BetaVersion = 0; // Only used for beta versions public static int frame; // Frame counter used for logging purposes public static float overworldTimestamp = 0f; // Timestamp of the creation of the save file, mostly used to know the time spent in this save in the save and load screen public static IUndertaleInput input = new KeyboardInput(); // KeyboardInput singleton, registering any key press the Player does and handling them public static LuaInputBinding luaInput = new LuaInputBinding(input); // Input Lua object, usable on the Lua side public static string realName; // Player's name in the overworld, given through the scene EnterName public static bool modDev; // True if we entered the mod selection screen and not the overworld, false otherwise public static bool crate; // True if CrateYourFrisk mode is active, false otherwise public static bool retroMode; // True if the Unitale 0.2.1a retrocompatibility mode is active, false otherwise public static bool stopScreenShake; // Used to stop any screenshake currently ongoing public static bool isInFight; // True if we're in a battle, false otherwise public static bool isInShop; // True if we're in a shop, false otherwise public static bool allowWipeSave; // Allows you to wipe your save in the Error scene if it couldn't load properly private bool screenShaking; // True if a screenshake is occuring, false otherwise public static string[] nonOWScenes = { "Battle", "Error", "ModSelect", "Options", "TitleScreen", "Disclaimer", "EnterName", "TransitionOverworld", "Intro", "KeybindSettings" }; // Scenes in which you're not considered to be in the overworld public static string[] canTransOW = { "Battle", "Error" }; // Scenes from which you can enter the overworld public static Dictionary GameMapData = new Dictionary(); // Main save data on each map the Player has visited before public static Dictionary EventData = new Dictionary(); // Data stored for each event in the current map, used for data saving public static Dictionary TempGameMapData = new Dictionary(); // Data used to save changes applied to maps the Player hasn't visited yet private static bool awakened; // Used to only run Awake() once public void Awake() { if (awakened) return; // Create all singletons (classes that only have one instance across the entire app) StaticInits.Start(); SaveLoad.Start(); new ControlPanel(); new PlayerCharacter(); // Load permanent globals SaveLoad.LoadPermanentGlobals(); LuaScriptBinder.SetSessionGlobal("ModFolder", DynValue.NewString("@Title")); KeyboardInput.LoadPlayerKeys(); // Load map names for the overworld UnitaleUtil.AddKeysToMapCorrespondanceList(); // Use permanent globals to load Crate Your Frisk, Safe Mode, Retromode and Fullscreen mode preferences ReloadCrate(); // Check if safe mode has a stored preference that is a boolean if (LuaScriptBinder.GetPermanentGlobal("CYFSafeMode") != null && LuaScriptBinder.GetPermanentGlobal("CYFSafeMode").Type == DataType.Boolean) ControlPanel.instance.Safe = LuaScriptBinder.GetPermanentGlobal("CYFSafeMode").Boolean; // Check if retro mode has a stored preference that is a boolean if (LuaScriptBinder.GetPermanentGlobal("CYFRetroMode") != null && LuaScriptBinder.GetPermanentGlobal("CYFRetroMode").Type == DataType.Boolean) retroMode = LuaScriptBinder.GetPermanentGlobal("CYFRetroMode").Boolean; // Check if window scale has a stored preference that is a number if (LuaScriptBinder.GetPermanentGlobal("CYFWindowScale") != null && LuaScriptBinder.GetPermanentGlobal("CYFWindowScale").Type == DataType.Number) { ScreenResolution.windowScale = (int) System.Math.Max(LuaScriptBinder.GetPermanentGlobal("CYFWindowScale").Number, 1); if (!ScreenResolution.hasInitialized) { Screen.SetResolution(640, 480, Screen.fullScreen, 0); ScreenResolution scrRes = FindObjectOfType(); if (scrRes) scrRes.Start(); } ScreenResolution.ResetAfterBattle(); } // Start Discord RPC (also checks for a permanent global within) DiscordControls.Start(); awakened = true; } public static void ReloadCrate() { if (LuaScriptBinder.GetPermanentGlobal("CrateYourFrisk") != null && LuaScriptBinder.GetPermanentGlobal("CrateYourFrisk").Boolean) crate = true; #if UNITY_STANDALONE_WIN || UNITY_EDITOR_WIN Misc.WindowName = crate ? ControlPanel.instance.WinodwBsaisNmae : ControlPanel.instance.WindowBasisName; #endif } #if UNITY_STANDALONE_WIN && !UNITY_EDITOR /// /// Used to reposition the window in the middle of the screen after exiting fullscreen. /// /// All coroutines must return an IEnumerator object, don't mind it. public static int fullscreenSwitch; static IEnumerator RepositionWindow() { yield return new WaitForEndOfFrame(); try { Misc.MoveWindowTo(Screen.currentResolution.width / 2 - Screen.width / 2, Screen.currentResolution.height / 2 - Screen.height / 2); } catch { /* ignored */ } } #endif /// /// Updates the stored size of the monitor. /// /// All coroutines must return an IEnumerator object, don't mind it. public static IEnumerator UpdateMonitorSize() { yield return new WaitForEndOfFrame(); try { ScreenResolution.lastMonitorSize = new Vector2(Screen.currentResolution.width, Screen.currentResolution.height); } catch { /* ignored */ } } /// /// Run once per frame. /// private void Update () { // Update Discord RPC DiscordControls.Update(); #if UNITY_STANDALONE_WIN && !UNITY_EDITOR // Reposition the window to the middle of the screen after exiting fullscreen if (fullscreenSwitch == 1) StartCoroutine(RepositionWindow()); if (fullscreenSwitch > 0) fullscreenSwitch--; #endif // Frame counter used for logging purposes if (isInFight || UnitaleUtil.IsOverworld) frame ++; luaInput.Update(); string sceneName = SceneManager.GetActiveScene().name; // Activate Debugger if (UserDebugger.instance && Input.GetKeyDown(KeyCode.F9) && UserDebugger.instance.canShow) { UserDebugger.instance.gameObject.SetActive(!UserDebugger.instance.gameObject.activeSelf); Camera.main.GetComponent().enabled = UserDebugger.instance.gameObject.activeSelf; } // Activate Hitbox Debugger else if (isInFight && Input.GetKeyDown(KeyCode.H) && sceneName != "Error" && UserDebugger.instance.gameObject.activeSelf) gameObject.GetComponent().enabled = !gameObject.GetComponent().enabled; // Exit a battle or the Error scene else if (Input.GetKeyDown(KeyCode.Escape) && (canTransOW.Contains(sceneName) || isInFight)) { if (isInFight && EnemyEncounter.script.GetVar("unescape").Boolean && sceneName != "Error") return; // The Error scene can only be exited if we entered the mod through the mod selection screen if (sceneName == "Error" && !modDev) { ScreenResolution.ResetAfterBattle(); UnitaleUtil.ExitOverworld(); SceneManager.LoadScene("Disclaimer"); DiscordControls.StartTitle(); Destroy(GameObject.Find("SpritePivot")); return; } if (GameOverBehavior.gameOverContainer) if (GameOverBehavior.gameOverContainer.activeInHierarchy) FindObjectOfType().EndGameOver(); else UIController.EndBattle(); else UIController.EndBattle(); } // Open the Menu in the Overworld else if (input.Menu == ButtonState.PRESSED && !nonOWScenes.Contains(sceneName) && !isInFight && !isInShop && (!GameOverBehavior.gameOverContainerOw || !GameOverBehavior.gameOverContainerOw.activeInHierarchy)) { if (!PlayerOverworld.instance.PlayerNoMove && EventManager.instance.script == null && !PlayerOverworld.instance.menuRunning[2] && !PlayerOverworld.instance.menuRunning[4] && (GameObject.Find("FadingBlack") == null || GameObject.Find("FadingBlack").GetComponent().alpha <= 0)) StartCoroutine(PlayerOverworld.LaunchMenu()); } // Wipe save and close CYF in the Error scene if save failed to load else if (sceneName == "Error" && allowWipeSave && Input.GetKeyDown(KeyCode.R)) { System.IO.File.Delete(Application.persistentDataPath + "/save.gd"); Application.Quit(); } // Enter fullscreen using given shortcuts if (!ScreenResolution.hasInitialized) return; if (Input.GetKeyDown(KeyCode.F4) || (Input.GetKeyDown(KeyCode.Return) && (Input.GetKey(KeyCode.LeftAlt) || Input.GetKey(KeyCode.RightAlt)))) { ScreenResolution.SetFullScreen(!Screen.fullScreen); if (!Screen.fullScreen) StartCoroutine(UpdateMonitorSize()); } } /// /// Runs pnce per frame, after all other update functions are run. /// public void LateUpdate() { input.LateUpdate(); } /// /// Shakes the screen for a given amount of frames. /// /// Most coroutines have the same argument, which is a table of values. /// This one should include, in order: /// * float frames - The amount of frames the screenshake effect will be active for. /// * float intensity - The amount of pixels the screen can move out of its original position at maximum. /// * bool fade - True if the screenshake effect should be reduced over time, false otherwise. /// /// All coroutines must return an IEnumerator object, don't mind it. private IEnumerator IShakeScreen(IList args) { float frames, intensity; bool fade; try { frames = (float)args[0]; } catch { throw new CYFException("The argument \"seconds\" must be a number."); } try { intensity = (float)args[1]; } catch { throw new CYFException("The argument \"intensity\" must be a number."); } try { fade = (bool)args[2]; } catch { throw new CYFException("The argument \"fade\" must be a boolean."); } Vector2 totalShift = new Vector2(0, 0); float frameCount = 0, intensityBasis = intensity; while (frameCount < frames) { if (stopScreenShake) break; if (fade) intensity = intensityBasis * (1 - (frameCount / frames)); Vector2 shift = new Vector2((Random.value - 0.5f) * 2 * intensity, (Random.value - 0.5f) * 2 * intensity); Misc.MoveCamera(shift.x - totalShift.x, shift.y - totalShift.y); totalShift = shift; frameCount++; yield return 0; } Misc.MoveCamera(-totalShift.x, -totalShift.y); screenShaking = false; } /// /// Starts the screen shaking coroutine. /// /// The amount of frames the screenshake effect will be active for /// The amount of pixels the screen can move out of its original position at maximum. /// True if the screenshake effect should be reduced over time, false otherwise. public void ShakeScreen(float duration, float intensity, bool isIntensityDecreasing) { if (screenShaking) return; screenShaking = true; stopScreenShake = false; StartCoroutine("IShakeScreen", new object[] { duration, intensity, isIntensityDecreasing }); } /// /// Only run when the application is closed. /// private void OnApplicationQuit() { if (DiscordControls.isActive) DiscordControls.discord.Dispose(); } } ================================================ FILE: Assets/Scripts/Device/GlobalControls.cs.meta ================================================ fileFormatVersion: 2 guid: e994334232641bd4ca342c48fcdb1605 timeCreated: 1498875627 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 400 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Device/Input/IUndertaleInput.cs ================================================ public enum ButtonState { RELEASED = -1, NONE = 0, PRESSED = 1, HELD = 2 } public interface IUndertaleInput { ButtonState Confirm { get; } ButtonState Cancel { get; } ButtonState Menu { get; } ButtonState Up { get; } ButtonState Down { get; } ButtonState Left { get; } ButtonState Right { get; } ButtonState Key(string key); void LateUpdate(); } ================================================ FILE: Assets/Scripts/Device/Input/IUndertaleInput.cs.meta ================================================ fileFormatVersion: 2 guid: a1050ce431f568e4ba6743d391a268ee timeCreated: 1450485119 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Device/Input/KeyboardInput.cs ================================================ using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using UnityEngine; public class KeyboardInput : IUndertaleInput { /// /// List of axes handled by CYF. /// public static readonly Dictionary axes = new Dictionary(); /// /// List of known axes keys, for quick computation. /// private static List knownAxes = new List(); /// /// Number of controllers handled by CYF. /// Add more inputs in CYF's Input settings if you wanna handle more controllers! /// private const int controllers = 2; /// /// Number of axes handled by CYF. /// Add more inputs in CYF's Input settings if you wanna handle more axes! /// private const int axesNumber = 10; /// /// Dictionary storing the various default keybindings of Create Your Frisk. /// public readonly static Dictionary> defaultKeys = new Dictionary>() { { "Confirm", new List { "Z", "Return" } }, { "Cancel", new List { "X", "LeftShift", "RightShift" } }, { "Menu", new List { "C", "LeftControl", "RightControl" } }, { "Up", new List { "W", "UpArrow", "Vertical1 +" } }, { "Down", new List { "S", "DownArrow", "Vertical1 -" } }, { "Left", new List { "A", "LeftArrow", "Horizontal1 -" } }, { "Right", new List { "D", "RightArrow", "Horizontal1 +" } }, }; /// /// Dictionary storing the various keybindings set by the user. /// Can be modified through Create Your Frisk's Options menu. /// public static Dictionary> playerKeys = new Dictionary>(); /// /// Dictionary storing the various keybindings in effect during the current encounter. /// Can be modified through various Input functions. /// public static Dictionary> encounterKeys = new Dictionary>(); /// /// This function is executed whenever this object is created. /// public KeyboardInput() { foreach (KeyValuePair> keybind in defaultKeys) { playerKeys[keybind.Key] = new List(keybind.Value); encounterKeys[keybind.Key] = new List(keybind.Value); } for (int controller = 1; controller <= controllers; controller++) { for (int axis = 1; axis <= axesNumber; axis++) { string axisName; if (axis == 1) axisName = "Horizontal"; else if (axis == 2) axisName = "Vertical"; else axisName = "Axis" + axis + "-"; axisName += controller; knownAxes.Add(axisName + " +"); knownAxes.Add(axisName + " -"); axes[axisName] = 0; } } } /// /// This function resets the user's keybindings after a battle, in case they were tampered with during it. /// public static void ResetEncounterInputs() { encounterKeys.Clear(); foreach (KeyValuePair> keybind in playerKeys) encounterKeys[keybind.Key] = new List(keybind.Value); } /// /// This function resets the user's keybindings, it should only be used when the user asks to reset all keybindings to their default. /// public static void ResetInputs() { playerKeys.Clear(); foreach (KeyValuePair> keybind in defaultKeys) playerKeys[keybind.Key] = new List(keybind.Value); ResetEncounterInputs(); } /// /// This function reset the user's keybindings on a given key, leaving any other key untouched. /// /// The key to reset the bindings of. public static void ResetSpecificInput(string keybind) { if (defaultKeys[keybind] == null) throw new CYFException("CYF doesn't know the default keybind \"" + keybind + "\". Please refer to the list of known default keybinds in the Input object page of the documentation."); playerKeys[keybind] = new List(defaultKeys[keybind]); } /// /// This function creates a new keybind for the encounter and assigns it some keys if they're given. /// /// Name of the new keybind to create. /// Keys assigned to the keybind. public static void CreateKeybind(string keybind, string[] keysToBind = null) { if (encounterKeys.ContainsKey(keybind)) throw new CYFException("The keybind \"" + keybind + "\" already exists yet you tried creating it again."); List keyCodesToBind = new List(); if (keysToBind != null) foreach (string key in keysToBind) keyCodesToBind.Add(key); encounterKeys.Add(keybind, keyCodesToBind); } /// /// This function completely deletes a keybind from the doctionary of keybinds. /// Note that base CYF keybinds cannot be deleted, as it would cause errors when the engine tries to fetch them. /// /// The keybind to delete. public static void DeleteKeybind(string keybind) { if (defaultKeys.ContainsKey(keybind)) throw new CYFException("CYF's base keybinds cannot be deleted!"); encounterKeys.Remove(keybind); } /// /// This function returns an array of all the keys bound to a given keybind. /// /// The keybind to get the keys of. /// The various eys bound to the given keybind. public static string[] GetKeybindKeys(string keybind) { if (!encounterKeys.ContainsKey(keybind)) throw new CYFException("The keybind \"" + keybind + "\" doesn't exist."); return encounterKeys[keybind].Select(k => k.ToString()).ToArray(); } /// /// This function returns the keys bound to several keybinds. /// /// Keybind collection to check for conflicts. /// Dictionary of conflicts found within the collection. public static Dictionary GetConflicts(Dictionary> keybinds) { Dictionary conflicts = new Dictionary(); foreach (KeyValuePair> keybind in keybinds) foreach (string key in keybind.Value) { List linkedKeybinds = conflicts.ContainsKey(key) ? conflicts[key].ToList() : new List(); linkedKeybinds.Add(keybind.Key); conflicts[key] = linkedKeybinds.ToArray(); } return conflicts.Where(p => p.Value.Length > 1).ToDictionary(p => p.Key, p => p.Value); } /// /// This function replaces all of a keybind's bound keys with another set of keys. /// /// Name of the keybind to replace the keys of. /// List of new keys to assign to the keybind. public static void SetKeybindKeys(string keybind, string[] keysToBind) { if (!encounterKeys.ContainsKey(keybind)) throw new CYFException("The keybind \"" + keybind + "\" doesn't exist."); List keyCodesToBind = new List(); if (keysToBind != null) foreach (string key in keysToBind) { if (!CheckKeyValidity(key)) throw new CYFException("The key \"" + key + "\" isn't recognized by CYF."); keyCodesToBind.Add(key); } encounterKeys[keybind] = keyCodesToBind; } /// /// This function adds a key to an existing keybind. /// /// Name of the keybind to add a key to. /// Key to add to the keybind. public static bool AddKeyToKeybind(string keybind, string key) { List keys; encounterKeys.TryGetValue(keybind, out keys); if (keys == null) throw new CYFException("The keybind \"" + keybind + "\" doesn't exist."); if (!CheckKeyValidity(key)) throw new CYFException("The key \"" + key + "\" isn't recognized by CYF."); if (!keys.Contains(key)) { keys.Add(key); encounterKeys[keybind] = keys; return true; } return false; } /// /// This function removes a key from an existing keybind. /// /// Name of the keybind to remove a key from. /// Key to remove from the keybind. public static bool RemoveKeyFromKeybind(string keybind, string key) { List keys; encounterKeys.TryGetValue(keybind, out keys); if (keys == null) throw new CYFException("The keybind \"" + keybind + "\" doesn't exist."); if (!CheckKeyValidity(key)) throw new CYFException("The key \"" + key + "\" isn't recognized by CYF."); if (keys.Contains(key)) { keys.Remove(key); encounterKeys[keybind] = keys; return true; } return false; } /// /// This function returns true if the keybind exists, false otherwise. /// /// The keybind to check the existence of. /// True if the keybind exists, false otherwise. public static bool KeybindExists(string keybind) { return encounterKeys.ContainsKey(keybind); } /// /// This function loads the player's keybinding configuration stored in their permanent globals. /// public static void LoadPlayerKeys() { if (!File.Exists(Application.persistentDataPath + "/keybinds.gd")) return; UTF8Encoding utf8 = new UTF8Encoding(); string fileContents = ""; using (FileStream file = File.OpenRead(Application.persistentDataPath + "/keybinds.gd")) { byte[] buffer = new byte[1024]; int offset = 0; while (offset < file.Length - 1) { offset += file.Read(buffer, offset, 1024); fileContents += utf8.GetString(buffer); } file.Dispose(); } try { foreach (string keybind in fileContents.Split(new[] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries)) { string[] keyValue = keybind.Split(':'); if (keyValue.Length != 2) throw new Exception("The keybind format of the line " + keybind + " doesn't follow CYF's standard keybind format."); List keys = keyValue[1].Split('|').Select(k => k.TrimEnd('\0')).ToList(); foreach (string key in keys) if (!CheckKeyValidity(key)) throw new CYFException("The key \"" + key + "\" isn't recognized by CYF for the keybind \"" + keyValue[0] + "\"."); playerKeys[keyValue[0]] = keys; } } catch (Exception e) { UnitaleUtil.DisplayLuaError("keybind loading", "Error while loading the user's keybind configuration.\nPlease delete the file named \"keybinds.gd\" in CYF's save folder, in this path:\n\n" + Application.persistentDataPath + "/keybinds.gd\n\nActual error:\n" + e.Message, true); } ResetEncounterInputs(); } /// /// This function saves the player's keybinding configuration into their permanent globals. /// public static void SaveKeybinds(Dictionary> newKeys) { if (File.Exists(Application.persistentDataPath + "/keybinds.gd")) File.Delete(Application.persistentDataPath + "/keybinds.gd"); UTF8Encoding utf8 = new UTF8Encoding(); string debugFile = ""; using (FileStream file = File.OpenWrite(Application.persistentDataPath + "/keybinds.gd")) { int fileLength = 0; foreach (KeyValuePair> keybind in newKeys) { string keybindString = (fileLength > 0 ? Environment.NewLine : "") + keybind.Key + ":" + string.Join("|", keybind.Value.OrderBy(k => k.Length).ToArray()); debugFile += keybindString; file.Write(utf8.GetBytes(keybindString), 0, keybindString.Length); file.Flush(); fileLength += keybindString.Length; } file.Dispose(); } playerKeys.Clear(); foreach (KeyValuePair> keybind in newKeys) playerKeys[keybind.Key] = new List(keybind.Value); ResetEncounterInputs(); } /// /// This function returns whether a given key is recognized by CYF or not. /// /// KEy to check for. /// True if the key is valid, false otherwise. public static bool CheckKeyValidity(string key) { KeyCode keycode; if (ParseUtil.TryParseEnum(typeof(KeyCode), key, out keycode)) return true; if (knownAxes.Contains(key)) return true; return false; } // Shortcuts for existing keys public ButtonState Confirm { get { return StateFor("Confirm"); } } public ButtonState Cancel { get { return StateFor("Cancel"); } } public ButtonState Menu { get { return StateFor("Menu"); } } public ButtonState Up { get { return StateFor("Up"); } } public ButtonState Down { get { return StateFor("Down"); } } public ButtonState Left { get { return StateFor("Left"); } } public ButtonState Right { get { return StateFor("Right"); } } /// /// This function queries the current state of an existing keyboard key or axis. /// /// A keyboard key known by Unity, or axis. /// ButtonState depending on the state of the key (pressed, held, released, none). public ButtonState Key(string key) { if (knownAxes.Contains(key)) return StateForAxis(key); return StateFor((KeyCode)Enum.Parse(typeof(KeyCode), key)); } /// /// This function returns the state of the selected key. /// /// Key to check the state of. /// state of the key (pressed, held, released, none). private static ButtonState StateFor(KeyCode c) { if (Input.GetKeyDown(c)) return ButtonState.PRESSED; if (Input.GetKeyUp(c)) return ButtonState.RELEASED; return Input.GetKey(c) ? ButtonState.HELD : ButtonState.NONE; } /// /// Priority of each key state, in descending order: /// 2 = HELD /// 1 = PRESSED /// -1 = RELEASED /// 0 = NONE /// private static readonly int[] priority = new int[] { 2, 1, -1, 0 }; /// /// This function returns the state with the highest priority among the keys linked to a named key. /// /// Named key to check for (ex: Confirm). /// State of the key with the highest priority among the set. public static ButtonState StateFor(string keybind) { List keys; encounterKeys.TryGetValue(keybind, out keys); if (keys == null) throw new CYFException("The keybind or key \"" + keybind + "\" doesn't exist."); List keycodes = new List(); List axes = new List(); foreach (string key in keys) { if (knownAxes.Contains(key)) axes.Add(key); else keycodes.Add((KeyCode)Enum.Parse(typeof(KeyCode), key)); } List states = keycodes.Select(k => StateFor(k)).ToList(); foreach (string axis in axes) states.Add(StateForAxis(axis)); ButtonState result = ButtonState.NONE; int resultPriority = Array.IndexOf(priority, (int)result); foreach (ButtonState state in states) { int statePriority = Array.IndexOf(priority, (int)state); if (statePriority < resultPriority) { result = state; resultPriority = statePriority; if (resultPriority == 0) break; } } return result; } /// /// This function returns the state of the selected axis key. /// /// Axis key to check for. /// The state of the selected axis key public static ButtonState StateForAxis(string axisKey) { int state = 0; string axisName = axisKey.Substring(0, axisKey.Length - 2); float axisState = Input.GetAxis(axisName); if (axisKey.Substring(axisKey.Length - 1).Equals("+")) { if (axes[axisName] >= 0.7f) state -= 1; if (axisState > 0.7f) state = -state + 1; } else { if (axes[axisName] <= -0.7f) state -= 1; if (axisState < -0.7f) state = -state + 1; } return (ButtonState)state; } /// /// This function is run after all other Update() calls within the engine are run. /// public void LateUpdate() { string[] axesNames = axes.Keys.ToArray(); foreach (string axis in axesNames) axes[axis] = Input.GetAxis(axis); } } ================================================ FILE: Assets/Scripts/Device/Input/KeyboardInput.cs.meta ================================================ fileFormatVersion: 2 guid: ad5088e40c3a67a489358fc8f1ae49fe timeCreated: 1450486029 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Device/Input.meta ================================================ fileFormatVersion: 2 guid: b288c1236934d9d40be6426fe392918c folderAsset: yes timeCreated: 1450484804 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Device/Misc.cs ================================================ using UnityEngine; using System.Runtime.InteropServices; using System.Text; using System.IO; using System.Linq; using MoonSharp.Interpreter; public class Misc { public string MachineName { get { return System.Environment.UserName; } } public void ShakeScreen(float duration, float intensity = 3, bool isIntensityDecreasing = true) { Camera.main.GetComponent().ShakeScreen(duration, intensity, isIntensityDecreasing); } public void StopShake() { GlobalControls.stopScreenShake = true; } public bool FullScreen { get { return Screen.fullScreen; } set { Screen.fullScreen = value; ScreenResolution.SetFullScreen(value, 2); } } public static int WindowWidth { get { return (int)ScreenResolution.windowSize.x; } set { ResizeWindow(value, WindowHeight); } } public static int WindowHeight { get { return (int)ScreenResolution.windowSize.y; } set { ResizeWindow(WindowWidth, value); } } public static bool ResizeWindow(int width = 640, int height = 480) { if (width <= 0 || height <= 0) throw new CYFException("The window's width and height have to be positive numbers!"); if (!GlobalControls.isInFight) throw new CYFException("ResizeWindow is only usable from within battles."); if (width >= Screen.currentResolution.width || height >= Screen.currentResolution.height) return false; ScreenResolution.SetFullScreen(Screen.fullScreen, 0, width, height); if (UserDebugger.instance && isDebuggerAttachedToCamera) UserDebugger.MoveTo(UserDebugger.offset.x + WindowWidth / 2f + 300, UserDebugger.offset.y + WindowHeight / 2f + 240); return true; } public static int ScreenWidth { get { return Screen.fullScreen && !ScreenResolution.wideFullscreen ? (int)ScreenResolution.displayedSize.x : Screen.currentResolution.width; } } public static int ScreenHeight { get { return Screen.currentResolution.height; } } public static int MonitorWidth { get { return (int)ScreenResolution.lastMonitorSize.x; } } public static int MonitorHeight { get { return (int)ScreenResolution.lastMonitorSize.y; } } public void SetWideFullscreen(bool borderless) { if (!GlobalControls.isInFight) throw new CYFException("SetWideFullscreen is only usable from within battles."); ScreenResolution.wideFullscreen = borderless; if (Screen.fullScreen) ScreenResolution.SetFullScreen(true, 0); } private static float _cameraXWindowSizeShift; /// /// Used to remove the camera shift shown when the window's width is odd, which blurs the entire screen. /// [MoonSharpHidden] public static float cameraXWindowSizeShift { private get { return _cameraXWindowSizeShift; } set { float oldCameraX = cameraX; _cameraXWindowSizeShift = value; cameraX = oldCameraX; } } public static float cameraX { get { return Camera.main.transform.position.x - 320 - cameraXWindowSizeShift; } set { if (UnitaleUtil.IsOverworld && !GlobalControls.isInShop) PlayerOverworld.instance.cameraShift.x += value - (Camera.main.transform.position.x - 320); else { float oldDebuggerX = 0; if (UserDebugger.instance && isDebuggerAttachedToCamera) oldDebuggerX = UserDebugger.x; Camera.main.transform.position = new Vector3(value + 320 + cameraXWindowSizeShift, Camera.main.transform.position.y, Camera.main.transform.position.z); // Updates the Debugger's position using the new camera position if (UserDebugger.instance && isDebuggerAttachedToCamera) UserDebugger.x = oldDebuggerX; } } } private static float _cameraYWindowSizeShift; /// /// Used to remove the camera shift shown when the window's height is odd, which blurs the entire screen. /// [MoonSharpHidden] public static float cameraYWindowSizeShift { private get { return _cameraYWindowSizeShift; } set { float oldCameraY = cameraY; _cameraYWindowSizeShift = value; cameraY = oldCameraY; } } public static float cameraY { get { return Camera.main.transform.position.y - 240 - cameraYWindowSizeShift; } set { if (UnitaleUtil.IsOverworld && !GlobalControls.isInShop) PlayerOverworld.instance.cameraShift.y += value - (Camera.main.transform.position.y - 240); else { float oldDebuggerY = 0; if (UserDebugger.instance && isDebuggerAttachedToCamera) oldDebuggerY = UserDebugger.y - cameraYWindowSizeShift; Camera.main.transform.position = new Vector3(Camera.main.transform.position.x, value + 240 + cameraYWindowSizeShift, Camera.main.transform.position.z); // Updates the Debugger's position using the new camera position if (UserDebugger.instance && isDebuggerAttachedToCamera) UserDebugger.y = oldDebuggerY + cameraYWindowSizeShift; } } } public static void MoveCamera(float x, float y) { cameraX += x; cameraY += y; } public static void MoveCameraTo(float x, float y) { cameraX = x; cameraY = y; } public static void ResetCamera() { if (UnitaleUtil.IsOverworld && !GlobalControls.isInShop) PlayerOverworld.instance.cameraShift = Vector2.zero; else MoveCameraTo(0f, 0f); } public LuaSpriteShader ScreenShader { get { return CameraShader.luashader; } } public static void DestroyWindow() { Application.Quit(); } // TODO: When OW is reworked, add 3rd argument to open a file in any of "mod", "map" or "default" locations public static LuaFile OpenFile(string path, string mode = "rw") { return new LuaFile(path, mode); } public bool FileExists(string path) { if (!path.StartsWith(FileLoader.DataRoot)) path = path.Replace('\\', '/').TrimStart('/'); // TODO: Remove this for 0.7 FileLoader.SanitizePath(ref path, "", false, true); return File.Exists(path); } public bool DirExists(string path) { if (!path.StartsWith(FileLoader.DataRoot)) path = path.Replace('\\', '/').TrimStart('/'); // TODO: Remove this for 0.7 FileLoader.SanitizePath(ref path, "", false, true); return Directory.Exists(path); } public bool CreateDir(string path) { if (!path.StartsWith(FileLoader.DataRoot)) path = path.Replace('\\', '/').TrimStart('/'); // TODO: Remove this for 0.7 FileLoader.SanitizePath(ref path, "", false, true); if (Directory.Exists(path)) return false; Directory.CreateDirectory(path); return true; } private static bool PathValid(string path) { return path != " " && path != "" && path != "/" && path != "\\" && path != "." && path != "./" && path != ".\\"; } public bool MoveDir(string path, string newPath) { if (!path.StartsWith(FileLoader.DataRoot)) path = path.Replace('\\', '/').TrimStart('/'); // TODO: Remove this for 0.7 if (!newPath.StartsWith(FileLoader.DataRoot)) newPath = newPath.Replace('\\', '/').TrimStart('/'); // TODO: Remove this for 0.7 if (!DirExists(path) || DirExists(newPath) || !PathValid(path)) return false; FileLoader.SanitizePath(ref path, "", true, true); FileLoader.SanitizePath(ref newPath, "", false, true); Directory.Move(path, newPath); return true; } public bool RemoveDir(string path, bool force = false) { if (!path.StartsWith(FileLoader.DataRoot)) path = path.Replace('\\', '/').TrimStart('/'); // TODO: Remove this for 0.7 FileLoader.SanitizePath(ref path, "", true, true); if (!Directory.Exists(path)) return false; try { Directory.Delete(path, force); } catch { /* ignored */ } return false; } public string[] ListDir(string path, bool getFolders = false) { if (path == null) throw new CYFException("Cannot list a directory with a nil path."); string origPath = path; if (!path.StartsWith(FileLoader.DataRoot)) path = path.Replace('\\', '/').TrimStart('/'); // TODO: Remove this for 0.7 FileLoader.SanitizePath(ref path, "", false, true); if (!Directory.Exists(path)) throw new CYFException("Invalid path:\n\n\"" + origPath + "\""); DirectoryInfo d = new DirectoryInfo(path); System.Collections.Generic.List retval = new System.Collections.Generic.List(); retval.AddRange(!getFolders ? d.GetFiles().Select(fi => Path.GetFileName(fi.ToString())) : d.GetDirectories().Select(di => di.Name)); return retval.ToArray(); } public static string OSType { get { switch (Application.platform) { case RuntimePlatform.WindowsEditor: case RuntimePlatform.WindowsPlayer: return "Windows"; case RuntimePlatform.LinuxEditor: case RuntimePlatform.LinuxPlayer: return "Linux"; default: return "Mac"; } } } public static float debuggerX { get { if (!UserDebugger.instance) throw new CYFException("Misc.debuggerX cannot be used outside of a function."); return UserDebugger.x; } set { if (!UserDebugger.instance) throw new CYFException("Misc.debuggerX cannot be used outside of a function."); UserDebugger.x = value; } } public static float debuggerY { get { if (!UserDebugger.instance) throw new CYFException("Misc.debuggerY cannot be used outside of a function."); return UserDebugger.y; } set { if (!UserDebugger.instance) throw new CYFException("Misc.debuggerY cannot be used outside of a function."); UserDebugger.y = value; } } public static float debuggerAbsX { get { if (!UserDebugger.instance) throw new CYFException("Misc.debuggerAbsX cannot be used outside of a function."); return UserDebugger.absx; } set { if (!UserDebugger.instance) throw new CYFException("Misc.debuggerAbsX cannot be used outside of a function."); UserDebugger.absx = value; } } public static float debuggerAbsY { get { if (!UserDebugger.instance) throw new CYFException("Misc.debuggerAbsY cannot be used outside of a function."); return UserDebugger.absy; } set { if (!UserDebugger.instance) throw new CYFException("Misc.debuggerAbsY cannot be used outside of a function."); UserDebugger.absy = value; } } private static bool _isDebuggerAttachedToCamera = true; public static bool isDebuggerAttachedToCamera { get { return _isDebuggerAttachedToCamera; } set { float newDebuggerX = debuggerAbsX, newDebuggerY = debuggerAbsY; if (value != _isDebuggerAttachedToCamera) { newDebuggerX += (value ? -1 : 1) * cameraX; newDebuggerY += (value ? -1 : 1) * cameraY; } _isDebuggerAttachedToCamera = value; MoveDebuggerToAbs(newDebuggerX, newDebuggerY); } } // Moves the debugger relative to its current position. public static void MoveDebugger(float x, float y) { if (!UserDebugger.instance) throw new CYFException("Misc.MoveDebugger cannot be used outside of a function."); UserDebugger.Move(x, y); } // Moves the debugger relative to the camera's position. The default position is (300, 480). The debugger's width is 320 and its height is 140. The debugger's pivot is the top-left corner. public static void MoveDebuggerTo(float x, float y) { if (!UserDebugger.instance) throw new CYFException("Misc.MoveDebuggerTo cannot be used outside of a function."); UserDebugger.MoveTo(x, y); } // Moves the debugger relative to the game's (0, 0) position. public static void MoveDebuggerToAbs(float x, float y) { if (!UserDebugger.instance) throw new CYFException("Misc.MoveDebuggerToAbs cannot be used outside of a function."); UserDebugger.MoveToAbs(x, y); } #if UNITY_STANDALONE_WIN || UNITY_EDITOR_WIN [DllImport("user32.dll")] private static extern int GetActiveWindow(); public static int window = GetActiveWindow(); public static void RetargetWindow() { window = GetActiveWindow(); } [DllImport("user32.dll")] public static extern int FindWindow(string className, string windowName); [DllImport("user32.dll")] private static extern int MoveWindow(int hwnd, int x, int y, int nWidth, int nHeight, int bRepaint); [DllImport("user32.dll", EntryPoint = "GetWindowText", ExactSpelling = false, CharSet = CharSet.Auto, SetLastError = true)] private static extern int GetWindowText(int hwnd, StringBuilder lpWindowText, int nMaxCount); [DllImport("user32.dll", EntryPoint = "SetWindowText", CharSet = CharSet.Auto)] public static extern bool SetWindowText(int hwnd, string text); [DllImport("user32.dll", SetLastError = true)] private static extern bool GetWindowRect(int hWnd, out RECT lpRect); [StructLayout(LayoutKind.Sequential)] public struct RECT { public int Left; public int Top; public int Right; public int Bottom; } public static string WindowName { get { StringBuilder strbTitle = new StringBuilder(9999); GetWindowText(window, strbTitle, strbTitle.Capacity + 1); return strbTitle.ToString(); } set { SetWindowText(window, value); } } public static int WindowX { get { Rect size = GetWindowRect(); return (int)size.x; } set { Rect size = GetWindowRect(); MoveWindow(window, value, (int)size.y, (int)size.width, (int)size.height, 1); } } public static int WindowY { get { Rect size = GetWindowRect(); return Screen.currentResolution.height - (int) size.y - (int) size.height; } set { Rect size = GetWindowRect(); MoveWindow(window, (int) size.x, Screen.currentResolution.height - value - (int) size.height, (int) size.width, (int) size.height, 1); } } public static void MoveWindow(int X, int Y) { Rect size = GetWindowRect(); if (!Screen.fullScreen) MoveWindow(window, (int)size.x + X, (int)size.y - Y, (int)size.width, (int)size.height, 1); } public static void MoveWindowTo(int X, int Y) { Rect size = GetWindowRect(); if (!Screen.fullScreen) MoveWindow(window, X, Screen.currentResolution.height - Y - (int)size.height, (int)size.width, (int)size.height, 1); } private static Rect GetWindowRect() { RECT r; GetWindowRect(window, out r); return new Rect(r.Left, r.Top, Mathf.Abs(r.Right - r.Left), Mathf.Abs(r.Top - r.Bottom)); } #else public static string WindowName { get { return ""; } set { } } public static int WindowX { get { return 0; } set { } } public static int WindowY { get { return 0; } set { } } public static void MoveWindowTo(int X, int Y) { } public static void MoveWindow(int X, int Y) { } private static Rect GetWindowRect() { return new Rect(); } #endif } ================================================ FILE: Assets/Scripts/Device/Misc.cs.meta ================================================ fileFormatVersion: 2 guid: b39636b3ffb7cd24386237489cdd8ece timeCreated: 1474228925 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Device/ScreenResolution.cs ================================================ using UnityEngine; using UnityEngine.SceneManagement; /// /// Disables vertical sync, sets resolution to 640x480 and sets the target framerate to 60FPS. /// Mostly here to prevent high refresh rate screens from being unable to play the game as a lot of scripts are tied to per-frame Update loops. /// CYF v0.6.4: Houses resolution-based variables and functions. /// public class ScreenResolution : MonoBehaviour { public static bool hasInitialized; public static int windowScale = 1; // Global "Window Scale" option. public static int tempWindowScale = 1; // Window Scale option used right now public static bool wideFullscreen; // Enabled/disabled by means of Misc.SetWideFullscreen. public static Vector2 lastMonitorSize; // The user's monitor size. Becomes Misc.MonitorWidth and Misc.MonitorHeight. public static Vector2 displayedSize; // Width/Height of the "normal" bounds of the screen. public static Vector2 mousePosShift; // Offset to start measuring Mouse Position from. public static Vector2 windowSize = new Vector2(640, 480); // Size of the window. private static float userAspectRatio; // The aspect ratio of the user's monitor. private static Rect FSBorderRect = new Rect(0f, 0f, 1f, 1f); // Rect to apply to cameras in fullscreen (with pillarboxing). private static readonly Rect NoBorderRect = new Rect(0f, 0f, 1f, 1f); // Rect to apply to cameras in windowed (or wide fullscreen). private static GameObject BGCamera; private static float orthographicSize = 240; public void Start() { if (hasInitialized) return; QualitySettings.vSyncCount = 0; Application.targetFrameRate = 60; // Grab the user's monitor resolution, and calculate some things early lastMonitorSize = new Vector2(Display.main.systemWidth, Display.main.systemHeight); displayedSize = new Vector2(Screen.width, Screen.height); userAspectRatio = lastMonitorSize.x / lastMonitorSize.y; ProjectileHitboxRenderer.fsScreenWidth = (int)System.Math.Min(RoundToNearestEven((double)(480 / lastMonitorSize.y) * lastMonitorSize.x), lastMonitorSize.x); // Calculate a cropping camera rect to apply to cameras when entering fullscreen if (userAspectRatio > 1.333334f) { float inset = 1f - 1.333334f / userAspectRatio; FSBorderRect = new Rect(inset/2, 0f, 1f-inset, 1f); } SceneManager.sceneLoaded += BoxCameras2; // Load BGCamera Prefab and have it be in every scene, from the moment CYF starts. // This is necessary so BGCamera will clear out old frames outside of the Main Camera's display rect. BGCamera = Instantiate(Resources.Load("Prefabs/BGCamera")); BGCamera.name = "BGCamera"; #if UNITY_EDITOR BGCamera.GetComponent().rect = NoBorderRect; #endif DontDestroyOnLoad(BGCamera); // If this is the user's first time EVER opening the engine, force 640x480 windowed SetFullScreen(PlayerPrefs.HasKey("once") && Screen.fullScreen, PlayerPrefs.HasKey("once") ? 0 : 2); PlayerPrefs.SetInt("once", 1); hasInitialized = true; } private static bool setSize; /// /// Enters or exits fullscreen, whilst accounting for the screen's dimensions. /// /// Whether or not the user is in fullscreen /// /// /// public static void SetFullScreen(bool fullscreen, int fswitch = 1, int width = -1, int height = -1) { // Failsafe if the data we need hasn't been provided yet if (userAspectRatio == 0) Camera.main.gameObject.AddComponent().Start(); if (width == -1) width = (int)windowSize.x; else if (width != (int)windowSize.x) { Misc.cameraXWindowSizeShift = -width % 2 / 2f; windowSize.x = width; setSize = true; } if (height == -1) height = (int)windowSize.y; else if (height != (int)windowSize.y) { Misc.cameraYWindowSizeShift = -height % 2 / 2f; windowSize.y = height; setSize = true; } Rect rect; if (!fullscreen) { // Windowed int maxScale = Mathf.FloorToInt(Mathf.Min(Display.main.systemWidth / (float)width, Display.main.systemHeight / (float)height)); tempWindowScale = Mathf.Min(windowScale, maxScale); Screen.SetResolution(width * tempWindowScale, height * tempWindowScale, false, 0); displayedSize = new Vector2(640 * tempWindowScale, 480 * tempWindowScale); mousePosShift = new Vector2(width / 2f - 320, height / 2f - 240); rect = new Rect(0f, 0f, 1f, 1f); } else { int newWidth, newHeight; if (!wideFullscreen) { // 4:3 FS float maxScale = Mathf.Min(lastMonitorSize.x / width, lastMonitorSize.y / height); newWidth = Mathf.RoundToInt(width * maxScale); newHeight = Mathf.RoundToInt(height * maxScale); } else { // Wide FS newWidth = (int)lastMonitorSize.x; newHeight = (int)lastMonitorSize.y; } float currRatio = (float)newWidth / newHeight; float newScaledHeight = newHeight * Mathf.Min(1, userAspectRatio / currRatio); displayedSize = new Vector2(newScaledHeight * 1.333333f, newScaledHeight); Screen.SetResolution((int)lastMonitorSize.x, (int)lastMonitorSize.y, true, 0); mousePosShift = new Vector2((lastMonitorSize.x - displayedSize.x) / 2f, (lastMonitorSize.y - displayedSize.y) / 2f); if (currRatio <= userAspectRatio) { float inset = 1f - currRatio / userAspectRatio; rect = new Rect(inset / 2, 0f, 1f - inset, 1f); } else { float inset = 1f - userAspectRatio / currRatio; rect = new Rect(0f, inset / 2, 1f, 1f - inset); } } #if UNITY_STANDALONE_WIN && !UNITY_EDITOR GlobalControls.fullscreenSwitch = fswitch; #elif UNITY_EDITOR mousePosShift = new Vector2(); #endif BoxCameras(height / 2f, rect); } public static void ResetAfterBattle() { wideFullscreen = false; tempWindowScale = windowScale; if (setSize) SetFullScreen(Screen.fullScreen, 0, 640, 480); setSize = false; } private static double RoundToNearestEven(double value) { return System.Math.Truncate(value) + (System.Math.Truncate(value) % 2); } /// /// Returns a modified mousePosition that counts the bottom-left of the "play area" as (0, 0), rather than the bottom-left of the screen. /// public static Vector2 mousePosition { get { return (Vector2)Input.mousePosition - mousePosShift; } } /// /// Applies (or un-applies) pillarboxing to applicable cameras. /// public static void BoxCameras(float newOrthographicSize, Rect rect) { // Grab the right camera to edit Camera cam, cam2 = null; if (GlobalControls.isInFight && UIController.instance != null && (UIController.instance.encounter == null || !UIController.instance.encounter.gameOverStance)) { cam = GameObject.Find("Main Camera").GetComponent(); if (GameOverBehavior.gameOverContainer == null) GameOverBehavior.gameOverContainer = GameObject.Find("GameOverContainer"); cam2 = GameOverBehavior.gameOverContainer.transform.GetComponentInChildren(true); } else cam = Camera.main; // Set displayed rect cam.rect = rect; cam.orthographicSize = newOrthographicSize; if (cam2 != null) { cam2.rect = rect; cam2.orthographicSize = newOrthographicSize; } orthographicSize = newOrthographicSize; } private static void BoxCameras2(Scene scene, LoadSceneMode mode) { BoxCameras(orthographicSize, !Screen.fullScreen || wideFullscreen ? NoBorderRect : FSBorderRect); } } ================================================ FILE: Assets/Scripts/Device/ScreenResolution.cs.meta ================================================ fileFormatVersion: 2 guid: ee7abd0ebb9fe8b4282e39c6bf1e3aa0 timeCreated: 1446845635 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Device.meta ================================================ fileFormatVersion: 2 guid: e3db13c00f9196f4488b29d4e1f622fe folderAsset: yes timeCreated: 1446845630 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Inventory/Inventory.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using UnityEngine; using MoonSharp.Interpreter; /// /// Static placeholder inventory class for the player. Will probably get moved to something else that makes sense, like the player...or not. /// public static class Inventory { public static List addedItems = new List(); public static List addedItemsTypes = new List(); public static LuaInventory luaInventory; public static int inventorySize = 8; public static int itemStatAmount; public static Dictionary NametoDesc = new Dictionary(), NametoShortName = new Dictionary(); public static Dictionary NametoType = new Dictionary(), NametoPrice = new Dictionary(); public static bool usedItemNoDelete; //public static bool overworld = false; public static List inventory = new List(); public static void SetItemList(string[] items) { foreach (string item in items) { // Make sure that the item exists before trying to create it string outString; int outInt; if (!addedItems.Contains(item) && !NametoDesc.TryGetValue(item, out outString) && !NametoShortName.TryGetValue(item, out outString) && !NametoType.TryGetValue(item, out outInt) && !NametoPrice.TryGetValue(item, out outInt)) throw new CYFException("Inventory.SetInventory: The item \"" + item + "\" was not found." + (UnitaleUtil.IsOverworld ? "" : "\n\nAre you sure you called Inventory.AddCustomItems first?")); } inventory = new List(new UnderItem[] { }); for (int i = 0; i < items.Length; i++) { if (i == inventorySize) { UnitaleUtil.Warn("The inventory can only contain " + inventorySize + " items, yet you tried to add the item \"" + items[i] + "\" as item number " + (i + 1) + "."); break; } inventory.Add(new UnderItem(items[i])); } } public static void SetItem(int index, string Name) { if (index >= inventorySize) throw new CYFException("The inventory can only contain " + inventorySize + " items."); if (index >= inventory.Count) AddItem(Name); else inventory[index] = new UnderItem(Name); } public static bool AddItem(string Name) { if (inventory.Count == inventorySize) return false; // Make sure that the item exists before trying to create it string outString; int outInt; if (!addedItems.Contains(Name) && !NametoDesc.TryGetValue(Name, out outString) && !NametoShortName.TryGetValue(Name, out outString) && !NametoType.TryGetValue(Name, out outInt) && !NametoPrice.TryGetValue(Name, out outInt)) throw new CYFException("Inventory.AddItem: The item \"" + Name + "\" was not found." + (UnitaleUtil.IsOverworld ? "" : "\n\nAre you sure you called Inventory.AddCustomItems first?")); inventory.Add(new UnderItem(Name)); return true; } public static int GetItemType(string Name) { int type; if (addedItems.Contains(Name)) for (int i = addedItems.Count - 1; i >= 0; i--) if (addedItems[i] == Name) return addedItemsTypes[i]; NametoType.TryGetValue(Name, out type); return type; } public static bool TryCall(string func, DynValue[] param = null) { return !UnitaleUtil.IsOverworld && UnitaleUtil.TryCall(EnemyEncounter.script, func, param); } public static void UseItem(int ID, bool silent = false) { usedItemNoDelete = false; itemStatAmount = 0; string Name = inventory[ID].Name, replacement = ""; int type = inventory[ID].Type; float amount = -991; TryCall("HandleItem", new[] { DynValue.NewString(Name.ToUpper()), DynValue.NewNumber(ID + 1), DynValue.NewBoolean(silent) }); // Check if the current item has been added to the list of custom items bool foundCustomItem = false; if (addedItems.Count != 0 && !UnitaleUtil.IsOverworld) if (addedItems.Any(t => string.Equals(t, Name, StringComparison.CurrentCultureIgnoreCase))) foundCustomItem = true; TextMessage[] mess = null; // Check the standard CYF item dictionary if (!foundCustomItem) ItemLibrary(Name, type, out mess, out amount, out replacement); if (type == 1 || type == 2) { // Equip the item if it's a weapon or armor if ((int)amount != -991) itemStatAmount = (int)amount; mess = ChangeEquipment(ID); } else if (replacement != "") { // Replace the current item with another if it has a replacement item inventory.RemoveAt(ID); inventory.Insert(ID, new UnderItem(replacement)); } else if (!usedItemNoDelete && type == 0) // Delete the item if it's a standard consumable inventory.RemoveAt(ID); if (silent) return; if (!UnitaleUtil.IsOverworld) { if (!UIController.instance.battleDialogueStarted && mess != null) UIController.instance.ActionDialogResult(mess); } else if (mess != null) { GameObject.Find("TextManager OW").GetComponent().SetTextQueue(mess); GameObject.Find("TextManager OW").transform.parent.parent.SetAsLastSibling(); } } public static void AddItemsToDictionaries() { NametoDesc.Add("Testing Dog", "A dog that tests something.\rDon't ask me what, I don't know."); NametoShortName.Add("Testing Dog", "TestDog"); NametoType.Add("Testing Dog", 3); NametoPrice.Add("Testing Dog", 0); //----------------------------------------------------------------------------------------------------------------------------------------------------------- NametoDesc.Add("Bandage", "It has already been used\rseveral times."); NametoPrice.Add("Bandage", 5); NametoDesc.Add("Monster Candy", "Has a distinct, non-licorice\rflavor."); NametoShortName.Add("Monster Candy", "MnstrCndy"); NametoPrice.Add("Monster Candy", 5); NametoDesc.Add("Spider Donut", "A donut made with Spider Cider\rin the batter."); NametoShortName.Add("Spider Donut", "SpidrDont"); NametoPrice.Add("Spider Donut", 7); NametoDesc.Add("Spider Cider", "Made with whole spiders, not just\rthe juice."); NametoShortName.Add("Spider Cider", "SpidrCidr"); NametoPrice.Add("Spider Cider", 18); NametoDesc.Add("Butterscotch Pie", "Butterscotch-cinnamon pie,\rone slice."); NametoShortName.Add("Butterscotch Pie", "ButtsPie"); NametoPrice.Add("Butterscotch Pie", 900); NametoDesc.Add("Snail Pie", "Heals Some HP. An acquired taste."); NametoPrice.Add("Snail Pie", 899); NametoDesc.Add("Snowman Piece", "Please take this to the ends\rof the earth."); NametoShortName.Add("Snowman Piece", "SnowPiece"); NametoPrice.Add("Snowman Piece", 300); NametoDesc.Add("Nice Cream", "Instead of a joke, the wrapper\rsays something nice."); NametoShortName.Add("Nice Cream", "NiceCream"); NametoPrice.Add("Nice Cream", 15); NametoDesc.Add("Bisicle", "It's a two-pronged popsicle,\rso you can eat it twice."); NametoPrice.Add("Bisicle", 15); NametoDesc.Add("Unisicle", "It's a SINGLE-pronged popsicle.\rWait, that's just normal..."); NametoPrice.Add("Unisicle", 8); NametoDesc.Add("Cinnamon Bunny", "A cinnamon roll in the shape\rof a bunny."); NametoShortName.Add("Cinnamon Bunny", "CinnaBun"); NametoPrice.Add("Cinnamon Bunny", 25); NametoDesc.Add("Astronaut Food", "For feeding a pet astronaut."); NametoShortName.Add("Astronaut Food", "AstroFood"); NametoPrice.Add("Astronaut Food", 25); NametoDesc.Add("Crab Apple", "An aquatic fruit that resembles\ra crustacean."); NametoShortName.Add("Crab Apple", "CrabApple"); NametoPrice.Add("Crab Apple", 25); NametoDesc.Add("Sea Tea", "Made from glowing marsh water.\rIncreases SPEED for one battle."); NametoPrice.Add("Sea Tea", 18); NametoDesc.Add("Abandoned Quiche", "A psychologically damaged\rspinach egg pie."); NametoShortName.Add("Abandoned Quiche", "Ab Quiche"); NametoPrice.Add("Abandoned Quiche", 200); NametoDesc.Add("Temmie Flakes", "It's just torn up pieces of\rconstruction paper."); NametoShortName.Add("Temmie Flakes", "TemFlakes"); NametoPrice.Add("Temmie Flakes", 6); NametoDesc.Add("Dog Salad", "Recovers HP (Hit Poodles)"); NametoPrice.Add("Dog Salad", 10); NametoDesc.Add("Instant Noodles", "Comes with everything you need\rfor a quick meal!"); NametoShortName.Add("Instant Noodles", "InstaNood"); NametoPrice.Add("Instant Noodles", 30); NametoDesc.Add("Hot Dog...?", "The \"meat\" is made of something\rcalled a \"water sausage.\""); NametoShortName.Add("Hot Dog...?", "Hot Dog"); NametoPrice.Add("Hot Dog...?", 30); NametoDesc.Add("Hot Cat", "Like a hot dog, but with\rlittle cat ears on the end."); NametoPrice.Add("Hot Cat", 30); NametoDesc.Add("Junk Food", "Food that was probably once\rthrown away."); NametoPrice.Add("Junk Food", 25); NametoDesc.Add("Hush Puppy", "This wonderful spell will stop\ra dog from casting magic."); NametoShortName.Add("Hush Puppy", "HushPupe"); NametoPrice.Add("Hush Puppy", 600); NametoDesc.Add("Starfait", "A sweet treat made of sparkling stars."); NametoPrice.Add("Starfait", 60); NametoDesc.Add("Glamburger", "A hamburger made of edible\rglitter and sequins."); NametoShortName.Add("Glamburger", "GlamBurg"); NametoPrice.Add("Glamburger", 120); NametoDesc.Add("Legendary Hero", "Sandwich shaped like a sword.\rIncreases ATTACK when eaten."); NametoShortName.Add("Legendary Hero", "Leg.Hero"); NametoPrice.Add("Legendary Hero", 300); NametoDesc.Add("Steak in the Shape of Mettaton's Face", "Huge steak in the shape of\rMettaton's face.You don't feel\rlike it's made of real meat..."); NametoShortName.Add("Steak in the Shape of Mettaton's Face", "FaceSteak"); NametoPrice.Add("Steak in the Shape of Mettaton's Face", 500); NametoDesc.Add("Popato Chisps", "Regular old popato chisps."); NametoShortName.Add("Popato Chisps", "PT Chisps"); NametoPrice.Add("Popato Chisps", 25); NametoDesc.Add("Bad Memory", "?????"); NametoShortName.Add("Bad Memory", "BadMemory"); NametoPrice.Add("Bad Memory", 10); NametoDesc.Add("Last Dream", "The goal of \"Determination\"."); NametoShortName.Add("Last Dream", "LastDream"); NametoPrice.Add("Last Dream", 25); //----------------------------------------------------------------------------------------------------------------------------------------------------------- NametoDesc.Add("Stick", "Its bark is worse than\rits bite."); NametoType.Add("Stick", 3); NametoPrice.Add("Stick", 50); NametoDesc.Add("Toy Knife", "Made of plastic. A rarity\rnowadays."); NametoType.Add("Toy Knife", 1); NametoPrice.Add("Toy Knife", 30); NametoDesc.Add("Tough Glove", "A worn pink leather glove.\rFor five-fingered folk."); NametoShortName.Add("Tough Glove", "TuffGlove"); NametoType.Add("Tough Glove", 1); NametoPrice.Add("Tough Glove", 50); NametoDesc.Add("Ballet Shoes", "These used shoes make you\rfeel incredibly dangerous."); NametoShortName.Add("Ballet Shoes", "BallShoes"); NametoType.Add("Ballet Shoes", 1); NametoPrice.Add("Ballet Shoes", 100); NametoDesc.Add("Torn Notebook", "Contains illegible scrawls.\rIncreases INV by 6."); NametoShortName.Add("Torn Notebook", "TornNotbo"); NametoType.Add("Torn Notebook", 1); NametoPrice.Add("Torn Notebook", 55); NametoDesc.Add("Burnt Pan", "Damage is rather consistent.\rConsumable items heal four more HP."); NametoType.Add("Burnt Pan", 1); NametoPrice.Add("Burnt Pan", 200); NametoDesc.Add("Empty Gun", "An antique revolver. It has no\rammo. Must be used precisely,\ror damage will be low."); NametoType.Add("Empty Gun", 1); NametoPrice.Add("Empty Gun", 350); NametoDesc.Add("Worn Dagger", "Perfect for cutting plants\rand vines."); NametoShortName.Add("Worn Dagger", "WornDG"); NametoType.Add("Worn Dagger", 1); NametoPrice.Add("Worn Dagger", 500); NametoDesc.Add("Real Knife", "Here we are!"); NametoShortName.Add("Real Knife", "RealKnife"); NametoType.Add("Real Knife", 1); NametoPrice.Add("Real Knife", 99999); //----------------------------------------------------------------------------------------------------------------------------------------------------------- NametoDesc.Add("Faded Ribbon", "If you're cuter, monsters\rwon't hit you as hard."); NametoShortName.Add("Faded Ribbon", "Ribbon"); NametoType.Add("Faded Ribbon", 2); NametoPrice.Add("Faded Ribbon", 30); NametoDesc.Add("Manly Bandanna", "It has seen some wear.\rIt has abs drawn on it."); NametoShortName.Add("Manly Bandanna", "Bandanna"); NametoType.Add("Manly Bandanna", 2); NametoPrice.Add("Manly Bandanna", 50); NametoDesc.Add("Old Tutu", "Finally, a protective piece\rof armor."); NametoType.Add("Old Tutu", 2); NametoPrice.Add("Old Tutu", 100); NametoDesc.Add("Cloudy Glasses", "Glasses marred with wear.\rIncreases INV by 9."); NametoShortName.Add("Cloudy Glasses", "ClodGlass"); NametoType.Add("Cloudy Glasses", 2); NametoPrice.Add("Cloudy Glasses", 35); NametoDesc.Add("Temmie Armor", "The things you can do with a\rcollege education! Raises ATTACK when\rworn. Recovers HP every other\rturn. INV up slightly."); NametoShortName.Add("Temmie Armor", "Temmie AR"); NametoType.Add("Temmie Armor", 2); NametoPrice.Add("Temmie Armor", 9999); NametoDesc.Add("Stained Apron", "Heals 1 HP every other turn."); NametoShortName.Add("Stained Apron", "StainApro"); NametoType.Add("Stained Apron", 2); NametoPrice.Add("Stained Apron", 200); NametoDesc.Add("Cowboy Hat", "This battle-worn hat makes you\rwant to grow a beard. It also\rraises ATTACK by 5."); NametoShortName.Add("Cowboy Hat", "CowboyHat"); NametoType.Add("Cowboy Hat", 2); NametoPrice.Add("Cowboy Hat", 350); NametoDesc.Add("Heart Locket", "It says \"Best Friends Forever.\""); NametoShortName.Add("Heart Locket", "<--Locket"); NametoType.Add("Heart Locket", 2); NametoPrice.Add("Heart Locket", 500); NametoDesc.Add("The Locket", "You can feel it beating."); NametoShortName.Add("The Locket", "TheLocket"); NametoType.Add("The Locket", 2); NametoPrice.Add("The Locket", 99999); } public static void UpdateEquipBonuses() { TextMessage[] mess; float amount; string replacement; ItemLibrary(PlayerCharacter.instance.Weapon, 1, out mess, out amount, out replacement); PlayerCharacter.instance.WeaponATK = (int)amount; ItemLibrary(PlayerCharacter.instance.Armor, 2, out mess, out amount, out replacement); PlayerCharacter.instance.ArmorDEF = (int)amount; } private static string HPRecoverString(float HP) { if (HP < 0) return "[w:10]\nYou lost " + -HP + " HP."; if (PlayerCharacter.instance.HP + HP >= PlayerCharacter.instance.MaxHP) return "[w:10]\nYour HP was maxed out."; return "[w:10]\nYou recovered " + HP + " HP!"; } public static void ItemLibrary(string name, int type, out TextMessage[] mess, out float amount, out string replacement) { mess = null; amount = 0; replacement = ""; switch (type) { case 0: switch (name) { case "Bandage": amount = 10; mess = new[] { new TextMessage("You re-applied the bandage.[w:10]\nStill kind of gooey." + HPRecoverString(amount), true, false) }; break; case "Monster Candy": amount = 10; mess = new[] { new TextMessage("You ate the Monster Candy.[w:10]\nVery un-licorice-like." + HPRecoverString(amount), true, false) }; break; case "Spider Donut": amount = 12; mess = new[] { new TextMessage("You ate the Spider Donut.[w:10]\nDon't worry, [w:5]spider didn't." + HPRecoverString(amount), true, false) }; break; case "Spider Cider": amount = 24; mess = new[] { new TextMessage("You drank the Spider Cider." + HPRecoverString(amount), true, false) }; break; case "Butterscotch Pie": amount = 999; mess = new[] { new TextMessage("You ate the Butterscotch Pie." + HPRecoverString(amount), true, false) }; break; case "Snail Pie": amount = PlayerCharacter.instance.MaxHP - (int)PlayerCharacter.instance.HP - 1; mess = new[] { new TextMessage("You ate the Snail Pie.[w:10]\nYour HP was maxed out.", true, false) }; break; case "Snowman Piece": amount = 45; mess = new[] { new TextMessage("You ate the Snowman Piece." + HPRecoverString(amount), true, false) }; break; case "Nice Cream": amount = 15; int randomCream = Math.RandomRange(0, 8); string sentenceCream = "You ate the Nice Cream.[w:10]\n"; switch (randomCream) { case 0: sentenceCream += "You're super spiffy!"; break; case 1: sentenceCream += "Are those claws natural?"; break; case 2: sentenceCream += "Love yourself! I love you!"; break; case 3: sentenceCream += "You look nice today!"; break; case 4: sentenceCream += "(An illustration of a hug)"; break; case 5: sentenceCream += "Have a wonderful day!"; break; case 6: sentenceCream += "Is this as sweet as you?"; break; case 7: sentenceCream += "You're just great!"; break; } mess = new[] { new TextMessage(sentenceCream + HPRecoverString(amount), true, false) }; break; case "Bisicle": amount = 11; replacement = "Unisicle"; mess = new[] { new TextMessage("You ate one half of the\rBisicle." + HPRecoverString(amount), true, false) }; break; case "Unisicle": amount = 11; mess = new[] { new TextMessage("You ate the Unisicle." + HPRecoverString(amount), true, false) }; break; case "Cinnamon Bunny": amount = 22; mess = new[] { new TextMessage("You ate the Cinnabon Bun." + HPRecoverString(amount), true, false) }; break; case "Astronaut Food": amount = 21; mess = new[] { new TextMessage("You ate the Astronaut Food." + HPRecoverString(amount), true, false) }; break; case "Crab Apple": amount = 18; mess = new[] { new TextMessage("You ate the Crab Apple." + HPRecoverString(amount), true, false) }; break; case "Sea Tea": amount = 18; mess = new[] { new TextMessage("[sound:SeaTea]You drank the Sea Tea." + HPRecoverString(amount), true, false) }; break; case "Abandoned Quiche": amount = 34; mess = new[] { new TextMessage("You ate the quiche." + HPRecoverString(amount), true, false) }; break; case "Temmie Flakes": amount = 2; mess = new[] { new TextMessage("You ate the Temmie Flakes." + HPRecoverString(amount), true, false) }; break; case "Dog Salad": int randomSalad = Math.RandomRange(0, 4); string sentenceSalad; switch (randomSalad) { case 0: amount = 2; sentenceSalad = "Oh. These are bones..."; break; case 1: amount = 10; sentenceSalad = "Oh. Fried tennis ball..."; break; case 2: amount = 30; sentenceSalad = "Oh. Tastes yappy..."; break; default: amount = 999; sentenceSalad = "It's literally garbage???"; break; } mess = new[] { new TextMessage(sentenceSalad + HPRecoverString(amount), true, false) }; break; case "Instant Noodles": amount = GlobalControls.isInFight ? 4 : 15; mess = new[] { new TextMessage("You remove the Instant\rNoodles from their\rpackaging.", true, false), new TextMessage("You put some water in\rthe pot and place it\ron the heat.", true, false), new TextMessage("You wait for the water\rto boil...", true, false), new TextMessage("[noskip][music:pause]...[w:30]\n...[w:30]\n...", true, false), new TextMessage("[noskip]It's[w:30] boiling.", true, false), new TextMessage("[noskip]You place the noodles[w:30]\rinto the pot.", true, false), new TextMessage("[noskip]4[w:30] minutes left[w:30] until\rthe noodles[w:30] are finished.", true, false), new TextMessage("[noskip]3[w:30] minutes left[w:30] until\rthe noodles[w:30] are finished.", true, false), new TextMessage("[noskip]2[w:30] minutes left[w:30] until\rthe noodles[w:30] are finished.", true, false), new TextMessage("[noskip]1[w:30] minute left[w:30] until\rthe noodles[w:30] are finished.", true, false), new TextMessage("[noskip]The noodles[w:30] are finished.", true, false), new TextMessage("...they don't taste very\rgood.", true, false), new TextMessage("You add the flavor packet.", true, false), new TextMessage("That's better.", true, false), new TextMessage("Not great,[w:5] but better.", true, false), new TextMessage("[music:unpause][health:" + amount + "]You ate the Instant Noodles." + HPRecoverString(amount), true, false) }; amount = 0; break; case "Hot Dog...?": amount = 20; mess = new[] { new TextMessage("[sound:HotDog]You ate the Hot Dog." + HPRecoverString(amount), true, false) }; break; case "Hot Cat": amount = 21; mess = new[] { new TextMessage("[sound:HotCat]You ate the Hot Cat." + HPRecoverString(amount), true, false) }; break; case "Junk Food": amount = 17; mess = new[] { new TextMessage("You ate the Junk Food." + HPRecoverString(amount), true, false) }; break; case "Hush Puppy": amount = 65; mess = new[] { new TextMessage("You ate the Hush Puppy.[w:10]\nDog-magic is neutralized." + HPRecoverString(amount), true, false) }; break; case "Starfait": amount = 14; mess = new[] { new TextMessage("You ate the Starfait." + HPRecoverString(amount), true, false) }; break; case "Glamburger": amount = 27; mess = new[] { new TextMessage("You ate the Glamburger." + HPRecoverString(amount), true, false) }; break; case "Legendary Hero": amount = 40; mess = new[] { new TextMessage("[sound:LegHero]You ate the Legendary Hero." + HPRecoverString(amount), true, false) }; break; case "Steak in the Shape of Mettaton's Face": amount = 60; mess = new[] { new TextMessage("You ate the Face Steak." + HPRecoverString(amount), true, false) }; break; case "Popato Chisps": amount = 13; mess = new[] { new TextMessage("You ate the Popato Chisps." + HPRecoverString(amount), true, false) }; break; case "Bad Memory": amount = PlayerCharacter.instance.HP <= 3 ? 999 : -1; mess = new[] { new TextMessage("You consume the Bad Memory." + HPRecoverString(amount), true, false) }; break; case "Last Dream": amount = 17; mess = new[] { new TextMessage("Through DETERMINATION, the dream\rbecame true." + HPRecoverString(amount), true, false) }; break; default: UnitaleUtil.Warn("The item " + name + " doesn't exist in CYF's consumable item pool."); break; } if (amount != 0) if (UnitaleUtil.IsOverworld) EventManager.instance.luaPlayerOw.setHP(PlayerCharacter.instance.HP + amount); else PlayerController.instance.Hurt(-amount, 0); break; case 1: switch (name) { case "Toy Knife": amount = 3; break; case "Tough Glove": amount = 5; break; case "Ballet Shoes": amount = 7; break; case "Torn Notebook": amount = 2; break; case "Burnt Pan": amount = 10; break; case "Empty Gun": amount = 12; break; case "Worn Dagger": amount = 15; break; case "Real Knife": amount = 99; break; default: UnitaleUtil.Warn("The item " + name + " doesn't exist in CYF's weapon item pool."); break; } break; case 2: switch (name) { case "Faded Ribbon": amount = 3; break; case "Manly Bandanna": amount = 7; break; case "Old Tutu": amount = 10; break; case "Temmie Armor": amount = 20; break; case "Cloudy Glasses": amount = 6; break; case "Stained Apron": amount = 11; break; case "Cowboy Hat": amount = 12; break; case "Heart Locket": amount = 15; break; case "The Locket": amount = 99; break; default: UnitaleUtil.Warn("The item " + name + " doesn't exist in CYF's armor item pool."); break; } break; default: switch (name) { case "Testing Dog": mess = new[] { new TextMessage("This dog is testing something.\nI must leave it alone.", true, false) }; break; case "Stick": mess = new[] { new TextMessage("You throw the stick.[w:10]\nNothing happens.", true, false) }; break; default: UnitaleUtil.Warn("The item " + name + " doesn't exist in CYF's miscellaneous item pool."); break; } break; } } public static int InventoryNumber(string itemName) { for (int i = 0; i < inventory.Count; i++) if (inventory[i].Name == itemName) return i + 1; return -1; } public static bool ItemExists(string itemName) { return NametoDesc.ContainsKey(itemName); } public static void RemoveItem(int index) { try { inventory.RemoveAt(index); } catch { /* ignored */ } } public static void SetEquip(int ID) { string Name = inventory[ID].Name; int mode; if (NametoType.ContainsKey(Name)) mode = NametoType[Name]; else if (addedItems.Contains(Name)) mode = addedItemsTypes[addedItems.IndexOf(Name)]; else throw new CYFException("The item \"" + Name + "\" doesn't exist."); switch (mode) { case 1: PlayerCharacter.instance.WeaponATK = itemStatAmount; RemoveItem(ID); AddItem(PlayerCharacter.instance.Weapon); PlayerCharacter.instance.Weapon = Name; break; case 2: PlayerCharacter.instance.ArmorDEF = itemStatAmount; RemoveItem(ID); AddItem(PlayerCharacter.instance.Armor); PlayerCharacter.instance.Armor = Name; break; default: throw new CYFException("The item \"" + Name + "\" can't be equipped."); } } public static TextMessage[] ChangeEquipment(int ID, bool silent = false) { string name = inventory[ID].Name; SetEquip(ID); return silent ? null : new[] { new TextMessage("You equipped the " + name + ".", true, false) }; } public static void RemoveAddedItems() { for (int i = 0; i < inventory.Count; i ++) if (addedItems.Any(str => inventory[i].Name == str)) { inventory.RemoveAt(i); i --; } foreach (string str in addedItems) { if (str == PlayerCharacter.instance.Weapon && PlayerCharacter.instance.Weapon != "Stick" && !NametoDesc.ContainsValue(str)) { for (int i = 0; i < inventory.Count; i++) if (inventory[i].Name == "Stick") { inventory.RemoveAt(i); break; } PlayerCharacter.instance.Weapon = "Stick"; PlayerCharacter.instance.WeaponATK = 0; } else if (str == PlayerCharacter.instance.Weapon && PlayerCharacter.instance.Weapon != "Stick" && NametoDesc.ContainsValue(str)) { TextMessage[] mess; float amount; string replacement; ItemLibrary(str, 1, out mess, out amount, out replacement); PlayerCharacter.instance.WeaponATK = (int)amount; } if (str == PlayerCharacter.instance.Armor && PlayerCharacter.instance.Armor != "Bandage" &&!NametoDesc.ContainsValue(str)) { for (int i = 0; i < inventory.Count; i++) if (inventory[i].Name == "Bandage") { inventory.RemoveAt(i); break; } PlayerCharacter.instance.Armor = "Bandage"; } else if (str == PlayerCharacter.instance.Armor && PlayerCharacter.instance.Armor != "Bandage" && NametoDesc.ContainsValue(str)) { TextMessage[] mess; float amount; string replacement; ItemLibrary(str, 2, out mess, out amount, out replacement); PlayerCharacter.instance.ArmorDEF = (int)amount; } } addedItems = new List(); addedItemsTypes = new List(); } } ================================================ FILE: Assets/Scripts/Inventory/Inventory.cs.meta ================================================ fileFormatVersion: 2 guid: 495e58b6c7143f443ae114b6d0b5b001 timeCreated: 1498875626 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Inventory/ItemBox.cs ================================================ using System.Collections.Generic; public static class ItemBox { public static int capacity = 10; public static List items = new List(); public static void AddToBox(string name) { if (!Inventory.ItemExists(name)) { UnitaleUtil.WriteInLogAndDebugger("The item " + name + "doesn't exist in CYF's item database."); return; } if (items.Count == capacity) { UnitaleUtil.WriteInLogAndDebugger("The box is already full! You can't add another item to it!"); return; } items.Add(new UnderItem(name)); } public static void RemoveFromBox(int index) { if (index < 0 || index >= items.Count) { UnitaleUtil.WriteInLogAndDebugger("Tried to remove the item #" + index + " of the box, however it only has " + items.Count + " items in it, starting from the index 0."); return; } items.RemoveAt(index); } } ================================================ FILE: Assets/Scripts/Inventory/ItemBox.cs.meta ================================================ fileFormatVersion: 2 guid: 5102e971101de484ca0145388635d9cd MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Inventory/UnderItem.cs ================================================ using System; using System.Linq; /// /// Class for ingame items. Used to create TestDog# items. But now... /// public class UnderItem { //private static int dogNumber = 1; public UnderItem(string Name) { //Let's end this dog tyranny! //ID = "DOGTEST" + dogNumber; //ShortName = "TestDog" + dogNumber; //dogNumber++; if (Inventory.addedItems.Any(str => string.Equals(str, Name, StringComparison.CurrentCultureIgnoreCase))) { this.Name = Name; string Short; ShortName = !Inventory.NametoShortName.TryGetValue(Name, out Short) ? Name : Short; Type = Inventory.GetItemType(Name); return; } if (Inventory.NametoDesc.Keys.Count == 0) { Inventory.luaInventory = new LuaInventory(); Inventory.AddItemsToDictionaries(); } this.Name = Name; string Sn, Desc; int Ty = Type; if (!Inventory.NametoDesc.TryGetValue(Name, out Desc)) UnitaleUtil.DisplayLuaError("Creating an item", "Tried to create the item \"" + Name + "\", but a set description for it was not found."); if (!Inventory.NametoShortName.TryGetValue(Name, out Sn)) Sn = Name; if (Type == 0) Inventory.NametoType.TryGetValue(Name, out Ty); ShortName = Sn; Description = Desc; Type = Ty; } public string Name { get; private set; } public string ShortName { get; private set; } public string Description { get; private set; } public int Type { get; private set; } //0 = normal, 1 = equipATK, 2 = equipDEF, 3 = special } ================================================ FILE: Assets/Scripts/Inventory/UnderItem.cs.meta ================================================ fileFormatVersion: 2 guid: 67898870eb809344d9ca718eab95989e timeCreated: 1446828885 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Inventory.meta ================================================ fileFormatVersion: 2 guid: 65c14d22be99eca4f9273d399ef88332 folderAsset: yes timeCreated: 1446836961 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/CLRBindings/LuaArenaStatus.cs ================================================ /// /// Lua binding to set and retrieve information for the game's arena. /// public class LuaArenaStatus { public float width { get { return ArenaManager.instance.desiredWidth; } } public float height { get { return ArenaManager.instance.desiredHeight; } } public float x { get { return ArenaManager.instance.desiredX; } } public float y { get { return ArenaManager.instance.desiredY; } } public float currentwidth { get { return ArenaManager.arenaAbs.width; } } public float currentheight { get { return ArenaManager.arenaAbs.height; } } public float currentx { get { return ArenaManager.arenaAbs.x + ArenaManager.arenaAbs.width / 2; } } //this being a rect value, it's centered on the bottom left corner of the object. public float currenty { get { return ArenaManager.arenaAbs.y; } } public bool isResizing { get { return ArenaManager.instance.isResizeInProgress(); } } public bool isresizing { get { return isResizing; } } public bool isMoving { get { return ArenaManager.instance.isMoveInProgress(); } } public bool ismoving { get { return isMoving; } } public bool isModifying { get { return isMoving || isResizing; } } public bool ismodifying { get { return isModifying; } } public float[] innerColor { get { return ArenaManager.instance.innerSprite.color; } set { ArenaManager.instance.innerSprite.color = value; } } public float[] innerColor32 { get { return ArenaManager.instance.innerSprite.color32; } set { ArenaManager.instance.innerSprite.color32 = value; } } public float[] outerColor { get { return ArenaManager.instance.outerSprite.color; } set { ArenaManager.instance.outerSprite.color = value; } } public float[] outerColor32 { get { return ArenaManager.instance.outerSprite.color32; } set { ArenaManager.instance.outerSprite.color32 = value; } } /// /// Resize the arena to the new width/height. Throws a hilarious (read: not hilarious) error message if user was sneaky, bound it globally and tried using it outside of a wave script. /// /// New width for arena. /// New height for arena. public void Resize(int w, int h) { ArenaManager.instance.Resize(w, h); } public void ResizeImmediate(int w, int h) { ArenaManager.instance.ResizeImmediate(w, h); } public void Hide(bool showWhenWaveEnds = true) { ArenaManager.instance.Hide(); ArenaManager.instance.showWhenWaveEnds = showWhenWaveEnds; } public void Show() { ArenaManager.instance.Show(); } public void Move(float x, float y, bool movePlayer = true, bool immediate = false) { if (immediate) ArenaManager.instance.MoveImmediate(x, y, movePlayer); else ArenaManager.instance.Move(x, y, movePlayer); } public void MoveTo(float x, float y, bool movePlayer = true, bool immediate = false) { if (immediate) ArenaManager.instance.MoveToImmediate(x, y, movePlayer); else ArenaManager.instance.MoveTo(x, y, movePlayer); } public void MoveAndResize(float x, float y, int width, int height, bool movePlayer = true, bool immediate = false) { if (immediate) ArenaManager.instance.MoveAndResizeImmediate(x, y, width, height, movePlayer); else ArenaManager.instance.MoveAndResize(x, y, width, height, movePlayer); } public void MoveToAndResize(float x, float y, int width, int height, bool movePlayer = true, bool immediate = false) { if (immediate) ArenaManager.instance.MoveToAndResizeImmediate(x, y, width, height, movePlayer); else ArenaManager.instance.MoveToAndResize(x, y, width, height, movePlayer); } } ================================================ FILE: Assets/Scripts/Lua/CLRBindings/LuaArenaStatus.cs.meta ================================================ fileFormatVersion: 2 guid: 31fe9825d8fed984f98e27532e3a3ab4 timeCreated: 1448873961 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/CLRBindings/LuaCYFObject.cs ================================================ using MoonSharp.Interpreter; using UnityEngine; public class LuaCYFObject { public Transform transform; public string name { get { return transform.gameObject.name; } } public int childIndex { get { return transform.GetSiblingIndex() + 1; } set { transform.SetSiblingIndex(value - 1); } } public int childCount { get { return transform.childCount; } } public LuaCYFObject(Transform t) { transform = t; } public DynValue GetParent() { return UnitaleUtil.GetObjectParent(transform); } public void SetParent(object p) { UnitaleUtil.SetObjectParent(this, p); } public DynValue GetChild(int index) { if (index > childCount) throw new CYFException("This object only has " + childCount + " children yet you try to get its child #" + index); return UnitaleUtil.GetObject(transform.GetChild(--index)); } public DynValue[] GetChildren() { DynValue[] tab = new DynValue[transform.childCount]; for (int i = 0; i < transform.childCount; i++) tab[i] = GetChild(i + 1); return tab; } } ================================================ FILE: Assets/Scripts/Lua/CLRBindings/LuaCYFObject.cs.meta ================================================ fileFormatVersion: 2 guid: 3acc14db707d43641acaf6c1f9301ebf MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/CLRBindings/LuaDiscord.cs ================================================ public class LuaDiscord { public void SetName(string name) { if (name == null) throw new CYFException("Discord.SetName: Argument cannot be nil."); DiscordControls.SetName(name); DiscordControls.UpdatePresence(); } public void ClearName(bool reset = false) { DiscordControls.ClearName(reset); DiscordControls.UpdatePresence(); } public void SetDetails(string details) { if (details == null) throw new CYFException("Discord.SetDetails: Argument cannot be nil."); DiscordControls.SetDetails(details); DiscordControls.UpdatePresence(); } public void ClearDetails(bool reset = false) { DiscordControls.ClearDetails(reset); DiscordControls.UpdatePresence(); } public void SetTime(int time, bool countdown = false) { DiscordControls.SetTime(time, countdown); DiscordControls.UpdatePresence(); } public void ClearTime(bool reset = false) { DiscordControls.ClearTime(reset); DiscordControls.UpdatePresence(); } } ================================================ FILE: Assets/Scripts/Lua/CLRBindings/LuaDiscord.cs.meta ================================================ fileFormatVersion: 2 guid: c3f67a7240a6f46449e8e76d407db71d MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/CLRBindings/LuaFile.cs ================================================ using System; using System.IO; public class LuaFile { private string[] content; public int lineCount { get { return content == null ? 0 : content.Length; } } public string openMode { get; private set; } public string filePath { get; private set; } public LuaFile(string path, string mode = "rw") { if (!path.StartsWith(FileLoader.DataRoot)) path = path.Replace('\\', '/').TrimStart('/'); // TODO: Remove this for 0.7 if (path == null) throw new CYFException("Cannot open a file with a nil path."); if (mode != "r" && mode != "w" && mode != "rw" && mode != "wr") throw new CYFException("A file's open mode can only be \"r\" (read), \"w\" (write) or \"rw\" (read + write)."); if (!FileLoader.SanitizePath(ref path, "", true, true, false) && mode == "r") throw new CYFException("You can't open a file that doesn't exist (" + path + ") in read-only mode."); if (!Directory.Exists(path.Substring(0, path.Length - Path.GetFileName(path).Length))) throw new CYFException("Invalid path:\n\n\"" + path + "\""); filePath = path; openMode = mode; try { content = File.Exists(path) ? File.ReadAllText(path).Split('\n') : null; } catch (IOException e) { throw new CYFException(e.GetType() + " error:\n\n" + e.Message); } } public byte[] ReadBytes() { if (!openMode.Contains("r")) throw new CYFException("This file has been opened in write-only mode, you can't read anything from it."); if (!File.Exists(filePath)) throw new CYFException("The file at the path \"" + filePath + "\" doesn't exist, so you can't read from it."); return File.ReadAllBytes(filePath); } public void WriteBytes(byte[] data) { if (!openMode.Contains("w")) throw new CYFException("This file has been opened in read-only mode, you can't write anything to it."); if (data == null) throw new CYFException("You can't write nil to a file! If you want to empty the file, use an empty table instead."); File.WriteAllBytes(filePath, data); } public string ReadLine(int line) { if (!openMode.Contains("r")) throw new CYFException("This file has been opened in write-only mode, you can't read anything from it."); if (!File.Exists(filePath)) throw new CYFException("The file at the path \"" + filePath + "\" doesn't exist, so you can't read from it."); if (line > content.Length || line < 1 || line % 1 != 0) throw new CYFException("Cannot read line #" + line + " of a file with " + content.Length + " lines."); return content[line - 1]; } public string[] ReadLines() { if (!openMode.Contains("r")) throw new CYFException("This file has been opened in write-only mode, you can't read anything from it."); if (!File.Exists(filePath)) throw new CYFException("The file at the path \"" + filePath + "\" doesn't exist, so you can't read from it."); return content; } public void Write(string data, bool append = true) { if (!openMode.Contains("w")) throw new CYFException("This file has been opened in read-only mode, you can't write anything to it."); if (data == null) throw new CYFException("You can't write nil to a file! If you want to empty the file, use an empty string with the append parameter set to false instead."); if (!File.Exists(filePath)) File.Create(filePath).Close(); try { if (append) File.WriteAllText(filePath, File.ReadAllText(filePath) + data); else File.WriteAllText(filePath, data); } catch (UnauthorizedAccessException) { throw new CYFException("File.Write: Unauthorized access to file:\n\"" + filePath + "\"\n\nIt may be read-only, hidden or a folder."); } try { content = File.ReadAllText(filePath).Split('\n'); } catch (IOException e) { throw new CYFException(e.GetType() + " error:\n\n" + e.Message); } } public void ReplaceLine(int line, string data) { if (!openMode.Contains("w")) throw new CYFException("This file has been opened in read-only mode, you can't write anything to it."); if (!File.Exists(filePath)) throw new CYFException("The file at the path \"" + filePath + "\" doesn't exist, so you can't replace its lines."); if (line > content.Length || line < 1 || line % 1 != 0) throw new CYFException("Cannot replace line #" + line + " of a file with " + content.Length + " lines."); if (data == null) throw new CYFException("You can't set a line to nil! If you want to remove the line, use the function DeleteLine()."); if (data.Contains("\n")) { string[] content1 = new string[line - 1], content2 = data.Split('\n'), content3 = new string[lineCount - line]; Array.Copy(content, 0, content1, 0, line - 1); Array.Copy(content, line, content3, 0, lineCount - line); string[] newContent = new string[lineCount - 1 + content2.Length]; content1.CopyTo(newContent, 0); content2.CopyTo(newContent, line - 1); content3.CopyTo(newContent, line - 1 + content2.Length); content = newContent; } else content[line - 1] = data; File.WriteAllText(filePath, string.Join("\n", content)); } public void DeleteLine(int line) { if (!openMode.Contains("w")) throw new CYFException("This file has been opened in read-only mode, you can't write anything to it."); if (!File.Exists(filePath)) throw new CYFException("The file at the path \"" + filePath + "\" doesn't exist, so you can't delete its lines."); if (line > content.Length || line < 1 || line % 1 != 0) throw new CYFException("The file only has " + content.Length + " lines yet you're trying to delete this file's line #" + line); string[] newContent = new string[lineCount - 1]; Array.Copy(content, 0, newContent, 0, line - 1); Array.Copy(content, line, newContent, line - 1, lineCount - line); content = newContent; } public void Delete() { if (!openMode.Contains("w")) throw new CYFException("This file has been opened in read-only mode, you can't write anything to it."); if (!File.Exists(filePath)) return; try { File.Delete(filePath); } catch (UnauthorizedAccessException) { throw new CYFException("File.Delete: Unauthorized access to file:\n\"" + filePath + "\"\n\nIt may be read-only or hidden."); } } public void Move(string newPath) { string origNewPath = newPath; FileLoader.SanitizePath(ref newPath, "", false, true); if (!File.Exists(filePath)) throw new CYFException("The file at the path \"" + filePath + "\" doesn't exist, so you can't move it."); if (File.Exists(newPath)) throw new CYFException("The file at the path \"" + origNewPath + "\" already exists."); try { File.Move(filePath, newPath); } catch (DirectoryNotFoundException) { throw new CYFException("File.Move: Could not find part or all of the path:\n\"" + origNewPath + "\"\n\nMake sure the path specified is valid, and its total length (" + origNewPath.Length + " characters, " + newPath.Length + " after sanitization) is not too long."); } catch (PathTooLongException) { throw new CYFException("File.Move: The destination path is too long:\n\"" + origNewPath + "\" (\"" + newPath + "\""); } filePath = newPath; } public void Copy(string newPath, bool overwrite = false) { string origNewPath = newPath; FileLoader.SanitizePath(ref newPath, "", false, true); if (!File.Exists(filePath)) throw new CYFException("The file at the path \"" + filePath + "\" doesn't exist, so you can't copy it."); if (File.Exists(newPath) && !overwrite) throw new CYFException("The file at the path \"" + origNewPath + "\" already exists."); if (newPath == filePath) throw new CYFException("Cannot copy a file to its own location!"); try { File.Copy(filePath, newPath, overwrite); } catch (DirectoryNotFoundException) { throw new CYFException("File.Copy: Could not find part or all of the path:\n\"" + origNewPath + "\"\n\nMake sure the path specified is valid, and its total length (" + origNewPath.Length + " characters, " + newPath.Length + " after sanitization) is not too long."); } catch (PathTooLongException) { throw new CYFException("File.Copy: The destination path is too long:\n\"" + origNewPath + "\" (\"" + newPath + "\""); } catch (UnauthorizedAccessException) { throw new CYFException("File.Copy: Unauthorized access to file:\n\"" + origNewPath + "\"\n\nIt may be read-only or hidden."); } } } ================================================ FILE: Assets/Scripts/Lua/CLRBindings/LuaFile.cs.meta ================================================ fileFormatVersion: 2 guid: bd23885bb0d1dd140a21c6e636d2ac00 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/CLRBindings/LuaInputBinding.cs ================================================ using UnityEngine; using System; using MoonSharp.Interpreter; using System.Linq; using System.Collections.Generic; public class LuaInputBinding { private readonly IUndertaleInput input; public LuaInputBinding(IUndertaleInput baseInput) { input = baseInput; } ////////////////// // Basic inputs // ////////////////// // Create Your Frisk's basic keys public int Confirm { get { return (int)input.Confirm; } } public int Cancel { get { return (int)input.Cancel; } } public int Menu { get { return (int)input.Menu; } } public int Up { get { return (int)input.Up; } } public int Down { get { return (int)input.Down; } } public int Left { get { return (int)input.Left; } } public int Right { get { return (int)input.Right; } } public int GetKey(string key) { try { if (!keyStateNeedsReload) return keyStates[key]; return (int)input.Key(key); } catch { throw new CYFException("Input.GetKey(): The key \"" + key + "\" doesn't exist."); } } public float GetAxisRaw(string axis) { if (!KeyboardInput.axes.ContainsKey(axis)) throw new CYFException("Input.GetAxisRaw(): The axis \"" + axis + "\" doesn't exist."); return Input.GetAxisRaw(axis); } ////////////////////////// // Mouse-related inputs // ////////////////////////// // X and Y position of the mouse // The X position of the mouse is taken from ScreenResolution so that the value is correct even if WideScreen is enabled public int MousePosX { get { return (int) (ScreenResolution.mousePosition.x / ScreenResolution.displayedSize.x * 640); } } public int MousePosY { get { return (int) (ScreenResolution.mousePosition.y / ScreenResolution.displayedSize.y * 480); } } public int MousePosAbsX { get { return (int) (Input.mousePosition.x / ScreenResolution.displayedSize.x * 640); } } public int MousePosAbsY { get { return (int) (Input.mousePosition.y / ScreenResolution.displayedSize.y * 480); } } public bool IsMouseInWindow { get { if (ScreenResolution.wideFullscreen && Screen.fullScreen) return true; Rect screenRect = new Rect(0, 0, ScreenResolution.displayedSize.x, Screen.height); return screenRect.Contains(ScreenResolution.mousePosition); } } public bool IsMouseVisible { get { return Cursor.visible; } set { Cursor.visible = value; } } public float MouseScroll { get { return Input.mouseScrollDelta.y; } } //////////////////////// // Keystate recording // //////////////////////// [MoonSharpHidden] private readonly Dictionary keyStates = new Dictionary(); [MoonSharpHidden] private bool keyStateNeedsReload = true; [MoonSharpHidden] public void Update() { keyStateNeedsReload = true; } [MoonSharpHidden] public void ReloadKeyStates() { keyStates.Clear(); foreach (string k in Enum.GetNames(typeof(KeyCode))) keyStates.Add(k, GetKey(k)); keyStateNeedsReload = false; } public string[] GetPressedKeys() { if (keyStateNeedsReload) ReloadKeyStates(); return keyStates.Where(kv => kv.Value == 1).Select(kv => kv.Key).ToArray(); } public string[] GetHeldKeys() { if (keyStateNeedsReload) ReloadKeyStates(); return keyStates.Where(kv => kv.Value == 2).Select(kv => kv.Key).ToArray(); } public string[] GetReleasedKeys() { if (keyStateNeedsReload) ReloadKeyStates(); return keyStates.Where(kv => kv.Value == -1).Select(kv => kv.Key).ToArray(); } ////////////// // Keybinds // ////////////// public void CreateKeybind(string keybind, string[] keysToBind = null) { KeyboardInput.CreateKeybind(keybind, keysToBind); } public void RemoveKeybind(string keybind) { KeyboardInput.DeleteKeybind(keybind); } public void SetKeybindKeys(string keybind, string[] keysToBind = null) { KeyboardInput.SetKeybindKeys(keybind, keysToBind); } public bool BindKeyToKeybind(string keybind, string keyToAdd) { return KeyboardInput.AddKeyToKeybind(keybind, keyToAdd); } public bool UnbindKeyFromKeybind(string keybind, string keyToRemove) { return KeyboardInput.RemoveKeyFromKeybind(keybind, keyToRemove); } public int GetKeybind(string keybind) { return (int)KeyboardInput.StateFor(keybind); } public string[] GetKeybindKeys(string keybind) { return KeyboardInput.GetKeybindKeys(keybind); } public string[][] GetKeybindConflicts() { Dictionary conflicts = KeyboardInput.GetConflicts(KeyboardInput.encounterKeys); return conflicts.Select( (p) => { List temp = p.Value.ToList(); temp.Insert(0, p.Key); return temp.ToArray(); }).ToArray(); } public void ResetKeybinds() { KeyboardInput.LoadPlayerKeys(); } public DynValue this[string keybind] { get { return DynValue.NewNumber(GetKeybind(keybind)); } set { if (value.Type != DataType.Table || !value.Table.Values.All(d => d.Type == DataType.String)) throw new CYFException("You need to provide a table of keys as strings to set the keybind to."); SetKeybindKeys(keybind, value.Table.Values.Select(d => d.String).ToArray()); } } } ================================================ FILE: Assets/Scripts/Lua/CLRBindings/LuaInputBinding.cs.meta ================================================ fileFormatVersion: 2 guid: 25c4e08315c8a2848aaa13fd3ba36a8a timeCreated: 1450987400 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/CLRBindings/LuaInventory.cs ================================================ using System.Collections.Generic; public class LuaInventory { public string GetItem(int index) { if (index <= Inventory.inventory.Count) return Inventory.inventory[index - 1].Name; UnitaleUtil.DisplayLuaError("Getting an item", "Out of bounds. You tried to access item number " + index + 1 + " in your inventory, but you only have " + Inventory.inventory.Count + " items."); return ""; } public int GetType(int index) { if (index <= Inventory.inventory.Count) return Inventory.inventory[index - 1].Type; UnitaleUtil.DisplayLuaError("Getting an item", "Out of bounds. You tried to access item number " + index + 1 + " in your inventory, but you only have " + Inventory.inventory.Count + " items."); return -1; } public void UseItem(int ID, bool silent = false) { if (ID < 1) throw new CYFException("Inventory.UseItem: The item's ID must be positive!"); if (ID > Inventory.inventory.Count) throw new CYFException("Inventory.UseItem: You tried to use the item #" + ID + ", but the player only has " + Inventory.inventory.Count + " items."); Inventory.UseItem(ID - 1, silent); } public void SetItem(int index, string Name) { Inventory.SetItem(index-1, Name); } public bool AddItem(string Name, int index = -1) { if (Name == null) throw new CYFException("Inventory.AddItem: The first argument (item name) is nil.\n\nSee the documentation for proper usage."); if (index == -1) return Inventory.AddItem(Name); if (index <= 0 || Inventory.inventory.Count >= Inventory.inventorySize) return false; if (index > Inventory.inventory.Count + 1) index = Inventory.inventory.Count + 1; List inv = new List(); bool result = false; for (var i = 0; i <= Inventory.inventory.Count; i++) { if (i == index - 1) { // Make sure that the item exists before trying to create it string outString; int outInt; if (!Inventory.addedItems.Contains(Name) && !Inventory.NametoDesc.TryGetValue(Name, out outString) && !Inventory.NametoShortName.TryGetValue(Name, out outString) && !Inventory.NametoType.TryGetValue(Name, out outInt) && !Inventory.NametoPrice.TryGetValue(Name, out outInt)) throw new CYFException("Inventory.AddItem: The item \"" + Name + "\" was not found.\n\nAre you sure you called Inventory.AddCustomItems first?"); inv.Add(new UnderItem(Name)); result = true; } if (i == Inventory.inventory.Count) break; inv.Add(Inventory.inventory[i]); } Inventory.inventory = inv; return result; } public void RemoveItem(int index) { if (Inventory.inventory.Count > 0 && (index < 1 || index > Inventory.inventory.Count)) UnitaleUtil.DisplayLuaError("Removing an item", "Cannot remove item number " + index + " from an Inventory with " + Inventory.inventory.Count + " items.\nRemember that the first item in the inventory is #1."); else if (Inventory.inventory.Count == 0) UnitaleUtil.DisplayLuaError("Removing an item", "Cannot remove an item when the inventory is empty."); Inventory.inventory.RemoveAt(index-1); } public void AddCustomItems(string[] names, int[] types) { if (names == null) throw new CYFException("Inventory.AddCustomItems: The first argument (list of item names) is nil.\n\nSee the documentation for proper usage."); if (types == null) throw new CYFException("Inventory.AddCustomItems: The second argument (list of item types) is nil.\n\nSee the documentation for proper usage."); if (names.Length != types.Length) throw new CYFException("Inventory.AddCustomItems: The second argument (list of item types) is not the same length as the first argument (list of item names).\n\nSee the documentation for proper usage."); Inventory.addedItems.AddRange(names); Inventory.addedItemsTypes.AddRange(types); } public void SetInventory(string[] names) { if (names == null) throw new CYFException("Inventory.SetInventory: Attempt to set the player's inventory to nil.\n\nSee the documentation for proper usage."); Inventory.SetItemList(names); } public int ItemCount { get { return Inventory.inventory.Count; } } public bool NoDelete { get { return Inventory.usedItemNoDelete; } set { Inventory.usedItemNoDelete = value; } } public void SetAmount(int amount) { Inventory.itemStatAmount = amount; } } ================================================ FILE: Assets/Scripts/Lua/CLRBindings/LuaInventory.cs.meta ================================================ fileFormatVersion: 2 guid: 8721385a1b8b342458ee21644ed991c1 timeCreated: 1466055286 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/CLRBindings/LuaPlayerStatus.cs ================================================ /// /// Lua binding to set and retrieve information for the on-screen player. /// public class LuaPlayerStatus { /// /// This Lua controller's attached PlayerController. /// protected PlayerController player; /// /// The sprite controller for the player. /// private readonly LuaSpriteController spr; /// /// Create a new Lua controller intended for this player. /// /// PlayerController this controller is intended for public LuaPlayerStatus(PlayerController p) { player = p; spr = LuaSpriteController.GetOrCreate(p.gameObject); } /// /// Get player's X position relative to the arena's center. /// public float x { get { return player.self.anchoredPosition.x - ArenaManager.arenaCenter.x; } } /// /// Get player's Y position relative to the arena's center. /// public float y { get { return player.self.anchoredPosition.y - ArenaManager.arenaCenter.y; } } /// /// Get player's X position relative to the bottom left of the screen. /// public float absx { get { return player.self.anchoredPosition.x; } } /// /// Get player's Y position relative to the bottom left of the screen. /// public float absy { get { return player.self.anchoredPosition.y; } } /// /// Sprite controller for the player soul. /// public LuaSpriteController sprite { get { return spr; } } /// /// Get player's current HP. /// public float hp { get { return player.HP; } set { player.SetHP(value); } } /// /// Player's Max HP. /// public int maxhp { get { return PlayerCharacter.instance.MaxHP; } set { player.SetMaxHPShift(value, 0f, true, false, false); } } /// /// Player's Max HP shift. /// public int MaxHPShift { get { return PlayerCharacter.instance.MaxHPShift; } } public int maxhpshift { get { return MaxHPShift; } } /// /// Get player's current ATK. /// public int atk { set { PlayerCharacter.instance.ATK = value; } get { return PlayerCharacter.instance.ATK; } } /// /// Get player's current weapon. /// public string weapon { get { return PlayerCharacter.instance.Weapon; } } /// /// Get player's current weapon's atk. /// public int weaponatk { get { return PlayerCharacter.instance.WeaponATK; } } /// /// Get player's current DEF. /// public int def { set { PlayerCharacter.instance.DEF = value; } get { return PlayerCharacter.instance.DEF; } } /// /// Get player's current weapon. /// public string armor { get { return PlayerCharacter.instance.Armor; } } /// /// Get player's current armor's def. /// public int armordef { get { return PlayerCharacter.instance.ArmorDEF; } } /// /// Player character's name. /// public string name { get { return PlayerCharacter.instance.Name; } set { if (value == null) throw new CYFException("Player.name: Attempt to set the player's name to a nil value.\n\nPlease double-check your code."); PlayerCharacter.instance.Name = value; if (UIStats.instance) UIStats.instance.setPlayerInfo(PlayerCharacter.instance.Name, PlayerCharacter.instance.LV); } } /// /// Player character's level. Adjusts stats when set. /// public int lv { get { return PlayerCharacter.instance.LV; } set { if (PlayerCharacter.instance.LV == value) return; PlayerCharacter.instance.SetLevel(value); if (UIStats.instance) { UIStats.instance.setPlayerInfo(PlayerCharacter.instance.Name, PlayerCharacter.instance.LV); UIStats.instance.setMaxHP(); } } } public float speed { get { return player.soul.realSpeed; } set { player.soul.SetSpeed(value); } } public int lastenemychosen { get { return player.lastEnemyChosen; } } public float lasthitmultiplier { get { return player.lastHitMult; } } /// /// True if player is currently blinking and invincible, false otherwise. /// public bool isHurting { get { return player.isHurting(); } } public bool ishurting { get { return isHurting; } } /// /// True if player is currently moving, false otherwise. Being pushed by the edges of the arena counts as moving. /// public bool isMoving { get { return player.isMoving(); } } public bool ismoving { get { return isMoving; } } /// /// Hurts the player with the given damage and invulnerabilty time. If this gets the player to 0 (or less) HP, you get the game over screen. /// /// Damage to deal to the player /// Invulnerability time in seconds /// Will the damage ignore the player's defense? /// Will sound be played from this action? public void Hurt(float damage, float invulTime = 1.7f, bool ignoreDef = false, bool playSound = true) { player.Hurt(damage, invulTime, ignoreDef, playSound); } /// /// Heals the player. Convenience method which is the same as hurting the player for -damage and no invulnerability time. /// /// Value to heal the player for public void Heal(float heal) { player.Hurt(-heal, 0.0f); } /// /// Override player control. Note: this will disable all movement checking on the player, making it ignore the arena walls. /// /// public void SetControlOverride(bool overrideControl) { if (UIController.instance.GetState() == "DEFENDING") player.setControlOverride(overrideControl); } /// /// Move the player relative to his current position /// /// /// /// public void Move(float x, float y, bool ignoreWalls = false) { player.SetPosition(absx + x, absy + y, ignoreWalls); } /// /// Move the player relative to the arena center. /// /// X position of player relative to arena center. /// Y position of player relative to arena center. /// If false, it will place you at the edge of the arena instead of over it. public void MoveTo(float x, float y, bool ignoreWalls = false) { MoveToAbs(ArenaManager.arenaCenter.x + x, ArenaManager.arenaCenter.y + y, ignoreWalls); } /// /// Move the player relative to the lower left corner of the screen. /// /// X position of player relative to the lower left of the screen. /// Y position of player relative to the lower left of the screen. /// If false, it will place you at the edge of the arena instead of over it. public void MoveToAbs(float x, float y, bool ignoreWalls = false) { player.SetPosition(x, y, ignoreWalls); } /// /// Sets the player's HP above his HP Max. /// public void ForceHP(float HP) { player.SetHP(HP, true); } /// /// Sets a shift for the player's Max HP. Can be settable and can modify the player's HP. /// /// /// /// /// /// public void SetMaxHPShift(int shift, float invulSec = 1.7f, bool set = false, bool canHeal = false, bool sound = true) { player.SetMaxHPShift(shift, invulSec, set, canHeal, sound); } public void setMaxHPShift(int shift, float invulSec = 1.7f, bool set = false, bool canHeal = false, bool sound = true) { SetMaxHPShift(shift, invulSec, set, canHeal, sound); } /// /// Resets any of the player's Max HP, ATK and DEF to their default values, based on LV. /// /// If true, will reset Max HP. /// If true, will reset ATK. /// If true, will reset DEF. public void ResetStats(bool resetMHP = true, bool resetATK = true, bool resetDEF = true) { if (resetMHP) { PlayerCharacter.instance.MaxHPShift = 0; if (UIStats.instance) UIStats.instance.setMaxHP(); } if (resetATK) atk = 8 + (2 * lv); if (resetDEF) def = 10 + (int)UnityEngine.Mathf.Floor((lv - 1) / 4f); } public void SetAttackAnim(string[] anim, float frequency = 1 / 6f, string prefix = "") { if (anim.Length == 0) { UIController.instance.fightUI.sliceAnim = new[] { "empty" }; UIController.instance.fightUI.sliceAnimFrequency = 1 / 30f; } else { if (prefix != "") { while (prefix.StartsWith("/")) prefix = prefix.Substring(1); if (!prefix.EndsWith("/")) prefix += "/"; for (int i = 0; i < anim.Length; i++) anim[i] = prefix + anim[i]; } UIController.instance.fightUI.sliceAnim = anim; UIController.instance.fightUI.sliceAnimFrequency = frequency; } } public void ResetAttackAnim() { UIController.instance.fightUI.sliceAnimFrequency = 1 / 6f; UIController.instance.fightUI.sliceAnim = new[] { "UI/Battle/spr_slice_o_0", "UI/Battle/spr_slice_o_1", "UI/Battle/spr_slice_o_2", "UI/Battle/spr_slice_o_3", "UI/Battle/spr_slice_o_4", "UI/Battle/spr_slice_o_5" }; } public void ChangeTarget(int index) { if (UIController.instance.state != "ATTACKING") return; if (index > UIController.instance.encounter.EnabledEnemies.Length || index <= 0) throw new CYFException("Player.ChangeTarget(): Enemy number " + index + " doesn't exist."); UIController.instance.fightUI.ChangeTarget(UIController.instance.encounter.EnabledEnemies[index -1]); } public void ForceAttack(int enemyNumber, int damage = FightUIController.DAMAGE_NOT_SET) { if (enemyNumber > UIController.instance.encounter.EnabledEnemies.Length || enemyNumber <= 0) throw new CYFException("Player.ForceAttack(): Enemy number " + enemyNumber + " doesn't exist."); UIController.instance.fightUI.targetNumber = 1; UIController.instance.fightUI.targetIDs = new[] { enemyNumber - 1 }; UIController.instance.fightUI.QuickInit(damage); } public int[] MultiTarget(int damage = FightUIController.DAMAGE_NOT_SET) { return MultiTarget(null, new[] { damage }); } public int[] MultiTarget(int[] targets, int damage) { return MultiTarget(targets, new[] { damage }); } public int[] MultiTarget(int[] targets = null, int[] damage = null) { UIController.instance.fightUI.multiHit = true; // Create a table with all active enemies if none's given if (targets == null) { targets = new int[UIController.instance.encounter.EnabledEnemies.Length]; for (int i = 0; i < targets.Length; i++) targets[i] = i; } else { if (targets.Length < 2) throw new CYFException("Player.MultiTarget(): You must have at least 2 enemies to trigger a multi attack."); // Check for valid attack IDs for (int i = 0; i < targets.Length; i++) { targets[i]--; if (targets[i] >= UIController.instance.encounter.EnabledEnemies.Length || targets[i] < 0) throw new CYFException("Player.MultiTarget(): Enemy number " + targets[i] + " doesn't exist."); } } UIController.instance.fightUI.targetIDs = targets; UIController.instance.fightUI.targetNumber = targets.Length; // Use a dummy value to not replace the attack values of the enemies themselves if (damage == null) damage = new[] { FightUIController.DAMAGE_NOT_SET }; // Check same amount of targets / damage values if each has their own if (damage.Length != 1 && damage.Length != targets.Length) throw new CYFException("Player.MultiTarget(): You may have as many numbers of damage values as the number of" + " enemies if you're using forced damage, or 1 for all enemies at the same time."); if (damage.Length != 1) return damage; // If only one value, copy it for all targets int tempDamage = damage[0]; damage = new int[targets.Length]; for (int i = 0; i < damage.Length; i++) damage[i] = tempDamage; return damage; } public void ForceMultiAttack(int damage = FightUIController.DAMAGE_NOT_SET) { ForceMultiAttack(null, new[] { damage }); } public void ForceMultiAttack(int[] targets, int damage) { ForceMultiAttack(targets, new[] { damage }); } public void ForceMultiAttack(int[] targets = null, int[] damage = null) { try { damage = MultiTarget(targets, damage); } catch (CYFException e) { throw new CYFException("Player.ForceMultiAttack() using " + e.Message); } UIController.instance.fightUI.QuickInit(damage); } public void CheckDeath() { UIController.instance.checkDeathCall = true; } } ================================================ FILE: Assets/Scripts/Lua/CLRBindings/LuaPlayerStatus.cs.meta ================================================ fileFormatVersion: 2 guid: 0649afc3fa3d110468b6fea8520f3c07 timeCreated: 1448873961 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/CLRBindings/LuaPlayerUI.cs ================================================ using MoonSharp.Interpreter; using System; using System.Linq; using UnityEngine; using UnityEngine.UI; using Object = UnityEngine.Object; public class LuaPlayerUI { private readonly UIStats ui = UIStats.instance; private LuaSpriteController bg; public LuaSpriteController background { get { if (bg != null) return bg; bg = LuaSpriteController.GetOrCreate(Object.FindObjectOfType().gameObject); return bg; } } public LuaTextManager namelv { get { return UIStats.instance.nameLevelTextMan; } } public LuaSpriteController hplabel { get { return UIStats.instance.hpLabel; } } public LifeBarController hpbar { get { return UIStats.instance.lifebar; } } public LuaTextManager hptext { get { return UIStats.instance.hpTextMan; } } public LuaTextManager maintext { get { return UIController.instance.mainTextManager; } } public LuaSpriteController mugshot { get { return UIController.instance.mainTextManager.mugshot; } } public LuaSpriteController mugshotmask { get { return UIController.instance.mainTextManager.mugshotMask; } } public DynValue enemylifebarlist { get { return DynValue.NewTable(null, UIController.instance.arenaParent.GetComponentsInChildren().Select(p => UserData.Create(p)).ToArray()); } } public static LuaSpriteController fightbtn { get { return LuaSpriteController.GetOrCreate(UIController.instance.fightButton.gameObject); } } public static LuaSpriteController actbtn { get { return LuaSpriteController.GetOrCreate(UIController.instance.actButton.gameObject); } } public static LuaSpriteController itembtn { get { return LuaSpriteController.GetOrCreate(UIController.instance.itemButton.gameObject); } } public static LuaSpriteController mercybtn { get { return LuaSpriteController.GetOrCreate(UIController.instance.mercyButton.gameObject); } } public static LuaCYFObject root { get { return new LuaCYFObject(Object.FindObjectOfType().transform); } } public void StopUpdate(bool toggle) { ui.stopUIUpdate = toggle; } public void Hide(bool hide) { ui.Hide(hide); } public void RepositionHPElements() { hpbar.transform.position = new Vector3(ui.hpLabel.absx + ui.hpLabel.spr.GetComponent().sizeDelta.x + 8, hpbar.transform.position.y, hpbar.transform.position.z); ui.hpTextMan.MoveToAbs(hpbar.background.absx + hpbar.backgroundRt.sizeDelta.x + 14, ui.hpTextMan.transform.position.y); } public void Reset() { try { background.Set("bg"); background.color = new float[] { 1, 1, 1, 1 }; } catch (CYFException) { // Background failed loading, no need to do anything. UnitaleUtil.Warn("No background file found. Using empty background."); } background.Scale(640 / background.width, 480 / background.height); namelv.SetFont(SpriteFontRegistry.Get(SpriteFontRegistry.UI_SMALLTEXT_NAME)); namelv.progressmode = "NONE"; namelv.HideBubble(); namelv.color = new float[] { 1, 1, 1, 1 }; hplabel.Set(GlobalControls.crate ? "UI/spr_phname_0" : "UI/spr_hpname_0"); hplabel.SetPivot(0, 0); hplabel.SetAnchor(0, 0); hplabel.Scale(1, 1); hpbar.RemoveOutline(); hpbar.background.SetPivot(0, 0); hpbar.background.SetAnchor(0, 0); hpbar.background.color = new float[] { 1, 0, 0, 1 }; hpbar.fill.color = new float[] { 1, 1, 0, 1 }; hpbar.SetSprites("bar-px"); hpbar.Resize(1, 20); hptext.SetFont(SpriteFontRegistry.Get(SpriteFontRegistry.UI_SMALLTEXT_NAME)); hptext.progressmode = "NONE"; hptext.HideBubble(); hptext.color = new float[] { 1, 1, 1, 1 }; ui.setPlayerInfo(PlayerCharacter.instance.Name, PlayerCharacter.instance.LV); ui.setNamePosition(); ui.setMaxHP(); EnableButton("FIGHT"); ResetButtonPosition("FIGHT"); ResetPlayerPosOnButton("FIGHT"); ResetButtonActiveSprite("FIGHT"); EnableButton("ACT"); ResetButtonPosition("ACT"); ResetPlayerPosOnButton("ACT"); ResetButtonActiveSprite("ACT"); EnableButton("ITEM"); ResetButtonPosition("ITEM"); ResetPlayerPosOnButton("ITEM"); ResetButtonActiveSprite("ITEM"); EnableButton("MERCY"); ResetButtonPosition("MERCY"); ResetPlayerPosOnButton("MERCY"); ResetButtonActiveSprite("MERCY"); } public string GetCurrentButton() { return UIController.instance.action.ToString(); } public void EnableButton(string btn) { UIController.EnableButton(btn); } public void DisableButton(string btn) { UIController.DisableButton(btn); UpdateButtons(); } public void ResetButtonPosition(string btn, bool resetX = true, bool resetY = true) { Image image; Vector2 basePos; if (!UIController.instance.buttonDictionary.TryGetValue(btn, out image)) throw new CYFException("ResetButtonPosition() can only take \"FIGHT\", \"ACT\", \"ITEM\" or \"MERCY\", but you entered \"" + btn + "\"."); UIController.instance.buttonBasePositions.TryGetValue(btn, out basePos); image.rectTransform.anchoredPosition = new Vector3(resetX ? basePos.x : image.transform.position.x, resetY ? basePos.y : image.transform.position.y); UpdateButtons(); } public float GetPlayerXPosOnButton(string btn) { UIController.Actions action; try { action = (UIController.Actions)Enum.Parse(typeof(UIController.Actions), btn); if (action == UIController.Actions.NONE) throw new CYFException("GetPlayerXPosOnButton() can only take \"FIGHT\", \"ACT\", \"ITEM\" or \"MERCY\", but you entered \"" + btn + "\"."); } catch { throw new CYFException("GetPlayerXPosOnButton() can only take \"FIGHT\", \"ACT\", \"ITEM\" or \"MERCY\", but you entered \"" + btn + "\"."); } return UIController.instance.playerOffsets[(int)action].x; } public float GetPlayerYPosOnButton(string btn) { UIController.Actions action; try { action = (UIController.Actions)Enum.Parse(typeof(UIController.Actions), btn); if (action == UIController.Actions.NONE) throw new CYFException("GetPlayerYPosOnButton() can only take \"FIGHT\", \"ACT\", \"ITEM\" or \"MERCY\", but you entered \"" + btn + "\"."); } catch { throw new CYFException("GetPlayerYPosOnButton() can only take \"FIGHT\", \"ACT\", \"ITEM\" or \"MERCY\", but you entered \"" + btn + "\"."); } return UIController.instance.playerOffsets[(int)action].y; } public void SetPlayerXPosOnButton(string btn, float newX) { UIController.Actions action; try { action = (UIController.Actions)Enum.Parse(typeof(UIController.Actions), btn); if (action == UIController.Actions.NONE) throw new CYFException("SetPlayerXPosOnButton() can only take \"FIGHT\", \"ACT\", \"ITEM\" or \"MERCY\", but you entered \"" + btn + "\"."); } catch { throw new CYFException("SetPlayerXPosOnButton() can only take \"FIGHT\", \"ACT\", \"ITEM\" or \"MERCY\", but you entered \"" + btn + "\"."); } UIController.instance.playerOffsets[(int)action].x = newX; UpdateButtons(); } public void SetPlayerYPosOnButton(string btn, float newY) { UIController.Actions action; try { action = (UIController.Actions)Enum.Parse(typeof(UIController.Actions), btn); if (action == UIController.Actions.NONE) throw new CYFException("SetPlayerYPosOnButton() can only take \"FIGHT\", \"ACT\", \"ITEM\" or \"MERCY\", but you entered \"" + btn + "\"."); } catch { throw new CYFException("SetPlayerYPosOnButton() can only take \"FIGHT\", \"ACT\", \"ITEM\" or \"MERCY\", but you entered \"" + btn + "\"."); } UIController.instance.playerOffsets[(int)action].y = newY; UpdateButtons(); } public void ResetPlayerPosOnButton(string btn, bool resetX = true, bool resetY = true) { UIController.Actions action; try { action = (UIController.Actions)Enum.Parse(typeof(UIController.Actions), btn); if (action == UIController.Actions.NONE) throw new CYFException("ResetPlayerPosOnButton() can only take \"FIGHT\", \"ACT\", \"ITEM\" or \"MERCY\", but you entered \"" + btn + "\"."); } catch { throw new CYFException("ResetPlayerPosOnButton() can only take \"FIGHT\", \"ACT\", \"ITEM\" or \"MERCY\", but you entered \"" + btn + "\"."); } Vector2 basePlayerPos; UIController.instance.buttonBasePlayerPositions.TryGetValue(btn, out basePlayerPos); if (resetX) UIController.instance.playerOffsets[(int)action].x = basePlayerPos.x; if (resetY) UIController.instance.playerOffsets[(int)action].y = basePlayerPos.y; UpdateButtons(); } public void SetButtonActiveSprite(string btn, string sprite) { if (sprite == "null") throw new CYFException("You can't set a sprite as nil!"); switch (btn) { case "FIGHT": UIController.fightButtonSprite = SpriteRegistry.Get(sprite); break; case "ACT": UIController.actButtonSprite = SpriteRegistry.Get(sprite); break; case "ITEM": UIController.itemButtonSprite = SpriteRegistry.Get(sprite); break; case "MERCY": UIController.mercyButtonSprite = SpriteRegistry.Get(sprite); break; default: throw new CYFException("SetButtonActiveSprite() can only take \"FIGHT\", \"ACT\", \"ITEM\" or \"MERCY\", but you entered \"" + btn + "\"."); } UpdateButtons(); } public void ResetButtonActiveSprite(string btn) { switch (btn) { case "FIGHT": UIController.fightButtonSprite = SpriteRegistry.Get(GlobalControls.crate ? "UI/Buttons/gifhtbt_1" : "UI/Buttons/fightbt_1"); break; case "ACT": UIController.actButtonSprite = SpriteRegistry.Get(GlobalControls.crate ? "UI/Buttons/catbt_1" : "UI/Buttons/actbt_1"); break; case "ITEM": UIController.itemButtonSprite = SpriteRegistry.Get(GlobalControls.crate ? "UI/Buttons/tembt_1" : "UI/Buttons/itembt_1"); break; case "MERCY": UIController.mercyButtonSprite = SpriteRegistry.Get(GlobalControls.crate ? "UI/Buttons/mecrybt_1" : "UI/Buttons/mercybt_1"); break; default: throw new CYFException("ResetButtonActiveSprite() can only take \"FIGHT\", \"ACT\", \"ITEM\" or \"MERCY\", but you entered \"" + btn + "\"."); } UpdateButtons(); } public void UpdateButtons() { LuaScriptBinder.SetAction(UIController.instance.action.ToString()); } } ================================================ FILE: Assets/Scripts/Lua/CLRBindings/LuaPlayerUI.cs.meta ================================================ fileFormatVersion: 2 guid: b02e178337472864ba3333c6894fce89 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/CLRBindings/LuaSpriteController.cs ================================================ using UnityEngine; using System; using System.Collections.Generic; using MoonSharp.Interpreter; using UnityEngine.UI; public class LuaSpriteController { [MoonSharpHidden] public CYFSprite spr; [MoonSharpHidden] public bool removed; [MoonSharpHidden] public bool limbo; internal GameObject img { // A image that returns the real image. We use this to be able to detect if the real image is null, and if it is, throw an exception get { if (removed) throw new CYFException("Attempted to perform action on removed sprite."); return spr.gameObject; } } public LuaSpriteShader shader; private readonly Dictionary vars = new Dictionary(); [MoonSharpHidden] public Vector2 nativeSizeDelta; // The native size of the image private Vector3 internalRotation = Vector3.zero; // The rotation of the sprite private float xScale = 1; // The X scale of the sprite private float yScale = 1; // The Y scale of the sprite [MoonSharpHidden] public KeyframeCollection keyframes; // This variable is used to store an animation [MoonSharpHidden] public string tag; // The tag of the sprite : "projectile", "enemy", "letter" or "other" private KeyframeCollection.LoopMode loop = KeyframeCollection.LoopMode.LOOP; [MoonSharpHidden] public static MoonSharp.Interpreter.Interop.IUserDataDescriptor data = UserData.GetDescriptorForType(true); public void Reset() { removed = false; limbo = false; internalRotation = Vector3.zero; Scale(1, 1); SetPivot(0.5f, 0.5f); SetAnchor(0.5f, 0.5f); img.GetComponent().color = new Color(1, 1, 1, 1); Mask("OFF"); img.GetComponent().inverted = false; shader.Revert(); StopAnimation(); keyframes = null; loop = KeyframeCollection.LoopMode.LOOP; vars.Clear(); } // The name of the sprite [MoonSharpHidden] public string _spritename = "empty"; public string spritename { // TODO: Restore in 0.7 //get { return img.GetComponent() ? img.GetComponent().sprite.name : img.GetComponent().sprite.name; } get { return _spritename; } [MoonSharpHidden] set { _spritename = value; } } // The x position of the sprite, relative to the arena position and its anchor. public float x { get { float letterAdjustShift = 0; if (tag == "letter") { TextManager tm = img.transform.parent.GetComponent(); letterAdjustShift = tm.letterAdjustShifts[tm.letters.FindIndex(l => l.image.gameObject == img)].x; } return letterAdjustShift + img.GetComponent().anchoredPosition.x + (GetTarget().gameObject != img ? GetTarget().transform.localPosition.x : 0); } set { MoveTo(value, y); } } // The y position of the sprite, relative to the arena position and its anchor. public float y { get { float letterAdjustShift = 0; if (tag == "letter") { TextManager tm = img.transform.parent.GetComponent(); letterAdjustShift = tm.letterAdjustShifts[tm.letters.FindIndex(l => l.image.gameObject == img)].y; } return letterAdjustShift + img.GetComponent().anchoredPosition.y + (GetTarget().gameObject != img ? GetTarget().transform.localPosition.y : 0); } set { MoveTo(x, value); } } // The z position of the sprite, relative to the arena position and its anchor. (Only useful in the overworld) public float z { get { return img.GetComponent().localPosition.z + (GetTarget().gameObject != img ? GetTarget().transform.localPosition.z : 0); } set { MoveTo(x, y, value); } } // The x position of the sprite, relative to the bottom left corner of the screen. public float absx { get { float letterAdjustShift = 0; if (tag == "letter") { TextManager tm = img.transform.parent.GetComponent(); letterAdjustShift = tm.letterAdjustShifts[tm.letters.FindIndex(l => l.image.gameObject == img)].x; } return letterAdjustShift + GetTarget().position.x; } set { MoveToAbs(value, absy); } } // The y position of the sprite, relative to the bottom left corner of the screen. public float absy { get { float letterAdjustShift = 0; if (tag == "letter") { TextManager tm = img.transform.parent.GetComponent(); letterAdjustShift = tm.letterAdjustShifts[tm.letters.FindIndex(l => l.image.gameObject == img)].y; } return letterAdjustShift + GetTarget().position.y; } set { MoveToAbs(absx, value); } } // The z position of the sprite, relative to the bottom left corner of the screen. (Only useful in the overworld) public float absz { get { return GetTarget().position.z; } set { MoveToAbs(absx, absy, value); } } // The x scale of the sprite. This variable is used for the same purpose as img, to be able to do other things when setting the variable public float xscale { get { return xScale; } set { Scale(value, yScale); } } // The y scale of the sprite. public float yscale { get { return yScale; } set { Scale(xScale, value); } } // Is the sprite active? True if the image of the sprite isn't null, false otherwise public bool isactive { get { return !GlobalControls.retroMode ^ (removed || limbo); } } // The original width of the sprite public float width { get { if (tag == "letter") return img.GetComponent().sprite.rect.width; if (img.GetComponent()) return img.GetComponent().mainTexture.width; return img.GetComponent().sprite.texture.width; } } // The original height of the sprite public float height { get { if (tag == "letter") return img.GetComponent().sprite.rect.height; if (img.GetComponent()) return img.GetComponent().mainTexture.height; return img.GetComponent().sprite.texture.height; } } // The x pivot of the sprite. public float xpivot { get { return img.GetComponent().pivot.x; } set { SetPivot(value, img.GetComponent().pivot.y); } } // The y pivot of the sprite. public float ypivot { get { return img.GetComponent().pivot.y; } set { SetPivot(img.GetComponent().pivot.x, value); } } // Is the current animation finished? True if there is a finished animation, false otherwise public bool animcomplete { get { if (keyframes == null && img.GetComponent()) keyframes = img.GetComponent(); if (keyframes == null) return false; if (keyframes.enabled == false) return true; if (loop == KeyframeCollection.LoopMode.LOOP) return false; return keyframes.enabled && keyframes.animationComplete(); } } // The loop mode of the animation public string loopmode { get { return loop.ToString(); } set { try { loop = (KeyframeCollection.LoopMode)Enum.Parse(typeof(KeyframeCollection.LoopMode), value.ToUpper(), true); } catch { throw new CYFException("sprite.loopmode can only be either \"ONESHOT\", \"ONESHOTEMPTY\" or \"LOOP\", but you entered \"" + value.ToUpper() + "\"."); } if (keyframes != null) keyframes.SetLoop(loop); } } // The color of the sprite. It uses an array of three floats between 0 and 1 public float[] color { get { if (img.GetComponent()) { Image imgtemp = img.GetComponent(); return new[] { imgtemp.color.r, imgtemp.color.g, imgtemp.color.b }; } else { SpriteRenderer imgtemp = img.GetComponent(); return new[] { imgtemp.color.r, imgtemp.color.g, imgtemp.color.b }; } } set { if (value == null) throw new CYFException("sprite.color can't be nil."); if (img.GetComponent()) { Image imgtemp = img.GetComponent(); switch (value.Length) { // If we don't have three floats, we throw an error case 3: imgtemp.color = new Color(value[0], value[1], value[2], alpha); break; case 4 : imgtemp.color = new Color(value[0], value[1], value[2], value[3]); break; default: throw new CYFException("You need 3 or 4 numeric values when setting a sprite's color."); } } else { SpriteRenderer imgtemp = img.GetComponent(); switch (value.Length) { // If we don't have three floats, we throw an error case 3: imgtemp.color = new Color(value[0], value[1], value[2], alpha); break; case 4: imgtemp.color = new Color(value[0], value[1], value[2], value[3]); break; default: throw new CYFException("You need 3 or 4 numeric values when setting a sprite's color."); } } } } // The color of the sprite on a 32 bits format. It uses an array of three floats between 0 and 255 public float[] color32 { // We need first to convert the Color into a Color32, and then get the values. get { if (img.GetComponent()) { Image imgtemp = img.GetComponent(); return new float[] { ((Color32)imgtemp.color).r, ((Color32)imgtemp.color).g, ((Color32)imgtemp.color).b }; } else { SpriteRenderer imgtemp = img.GetComponent(); return new float[] { ((Color32)imgtemp.color).r, ((Color32)imgtemp.color).g, ((Color32)imgtemp.color).b }; } } set { if (value == null) throw new CYFException("sprite.color can't be nil."); if (img.GetComponent()) { Image imgtemp = img.GetComponent(); // If we don't have three/four floats, we throw an error if (value.Length == 3) imgtemp.color = new Color32((byte)value[0], (byte)value[1], (byte)value[2], (byte)alpha32); else if (value.Length == 4) imgtemp.color = new Color32((byte)value[0], (byte)value[1], (byte)value[2], (byte)value[3]); else throw new CYFException("You need 3 or 4 numeric values when setting a sprite's color."); } else { SpriteRenderer imgtemp = img.GetComponent(); // If we don't have three/four floats, we throw an error if (value.Length == 3) imgtemp.color = new Color32((byte)value[0], (byte)value[1], (byte)value[2], (byte)alpha32); else if (value.Length == 4) imgtemp.color = new Color32((byte)value[0], (byte)value[1], (byte)value[2], (byte)value[3]); else throw new CYFException("You need 3 or 4 numeric values when setting a sprite's color."); } } } // The alpha of the sprite. It is clamped between 0 and 1 public float alpha { get { if (img.GetComponent()) { Image imgtemp = img.GetComponent(); return imgtemp.color.a; } else { SpriteRenderer imgtemp = img.GetComponent(); return imgtemp.color.a; } } set { if (img.GetComponent()) { Image imgtemp = img.GetComponent(); imgtemp.color = new Color(imgtemp.color.r, imgtemp.color.g, imgtemp.color.b, Mathf.Clamp01(value)); } else { SpriteRenderer imgtemp = img.GetComponent(); imgtemp.color = new Color(imgtemp.color.r, imgtemp.color.g, imgtemp.color.b, Mathf.Clamp01(value)); } } } // The alpha of the sprite in a 32 bits format. It is clamped between 0 and 255 public float alpha32 { get { if (img.GetComponent()) { Image imgtemp = img.GetComponent(); return ((Color32)imgtemp.color).a; } else { SpriteRenderer imgtemp = img.GetComponent(); return ((Color32)imgtemp.color).a; } } // We need first to convert the Color into a Color32, and then get the values. // Color32s needs bytes, not ints, so we cast them set { if (img.GetComponent()) { Image imgtemp = img.GetComponent(); imgtemp.color = new Color32(((Color32)imgtemp.color).r, ((Color32)imgtemp.color).g, ((Color32)imgtemp.color).b, (byte)value); } else { SpriteRenderer imgtemp = img.GetComponent(); imgtemp.color = new Color32(((Color32)imgtemp.color).r, ((Color32)imgtemp.color).g, ((Color32)imgtemp.color).b, (byte)value); } } } // The local rotation of the sprite public float localRotation { get { if (GlobalControls.isInFight && EnemyEncounter.script.GetVar("noscalerotationbug").Boolean) { return Math.Mod(img.transform.localEulerAngles.z + (yScale < 0 ? 180 : 0), 360); } return Math.Mod(internalRotation.z - img.transform.parent.eulerAngles.z, 360); } set { // We mod the value from 0 to 360 because angles are between 0 and 360 normally internalRotation.z = Math.Mod(img.transform.parent.eulerAngles.z + value, 360); img.transform.eulerAngles = internalRotation; if (img.GetComponent() && img.GetComponent().isPP()) img.GetComponent().needSizeRefresh = true; } } // The rotation of the sprite public float rotation { get { if (GlobalControls.isInFight && EnemyEncounter.script.GetVar("noscalerotationbug").Boolean) { return Math.Mod(img.transform.eulerAngles.z + (yScale < 0 ? 180 : 0), 360); } return internalRotation.z; } set { // We mod the value from 0 to 360 because angles are between 0 and 360 normally internalRotation.z = Math.Mod(value, 360); img.transform.eulerAngles = internalRotation; if (img.GetComponent() && img.GetComponent().isPP()) img.GetComponent().needSizeRefresh = true; } } private float GetParentRot() { Transform t = spr.transform.parent; while (t != null) { CYFSprite sprite = t.GetComponent(); if (sprite != null) return sprite.ctrl.rotation; t = t.parent; } return 0; } // The layer of the sprite public string layer { // You can't get or set the layer on an enemy sprite get { Transform target = GetTarget(); if (tag == "event" || tag == "letter") return "none"; if (tag == "projectile" && !target.parent.name.Contains("Layer")) return "BulletPool"; if (tag == "enemy" && !target.parent.name.Contains("Layer")) return "specialEnemyLayer"; return target.parent.name.Substring(0, target.parent.name.Length - 5); } set { switch (tag) { case "event": throw new CYFException("sprite.layer: Overworld events' layers can't be changed."); case "letter": throw new CYFException("sprite.layer: Letters' layers can't be changed."); } Transform target = GetTarget(); Transform parent = target.parent; try { target.SetParent(GameObject.Find(value + "Layer").transform); img.GetComponent().inverted = false; } catch { target.SetParent(parent); } } } public int characterNumber { get { if (tag != "letter") throw new CYFException("You can only use characterNumber on letters!"); return img.GetComponent().characterNumber; } } /* public bool filter { get { return img.sprite.texture.filterMode != FilterMode.Point; } set { if (value) img.sprite.texture.filterMode = FilterMode.Trilinear; else img.sprite.texture.filterMode = FilterMode.Point; } } */ /// /// Creates the instance of LuaSpriteController for the given GameObject or returns one if it already exists. /// /// GameObject to create a controller for. /// Force the reset of the sprite object. /// An instance of LuaSpriteController manipulating the Gameobject go. public static LuaSpriteController GetOrCreate(GameObject go, bool forceReset = false) { // Fetch or add the GameObject's CYFSprite component, then retrieve its controller if it exists CYFSprite newSpr = go.GetComponent() ?? go.AddComponent(); LuaSpriteController ctrl = newSpr.ctrl ?? new LuaSpriteController { spr = newSpr }; if (newSpr.ctrl != null && !forceReset) return ctrl; newSpr.ctrl = ctrl; // Images are used for most of CYF's sprites ctrl.nativeSizeDelta = new Vector2(100, 100); Image image = newSpr.GetComponent(); if (image != null) { // A controller's tag gives us more info on what the sprite actually is used for if (ctrl.img.GetComponent()) ctrl.tag = "projectile"; else if (ctrl.img.GetComponent()) ctrl.tag = "enemy"; else ctrl.tag = "other"; ctrl.shader = new LuaSpriteShader("sprite", ctrl.img); } else { // SpriteRenderers are used for overworld events ctrl.tag = "event"; ctrl.shader = new LuaSpriteShader("event", ctrl.img); } return ctrl; } public static bool HasSpriteController(GameObject go) { CYFSprite newSpr = go.GetComponent(); return newSpr != null && newSpr.ctrl != null; } // Changes the sprite of this instance public void Set(string name) { // Change the sprite if (name == null) throw new CYFException("You can't set a sprite as nil!"); if (img.GetComponent()) { Image imgtemp = img.GetComponent(); SpriteUtil.SwapSpriteFromFile(imgtemp, name); nativeSizeDelta = new Vector2(imgtemp.sprite.texture.width, imgtemp.sprite.texture.height); shader.UpdateTexture(imgtemp.sprite.texture); } else { SpriteRenderer imgtemp = img.GetComponent(); SpriteUtil.SwapSpriteFromFile(imgtemp, name); nativeSizeDelta = new Vector2(imgtemp.sprite.texture.width, imgtemp.sprite.texture.height); shader.UpdateTexture(imgtemp.sprite.texture); } // TODO: Restore in 0.7 //imgtemp.name = name; spritename = name; Scale(xScale, yScale); if (tag == "projectile") img.GetComponent().needUpdateTex = true; } // Sets the pivot of a sprite (its rotation point) public void SetPivot(float x, float y) { img.GetComponent().pivot = new Vector2(x, y); if (img.transform.parent != null && img.transform.parent.name == "SpritePivot") img.transform.localPosition = new Vector3(0, 0, 0); } // Sets the anchor of a sprite public void SetAnchor(float x, float y) { img.GetComponent().anchorMin = new Vector2(x, y); img.GetComponent().anchorMax = new Vector2(x, y); } public void Move(float x, float y) { Move(x, y, 0); } public void Move(float x, float y, float z) { MoveTo(this.x + x, this.y + y, this.z + z); } public void MoveTo(float x, float y) { MoveTo(x, y, GetTarget().localPosition.z); } public void MoveTo(float x, float y, float z) { if (img.transform.parent != null && img.transform.parent.name == "SpritePivot") GetTarget().localPosition = new Vector3(x, y, z) - (Vector3)img.GetComponent().anchoredPosition; else img.GetComponent().anchoredPosition = new Vector2(x, y); } public void MoveToAbs(float x, float y) { MoveToAbs(x, y, GetTarget().position.z); } public void MoveToAbs(float x, float y, float z) { GetTarget().position = new Vector3(x, y, z); } // Sets both xScale and yScale of a sprite public void Scale(float xs, float ys) { if (img.GetComponent()) img.GetComponent().needSizeRefresh = true; xScale = xs; yScale = ys; if (tag == "letter") { nativeSizeDelta = new Vector2(img.GetComponent().sprite.rect.width, img.GetComponent().sprite.rect.height); img.GetComponent().sizeDelta = new Vector2(nativeSizeDelta.x * Mathf.Abs(xScale), nativeSizeDelta.y * Mathf.Abs(yScale)); } else if (img.GetComponent()) { // In battle nativeSizeDelta = new Vector2(img.GetComponent().sprite.texture.width, img.GetComponent().sprite.texture.height); img.GetComponent().sizeDelta = new Vector2(nativeSizeDelta.x * Mathf.Abs(xScale), nativeSizeDelta.y * Mathf.Abs(yScale)); // img.transform.localScale = new Vector3(xs < 0 ? -1 : 1, ys < 0 ? -1 : 1, 1); } else { // In overworld nativeSizeDelta = new Vector2(img.GetComponent().sprite.texture.width, img.GetComponent().sprite.texture.height); img.transform.localScale = new Vector3(100 * Mathf.Abs(xScale), 100 * Mathf.Abs(yScale), 1); } // Flip the sprite horizontally and/or vertically if its scale is negative float zValue = internalRotation.z; internalRotation = new Vector3(ys < 0 ? 180 : 0, xs < 0 ? 180 : 0, zValue); img.transform.eulerAngles = internalRotation; } // Sets an animation for this instance public void SetAnimation(string[] frames) { SetAnimation(frames, 1 / 30f); } // Sets an animation for this instance with a frame timer public void SetAnimation(string[] spriteNames, float frametime, string prefix = "") { if (spriteNames == null) throw new CYFException("sprite.SetAnimation: The first argument (list of images) is nil.\n\nSee the documentation for proper usage."); if (spriteNames.Length == 0) throw new CYFException("sprite.SetAnimation: No sequence of animations was provided (animation table is empty)."); if (frametime < 0) throw new CYFException("sprite.SetAnimation: An animation can not have negative speed!"); if (frametime == 0) throw new CYFException("sprite.SetAnimation: An animation can not play at 0 frames per second!"); if (prefix != "") { while (prefix.StartsWith("/")) prefix = prefix.Substring(1); if (!prefix.EndsWith("/")) prefix += "/"; for (int i = 0; i < spriteNames.Length; i++) spriteNames[i] = prefix + spriteNames[i]; } Keyframe[] kfArray = new Keyframe[spriteNames.Length]; for (int i = spriteNames.Length - 1; i >= 0; i--) { Set(spriteNames[i]); kfArray[i] = new Keyframe(SpriteRegistry.Get(spriteNames[i]), spriteNames[i]); } if (keyframes == null) { if (img.GetComponent()) keyframes = img.GetComponent(); else { keyframes = img.AddComponent(); keyframes.spr = this; } } keyframes.enabled = true; keyframes.loop = loop; keyframes.Set(kfArray, frametime); UpdateAnimation(); } public void StopAnimation() { if (keyframes == null) return; keyframes.enabled = false; } // Gets or sets the paused state of a sprite's animation. public DynValue animationpaused { get { if (img && keyframes != null) return DynValue.NewBoolean(keyframes.paused); return DynValue.NewNil(); } set { if (!img) return; if (value.Type != DataType.Boolean) throw new CYFException("sprite.paused can only be set to a boolean value."); if (keyframes != null) keyframes.paused = value.Boolean; else throw new CYFException("Unable to pause/resume a sprite without an active animation."); } } // Gets or sets the current frame of an animated sprite's animation. // Example: If a sprite's animation table is {"sans_head_1", "sans_head_2", "sans_head_3", "sans_head"2}, // then for each sprite in the table, this will be: ^ 1 ^ 2 ^ 3 ^ 4 public int currentframe { set { if (!img) return; if (keyframes != null && keyframes.enabled) { if (value < 1 || value > keyframes.keyframes.Length) throw new CYFException("sprite.currentframe: New value " + value + " is out of bounds."); // Store the previous "progress" of the frame float progress = (keyframes.currTime / keyframes.timePerFrame) % 1; // Calls keyframes.currTime %= keyframes.totalTime keyframes.SetLoop(keyframes.loop); keyframes.currTime = ((value - 1) * keyframes.timePerFrame) + (progress * keyframes.timePerFrame); } else throw new CYFException("sprite.currentframe: You can not set the current frame of a sprite without an active animation."); } get { if (img && keyframes != null) return keyframes.getIndex(); return 0; } } // Gets or sets the current "play position" of a sprite's animation, in seconds. public float currenttime { set { if (!img) return; if (keyframes != null && keyframes.enabled) { if (value < 0 || value > keyframes.totalTime) throw new CYFException("sprite.currenttime: New value " + value + " is out of bounds."); keyframes.currTime = value % keyframes.totalTime; } else throw new CYFException("sprite.currenttime: You can not set the current time of a sprite without an active animation."); } get { if (!img || keyframes == null) return 0; if (!keyframes.enabled) return keyframes.totalTime; if (!keyframes.animationComplete()) return keyframes.currTime % keyframes.totalTime; return keyframes.totalTime; } } // Gets (read-only) the total time an animation will run for, in seconds. public float totaltime { get { if (img && keyframes != null) return keyframes.totalTime; return 0; } } // Gets or sets the speed of an animated sprite's animation. public float animationspeed { set { if (!img) return; if (keyframes != null) { if (value < 0) throw new CYFException("sprite.animationspeed: An animation can not have negative speed!"); if (value == 0) throw new CYFException("sprite.animationspeed: An animation can not play at 0 frames per second!"); float percentCompletion = keyframes.currTime / (keyframes.keyframes.Length * keyframes.timePerFrame); // Calls keyframes.totalTime = keyframes.timePerFrame * keyframes.Length; keyframes.Set(keyframes.keyframes, value); keyframes.currTime = percentCompletion * (keyframes.keyframes.Length * keyframes.timePerFrame); // Calls keyframes.currTime %= keyframes.totalTime keyframes.SetLoop(keyframes.loop); } else throw new CYFException("sprite.animationspeed: You can not change the speed of a sprite without an active animation."); } get { if (img && keyframes != null) return keyframes.timePerFrame; return 0; } } public void SendToTop() { GetTarget().SetAsLastSibling(); } public void SendToBottom() { GetTarget().SetAsFirstSibling(); } public void MoveBelow(LuaSpriteController sprite) { if (sprite == null) throw new CYFException("sprite.MoveBelow: The sprite passed as an argument is nil."); if (sprite.GetTarget().parent != GetTarget().parent) UnitaleUtil.Warn("You can't change the order of two sprites without the same parent."); else GetTarget().SetSiblingIndex(sprite.GetTarget().GetSiblingIndex()); } public void MoveAbove(LuaSpriteController sprite) { if (sprite == null) throw new CYFException("sprite.MoveAbove: The sprite passed as an argument is nil."); if (sprite.GetTarget().parent != GetTarget().parent) UnitaleUtil.Warn("You can't change the order of two sprites without the same parent."); else GetTarget().SetSiblingIndex(sprite.GetTarget().GetSiblingIndex() + 1); } public enum MaskMode { OFF, BOX, SPRITE, STENCIL, INVERTEDSPRITE, INVERTEDSTENCIL } [MoonSharpHidden] public MaskMode _masked; public void Mask(string mode) { switch (tag) { case "event": throw new CYFException("sprite.Mask: Can not be applied to Overworld Event sprites."); case "letter": throw new CYFException("sprite.Mask: Can not be applied to Letter sprites."); default: if (mode == null) throw new CYFException("sprite.Mask: No argument provided."); break; } MaskMode masked; try { masked = (MaskMode)Enum.Parse(typeof(MaskMode), mode, true); } catch { throw new CYFException("sprite.Mask: Invalid mask mode \"" + mode + "\"."); } if (masked != _masked) { //If children need to have their "inverted" property updated, then do so if ((int)_masked < 4 && (int)masked > 3 || (int)_masked > 3 && (int)masked < 4) foreach (Transform child in GetTarget()) { MaskImage childmask = child.gameObject.GetComponent(); if (childmask != null) childmask.inverted = (int)masked > 3; } RectMask2D box = img.GetComponent(); Mask mask = img.GetComponent(); switch (masked) { case MaskMode.BOX: //Remove sprite mask if applicable mask.enabled = false; box.enabled = true; break; case MaskMode.OFF: //Mask has been disabled mask.enabled = false; box.enabled = false; break; default: //The mask mode now can't possibly be box, so remove box mask if applicable mask.enabled = true; box.enabled = false; // Used to differentiate between "sprite" and "stencil"-like display modes mask.showMaskGraphic = masked == MaskMode.SPRITE || masked == MaskMode.INVERTEDSPRITE; break; } } _masked = masked; } public void Remove() { if (removed) return; if (!GlobalControls.retroMode) { if (tag == "projectile") { img.GetComponent().ctrl.Remove(); return; } if (img.gameObject.name == "player") throw new CYFException("sprite.Remove(): You can't remove the Player's sprite!"); } if (tag == "enemy") throw new CYFException("sprite.Remove(): You can't remove an enemy's sprite!"); UnitaleUtil.RemoveChildren(img); if (limbo) return; StopAnimation(); limbo = true; } public void Dust(bool playDust = true, bool removeObject = false) { if (tag == "enemy") throw new CYFException("sprite.Dust(): You can't dust an enemy's sprite!"); if (removed) return; UnitaleUtil.Dust(img, this); if (playDust) UnitaleUtil.PlaySound("DustSound", "enemydust"); if (removeObject && !img.GetComponent()) Remove(); } internal void UpdateAnimation() { if (!img) return; if (keyframes == null || keyframes.paused) return; Keyframe k = keyframes.getCurrent(); if (k != null) { // TODO: Restore in 0.7 //img.name = k.name; spritename = k.name; } else { StopAnimation(); return; } if (k.sprite == null) return; Set(spritename); // TODO: Remove in 0.7 if (k == KeyframeCollection.EMPTY_KEYFRAME) spritename = "blank"; } public void SetVar(string name, DynValue value) { if (name == null) throw new CYFException("sprite.SetVar: The first argument (the index) is nil.\n\nSee the documentation for proper usage."); vars[name] = value; } public DynValue GetVar(string name) { if (name == null) throw new CYFException("sprite.GetVar: The first argument (the index) is nil.\n\nSee the documentation for proper usage."); DynValue retval; return vars.TryGetValue(name, out retval) ? retval : DynValue.NewNil(); } public DynValue this[string key] { get { return GetVar(key); } set { SetVar(key, value); } } private Transform GetTarget() { Transform target = img.transform; if (target.parent && target.parent.name == "SpritePivot") return target.parent.transform; return target; } //////////////////// // Children stuff // //////////////////// public string name { get { return img.name; } } public int childIndex { get { return img.transform.GetSiblingIndex() + 1; } set { img.transform.SetSiblingIndex(value - 1); } } public int childCount { get { return img.transform.childCount; } } public DynValue GetParent() { return UnitaleUtil.GetObjectParent(img.transform); } public void SetParent(object parent) { UnitaleUtil.SetObjectParent(this, parent); LuaSpriteController sParent = parent as LuaSpriteController; ProjectileController pParent = parent as ProjectileController; if (pParent != null) sParent = pParent.sprite; if (sParent == null) return; if (img.GetComponent()) img.GetComponent().inverted = sParent._masked == MaskMode.INVERTEDSPRITE || sParent._masked == MaskMode.INVERTEDSTENCIL; } public DynValue GetChild(int index) { if (index > childCount) throw new CYFException("This object only has " + childCount + " children yet you try to get its child #" + index); return UnitaleUtil.GetObject(img.transform.GetChild(--index)); } public DynValue[] GetChildren() { DynValue[] tab = new DynValue[img.transform.childCount]; for (int i = 0; i < img.transform.childCount; i++) tab[i] = GetChild(i + 1); return tab; } } ================================================ FILE: Assets/Scripts/Lua/CLRBindings/LuaSpriteController.cs.meta ================================================ fileFormatVersion: 2 guid: baada1ec65b4eb14ca871a3fd8927f40 timeCreated: 1498875627 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/CLRBindings/LuaSpriteShader.cs ================================================ using UnityEngine; using UnityEngine.UI; using MoonSharp.Interpreter; using System.Collections.Generic; public class LuaSpriteShader { private readonly string mode; private readonly GameObject gameObject; [MoonSharpHidden] public Material material; [MoonSharpHidden] public bool _isActive; private TextureWrapMode H = TextureWrapMode.Clamp; private TextureWrapMode V = TextureWrapMode.Clamp; private readonly Dictionary propertyIDs = new Dictionary(); public LuaSpriteShader(string mode = "sprite", GameObject go = null) { this.mode = mode; gameObject = go; if (go == null) return; switch (mode) { case "sprite": material = go.GetComponent().material; break; case "event": material = go.GetComponent().material; break; case "camera": material = go.GetComponent().material; break; } } public void Set(string bundleName, string shaderName) { if (bundleName == null) throw new CYFException("shader.Set: The first argument, the name of the AssetBundle to load, is nil."); if (shaderName == null) throw new CYFException("shader.Set: The second argument, the name of the shader to load, is nil."); material = Object.Instantiate(ShaderRegistry.Get(bundleName, shaderName)); switch (mode) { case "camera": { CameraShader cs = gameObject.GetComponent(); cs.enabled = true; cs.material = material; material.EnableKeyword("CYF_SHADER_IS_CAMERA"); break; } case "event": gameObject.GetComponent().material = material; break; default: gameObject.GetComponent().material = material; break; } _isActive = true; } #if UNITY_EDITOR public void Test(string shaderName) { if (shaderName == null) throw new CYFException("shader.Test: The first argument, the name of the shader to load, is nil."); try { material = new Material(Shader.Find(shaderName)); } catch { throw new CYFException("The shader \"" + shaderName + "\" could not be found."); } switch (mode) { case "camera": { CameraShader cs = gameObject.GetComponent(); cs.enabled = true; cs.material = material; material.EnableKeyword("CYF_SHADER_IS_CAMERA"); break; } case "event": gameObject.GetComponent().material = material; break; default: gameObject.GetComponent().material = material; break; } _isActive = true; } #else public void Test(string shaderName) { throw new CYFException("shader.Test may only be used from within the Unity editor."); } #endif public void Revert() { material = ShaderRegistry.UI_DEFAULT_MATERIAL; switch (mode) { case "camera": { CameraShader cs = gameObject.GetComponent(); cs.enabled = false; cs.material = material; break; } case "event": gameObject.GetComponent().material = material; break; default: gameObject.GetComponent().material = material; break; } _isActive = false; } private void checkActive() { if (!_isActive) throw new CYFException("Attempted to perform action on inactive shader."); } public bool isactive { get { return _isActive; } } public bool isActive { get { return _isActive; } } [MoonSharpHidden] public void UpdateTexture(Texture t) { t.wrapModeU = H; t.wrapModeV = V; } public void SetWrapMode(string wrapMode, int sides = 0) { checkActive(); TextureWrapMode newMode = TextureWrapMode.Clamp; switch (wrapMode) { case "repeat": newMode = TextureWrapMode.Repeat; break; case "mirror": newMode = TextureWrapMode.Mirror; break; case "mirroronce": newMode = TextureWrapMode.MirrorOnce; break; } switch (sides) { case 0: H = newMode; V = newMode; break; case 1: H = newMode; break; default: V = newMode; break; } if (mode != "camera") UpdateTexture(mode == "event" ? gameObject.GetComponent().sprite.texture : gameObject.GetComponent().mainTexture); else { CameraShader.H = H; CameraShader.V = V; } } private int IndexProperty(string name, bool get) { checkActive(); if (string.IsNullOrEmpty(name)) throw new CYFException("The first argument, the name of the property in the shader, is nil."); if (!material.HasProperty(name) && get) throw new CYFException("Shader has no property \"" + name + "\"."); if (!propertyIDs.ContainsKey(name)) propertyIDs[name] = Shader.PropertyToID(name); return propertyIDs[name]; } public bool HasProperty(string name) { return material.HasProperty(name); } public void EnableKeyword(string key) { checkActive(); material.EnableKeyword(key); } public void DisableKeyword(string key) { checkActive(); material.DisableKeyword(key); } public DynValue GetColor(string name) { Color color = material.GetColor(IndexProperty(name, true)); Table output = new Table(null); output.Set(1, DynValue.NewNumber(color.r)); output.Set(2, DynValue.NewNumber(color.g)); output.Set(3, DynValue.NewNumber(color.b)); output.Set(4, DynValue.NewNumber(color.a)); return DynValue.NewTable(output); } public void SetColor(string name, DynValue value) { int property = IndexProperty(name, false); if (value.Type != DataType.Table || value.Table.Length < 3) throw new CYFException("shader.SetColor: The second argument, the color, needs to be a table with 3 or 4 numbers."); Vector4 v4output = new Vector4((float)value.Table.Get(1).Number, (float)value.Table.Get(2).Number, (float)value.Table.Get(3).Number, value.Table.Length > 3 ? (float)value.Table.Get(4).Number : 1f); material.SetColor(property, v4output); } public DynValue GetColorArray(string name) { Color[] colors = material.GetColorArray(IndexProperty(name, true)); Table output = new Table(null); for (var i = 0; i < colors.Length; i++) { Color color = colors[i]; Table colorTable = new Table(null); colorTable.Set(1, DynValue.NewNumber(color.r)); colorTable.Set(2, DynValue.NewNumber(color.g)); colorTable.Set(3, DynValue.NewNumber(color.b)); colorTable.Set(4, DynValue.NewNumber(color.a)); output.Set(i + 1, DynValue.NewTable(colorTable)); } return DynValue.NewTable(output); } public void SetColorArray(string name, DynValue value) { int property = IndexProperty(name, false); if (value.Type != DataType.Table) throw new CYFException("shader.SetColorArray: The second argument, the table of colors, needs to be a table."); Color[] colorarray = new Color[value.Table.Length]; for (int i = 0; i < value.Table.Length; i++) { DynValue item = value.Table.Get(i + 1); if (item.Type != DataType.Table || item.Table.Length < 3) throw new CYFException("shader.SetColorArray: Item #" + (i + 1).ToString() + " needs to be a table with 3 or 4 numbers."); Color newColor = new Color((float)item.Table.Get(1).Number, (float)item.Table.Get(2).Number, (float)item.Table.Get(3).Number, item.Table.Length > 3 ? (float)item.Table.Get(4).Number : 1f); colorarray[i] = newColor; } material.SetColorArray(property, colorarray); } public float GetFloat(string name) { return material.GetFloat(IndexProperty(name, true)); } public void SetFloat(string name, float value) { material.SetFloat(IndexProperty(name, false), value); } public float[] GetFloatArray(string name) { return material.GetFloatArray(IndexProperty(name, true)); } public void SetFloatArray(string name, float[] value) { material.SetFloatArray(IndexProperty(name, false), value); } public int GetInt(string name) { return material.GetInt(IndexProperty(name, true)); } public void SetInt(string name, int value) { material.SetInt(IndexProperty(name, false), value); } public class MatrixFourByFour { [MoonSharpHidden] public Matrix4x4 self = Matrix4x4.zero; public MatrixFourByFour(Matrix4x4 matrix) { self = matrix; } public MatrixFourByFour(DynValue row1, DynValue row2, DynValue row3, DynValue row4) { if (row1 == null || row1.Type != DataType.Table || row1.Table.Length < 4) throw new CYFException("shader.Matrix: The first argument needs to be a table of 4 numbers."); if (row2 == null || row2.Type != DataType.Table || row2.Table.Length < 4) throw new CYFException("shader.Matrix: The second argument needs to be a table of 4 numbers."); if (row3 == null || row3.Type != DataType.Table || row3.Table.Length < 4) throw new CYFException("shader.Matrix: The third argument needs to be a table of 4 numbers."); if (row4 == null || row4.Type != DataType.Table || row4.Table.Length < 4) throw new CYFException("shader.Matrix: The fourth argument needs to be a table of 4 numbers."); Table t1 = row1.Table; Table t2 = row2.Table; Table t3 = row3.Table; Table t4 = row4.Table; self.SetRow(0, new Vector4((float)t1.Get(1).Number, (float)t1.Get(2).Number, (float)t1.Get(3).Number, (float)t1.Get(4).Number)); self.SetRow(1, new Vector4((float)t2.Get(1).Number, (float)t2.Get(2).Number, (float)t2.Get(3).Number, (float)t2.Get(4).Number)); self.SetRow(2, new Vector4((float)t3.Get(1).Number, (float)t3.Get(2).Number, (float)t3.Get(3).Number, (float)t3.Get(4).Number)); self.SetRow(3, new Vector4((float)t4.Get(1).Number, (float)t4.Get(2).Number, (float)t4.Get(3).Number, (float)t4.Get(4).Number)); } public float this[int row, int column] { get { if (row < 1 || row > 4) throw new CYFException("Row must be between 1 and 4."); if (column < 1 || column > 4) throw new CYFException("Column must be between 1 and 4."); return self[row - 1, column - 1]; } set { if (row < 1 || row > 4) throw new CYFException("Row must be between 1 and 4."); if (column < 1 || column > 4) throw new CYFException("Column must be between 1 and 4."); self[row - 1, column - 1] = value; } } } public MatrixFourByFour Matrix(DynValue row1, DynValue row2, DynValue row3, DynValue row4) { return new MatrixFourByFour(row1, row2, row3, row4); } public MatrixFourByFour GetMatrix(string name) { return new MatrixFourByFour(material.GetMatrix(IndexProperty(name, true))); } public void SetMatrix(string name, MatrixFourByFour value) { if (value == null) throw new CYFException("shader.SetMatrix: The second argument, the matrix to set, needs to be a Matrix object."); material.SetMatrix(IndexProperty(name, false), value.self); } public MatrixFourByFour[] GetMatrixArray(string name) { Matrix4x4[] matrices = material.GetMatrixArray(IndexProperty(name, true)); MatrixFourByFour[] output = new MatrixFourByFour[matrices.Length]; for (int i = 0; i < matrices.Length; i++) output[i] = new MatrixFourByFour(matrices[i]); return output; } public void SetMatrixArray(string name, MatrixFourByFour[] value) { int property = IndexProperty(name, false); if (value.Length < 4) throw new CYFException("shader.SetMatrixArray: The second argument, the table of matrices, needs to be a table with shader matrix objects."); Matrix4x4[] matrixArray = new Matrix4x4[value.Length]; for (int i = 0; i < value.Length; i++) matrixArray[i] = value[i].self; material.SetMatrixArray(property, matrixArray); } public void SetTexture(string name, string sprite) { int property = IndexProperty(name, false); if (string.IsNullOrEmpty(sprite)) throw new CYFException("shader.SetTexture: The second argument, the texture, needs to be the name of an image in your Sprites folder."); Sprite spr = SpriteRegistry.Get(sprite); if (spr == null) throw new CYFException("The sprite Sprites/" + sprite + ".png doesn't exist."); material.SetTexture(property, spr.texture); } public DynValue GetVector(string name) { Vector4 vector = material.GetVector(IndexProperty(name, true)); Table output = new Table(null); output.Set(1, DynValue.NewNumber(vector.w)); output.Set(2, DynValue.NewNumber(vector.x)); output.Set(3, DynValue.NewNumber(vector.y)); output.Set(4, DynValue.NewNumber(vector.z)); return DynValue.NewTable(output); } public void SetVector(string name, DynValue value) { int property = IndexProperty(name, false); if (value.Type != DataType.Table || value.Table.Length < 4) throw new CYFException("shader.SetVector: The second argument, the vector, needs to be a table with 4 numbers."); Vector4 v4output = new Vector4((float)value.Table.Get(1).Number, (float)value.Table.Get(2).Number, (float)value.Table.Get(3).Number, (float)value.Table.Get(4).Number); material.SetVector(property, v4output); } public DynValue GetVectorArray(string name) { Vector4[] vectors = material.GetVectorArray(IndexProperty(name, true)); Table output = new Table(null); for (var i = 0; i < vectors.Length; i++) { Vector4 vector = vectors[i]; Table vectorTable = new Table(null); vectorTable.Set(1, DynValue.NewNumber(vector.w)); vectorTable.Set(2, DynValue.NewNumber(vector.x)); vectorTable.Set(3, DynValue.NewNumber(vector.y)); vectorTable.Set(4, DynValue.NewNumber(vector.z)); output.Set(i + 1, DynValue.NewTable(vectorTable)); } return DynValue.NewTable(output); } public void SetVectorArray(string name, DynValue value) { int property = IndexProperty(name, false); if (value.Type != DataType.Table) throw new CYFException("shader.SetVectorArray: The second argument, the table of vectors, needs to be a table."); Vector4[] v4array = new Vector4[value.Table.Length]; for (int i = 0; i < value.Table.Length; i++) { DynValue item = value.Table.Get(i + 1); if (item.Type != DataType.Table || item.Table.Length < 4) throw new CYFException("shader.SetVectorArray: Item #" + (i + 1).ToString() + " needs to be a table with 4 numbers."); Vector4 newv4 = new Vector4((float)item.Table.Get(1).Number, (float)item.Table.Get(2).Number, (float)item.Table.Get(3).Number, (float)item.Table.Get(4).Number); v4array[i] = newv4; } material.SetVectorArray(property, v4array); } } ================================================ FILE: Assets/Scripts/Lua/CLRBindings/LuaSpriteShader.cs.meta ================================================ fileFormatVersion: 2 guid: 6ba7bcc9c35dcd141af7486d93199cc3 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/CLRBindings/LuaTextManager.cs ================================================ using UnityEngine; using System; using System.Collections; using System.Collections.Generic; using System.Linq; using MoonSharp.Interpreter; public class LuaTextManager : TextManager { private GameObject container; private bool removed; private GameObject containerBubble; private RectTransform speechThing; private RectTransform speechThingShadow; private DynValue bubbleLastVar = DynValue.NewNil(); public bool bubble; private int framesWait = 60; private int countFrames; private int _bubbleHeight = -1; private BubbleSide bubbleSide = BubbleSide.NONE; [SerializeField] private ProgressMode progress = ProgressMode.AUTO; private float xScale = 1; private float yScale = 1; private string _linePrefix = ""; [MoonSharpHidden] public bool autoSetLayer = true; private readonly Dictionary vars = new Dictionary(); [MoonSharpHidden] public bool needFontReset = false; [MoonSharpHidden] public bool isMainTextObject = false; // Variables used to store text display adjustment variables public Dictionary xScaleSizes = new Dictionary(); public Dictionary yScaleSizes = new Dictionary(); private float lastXScale = 1, lastYScale = 1; // Whether we correct the text's display (position, scale) to not look jagged private static bool globalAdjustTextPos { get { if (!GlobalControls.isInFight) return false; if (EnemyEncounter.script.GetVar("noadjusttextdisplay").Type == DataType.Boolean) return !EnemyEncounter.script.GetVar("noadjusttextdisplay").Boolean; return true; } } private bool adjustTextDisplaySet = false; private bool _adjustTextDisplay = true; public bool adjustTextDisplay { get { if (adjustTextDisplaySet) return _adjustTextDisplay; if (rotation % 90 != 0) return false; return globalAdjustTextPos; } set { adjustTextDisplaySet = true; _adjustTextDisplay = value; if (!adjustTextDisplay) foreach (LetterData l in letters) l.image.GetComponent().localScale = Vector2.one; Move(0, 0); Scale(xscale, yscale); } } public override bool isactive { get { return base.isactive && !removed; } } // The rotation of the text object public new float rotation { get { return container.transform.eulerAngles.z; } set { // We mod the value from 0 to 360 because angles are between 0 and 360 normally internalRotation.z = Math.Mod(value, 360); container.transform.eulerAngles = internalRotation; } } private enum BubbleSide { LEFT = 0, DOWN = 90, RIGHT = 180, UP = 270, NONE = -1 } private enum ProgressMode { AUTO, MANUAL, NONE } public bool deleteWhenFinished = true; public GameObject GetContainer() { return container; } protected override void Awake() { container = transform.parent.gameObject; base.Awake(); if (!UnitaleUtil.IsOverworld && autoSetLayer) transform.parent.SetParent(GameObject.Find("TopLayer").transform); Transform bubbleTransform = UnitaleUtil.GetChildPerName(container.transform, "BubbleContainer", true); if (bubbleTransform != null) { containerBubble = bubbleTransform.gameObject; speechThing = UnitaleUtil.GetChildPerName(containerBubble.transform, "SpeechThing", false, true).GetComponent(); speechThingShadow = UnitaleUtil.GetChildPerName(containerBubble.transform, "SpeechThingShadow", false, true).GetComponent(); } } protected override void Update() { if (hidden) return; base.Update(); if (!isactive) return; AlignLetters(); //Next line/EOF check switch (progress) { case ProgressMode.MANUAL: { if (GlobalControls.input.Confirm == ButtonState.PRESSED && LineComplete()) NextLine(); break; } case ProgressMode.AUTO: { if (LineComplete()) if (countFrames == framesWait) { NextLine(); countFrames = 0; } else countFrames++; break; } } if (CanAutoSkipAny(true) && (!UIController.instance || !UIController.instance.monsterDialogues.Contains(this))) NextLine(); if (GlobalControls.input.Cancel == ButtonState.PRESSED && CanSkip() && !LineComplete() && (!UIController.instance || this != UIController.instance.mainTextManager || !UIController.instance.stateSwitched)) DoSkipFromPlayer(); } // Used to test if a text object still exists. private void CheckExists() { if (removed) throw new CYFException("Attempt to perform action on removed text object."); } public void Remove() { DestroyText(); } public void DestroyText() { if (!removed) Destroy(transform.parent.gameObject); removed = true; } private void ResizeBubble() { float effectiveBubbleHeight = bubbleHeight != -1 ? bubbleHeight < 16 ? 40 : bubbleHeight + 24 : UnitaleUtil.CalcTextHeight(this) < 16 ? 40 : UnitaleUtil.CalcTextHeight(this) + 24; containerBubble.transform.GetComponent().sizeDelta = new Vector2(textMaxWidth + 20, effectiveBubbleHeight); //To set the borders if (UnitaleUtil.GetChildPerName(containerBubble.transform, "BackHorz")) { UnitaleUtil.GetChildPerName(containerBubble.transform, "BackHorz").GetComponent().sizeDelta = new Vector2(textMaxWidth + 20, effectiveBubbleHeight - 20 * 2); //BackHorz UnitaleUtil.GetChildPerName(containerBubble.transform, "BackVert").GetComponent().sizeDelta = new Vector2(textMaxWidth - 20, effectiveBubbleHeight); //BackVert UnitaleUtil.GetChildPerName(containerBubble.transform, "CenterHorz").GetComponent().sizeDelta = new Vector2(textMaxWidth + 16, effectiveBubbleHeight - 16 * 2); //CenterHorz UnitaleUtil.GetChildPerName(containerBubble.transform, "CenterVert").GetComponent().sizeDelta = new Vector2(textMaxWidth - 16, effectiveBubbleHeight - 4); //CenterVert } SetTail(bubbleSide.ToString(), bubbleLastVar); } public Vector2 GetBubbleSize() { return containerBubble.transform.GetComponent().sizeDelta; } public Vector2 GetBubbleShift() { return containerBubble.GetComponent().localPosition; } public DynValue text { get { CheckExists(); DynValue[] texts = new DynValue[textQueue.Length]; for (int i = 0; i < textQueue.Length; i++) texts[i] = DynValue.NewString(textQueue[i].Text); return DynValue.NewTable(caller.script, texts); } } public string progressmode { get { CheckExists(); return progress.ToString(); } set { CheckExists(); try { progress = (ProgressMode)Enum.Parse(typeof(ProgressMode), value.ToUpper()); } catch { if (value != null) throw new CYFException("text.progressmode can only have either \"AUTO\", \"MANUAL\" or \"NONE\", but you entered \"" + value.ToUpper() + "\"."); throw new CYFException("text.progressmode can only have either \"AUTO\", \"MANUAL\" or \"NONE\", but you set it to a nil value."); } } } public float x { get { CheckExists(); return container.transform.localPosition.x; } set { MoveTo(value, y); } } public float y { get { CheckExists(); return container.transform.localPosition.y; } set { MoveTo(x, value); } } public float absx { get { CheckExists(); return container.transform.position.x; } set { MoveToAbs(value, absy); } } public float absy { get { CheckExists(); return container.transform.position.y; } set { MoveToAbs(absx, value); } } public int width { get { CheckExists(); return _textMaxWidth; } set { CheckExists(); _textMaxWidth = value < 16 ? 16 : value; } } public int textMaxWidth { get { CheckExists(); return _textMaxWidth; } set { CheckExists(); _textMaxWidth = value < 16 ? 16 : value; } } public int bubbleHeight { get { CheckExists(); return _bubbleHeight; } set { CheckExists(); _bubbleHeight = value == -1 ? -1 : value < 40 ? 40 : value; } } public float xscale { get { CheckExists(); return xScale; } set { CheckExists(); xScale = value; Scale(xScale, yScale); } } public float yscale { get { CheckExists(); return yScale; } set { CheckExists(); yScale = value; Scale(xScale, yScale); } } public void Scale(float xs, float ys) { CheckExists(); xScale = xs; yScale = ys; container.transform.localScale = new Vector2(xs, ys); if (adjustTextDisplay) { PostScaleHandling(); MoveLetters(); } } public string layer { get { CheckExists(); if (!container.transform.parent.name.Contains("Layer")) return "spriteObject"; return container.transform.parent.name.Substring(0, container.transform.parent.name.Length - 5); } set { CheckExists(); try { SetParent(GameObject.Find(value + "Layer").transform); foreach (Transform child in container.transform) { MaskImage childmask = child.gameObject.GetComponent(); if (childmask != null) childmask.inverted = false; } } catch { throw new CYFException("The layer \"" + value + "\" doesn't exist."); } } } public void SendToTop() { CheckExists(); container.transform.SetAsLastSibling(); } public void SendToBottom() { CheckExists(); container.transform.SetAsFirstSibling(); } public void MoveBelow(LuaTextManager otherText) { CheckExists(); if (otherText == null || !otherText.isactive) throw new CYFException("The text object passed as an argument is nil or inactive."); if (transform.parent.parent != otherText.transform.parent.parent) UnitaleUtil.Warn("You can't change the order of two text objects without the same parent."); else { try { transform.parent.SetSiblingIndex(otherText.transform.parent.GetSiblingIndex()); } catch { throw new CYFException("Error while calling text.MoveBelow."); } } } public void MoveAbove(LuaTextManager otherText) { CheckExists(); if (otherText == null || !otherText.isactive) throw new CYFException("The text object passed as an argument is nil or inactive."); if (transform.parent.parent != otherText.transform.parent.parent) UnitaleUtil.Warn("You can't change the order of two text objects without the same parent."); else { try { transform.parent.SetSiblingIndex(otherText.transform.parent.GetSiblingIndex() + 1); } catch { throw new CYFException("Error while calling text.MoveAbove."); } } } public void ResetColor(bool resetAlpha = false) { CheckExists(); if (resetAlpha) ResetAlpha(); color = new[] { fontDefaultColor.r, fontDefaultColor.g, fontDefaultColor.b }; textColorSet = false; } public void ResetAlpha() { CheckExists(); alpha = fontDefaultColor.a; textAlphaSet = false; } [MoonSharpHidden] public Color _color = Color.white; [MoonSharpHidden] public bool textColorSet, textAlphaSet; // The color of the text. It uses an array of three floats between 0 and 1 public float[] color { get { CheckExists(); return new[] { _color.r, _color.g, _color.b }; } set { CheckExists(); if (value == null) throw new CYFException("text.color can not be set to a nil value."); if (value.Length < 3 || value.Length > 4) throw new CYFException("You need 3 or 4 numeric values when setting a text's color."); _color.r = value[0]; _color.g = value[1]; _color.b = value[2]; if (value.Length == 4) alpha = value[3]; textColorSet = true; foreach (LetterData l in letters.Where(i => !i.commandColorSet)) l.image.color = new Color(_color.r, _color.g, _color.b, l.image.color.a); if (!commandColorSet) commandColor = _color; defaultColor = _color; } } // The color of the text on a 32 bits format. It uses an array of three or four floats between 0 and 255 public float[] color32 { // We need first to convert the Color into a Color32, and then get the values. get { CheckExists(); return new float[] { ((Color32)_color).r, ((Color32)_color).g, ((Color32)_color).b }; } set { CheckExists(); if (value == null) throw new CYFException("text.color32 can not be set to a nil value."); if (value.Length < 3 || value.Length > 4) throw new CYFException("You need 3 or 4 numeric values when setting a text's color."); color = value.Select(v => v / 255).ToArray(); } } // The alpha of the text. It is clamped between 0 and 1 public float alpha { get { CheckExists(); return _color.a; } set { CheckExists(); _color.a = Mathf.Clamp01(value); textAlphaSet = true; textColorSet = true; // TODO: Remove in 0.7 foreach (LetterData l in letters.Where(i => !i.commandAlphaSet)) //l.image.color = new Color(l.image.color.r, l.image.color.g, l.image.color.b, _color.a); // TODO: Remove in 0.7 l.image.color = _color; if (!commandAlphaSet) commandColor.a = _color.a; defaultColor.a = _color.a; } } // The alpha of the text in a 32 bits format. It is clamped between 0 and 255 public float alpha32 { get { CheckExists(); return ((Color32)_color).a; } set { CheckExists(); alpha = value / 255; } } public string linePrefix { get { CheckExists(); return _linePrefix; } set { CheckExists(); _linePrefix = value; } } private DynValue _OnTextDisplay = DynValue.Nil; public DynValue OnTextDisplay { get { return _OnTextDisplay; } set { if ((value.Type & (DataType.Nil | DataType.Function | DataType.ClrFunction)) == 0) throw new CYFException("Text.OnTextDisplay: This variable has to be a function!"); if (value.Type == DataType.Function && value.Function.OwnerScript != caller.script) throw new CYFException("Text.OnTextDisplay: You can only use a function created in the same script as the text object!"); _OnTextDisplay = value; } } public DynValue GetLetters() { CheckExists(); if (lateStartWaiting) throw new CYFException("You cannot fetch a text object's letters on the first frame it was created, unless you use the [instant] command at the beginning of its line."); Table table = new Table(null); int key = 0; foreach (LetterData d in letters) { key++; LuaSpriteController letter = LuaSpriteController.GetOrCreate(d.image.gameObject); letter.tag = "letter"; letter.spritename = textQueue[currentLine].Text[d.index].ToString(); letter.img.GetComponent().characterNumber = d.index; table.Set(key, UserData.Create(letter, LuaSpriteController.data)); } return DynValue.NewTable(table); } public bool lineComplete { get { return LineComplete(); } } public bool allLinesComplete { get { return AllLinesComplete(); } } public void SetText(DynValue text, bool resetLateStart = true) { CheckExists(); // Disable late start if SetText is used on the same frame the text is created if (resetLateStart) lateStartWaiting = false; if (text == null || text.Type != DataType.Table && text.Type != DataType.String) throw new CYFException("Text.SetText: the text argument must be a non-empty array of strings or a simple string."); // Convert the text argument into a table if it's a simple string text = text.Type == DataType.String ? DynValue.NewTable(null, text) : text; TextMessage[] msgs = new TextMessage[text.Table.Length]; for (int i = 0; i < text.Table.Length; i++) msgs[i] = new TextMessage(linePrefix + text.Table.Get(i + 1).String, false, false); if (bubble) containerBubble.SetActive(true); try { SetTextQueue(msgs); } catch { /* ignored */ } if (text.Table.Length != 0 && bubble) ResizeBubble(); } protected override void SpawnText() { base.SpawnText(); if ((OnTextDisplay.Type & (DataType.Function | DataType.ClrFunction)) != 0) caller.Call(OnTextDisplay, "OnTextDisplay", UserData.Create(this)); else if (GlobalControls.isInFight && (EnemyEncounter.script.script.Globals.Get("OnTextDisplay").Type & (DataType.Function | DataType.ClrFunction)) != 0) EnemyEncounter.script.Call("OnTextDisplay", UserData.Create(this)); } [MoonSharpHidden] public void LateStart() { StartCoroutine(LateStartSetText()); } private IEnumerator LateStartSetText(bool waitUntilEndOfFrame = true) { if (waitUntilEndOfFrame) yield return new WaitForEndOfFrame(); if (!isactive || !lateStartWaiting) yield break; if (linePrefix != "") foreach (TextMessage tm in textQueue) tm.Text = linePrefix + tm.Text; // Only allow inline text commands and letter sounds on the second frame lateStartWaiting = false; ShowLine(0); if (bubble) UpdateBubble(); } public void AddText(DynValue text) { CheckExists(); // Checks if the parameter given is valid if (text == null || text.Type != DataType.Table && text.Type != DataType.String) throw new CYFException("Text.AddText: the text argument must be a non-empty array of strings or a simple string."); // Converts the text argument into a table if it's a simple string text = text.Type == DataType.String ? DynValue.NewTable(null, text) : text; if (AllLinesComplete() || hidden) { SetText(text); return; } TextMessage[] msgs = new TextMessage[text.Table.Length]; for (int i = 0; i < text.Table.Length; i++) msgs[i] = new MonsterMessage(linePrefix + text.Table.Get(i + 1).String); AddToTextQueue(msgs); } public void SetVoice(string voiceName) { if (voiceName == null) throw new CYFException("Text.SetVoice: The first argument (the voice name) is nil.\n\nSee the documentation for proper usage."); CheckExists(); defaultVoice = voiceName == "none" ? null : voiceName; } public void SetFont(string fontName) { if (fontName == null) throw new CYFException("Text.SetFont: The first argument (the font name) is nil.\n\nSee the documentation for proper usage."); CheckExists(); UnderFont uf = SpriteFontRegistry.Get(fontName); if (uf == null) throw new CYFException("The font \"" + fontName + "\" doesn't exist.\nYou should check if you made a typo, or if the font really is in your mod."); SetFont(uf); if (bubble) UpdateBubble(); } [MoonSharpHidden] public void UpdateBubble() { containerBubble.GetComponent().localPosition = new Vector2(-12, 24); ResizeBubble(); } public void ShowBubble(string side = null, DynValue position = null) { CheckExists(); bubble = true; containerBubble.SetActive(true); UpdateBubble(); SetSpeechThingPositionAndSide(side, position); } // Shortcut to `SetSpeechThingPositionAndSide` public void SetTail(string side, DynValue position) { SetSpeechThingPositionAndSide(side, position); } public void SetSpeechThingPositionAndSide(string side, DynValue position) { CheckExists(); bubbleLastVar = position; try { bubbleSide = side != null ? (BubbleSide)Enum.Parse(typeof(BubbleSide), side.ToUpper()) : BubbleSide.NONE; } catch { throw new CYFException("The speech thing (tail) can only take \"RIGHT\", \"DOWN\" ,\"LEFT\" ,\"UP\" or \"NONE\" as a positional value, but you entered \"" + side.ToUpper() + "\"."); } if (bubbleSide != BubbleSide.NONE) { speechThing.gameObject.SetActive(true); speechThingShadow.gameObject.SetActive(true); speechThing.anchorMin = speechThing.anchorMax = speechThingShadow.anchorMin = speechThingShadow.anchorMax = new Vector2(bubbleSide == BubbleSide.LEFT ? 0 : bubbleSide == BubbleSide.RIGHT ? 1 : 0.5f, bubbleSide == BubbleSide.DOWN ? 0 : bubbleSide == BubbleSide.UP ? 1 : 0.5f); speechThing.localRotation = speechThingShadow.localRotation = Quaternion.Euler(0, 0, (int)bubbleSide); speechThing.localScale = speechThingShadow.localScale = new Vector2(speechThing.lossyScale.x < 0 ? -1 : 1, speechThing.lossyScale.y < 0 ? -1 : 1); bool isSide = bubbleSide == BubbleSide.LEFT || bubbleSide == BubbleSide.RIGHT; int size = isSide ? (int)containerBubble.GetComponent().sizeDelta.y - 20 : (int)containerBubble.GetComponent().sizeDelta.x - 20; if (position == null) speechThing.anchoredPosition = speechThingShadow.anchoredPosition = new Vector3(0, 0); else { switch (position.Type) { case DataType.Number: { float number = (float)position.Number < 0 ? (float)position.Number : (float)position.Number - size / 2f; speechThing.anchoredPosition = speechThingShadow.anchoredPosition = new Vector3(isSide ? 0 : Mathf.Clamp(number, -size / 2f, size / 2f), !isSide ? 0 : Mathf.Clamp(number, -size / 2f, size / 2f)); break; } case DataType.String: { string str = position.String.Replace(" ", ""); if (str.Contains("%")) { try { float percentage = Mathf.Clamp01(ParseUtil.GetFloat(str.Replace("%", "")) / 100), x = isSide ? 0 : Mathf.Round(percentage * size) - size / 2f, y = !isSide ? 0 : Mathf.Round(percentage * size) - size / 2f; speechThing.anchoredPosition = speechThingShadow.anchoredPosition = new Vector3(x, y); } catch { throw new CYFException("If you use a '%' in your string, you should only have a number with it."); } } else throw new CYFException("You need to use a '%' in order to exploit the string."); break; } } } } else { speechThing.gameObject.SetActive(false); speechThingShadow.gameObject.SetActive(false); } } public void HideBubble() { CheckExists(); bubble = false; containerBubble.SetActive(false); } public override void SkipLine() { CheckExists(); if (lateStartWaiting) LateStartSetText(); if (GlobalControls.isInFight && EnemyEncounter.script.GetVar("playerskipdocommand").Boolean || UnitaleUtil.IsOverworld && (EventManager.instance.script != null && EventManager.instance.script.GetVar("playerskipdocommand").Boolean || GlobalControls.isInShop && GameObject.Find("Canvas").GetComponent().script.GetVar("playerskipdocommand").Boolean)) DoSkipFromPlayer(); else base.SkipLine(); } public void NextLine() { CheckExists(); if (AllLinesComplete() || currentLine + 1 == LineCount()) { if (!deleteWhenFinished) { HideTextObject(); if (bubble) containerBubble.SetActive(false); } else DestroyText(); } else { ShowLine(++currentLine); if (bubble) ResizeBubble(); } } private void PostScaleHandling() { if (xscale == 0 || yscale == 0) return; if (xscale != lastXScale) xScaleSizes.Clear(); if (yscale != lastYScale) yScaleSizes.Clear(); foreach (LetterData l in letters) { RectTransform r = l.image.GetComponent(); float xLocalScale; if (xScaleSizes.ContainsKey(Mathf.RoundToInt(r.rect.width))) xLocalScale = xScaleSizes[Mathf.RoundToInt(r.rect.width)]; else { float newXSize = r.rect.width * xscale, chosenX = Mathf.Round(newXSize - 0.001f); xLocalScale = chosenX / newXSize; xScaleSizes[Mathf.RoundToInt(r.rect.width)] = xLocalScale; } float yLocalScale; if (yScaleSizes.ContainsKey(Mathf.RoundToInt(r.rect.height))) yLocalScale = yScaleSizes[Mathf.RoundToInt(r.rect.height)]; else { float newYSize = r.rect.height * yscale, chosenY = Mathf.Round(newYSize - 0.001f); yLocalScale = chosenY / newYSize; yScaleSizes[Mathf.RoundToInt(r.rect.height)] = yLocalScale; } r.localScale = new Vector2(xLocalScale, yLocalScale); } } // Shortcut to `SetAutoWaitTimeBetweenTexts` public void SetWaitTime(int time) { SetAutoWaitTimeBetweenTexts(time); } public void SetAutoWaitTimeBetweenTexts(int time) { CheckExists(); framesWait = time; } public override void Move(float newX, float newY) { MoveToAbs(container.transform.position.x + newX, container.transform.position.y + newY, false); } public override void MoveTo(float newX, float newY) { MoveToAbs(container.transform.parent.position.x + newX, container.transform.parent.position.y + newY); } public override void MoveToAbs(float newX, float newY, bool resetAdjustShift = true) { CheckExists(); if (resetAdjustShift) for (int i = 0; i < letterAdjustShifts.Count; i++) letterAdjustShifts[i] = new Vector2(); container.transform.position = new Vector3(newX, newY, transform.position.z); } public void SetAnchor(float newX, float newY) { CheckExists(); container.GetComponent().anchorMin = new Vector2(newX, newY); container.GetComponent().anchorMax = new Vector2(newX, newY); } public int GetTextWidth(int firstLetter = 0, int lastLetter = 999999) { CheckExists(); if (textQueue == null || textQueue[currentLine] == null) return 0; if (firstLetter < 0) firstLetter += textQueue[currentLine].Text.Length - 1; if (lastLetter < 0) lastLetter += textQueue[currentLine].Text.Length - 1; if (firstLetter >= textQueue[currentLine].Text.Length) firstLetter = textQueue[currentLine].Text.Length - 1; if (lastLetter >= textQueue[currentLine].Text.Length) lastLetter = textQueue[currentLine].Text.Length - 1; if (letters.Count == 0) return (int)UnitaleUtil.PredictTextWidth(this, firstLetter, lastLetter); return (int)UnitaleUtil.CalcTextWidth(this, firstLetter, lastLetter); } public int GetTextHeight(int firstLetter = 0, int lastLetter = 999999) { CheckExists(); if (textQueue == null || textQueue[currentLine] == null) return 0; if (firstLetter < 0) firstLetter += textQueue[currentLine].Text.Length; if (lastLetter < 0) lastLetter += textQueue[currentLine].Text.Length; if (firstLetter >= textQueue[currentLine].Text.Length) firstLetter = textQueue[currentLine].Text.Length - 1; if (lastLetter >= textQueue[currentLine].Text.Length) lastLetter = textQueue[currentLine].Text.Length - 1; // TODO: Add text height prediction if not yet set return (int)UnitaleUtil.CalcTextHeight(this, firstLetter, lastLetter); } public void SetVar(string key, DynValue value) { if (key == null) throw new CYFException("text.SetVar: The first argument (the index) is nil.\n\nSee the documentation for proper usage."); vars[key] = value; } public void AlignLetters() { if (!adjustTextDisplay || xscale == 0 || yscale == 0) return; for (int i = 0; i < letters.Count; i++) { LetterData letter = letters[i]; Vector2 adjustShift = letterAdjustShifts[i]; Vector2 realPosition = (Vector2)letter.image.transform.position + adjustShift; float xShift = realPosition.x % xscale; if (xShift > xscale / 2) xShift -= xscale; float yShift = realPosition.y % yscale; if (yShift > yscale / 2) yShift -= yscale; Vector2 newShift = new Vector2(xShift, yShift); if ((newShift - adjustShift).magnitude > 0.001f) { letter.image.rectTransform.position = realPosition - newShift; letterAdjustShifts[i] = newShift; } } } public DynValue GetVar(string key) { if (key == null) throw new CYFException("text.GetVar: The first argument (the index) is nil.\n\nSee the documentation for proper usage."); DynValue retval; return vars.TryGetValue(key, out retval) ? retval : DynValue.NewNil(); } public DynValue this[string key] { get { return GetVar(key); } set { SetVar(key, value); } } //////////////////// // Children stuff // //////////////////// #pragma warning disable 108,114 public string name { get { return container.name; } } #pragma warning restore 108,114 public int childIndex { get { return container.transform.GetSiblingIndex() + 1; } set { container.transform.SetSiblingIndex(value - 1); } } public int childCount { get { return container.transform.childCount; } } public DynValue GetParent() { return UnitaleUtil.GetObjectParent(container.transform); } public void SetParent(object parent) { CheckExists(); Transform t = UnitaleUtil.GetTransform(parent); if (t == null) return; UnitaleUtil.SetObjectParent(this, parent); LuaSpriteController sParent = parent as LuaSpriteController; ProjectileController pParent = parent as ProjectileController; if (pParent != null) sParent = pParent.sprite; if (sParent == null) return; foreach (Transform child in container.transform) { MaskImage childmask = child.gameObject.GetComponent(); if (childmask != null) childmask.inverted = sParent._masked == LuaSpriteController.MaskMode.INVERTEDSPRITE || sParent._masked == LuaSpriteController.MaskMode.INVERTEDSTENCIL; } } } ================================================ FILE: Assets/Scripts/Lua/CLRBindings/LuaTextManager.cs.meta ================================================ fileFormatVersion: 2 guid: 9ac8dc980caea604a81186f096e200ea MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 700 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/CLRBindings/LuaUnityTime.cs ================================================ using UnityEngine; /// /// Lua binding to retrieve engine timing information. Not marked as static so Lua may have an instance to refer to. Silly, I know. /// public class LuaUnityTime { /// /// Time in seconds since the application started. /// public static float time { get { return Time.time; } } /// /// The time in seconds it took to complete the last update. /// public static float dt { get { return Time.deltaTime; } } /// /// A multiplier you can use to ensure equal movement even when framerate drops. 1 when 60FPS, 2 when 30FPS, 0.5 when 120FPS, etc. /// public static float mult { get { return Time.deltaTime * 60; } } public static float timeScale { get { return Time.timeScale; } set { Time.timeScale = value; } } public static float wave { get { return UIController.instance.state != "DEFENDING" ? -1f : Time.time - UIController.instance.encounter.waveBeginTime; } } public static float frameCount { get { return GlobalControls.frame; } } } ================================================ FILE: Assets/Scripts/Lua/CLRBindings/LuaUnityTime.cs.meta ================================================ fileFormatVersion: 2 guid: a1d1720fd9c954a449262f23d150633b timeCreated: 1450490514 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/CLRBindings/MusicManager.cs ================================================ using UnityEngine; using MoonSharp.Interpreter; using System.Collections; /// /// Lua binding to manipulate in-game music and play sounds. /// public class MusicManager { [MoonSharpHidden] public static MusicManager instance; private static AudioSource _src; [MoonSharpHidden] public static AudioSource src { set { _src = value; } get { if (_src == null) throw new CYFException("The Audio object has not been initialized yet.\n\nPlease wait until at least EncounterStarting() to run this code."); return _src; } } [MoonSharpHidden] public static Hashtable hiddenDictionary = new Hashtable(); [MoonSharpHidden] public static string filename = "empty"; public static bool IsPlaying { get { return src.isPlaying; } } public static bool isplaying { get { return IsPlaying; } } public static void Play() { src.Play(); } public static void Stop() { src.Stop(); } public static void Pause() { src.Pause(); } public static void Unpause() { src.UnPause(); } public static void Volume(float value) { if (value < 0) value = 0; if (value > 1) value = 1; src.volume = value; } public static void Pitch(float value) { if (value < -3) value = -3; if (value > 3) value = 3; src.pitch = value; } public static void LoadFile(string name) { if (name == null) throw new CYFException("Attempted to load a nil value as an Audio file."); src.Stop(); src.clip = AudioClipRegistry.GetMusic(name); filename = "music:" + name.ToLower(); NewMusicManager.audioname["src"] = filename; src.loop = true; src.Play(); } public static void PlaySound(string name, float volume = 0.65f) { if (name == null) throw new CYFException("Attempted to load a nil value as a sound."); UnitaleUtil.PlaySound("MusicPlaySound", name, volume); } public static float playtime { get { return src.time; } set { src.time = value; } } public static float totaltime { get { return src.clip.length; } } [MoonSharpHidden] public static bool IsStoppedOrNull(AudioSource audio) { return audio == null || audio.ToString().ToLower() == "null" || !audio.isPlaying; } public static void StopAll() { foreach (AudioSource audioSrc in Object.FindObjectsOfType()) audioSrc.Stop(); } public static void PauseAll() { foreach (AudioSource audioSrc in Object.FindObjectsOfType()) audioSrc.Pause(); } public static void UnpauseAll() { foreach (AudioSource audioSrc in Object.FindObjectsOfType()) audioSrc.UnPause(); } public static string GetSoundDictionary(string key) { if (key == null) throw new CYFException("Audio.GetSoundDictionary: The first argument (the index) is nil.\n\nSee the documentation for proper usage."); return hiddenDictionary.ContainsKey(key.ToLower()) ? (string)hiddenDictionary[key.ToLower()] : key; } public static void SetSoundDictionary(string key, string value) { switch (key) { case null: throw new CYFException("Audio.SetSoundDictionary: The first argument (the index) is nil.\n\nSee the documentation for proper usage."); case "RESETDICTIONARY": hiddenDictionary.Clear(); break; default: { key = key.ToLower(); if (hiddenDictionary.ContainsKey(key)) hiddenDictionary.Remove(key); hiddenDictionary.Add(key, value); break; } } } //[System.Runtime.CompilerServices.IndexerName("SoundDictionary")] public string this[string key] { get { return GetSoundDictionary(key); } set { SetSoundDictionary(key, value); } } } ================================================ FILE: Assets/Scripts/Lua/CLRBindings/MusicManager.cs.meta ================================================ fileFormatVersion: 2 guid: 0256d86db9f2ae74585594ef3108b722 timeCreated: 1447455712 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/CLRBindings/NewMusicManager.cs ================================================ using UnityEngine; using MoonSharp.Interpreter; using System.Collections; using System.Collections.Generic; public class NewMusicManager { [MoonSharpHidden] public static Hashtable audiolist = new Hashtable(); [MoonSharpHidden] public static Dictionary audioname = new Dictionary(); public static void CreateChannel(string name) { if (name == null) throw new CYFException("NewAudio.CreateChannel: The first argument (the channel name) is nil.\n\nSee the documentation for proper usage."); if (audiolist.ContainsKey(name)) return; GameObject go = new GameObject("AudioChannel" + audiolist.Count + ": " + name, typeof(AudioSource)); Object.DontDestroyOnLoad(go); audiolist.Add(name, go.GetComponent()); if (!audioname.ContainsKey(name)) audioname.Add(name, "empty"); } [MoonSharpHidden] public static AudioSource CreateChannelAndGetAudioSource(string name) { if (audiolist.ContainsKey(name)) return GameObject.Find("AudioChannel" + audiolist.Count + ": " + name).GetComponent(); GameObject go = new GameObject("AudioChannel" + audiolist.Count + ": " + name, typeof(AudioSource)); audiolist.Add(name, go.GetComponent()); if (!audioname.ContainsKey(name)) audioname.Add(name, "empty"); return go.GetComponent(); } public static void DestroyChannel(string name) { switch (name) { case null: throw new CYFException("NewAudio.DestroyChannel: The first argument (the channel name) is nil.\n\nSee the documentation for proper usage."); case "src": throw new CYFException("You can't delete the audio channel \"src\"."); } if (!audiolist.ContainsKey(name)) throw new CYFException("The audio channel " + name + " doesn't exist."); try { Object.Destroy(((AudioSource)audiolist[name]).gameObject); } catch { /* ignored */ } audiolist.Remove(name); audioname.Remove(name); } public static bool Exists(string name) { if (name == null) throw new CYFException("NewAudio.Exists: The first argument (the channel name) is nil.\n\nSee the documentation for proper usage."); return audiolist.ContainsKey(name); } public static string GetAudioName(string name, bool withPrefix = true) { if (name == null) throw new CYFException("NewAudio.GetAudioName: The first argument (the channel name) is nil.\n\nSee the documentation for proper usage."); if (!audiolist.ContainsKey(name)) throw new CYFException("The audio channel " + name + " doesn't exist."); string toReturn = audioname[name]; if (!withPrefix && name != "empty") return toReturn.Substring(6, toReturn.Length - 6); return toReturn; } public static float GetTotalTime(string name) { if (name == null) throw new CYFException("NewAudio.GetTotalTime: The first argument (the channel name) is nil.\n\nSee the documentation for proper usage."); if (!audiolist.ContainsKey(name)) throw new CYFException("The audio channel " + name + " doesn't exist."); if (((AudioSource)audiolist[name]).clip != null) return ((AudioSource)audiolist[name]).clip.length; return 0; } public static void PlayMusic(string name, string music, bool loop = false, float volume = 1) { if (name == null) throw new CYFException("NewAudio.PlayMusic: The first argument (the channel name) is nil.\n\nSee the documentation for proper usage."); if (music == null) throw new CYFException("NewAudio.PlayMusic: The second argument (the music name) is nil.\n\nSee the documentation for proper usage."); if (!audiolist.ContainsKey(name)) throw new CYFException("The audio channel " + name + " doesn't exist."); ((AudioSource)audiolist[name]).Stop(); ((AudioSource)audiolist[name]).loop = loop; ((AudioSource)audiolist[name]).volume = volume; ((AudioSource)audiolist[name]).clip = AudioClipRegistry.GetMusic(music); audiolist[name] = ((AudioSource)audiolist[name]); audioname[name] = "music:" + music.ToLower(); if (name == "src") MusicManager.filename = "music:" + music.ToLower(); ((AudioSource)audiolist[name]).Play(); } public static void PlaySound(string name, string sound, bool loop = false, float volume = 0.65f) { if (name == null) throw new CYFException("NewAudio.PlaySound: The first argument (the channel name) is nil.\n\nSee the documentation for proper usage."); if (sound == null) throw new CYFException("NewAudio.PlaySound: The second argument (the sound name) is nil.\n\nSee the documentation for proper usage."); if (!audiolist.ContainsKey(name)) throw new CYFException("The audio channel " + name + " doesn't exist."); ((AudioSource)audiolist[name]).Stop(); ((AudioSource)audiolist[name]).loop = loop; ((AudioSource)audiolist[name]).volume = volume; ((AudioSource)audiolist[name]).clip = AudioClipRegistry.GetSound(sound); audiolist[name] = ((AudioSource)audiolist[name]); audioname[name] = "sound:" + sound.ToLower(); if (name == "src") MusicManager.filename = "sound:" + sound.ToLower(); ((AudioSource)audiolist[name]).Play(); } public static void PlayVoice(string name, string voice, bool loop = false, float volume = 0.65f) { if (name == null) throw new CYFException("NewAudio.PlayVoice: The first argument (the channel name) is nil.\n\nSee the documentation for proper usage."); if (voice == null) throw new CYFException("NewAudio.PlayVoice: The second argument (the voice name) is nil.\n\nSee the documentation for proper usage."); if (!audiolist.ContainsKey(name)) throw new CYFException("The audio channel " + name + " doesn't exist."); ((AudioSource)audiolist[name]).Stop(); ((AudioSource)audiolist[name]).loop = loop; ((AudioSource)audiolist[name]).volume = volume; ((AudioSource)audiolist[name]).clip = AudioClipRegistry.GetVoice(voice); audiolist[name] = ((AudioSource)audiolist[name]); audioname[name] = "voice:" + voice.ToLower(); if (name == "src") MusicManager.filename = "voice:" + voice.ToLower(); ((AudioSource)audiolist[name]).Play(); } public static void SetPitch(string name, float value) { if (!audiolist.ContainsKey(name)) throw new CYFException("The audio channel " + name + " doesn't exist."); ((AudioSource)audiolist[name]).pitch = value; } public static float GetPitch(string name) { if (name == null) throw new CYFException("NewAudio.GetPitch: The first argument (the channel name) is nil.\n\nSee the documentation for proper usage."); if (!audiolist.ContainsKey(name)) throw new CYFException("The audio channel " + name + " doesn't exist."); return ((AudioSource)audiolist[name]).pitch; } public static void SetVolume(string name, float value) { if (!audiolist.ContainsKey(name)) throw new CYFException("The audio channel " + name + " doesn't exist."); if (value < 0) value = 0; else if (value > 1) value = 1; ((AudioSource)audiolist[name]).volume = value; } public static float GetVolume(string name) { if (name == null) throw new CYFException("NewAudio.GetVolume: The first argument (the channel name) is nil.\n\nSee the documentation for proper usage."); if (!audiolist.ContainsKey(name)) throw new CYFException("The audio channel " + name + " doesn't exist."); return ((AudioSource)audiolist[name]).volume; } public static void Play(string name) { if (name == null) throw new CYFException("NewAudio.Play: The first argument (the channel name) is nil.\n\nSee the documentation for proper usage."); if (!audiolist.ContainsKey(name)) throw new CYFException("The audio channel " + name + " doesn't exist."); ((AudioSource)audiolist[name]).Play(); } public static void Stop(string name) { if (name == null) throw new CYFException("NewAudio.Stop: The first argument (the channel name) is nil.\n\nSee the documentation for proper usage."); if (!audiolist.ContainsKey(name)) throw new CYFException("The audio channel " + name + " doesn't exist."); ((AudioSource)audiolist[name]).Stop(); } public static void Pause(string name) { if (name == null) throw new CYFException("NewAudio.Pause: The first argument (the channel name) is nil.\n\nSee the documentation for proper usage."); if (!audiolist.ContainsKey(name)) throw new CYFException("The audio channel " + name + " doesn't exist."); ((AudioSource)audiolist[name]).Pause(); } public static void Unpause(string name) { if (name == null) throw new CYFException("NewAudio.Unpause: The first argument (the channel name) is nil.\n\nSee the documentation for proper usage."); if (!audiolist.ContainsKey(name)) throw new CYFException("The audio channel " + name + " doesn't exist."); ((AudioSource)audiolist[name]).UnPause(); } public static void SetPlayTime(string name, float value) { if (!audiolist.ContainsKey(name)) throw new CYFException("The audio channel " + name + " doesn't exist."); ((AudioSource)audiolist[name]).time = value; } public static float GetPlayTime(string name) { if (name == null) throw new CYFException("NewAudio.GetPlayTime: The first argument (the channel name) is nil.\n\nSee the documentation for proper usage."); if (!audiolist.ContainsKey(name)) throw new CYFException("The audio channel " + name + " doesn't exist."); return ((AudioSource)audiolist[name]).time; } public static float GetCurrentTime(string name) { if (name == null) throw new CYFException("NewAudio.GetCurrentTime: The first argument (the channel name) is nil.\n\nSee the documentation for proper usage."); if (!audiolist.ContainsKey(name)) throw new CYFException("The audio channel " + name + " doesn't exist."); return ((AudioSource)audiolist[name]).time; } public static void StopAll() { foreach (AudioSource audioSrc in audiolist.Values) audioSrc.Stop(); } public static void PauseAll() { foreach (AudioSource audioSrc in audiolist.Values) audioSrc.Pause(); } public static void UnpauseAll() { foreach (AudioSource audioSrc in audiolist.Values) audioSrc.UnPause(); } public static bool isStopped(string name) { if (name == null) throw new CYFException("NewAudio.isStopped: The first argument (the channel name) is nil.\n\nSee the documentation for proper usage."); if (!audiolist.ContainsKey(name)) throw new CYFException("The audio channel " + name + " doesn't exist."); return !((AudioSource)audiolist[name]).isPlaying; } public static bool IsStopped(string name) { return isStopped(name); } [MoonSharpHidden] public static void OnLevelWasLoaded() { audiolist.Clear(); audioname.Clear(); audiolist.Add("src", MusicManager.src); audioname.Add("src", MusicManager.filename); if (!PlayerOverworld.audioKept) return; audiolist.Add("StaticKeptAudio", PlayerOverworld.audioKept); audioname.Add("StaticKeptAudio", "Sorry, nyi"); } } ================================================ FILE: Assets/Scripts/Lua/CLRBindings/NewMusicManager.cs.meta ================================================ fileFormatVersion: 2 guid: 58f6800166d0406468aaec3c6771adc3 timeCreated: 1475928672 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/CLRBindings/Overworld/LuaEventOW.cs ================================================ using MoonSharp.Interpreter; using UnityEngine; using UnityEngine.UI; public class LuaEventOW { //private TextManager textmgr; public ScriptWrapper appliedScript; public delegate void LoadedAction(string coroName, object args, string evName); [MoonSharpHidden] public static event LoadedAction StCoroutine; /// /// Checks if an event exists. /// /// Name of the event to check for. /// True if the event exists, false otherwise. [CYFEventFunction] public bool Exists(string name) { try { return GameObject.Find(name) != null; } finally { appliedScript.Call("CYFEventNextCommand"); } } /// /// Permits to teleport an event. /// /// /// /// [CYFEventFunction] public void Teleport(string name, float dirX, float dirY) { for (int i = 0; i < EventManager.instance.events.Count || name == "Player"; i++) { GameObject go = null; try { go = EventManager.instance.events[i]; } catch { /* ignored */ } if (go == null || name != go.name && name != "Player") continue; if (name == "Player") go = GameObject.Find("Player"); Transform target = null; if (go.transform.parent != null) if (go.transform.parent.name == "SpritePivot") target = go.transform.parent; target = target ?? go.transform; target.position = new Vector3(dirX, dirY, target.position.z); //NEED PARENTAL REMOVE appliedScript.Call("CYFEventNextCommand"); return; } throw new CYFException("Event.Teleport: The name you entered in the function doesn't exist. Did you forget to add the 'Event' tag?"); } /// /// Move the event from a point to another directly. /// Stops if the player can't move to that direction. /// The animation process is automatic, if you renamed the triggers that the appliedScript needs to animate your event. /// /// /// /// /// /// [CYFEventFunction] public void MoveToPoint(string name, float dirX, float dirY, bool wallPass = false, bool waitEnd = true) { if (StCoroutine != null) StCoroutine("IMoveEventToPoint", new object[] { appliedScript, name, dirX, dirY, wallPass, waitEnd }, name); } /// /// Checks if an event is currently moving via Event.MoveToPoint. /// /// Name of the event to check for. /// True if the event is moving, false otherwise. [CYFEventFunction] public bool isMoving(string name) { for (int i = 0; i < EventManager.instance.events.Count || name == "Player"; i++) { bool ismoving; if (name != "Player") { if (EventManager.instance.events[i].gameObject == null || EventManager.instance.events[i].gameObject.name != name) continue; ismoving = EventManager.instance.events[i].GetComponent().isMovingSource != null; } else ismoving = PlayerOverworld.instance.isMoving; appliedScript.Call("CYFEventNextCommand"); return ismoving; } throw new CYFException("Event.isMoving: The event \"" + name + "\" doesn't exist."); } [CYFEventFunction] public bool IsMoving(string name) { return isMoving(name); } /// /// Function that sets an event's animation prefix. /// If the header itself matches an animation this event has, it will play the animation instead of using it as a prefix. /// /// /// [CYFEventFunction] public void SetAnimHeader(string name, string anim) { for (int i = 0; i < EventManager.instance.events.Count || name == "Player"; i++) { GameObject go = null; try { go = EventManager.instance.events[i]; } catch { /* ignored */ } if (go == null) throw new CYFException("Event.SetAnimHeader: The given event doesn't exist."); if (name != go.name && name != "Player") continue; if (name == "Player") go = GameObject.Find("Player"); CYFAnimator animator = go.GetComponent(); if (animator == null) throw new CYFException("Event.SetAnimHeader: The given event doesn't have a CYFAnimator component."); if (animator.AnimExists(animator.specialHeader)) animator.movementDirection = 2; go.GetComponent().specialHeader = anim; appliedScript.Call("CYFEventNextCommand"); return; } UnitaleUtil.WriteInLogAndDebugger("Event.SetAnimHeader: The name you entered in the function isn't an event's name. Did you forget to add the 'Event' tag?"); appliedScript.Call("CYFEventNextCommand"); } [CYFEventFunction] public string GetAnimHeader(string name) { if (!GameObject.Find(name)) throw new CYFException("Event.GetAnimHeader: The event given doesn't exist."); if (!GameObject.Find(name).GetComponent()) throw new CYFException("Event.GetAnimHeader: The event given doesn't have a CYFAnimator component."); try { return GameObject.Find(name).GetComponent().specialHeader; } finally { appliedScript.Call("CYFEventNextCommand"); } } [CYFEventFunction] public void SetDirection(string name, int dir) { if (!GameObject.Find(name)) throw new CYFException("Event.SetDirection: The event given doesn't exist."); if (!GameObject.Find(name).GetComponent()) throw new CYFException("Event.SetDirection: The event given doesn't have a CYFAnimator component."); if (dir != 2 && dir != 4 && dir != 6 && dir != 8) throw new CYFException("Event.SetDirection: The direction must either be 2 (Down), 4 (Left), 6 (Right) or 8 (Up)."); GameObject.Find(name).GetComponent().movementDirection = dir; appliedScript.Call("CYFEventNextCommand"); } [CYFEventFunction] public int GetDirection(string name) { if (!GameObject.Find(name)) throw new CYFException("Event.GetDirection: The event given doesn't exist."); if (!GameObject.Find(name).GetComponent()) throw new CYFException("Event.GetDirection: The event given doesn't have a CYFAnimator component."); try { return GameObject.Find(name).GetComponent().movementDirection; } finally { appliedScript.Call("CYFEventNextCommand"); } } /// /// Rotates the sprite of an event. /// /// /// /// /// /// /// [CYFEventFunction] public void Rotate(string name, float rotateX, float rotateY, float rotateZ, bool anim = true, bool waitEnd = true) { if (anim) { if (StCoroutine != null) StCoroutine("IRotateEvent", new object[] { appliedScript, name, rotateX, rotateY, rotateZ, waitEnd }, name); } else { for (int i = 0; i < EventManager.instance.events.Count || name == "Player"; i++) { GameObject go = null; try { go = EventManager.instance.events[i]; } catch { /* ignored */ } if (go == null || name != go.name && name != "Player") continue; if (name == "Player") go = GameObject.Find("Player"); go.GetComponent().rotation = Quaternion.Euler(rotateX, rotateY, rotateZ); if (StCoroutine != null) StCoroutine("IRotateEvent", new object[] { appliedScript, name, rotateX, rotateY, rotateZ, waitEnd }, name); return; } throw new CYFException("Event.Rotate: The name you entered in the function isn't an event's name. Did you forget to add the 'Event' tag?"); } } /// /// Checks if an event is currently moving via Event.Rotate. /// /// Name of the event to check for. /// True if the event is rotating, false otherwise. [CYFEventFunction] public bool isRotating(string name) { for (int i = 0; i < EventManager.instance.events.Count || name == "Player"; i++) { bool isrotating; if (name != "Player") { if (EventManager.instance.events[i].gameObject == null || EventManager.instance.events[i].gameObject.name != name) continue; isrotating = EventManager.instance.events[i].GetComponent().isRotatingSource != null; } else isrotating = PlayerOverworld.instance.isRotatingSource != null; appliedScript.Call("CYFEventNextCommand"); return isrotating; } throw new CYFException("Event.isRotating: The event \"" + name + "\" doesn't exist."); } [CYFEventFunction] public bool IsRotating(string name) { return isRotating(name); } [CYFEventFunction] public void Stop() { if (EventManager.instance.coroutines.ContainsKey(appliedScript)) StopCoroutine(); else EventManager.instance.EndEvent(); } [CYFEventFunction] public void StopCoroutine(string eventName = "thisevent") { ScriptWrapper scr; if (eventName == "thisevent") scr = appliedScript; else { if (!GameObject.Find(eventName)) throw new CYFException("Event.StopCoroutine: The name you entered in the function isn't an event's name. Did you forget to add the 'Event' tag?"); if (!EventManager.instance.eventScripts.ContainsKey(GameObject.Find(eventName))) throw new CYFException("Event.StopCoroutine: The name you entered in the function isn't an event's name. Did you forget to add the 'Event' tag?"); scr = EventManager.instance.eventScripts[GameObject.Find(eventName)]; } if (EventManager.instance.coroutines.ContainsKey(scr)) EventManager.instance.coroutines.Remove(scr); else Debug.LogError("Event.StopCoroutine: You tried to remove the coroutine of an event which did not have one."); appliedScript.Call("CYFEventNextCommand"); } [CYFEventFunction] public void Remove(string eventName) { GameObject go = GameObject.Find(eventName); if (!go) UnitaleUtil.Warn("Event.Remove: The event " + eventName + " doesn't exist but you tried to remove it.", false); else { EventOW ev = go.GetComponent(); if (ev != null) if (!(ev.name.Contains("Image") || ev.name.Contains("Tone"))) { if (GlobalControls.EventData.ContainsKey(ev.name)) GlobalControls.EventData.Remove(ev.name); try { GameState.EventInfos ei = new GameState.EventInfos() { CurrPage = ev.actualPage, CurrSpriteNameOrCYFAnim = ev.GetComponent() ? ev.GetComponent().specialHeader : EventManager.instance.spriteControllers[ev.name].img.GetComponent() ? EventManager.instance.spriteControllers[ev.name].img.GetComponent().sprite.name : EventManager.instance.spriteControllers[ev.name].img.GetComponent().sprite.name, NoCollision = ev.gameObject.layer == 0, Anchor = UnitaleUtil.VectorToVect(ev.GetComponent().anchorMax), Pivot = UnitaleUtil.VectorToVect(ev.GetComponent().pivot) }; GlobalControls.EventData.Add(ev.name, ei); } catch { /* ignored */ } } if (EventManager.instance.eventScripts.ContainsKey(go)) { if (EventManager.instance.coroutines.ContainsKey(EventManager.instance.eventScripts[go])) EventManager.instance.coroutines.Remove(EventManager.instance.eventScripts[go]); EventManager.instance.eventScripts.Remove(go); } EventManager.instance.spriteControllers.Remove(eventName); EventManager.instance.events.Remove(go); if (go.transform.parent != null) if (go.transform.parent.name == "SpritePivot") go = go.transform.parent.gameObject; Object.Destroy(go); //NEED PARENTAL REMOVE } if (appliedScript != null && (EventManager.instance.ScriptRunning || EventManager.instance.coroutines.ContainsKey(appliedScript))) appliedScript.Call("CYFEventNextCommand"); } [CYFEventFunction] public void SetPage(string ev, int page) { SetPage2(ev, page); appliedScript.Call("CYFEventNextCommand"); } [CYFEventFunction] public int GetPage(string ev) { if (!GameObject.Find(ev)) throw new CYFException("Event.GetPage: The given event doesn't exist."); if (!EventManager.instance.events.Contains(GameObject.Find(ev))) throw new CYFException("Event.GetPage: The given event doesn't exist."); try { return GameObject.Find(ev).GetComponent().actualPage; } finally { appliedScript.Call("CYFEventNextCommand"); } } [MoonSharpHidden] public static void SetPage2(string eventName, int page) { if (!GameObject.Find(eventName)) throw new CYFException("Event.SetPage: The given event doesn't exist."); if (!EventManager.instance.events.Contains(GameObject.Find(eventName))) throw new CYFException("Event.SetPage: The given event doesn't exist."); GameObject go = GameObject.Find(eventName); if (EventManager.instance.autoDone.Contains(go)) EventManager.instance.autoDone.Remove(go); go.GetComponent().actualPage = page; if (EventManager.instance.ScriptRunning || EventManager.instance.coroutines.ContainsKey(EventManager.instance.luaEventOw.appliedScript)) EventManager.instance.luaEventOw.appliedScript.Call("CYFEventNextCommand"); } [CYFEventFunction] public DynValue GetSprite(string name) { try { if (name == "Player") try { return UserData.Create(PlayerOverworld.instance.sprctrl); } finally { appliedScript.Call("CYFEventNextCommand"); } foreach (string key in EventManager.instance.spriteControllers.Keys) if (key == name) try { return UserData.Create(EventManager.instance.spriteControllers[name]); } finally { appliedScript.Call("CYFEventNextCommand"); } EventManager.instance.ResetEvents(false); foreach (string key in EventManager.instance.spriteControllers.Keys) if (key == name) try { return UserData.Create(EventManager.instance.spriteControllers[name]); } finally { appliedScript.Call("CYFEventNextCommand"); } } catch { /* ignored */ } throw new CYFException("Event.GetSprite: The event \"" + name + "\" doesn't have a sprite."); } [CYFEventFunction] public void CenterOnCamera(string name, int speed = 5, bool straightLine = false, bool waitEnd = true, string info = "Event.CenterOnCamera") { EventManager.instance.luaScreenOw.CenterEventOnCamera(name, speed, straightLine, waitEnd, info); } [CYFEventFunction] public string GetName() { try { return appliedScript.GetVar("_internalScriptName").String; } catch { return "4eab1af3ab6a932c23b3cdb8ef618b1af9c02088"; } finally { appliedScript.Call("CYFEventNextCommand"); } } [CYFEventFunction] public DynValue GetPosition(string name) { DynValue result = DynValue.NewTable(new Table(null)); bool done = false; for (int i = 0; (i < EventManager.instance.events.Count || name == "Player") && !done; i++) { if (name != "Player") if (EventManager.instance.events[i].gameObject == null || EventManager.instance.events[i].gameObject.name != name) continue; done = true; GameObject go = name == "Player" ? PlayerOverworld.instance.gameObject : EventManager.instance.events[i]; Transform target = null; if (go.transform.parent != null) if (go.transform.parent.name == "SpritePivot") target = go.transform.parent; target = target ?? go.transform; //oof result.Table.Set(1, DynValue.NewNumber(Mathf.Round(target.position.x * 1000) / 1000)); result.Table.Set(2, DynValue.NewNumber(Mathf.Round(target.position.y * 1000) / 1000)); result.Table.Set(3, DynValue.NewNumber(Mathf.Round(target.position.z * 1000) / 1000)); } if (result.Table == new Table(null)) throw new CYFException("Event.GetPosition: The event \"" + name + "\" doesn't exist."); try { return result; } finally { appliedScript.Call("CYFEventNextCommand"); } } [CYFEventFunction] public void IgnoreCollision(string name, bool ignore) { for (int i = 0; i < EventManager.instance.events.Count || name == "Player"; i++) { if (name != "Player") if (EventManager.instance.events[i].gameObject == null || EventManager.instance.events[i].gameObject.name != name) continue; GameObject go = name == "Player" ? PlayerOverworld.instance.gameObject : EventManager.instance.events[i]; go.layer = ignore ? 0 : 21; //go.GetComponent().simulated = !ignore; appliedScript.Call("CYFEventNextCommand"); return; } throw new CYFException("Event.IgnoreCollision: The event \"" + name + "\" doesn't exist."); } [CYFEventFunction] public void SetSpeed(string name, float speed) { for (int i = 0; i < EventManager.instance.events.Count || name == "Player"; i++) { if (name != "Player") { if (EventManager.instance.events[i].gameObject == null || EventManager.instance.events[i].gameObject.name != name) continue; EventManager.instance.events[i].GetComponent().moveSpeed = speed; } else PlayerOverworld.instance.speed = speed; appliedScript.Call("CYFEventNextCommand"); return; } throw new CYFException("Event.SetSpeed: The event \"" + name + "\" doesn't exist."); } [CYFEventFunction] public float GetSpeed(string name) { float speed; for (int i = 0; i < EventManager.instance.events.Count || name == "Player"; i++) { if (name != "Player") { if (EventManager.instance.events[i].gameObject == null || EventManager.instance.events[i].gameObject.name != name) continue; speed = EventManager.instance.events[i].GetComponent().moveSpeed; } else speed = PlayerOverworld.instance.speed; appliedScript.Call("CYFEventNextCommand"); return speed; } throw new CYFException("Event.GetSpeed: The event \"" + name + "\" doesn't exist."); } } ================================================ FILE: Assets/Scripts/Lua/CLRBindings/Overworld/LuaEventOW.cs.meta ================================================ fileFormatVersion: 2 guid: db68b768af55c1443ab5eb5aa132b27a timeCreated: 1490220715 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/CLRBindings/Overworld/LuaGeneralOW.cs ================================================ using System.Collections.Generic; using UnityEngine; using UnityEngine.SceneManagement; using MoonSharp.Interpreter; public class LuaGeneralOW { private readonly TextManager textmgr; public ScriptWrapper appliedScript; public delegate void LoadedAction(string coroName, object args, string evName); [MoonSharpHidden] public static event LoadedAction StCoroutine; [MoonSharpHidden] public LuaGeneralOW(TextManager textmgr) { this.textmgr = textmgr; } [CYFEventFunction] public void HiddenReloadAppliedScript() { EventManager.instance.CheckCurrentEvent(); } /// /// Displays a text. /// /// /// /// /// [CYFEventFunction] public void SetDialog(DynValue texts, bool formatted = true, DynValue mugshots = null, DynValue forcePosition = null) { // Unfortunately, either C# or MoonSharp (don't know which) has a ridiculous limit in place // Calling `SetDialog({""}, true, nil, true)` fails to pass the final argument if (mugshots != null && mugshots.Type == DataType.Table && forcePosition != null) PlayerOverworld.instance.UIPos = forcePosition.Type == DataType.Boolean ? (forcePosition.Boolean ? 2 : 1) : 0; else PlayerOverworld.instance.UIPos = 0; if (EventManager.instance.coroutines.ContainsKey(appliedScript) && EventManager.instance.script != appliedScript) { UnitaleUtil.DisplayLuaError(appliedScript.scriptname, "General.SetDialog: This function cannot be used in a coroutine."); return; } if (EventManager.instance.eventsLoading) { UnitaleUtil.DisplayLuaError(appliedScript.scriptname, "General.SetDialog: This function cannot be used in EventPage0."); return; } TextMessage[] textmsgs; if (texts.Type == DataType.String && texts.String.Length > 0) textmsgs = new[]{new TextMessage(texts.String, formatted, false, mugshots != null ? mugshots.Type == DataType.Table ? mugshots.Table.Get(0) : mugshots : null)}; else if (texts.Type == DataType.Table && texts.Table.Length > 0) { textmsgs = new TextMessage[texts.Table.Length]; for (int i = 0; i < texts.Table.Length; i++) textmsgs[i] = new TextMessage(texts.Table.Get(i + 1).String, formatted, false, mugshots != null ? mugshots.Type == DataType.Table ? mugshots.Table.Get(i+1) : mugshots : null); } else { UnitaleUtil.DisplayLuaError(EventManager.instance.eventScripts[EventManager.instance.events[EventManager.instance.actualEventIndex]].scriptname, "General.SetDialog: You need to input a non-empty array or string here."); return; } textmgr.SetEffect(null); textmgr.SetTextQueue(textmsgs); textmgr.transform.parent.parent.SetAsLastSibling(); } /// /// Makes a choice, like when you have to choose between cinnamon and butterscotch /// /// /// /// [CYFEventFunction] public void SetChoice(DynValue choices, string question = "", DynValue forcePosition = null) { // Unfortunately, something weird is happening here // Calling `SetChoice({"Yes", "No"}, nil, true)` fails to pass the final argument if (question != null && forcePosition != null) PlayerOverworld.instance.UIPos = forcePosition.Type == DataType.Boolean ? (forcePosition.Boolean ? 2 : 1) : 0; else PlayerOverworld.instance.UIPos = 0; TextMessage textMsgChoice = new TextMessage("", false, false); textMsgChoice.AddToText("[mugshot:null]"); List finalText = new List(); bool[] oneLiners = new bool[2]; List preTexts = new List(); bool threeLiner = false; //Do not put more than 3 lines and 2 choices //If the 3rd parameter is a string, it has to be a question if (question != "") { textMsgChoice.AddToText("* " + question + "\n"); } for (int i = 0; i < 2; i++) { //If there's no text, just don't print it if (choices.Table.Get(i + 1).String == null) continue; preTexts.Add(choices.Table.Get(i + 1).String.Split('\n')); string[] preText = preTexts[preTexts.Count - 1]; oneLiners[i] = preText.Length == 1 && question != ""; if (preText.Length == 3) threeLiner = true; if (!oneLiners[i]) continue; string line = preText[0]; preTexts[preTexts.Count - 1] = new[] { "", line }; } for (int i = 0; i < 2; i++) { string[] preText = preTexts[i]; for (int j = 0; j < (threeLiner ? 3 : 2); j++) { if (j == finalText.Count) finalText.Add(""); finalText[j] += "[charspacing:8] [charspacing:2]" + (j >= preText.Length ? "" : preText[j]) + (i == 0 ? "\t" : "") + "[charspacing:default]"; } } //Add the text to the text to print then the SetChoice function with its parameters for (int i = 0; i < finalText.Count; i++) { if (finalText[i] != "\t") textMsgChoice.AddToText(finalText[i] + ((i == finalText.Count - 1) ? "" : "\n")); } textmgr.SetEffect(null); textmgr.SetText(textMsgChoice); textmgr.transform.parent.parent.SetAsLastSibling(); if (StCoroutine != null) StCoroutine("ISetChoice", new object[] { question != "", oneLiners }, appliedScript.GetVar("_internalScriptName").String); } [CYFEventFunction] public void EndDialog() { if (EventManager.instance.eventsLoading) { UnitaleUtil.DisplayLuaError(appliedScript.scriptname, "General.EndDialog: This function cannot be used in EventPage0."); return; } if (EventManager.instance.script == appliedScript) { UnitaleUtil.DisplayLuaError(appliedScript.scriptname, "General.EndDialog: This function can only be used in a coroutine."); return; } if (textmgr != null && textmgr.GetComponent().color.a != 0) { // Clean up text manager textmgr.SetTextFrameAlpha(0); textmgr.SetTextQueue(new TextMessage[] { }); textmgr.HideTextObject(); // Clean up SetChoice if applicable if (EventManager.instance.script != null && EventManager.instance.script == textmgr.caller) { string key = EventManager.instance.script.GetVar("_internalScriptName").String + ".ISetChoice"; if (EventManager.instance.cSharpCoroutines.ContainsKey(key)) { // Stop the ISetChoice coroutine EventManager.instance.ForceEndCoroutine(key); // Remove the "tempHeart" GameObject if it already exists if (GameObject.Find("Canvas OW/tempHeart")) Object.Destroy(GameObject.Find("Canvas OW/tempHeart")); } } // End event appliedScript.Call("CYFEventNextCommand"); if (EventManager.instance.script != null && EventManager.instance.script == textmgr.caller) // End text from event textmgr.caller.Call("CYFEventNextCommand"); else PlayerOverworld.instance.PlayerNoMove = false; // End text no event } else appliedScript.Call("CYFEventNextCommand"); } [CYFEventFunction] public void Wait(int frames) { if (StCoroutine != null) StCoroutine("IWait", frames, appliedScript.GetVar("_internalScriptName").String); } /// /// Function that ends when the player press the button "Confirm" /// [CYFEventFunction] public void WaitForInput() { if (StCoroutine != null) StCoroutine("IWaitForInput", null, appliedScript.GetVar("_internalScriptName").String); } /// /// Launch the GameOver screen /// [CYFEventFunction] public void GameOver(DynValue deathText = null, string deathMusic = null) { PlayerCharacter.instance.HP = PlayerCharacter.instance.MaxHP; /*Transform rt = GameObject.Find("Player").GetComponent(); rt.position = new Vector3(rt.position.x, rt.position.y, -1000);*/ string[] deathTable = null; if (deathText != null && deathText.Type != DataType.Void) { switch (deathText.Type) { case DataType.Table: { deathTable = new string[deathText.Table.Length]; for (int i = 0; i < deathText.Table.Length; i++) deathTable[i] = deathText.Table[i + 1].ToString(); break; } case DataType.String: deathTable = new[] { deathText.String }; break; default: throw new CYFException("General.GameOver: deathText needs to be a table or a string."); } } PlayerOverworld.instance.enabled = false; // Stop the "kept audio" if it is playing if (PlayerOverworld.audioKept == UnitaleUtil.GetCurrentOverworldAudio()) { PlayerOverworld.audioKept.Stop(); PlayerOverworld.audioKept.clip = null; PlayerOverworld.audioKept.time = 0; } //Saves our most recent map and position to control where the player respawns string mapName = UnitaleUtil.MapCorrespondanceList.ContainsKey(SceneManager.GetActiveScene().name) ? UnitaleUtil.MapCorrespondanceList[SceneManager.GetActiveScene().name] : SceneManager.GetActiveScene().name; LuaScriptBinder.SetSessionGlobal("PlayerMap", DynValue.NewString(mapName)); Transform tf = GameObject.Find("Player").transform; LuaScriptBinder.SetSessionGlobal("PlayerPosX", DynValue.NewNumber(tf.position.x)); LuaScriptBinder.SetSessionGlobal("PlayerPosY", DynValue.NewNumber(tf.position.y)); LuaScriptBinder.SetSessionGlobal("PlayerPosZ", DynValue.NewNumber(tf.position.z)); Object.FindObjectOfType().StartDeath(deathTable, deathMusic); appliedScript.Call("CYFEventNextCommand"); } /// /// Plays and adjust the volume of a chosen bgm. /// /// The name of the chosen BGM to play. /// The volume of the BGM. Clamped from 0 to 1. [CYFEventFunction] public void PlayBGM(string bgm, float volume) { volume = Mathf.Clamp01(volume); if (AudioClipRegistry.GetMusic(bgm) == null) throw new CYFException("General.PlayBGM: The given BGM doesn't exist. Please check if you've spelled it correctly."); AudioSource audio = UnitaleUtil.GetCurrentOverworldAudio(); audio.clip = AudioClipRegistry.GetMusic(bgm); audio.volume = volume; audio.Play(); appliedScript.Call("CYFEventNextCommand"); } /// /// Stops the current BGM. /// /// /// [CYFEventFunction] public void StopBGM(int fadeFrames = 0, bool waitEnd = false) { if (EventManager.instance.bgmCoroutine) throw new CYFException("General.StopBGM: The music is already fading."); if (!GameObject.Find("Main Camera OW").GetComponent().isPlaying) throw new CYFException("General.StopBGM: There is no current BGM."); if (fadeFrames < 0) throw new CYFException("General.StopBGM: The fade time has to be positive or equal to 0."); if (StCoroutine != null) StCoroutine("IFadeBGM", new object[] { fadeFrames, waitEnd }, appliedScript.GetVar("_internalScriptName").String); if (!waitEnd) appliedScript.Call("CYFEventNextCommand"); } /// /// Plays a selected sound at a given volume. /// /// /// [CYFEventFunction] public void PlaySound(string sound, float volume = 0.65f) { volume = Mathf.Clamp01(volume); if (AudioClipRegistry.GetSound(sound) == null) throw new CYFException("General.PlaySound: The given BGM doesn't exist. Please check if you've spelled it correctly."); UnitaleUtil.PlaySound("PlaySound", sound, volume); //GameObject.Find("Player").GetComponent().PlayOneShot(AudioClipRegistry.GetSound(sound), volume); appliedScript.Call("CYFEventNextCommand"); } /// /// Saves the game. Pretty obvious, heh. /// [CYFEventFunction] public void Save(bool forced = false) { if (StCoroutine != null) StCoroutine("ISave", new object[] { forced }, appliedScript.GetVar("_internalScriptName").String); } /// /// Sends the player back to the title screen, making him lose his progression /// [CYFEventFunction] public void TitleScreen() { UnitaleUtil.ExitOverworld(false); SceneManager.LoadScene("TitleScreen"); Object.Destroy(GameObject.Find("SpritePivot")); } /// /// Sets an encounter of the current mod folder, with a given encounter name /// The boolean is used to tell if the encounter anim will be short /// /// /// /// [CYFEventFunction] public void SetBattle(string encounterName = "", string anim = "normal", bool ForceNoFlee = false) { anim = anim.ToLower(); if (anim != "normal" && anim != "fast" && anim != "instant") throw new CYFException("General.SetBattle: Invalid animation \"" + anim + "\".\nIt should be\"normal\", \"fast\" or \"instant\"."); PlayerOverworld.instance.SetEncounterAnim(encounterName, anim, ForceNoFlee); } [CYFEventFunction] public void EnterShop(string scriptName, bool instant = false) { ShopScript.scriptName = scriptName; if (StCoroutine != null) StCoroutine("IEnterShop", instant, appliedScript.GetVar("_internalScriptName").String); } } ================================================ FILE: Assets/Scripts/Lua/CLRBindings/Overworld/LuaGeneralOW.cs.meta ================================================ fileFormatVersion: 2 guid: 114178ac6858b414187d4211013ff589 timeCreated: 1498875626 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/CLRBindings/Overworld/LuaInventoryOW.cs ================================================ using MoonSharp.Interpreter; public class LuaInventoryOW { public ScriptWrapper appliedScript; [MoonSharpHidden] public LuaInventoryOW() { } public delegate void LoadedAction(string coroName, object args, string evName); [MoonSharpHidden] public static event LoadedAction StCoroutine; [MoonSharpHidden] public void SetEquip(string itemName) { if (!Inventory.ItemExists(itemName)) throw new CYFException("The item \"" + itemName + "\" doesn't exist in the item list."); if (Inventory.InventoryNumber(itemName) == -1) throw new CYFException("You can't equip an item that isn't in the inventory."); Inventory.ChangeEquipment(Inventory.InventoryNumber(itemName), true); appliedScript.Call("CYFEventNextCommand"); } [CYFEventFunction] public void SetWeapon(string weapon) { SetEquip(weapon); } [CYFEventFunction] public void SetArmor(string armor) { SetEquip(armor); } [CYFEventFunction] public bool AddItem(string Name) { try { return Inventory.AddItem(Name); } finally { appliedScript.Call("CYFEventNextCommand"); } } [CYFEventFunction] public void RemoveItem(int ID) { Inventory.RemoveItem(ID - 1); appliedScript.Call("CYFEventNextCommand"); } [CYFEventFunction] public bool IsItemInTheInventory(string name) { try { return Inventory.InventoryNumber(name) != -1; } finally { appliedScript.Call("CYFEventNextCommand"); } } [CYFEventFunction] public bool ItemExists(string name) { try { return Inventory.ItemExists(name); } finally { appliedScript.Call("CYFEventNextCommand"); } } [CYFEventFunction] public int GetItemID(string name) { try { return Inventory.InventoryNumber(name); } finally { appliedScript.Call("CYFEventNextCommand"); } } [CYFEventFunction] public int GetItemCount() { try { return Inventory.inventory.Count; } finally { appliedScript.Call("CYFEventNextCommand"); } } [CYFEventFunction] public void SpawnBoxMenu() { if (StCoroutine != null) StCoroutine("ISpawnBoxMenu", null, appliedScript.GetVar("_internalScriptName").String); } } ================================================ FILE: Assets/Scripts/Lua/CLRBindings/Overworld/LuaInventoryOW.cs.meta ================================================ fileFormatVersion: 2 guid: e1c071746ea30a142a47ea8f0a74de4f timeCreated: 1490255842 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/CLRBindings/Overworld/LuaMapOW.cs ================================================ using System.Linq; using UnityEngine; using MoonSharp.Interpreter; using UnityEngine.SceneManagement; public class LuaMapOW { public ScriptWrapper appliedScript; [MoonSharpHidden] public LuaMapOW() { } public delegate void LoadedAction(string coroName, object args, string evName); [MoonSharpHidden] public static event LoadedAction StCoroutine; [CYFEventFunction] public string GetMusic() { try { return Object.FindObjectOfType().music; } finally { appliedScript.Call("CYFEventNextCommand"); } } [CYFEventFunction] public void SetMusic(string value) { Object.FindObjectOfType().music = value; appliedScript.Call("CYFEventNextCommand"); } [CYFEventFunction] public string GetModToLoad() { try { return Object.FindObjectOfType().modToLoad; } finally { appliedScript.Call("CYFEventNextCommand"); } } [CYFEventFunction] public void SetModToLoad(string value) { Object.FindObjectOfType().modToLoad = value; appliedScript.Call("CYFEventNextCommand"); } [CYFEventFunction] public bool GetNoRandomEncounter() { try { return Object.FindObjectOfType().noRandomEncounter; } finally { appliedScript.Call("CYFEventNextCommand"); } } [CYFEventFunction] public void SetNoRandomEncounter(bool value) { Object.FindObjectOfType().noRandomEncounter = value; appliedScript.Call("CYFEventNextCommand"); } [CYFEventFunction] public bool GetMusicKept() { try { return Object.FindObjectOfType().isMusicKeptBetweenBattles; } finally { appliedScript.Call("CYFEventNextCommand"); } } [CYFEventFunction] public void SetMusicKept(bool value) { if (value != Object.FindObjectOfType().isMusicKeptBetweenBattles) { Object.FindObjectOfType().isMusicKeptBetweenBattles = value; AudioSource oldAs = value ? (AudioSource)(NewMusicManager.audiolist["src"]) : (AudioSource)(NewMusicManager.audiolist["StaticKeptAudio"]); AudioSource newAs = value ? (AudioSource)(NewMusicManager.audiolist["StaticKeptAudio"]) : (AudioSource)(NewMusicManager.audiolist["src"]); if (value) { newAs.clip = oldAs.clip; newAs.volume = oldAs.volume; newAs.pitch = oldAs.pitch; newAs.loop = oldAs.loop; newAs.Play(); newAs.time = oldAs.time; oldAs.Stop(); } } appliedScript.Call("CYFEventNextCommand"); } [CYFEventFunction] public string GetName() { try { return SceneManager.GetActiveScene().name; } finally { appliedScript.Call("CYFEventNextCommand"); } } [CYFEventFunction] public string GetSaveName(string mapName) { try { string result; UnitaleUtil.MapCorrespondanceList.TryGetValue(mapName, out result); return result; } finally { appliedScript.Call("CYFEventNextCommand"); } } [CYFEventFunction] public string GetMusicMap(string mapName) { if (SceneManager.GetActiveScene().name == mapName) return GetMusic(); try { return (string)EventManager.TryGetMapValue(mapName, "Music"); } finally { appliedScript.Call("CYFEventNextCommand"); } } [CYFEventFunction] public void SetMusicMap(string mapName, string value) { if (SceneManager.GetActiveScene().name == mapName) SetMusic(value); else EventManager.TrySetMapValue(mapName, "Music", value); appliedScript.Call("CYFEventNextCommand"); } [CYFEventFunction] public string GetModToLoadMap(string mapName) { if (SceneManager.GetActiveScene().name == mapName) return GetModToLoad(); try { return (string)EventManager.TryGetMapValue(mapName, "ModToLoad"); } finally { appliedScript.Call("CYFEventNextCommand"); } } [CYFEventFunction] public void SetModToLoadMap(string mapName, string value) { if (SceneManager.GetActiveScene().name == mapName) SetModToLoad(value); else EventManager.TrySetMapValue(mapName, "ModToLoad", value); appliedScript.Call("CYFEventNextCommand"); } [CYFEventFunction] public bool GetNoRandomEncounterMap(string mapName) { if (SceneManager.GetActiveScene().name == mapName) return GetMusicKept(); try { return (bool)EventManager.TryGetMapValue(mapName, "MusicKept"); } finally { appliedScript.Call("CYFEventNextCommand"); } } [CYFEventFunction] public void SetNoRandomEncounterMap(string mapName, bool value) { if (SceneManager.GetActiveScene().name == mapName) SetNoRandomEncounter(value); else EventManager.TrySetMapValue(mapName, "NoRandomEncounter", value); appliedScript.Call("CYFEventNextCommand"); } [CYFEventFunction] public bool GetMusicKeptMap(string mapName) { if (SceneManager.GetActiveScene().name == mapName) return GetNoRandomEncounter(); try { return (bool)EventManager.TryGetMapValue(mapName, "NoRandomEncounter"); } finally { appliedScript.Call("CYFEventNextCommand"); } } [CYFEventFunction] public void SetMusicKeptMap(string mapName, bool value) { if (SceneManager.GetActiveScene().name == mapName) SetMusicKept(value); else EventManager.TrySetMapValue(mapName, "MusicKept", value); appliedScript.Call("CYFEventNextCommand"); } [CYFEventFunction] public bool HasPlayerBeenInMap(string mapName) { try { return SceneManager.GetActiveScene().name == mapName || GlobalControls.GameMapData.Values.Any(md => md.Name == mapName); } finally { appliedScript.Call("CYFEventNextCommand"); } } } ================================================ FILE: Assets/Scripts/Lua/CLRBindings/Overworld/LuaMapOW.cs.meta ================================================ fileFormatVersion: 2 guid: 0e6cd6d25e7a8d34e927baf293b4a27b timeCreated: 1498783464 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/CLRBindings/Overworld/LuaPlayerOW.cs ================================================ using UnityEngine; using MoonSharp.Interpreter; public class LuaPlayerOW { public ScriptWrapper appliedScript; public delegate void LoadedAction(string coroName, object args, string evName); [MoonSharpHidden] public static event LoadedAction StCoroutine; [MoonSharpHidden] public LuaPlayerOW() { } [CYFEventFunction] public int GetLevel() { try { return PlayerCharacter.instance.LV; } finally { appliedScript.Call("CYFEventNextCommand"); } } [CYFEventFunction] public void SetLevel(int value) { PlayerCharacter.instance.SetLevel(value); appliedScript.Call("CYFEventNextCommand"); } [CYFEventFunction] public float GetHP() { try { return PlayerCharacter.instance.HP; } finally { appliedScript.Call("CYFEventNextCommand"); } } [CYFEventFunction] public void SetHP(float value) { setHP(value); appliedScript.Call("CYFEventNextCommand"); } [CYFEventFunction] public int GetMaxHP() { try { return PlayerCharacter.instance.BasisMaxHP + PlayerCharacter.instance.MaxHP; } finally { appliedScript.Call("CYFEventNextCommand"); } } [CYFEventFunction] public void SetMaxHP(int value) { setMaxHP(value - PlayerCharacter.instance.BasisMaxHP); appliedScript.Call("CYFEventNextCommand"); } [CYFEventFunction] public void ResetMaxHP() { setMaxHP(PlayerCharacter.instance.BasisMaxHP); appliedScript.Call("CYFEventNextCommand"); } [CYFEventFunction] public string GetName() { try { return PlayerCharacter.instance.Name; } finally { appliedScript.Call("CYFEventNextCommand"); } } [CYFEventFunction] public void SetName(string value) { PlayerCharacter.instance.Name = value; appliedScript.Call("CYFEventNextCommand"); } [CYFEventFunction] public int GetWeaponATK() { try { return PlayerCharacter.instance.WeaponATK; } finally { appliedScript.Call("CYFEventNextCommand"); } } [CYFEventFunction] public int GetArmorDEF() { try { return PlayerCharacter.instance.ArmorDEF; } finally { appliedScript.Call("CYFEventNextCommand"); } } [CYFEventFunction] public int GetATK() { try { return PlayerCharacter.instance.ATK; } finally { appliedScript.Call("CYFEventNextCommand"); } } [CYFEventFunction] public int GetDEF() { try { return PlayerCharacter.instance.DEF; } finally { appliedScript.Call("CYFEventNextCommand"); } } [CYFEventFunction] public int GetGold() { try { return PlayerCharacter.instance.Gold; } finally { appliedScript.Call("CYFEventNextCommand"); } } [CYFEventFunction] public void SetGold(int value) { PlayerCharacter.instance.SetGold(value); appliedScript.Call("CYFEventNextCommand"); } [CYFEventFunction] public string GetWeapon() { try { return PlayerCharacter.instance.Weapon; } finally { appliedScript.Call("CYFEventNextCommand"); } } [CYFEventFunction] public void SetWeapon(string value) { EventManager.instance.luaInventoryOw.SetEquip(value);} [CYFEventFunction] public string GetArmor() { try { return PlayerCharacter.instance.Armor; } finally { appliedScript.Call("CYFEventNextCommand"); } } [CYFEventFunction] public void SetArmor(string value) { EventManager.instance.luaInventoryOw.SetEquip(value); } [CYFEventFunction] public int GetEXP() { try { return PlayerCharacter.instance.EXP; } finally { appliedScript.Call("CYFEventNextCommand"); } } [CYFEventFunction] public void SetEXP(int value) { PlayerCharacter.instance.SetEXP(value, true); appliedScript.Call("CYFEventNextCommand"); } /*public int Level { get { return PlayerCharacter.instance.LV; } set { PlayerCharacter.instance.SetLevel(value); } } public float HP { get { return PlayerCharacter.instance.HP; } set { setHP(value); } } public int MaxHP { get { return PlayerCharacter.instance.MaxHP; } set { setMaxHP(value - PlayerCharacter.instance.BasisMaxHP); } } public string Name { get { return PlayerCharacter.instance.Name; } set { PlayerCharacter.instance.Name = value; } } public int Gold { get { return PlayerCharacter.instance.Gold; } set { PlayerCharacter.instance.SetGold(value); } } public string Weapon { get { return PlayerCharacter.instance.Weapon; } set { EventManager.instance.luaInventoryOw.SetWeapon(value); } } public string Armor { get { return PlayerCharacter.instance.Armor; } set { EventManager.instance.luaInventoryOw.SetArmor(value); } } public int EXP { get { return PlayerCharacter.instance.EXP; } set { PlayerCharacter.instance.SetEXP(value, true); } }*/ [CYFEventFunction] public void ForceHP(float newhp) { setHP(newhp, true); appliedScript.Call("CYFEventNextCommand"); } /// /// Hurts the PlayerCharacter.instance with the given amount of damage. Heal()'s opposite. /// /// This one seems obvious [CYFEventFunction] public void Hurt(int damage) { UnitaleUtil.PlaySound("HurtSound", damage >= 0 ? "hurtsound" : "healsound"); if (-damage + PlayerCharacter.instance.HP > PlayerCharacter.instance.MaxHP) PlayerCharacter.instance.HP = PlayerCharacter.instance.MaxHP; else if (-damage + PlayerCharacter.instance.HP <= 0) PlayerCharacter.instance.HP = 1; else PlayerCharacter.instance.HP -= damage; appliedScript.Call("CYFEventNextCommand"); } /// /// Heals the PlayerCharacter.instance with the given amount of heal. Hurt()'s opposite. /// /// This one seems obvious too [CYFEventFunction] public void Heal(int heal) { Hurt(-heal); appliedScript.Call("CYFEventNextCommand"); } /// /// Enables or disables the PlayerCharacter.instance's movement /// /// Can the PlayerCharacter.instance move? [CYFEventFunction] public void CanMove(bool canMove) { PlayerOverworld.instance.forceNoAction = !canMove; appliedScript.Call("CYFEventNextCommand"); } [MoonSharpHidden] public void setHP(float newHP, bool allowOverheal = false) { if (newHP <= 0) { EventManager.instance.luaGeneralOw.GameOver(); return; } UnitaleUtil.PlaySound("CollisionSoundChannel", PlayerCharacter.instance.HP - newHP >= 0 ? "hurtsound" : "healsound"); newHP = Mathf.Min(Mathf.Round(newHP * Mathf.Pow(10, ControlPanel.instance.MaxDigitsAfterComma)) / Mathf.Pow(10, ControlPanel.instance.MaxDigitsAfterComma), ControlPanel.instance.HPLimit); if (allowOverheal) PlayerCharacter.instance.HP = newHP; else { // Heal: Keep the highest value between MaxHP and the current HP and don't go past MaxHP if the current HP isn't full if (newHP > PlayerCharacter.instance.MaxHP && newHP > PlayerCharacter.instance.HP) PlayerCharacter.instance.HP = Mathf.Max(PlayerCharacter.instance.MaxHP, PlayerCharacter.instance.HP); else PlayerCharacter.instance.HP = newHP; } } [MoonSharpHidden] public void setMaxHP(int value) { if (value == PlayerCharacter.instance.MaxHP) return; if (value <= 0) { setHP(0); return; } if (value > ControlPanel.instance.HPLimit) value = ControlPanel.instance.HPLimit; else if (PlayerCharacter.instance.HP > value) PlayerCharacter.instance.HP = value; else UnitaleUtil.PlaySound("CollisionSoundChannel", "healsound"); PlayerCharacter.instance.MaxHPShift = value - PlayerCharacter.instance.BasisMaxHP; } [CYFEventFunction] public void Teleport(string mapName, float posX, float posY, int direction = 0, bool NoFadeIn = false, bool NoFadeOut = false) { TPHandler tp = Object.Instantiate(Resources.Load("Prefabs/TP On-the-fly")); tp.sceneName = mapName; tp.position = new Vector2(posX, posY); tp.direction = direction; tp.noFadeIn = NoFadeIn; tp.noFadeOut = NoFadeOut; tp.transform.position = PlayerOverworld.instance.gameObject.transform.position; EventManager.instance.EndEvent(); } } ================================================ FILE: Assets/Scripts/Lua/CLRBindings/Overworld/LuaPlayerOW.cs.meta ================================================ fileFormatVersion: 2 guid: 9934345e8169770499376bedabcfadf7 timeCreated: 1490255729 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/CLRBindings/Overworld/LuaScreenOW.cs ================================================ using UnityEngine; using UnityEngine.UI; using MoonSharp.Interpreter; public class LuaScreenOW { public ScriptWrapper appliedScript; [MoonSharpHidden] public LuaScreenOW() { } public delegate void LoadedAction(string coroName, object args, string evName); [MoonSharpHidden] public static event LoadedAction StCoroutine; //I know, there's WAY too much parameters in here, but I don't have the choice right now. //If I find a way to get the Table's text from DynValues, I'll gladly reduce the number of //parameters of this, but right now, even if it is very painful to enter directly 6 or 10 parameters, //I don't find a proper way to do this. (Erm...plus, I have to say that if I put arrays into this, //you'll have to write braces in the function, so just think that I give you a favor xP) /// /// Permits to display an image on the screen at given dimensions, position and color /// /// /// /// /// /// /// /// /// [CYFEventFunction] public void DispImg(string path, int id, float posX, float posY, int toneR = 255, int toneG = 255, int toneB = 255, int toneA = 255) { GameObject image; bool newImage = false; if (GameObject.Find("Image" + id) != null) image = GameObject.Find("Image" + id); else { newImage = true; image = Object.Instantiate(Resources.Load("Prefabs/ImageEvent")); image.name = "Image" + id; image.tag = "Event"; image.GetComponent().SetParent(GameObject.Find("Canvas OW").transform); EventManager.instance.spriteControllers.Add("Image" + id, LuaSpriteController.GetOrCreate(image)); } image.GetComponent().sprite = SpriteRegistry.Get(path); if (image.GetComponent().sprite == null) throw new CYFException("Screen.DispImg: The sprite given doesn't exist."); if (toneR < 0 || toneR > 255 || toneR % 1 != 0 || toneG < 0 || toneG > 255 || toneG % 1 != 0 || toneB < 0 || toneB > 255 || toneB % 1 != 0) throw new CYFException("Screen.DispImg: You can't input a value out of [0; 255] for a color value, as it is clamped from 0 to 255.\nThe number have to be an integer."); if (toneA >= 0 && toneA <= 255 && toneR % 1 == 0) image.GetComponent().color = new Color32((byte)toneR, (byte)toneG, (byte)toneB, (byte)toneA); image.GetComponent().sizeDelta = image.GetComponent().sprite.bounds.size * 100; image.GetComponent().position = (Vector2)Camera.main.transform.position + new Vector2(posX - 320, posY - 240); if (newImage) EventManager.instance.events.Add(image); appliedScript.Call("CYFEventNextCommand"); } /// /// Remove an image from the screen /// /// [CYFEventFunction] public void SupprImg(int id) { if (GameObject.Find("Image" + id)) EventManager.instance.luaEventOw.Remove("Image" + id); else UnitaleUtil.Warn("The image #" + id + " doesn't exist.", false); appliedScript.Call("CYFEventNextCommand"); } /// /// Sets a tone directly, without transition /// /// /// /// /// /// /// [CYFEventFunction] public void SetTone(bool anim, bool waitEnd, int r = 255, int g = 255, int b = 255, int a = 128) { if (r < 0 || r > 255 || r % 1 != 0 || g < 0 || g > 255 || g % 1 != 0 || b < 0 || b > 255 || b % 1 != 0) throw new CYFException("Screen.SetTone: You can't input a value out of [0; 255] for a color value, as it is clamped from 0 to 255.\nThe number have to be an integer."); if (GameObject.Find("Tone") == null) { GameObject image = Object.Instantiate(Resources.Load("Prefabs/ImageEvent")); image.GetComponent().color = new Color(r / 255f, g / 255f, b / 255f, 0); image.name = "Tone"; image.tag = "Event"; image.GetComponent().SetParent(GameObject.Find("Canvas OW").transform); image.GetComponent().sizeDelta = new Vector2(1000, 800); image.GetComponent().position = (Vector2)Camera.main.transform.position; EventManager.instance.events.Add(image); } if (!anim) { GameObject.Find("Tone").GetComponent().color = new Color32((byte)r, (byte)g, (byte)b, (byte)a); if (a == 0) EventManager.instance.luaEventOw.Remove("Tone"); appliedScript.Call("CYFEventNextCommand"); } else if (StCoroutine != null) StCoroutine("ISetTone", new object[] { waitEnd, r, g, b, a }, appliedScript.GetVar("_internalScriptName").String); } /*/// /// Rumbles the screen. /// /// /// [CYFEventFunction] public void Rumble(float frames, float intensity = 3, bool fade = false) { StCoroutine("IRumble", new object[] { frames, intensity, fade }, appliedScript.GetVar("_internalScriptName").String); }*/ [CYFEventFunction] public void Flash(int frames, int colorR = 255, int colorG = 255, int colorB = 255, int colorA = 255, bool waitEnd = true) { if (StCoroutine != null) StCoroutine("IFlash", new object[] { frames, colorR, colorG, colorB, colorA, waitEnd }, appliedScript.GetVar("_internalScriptName").String); } [CYFEventFunction] public void CenterEventOnCamera(string name, int speed = 5, bool straightLine = false, bool waitEnd = true, string info = "Screen.CenterEventOnCamera") { if (!GameObject.Find(name)) throw new CYFException("Screen.CenterEventOnCamera: The given event doesn't exist."); if (!EventManager.instance.events.Contains(GameObject.Find(name))) throw new CYFException("Screen.CenterEventOnCamera: The given event doesn't exist."); if (StCoroutine != null) StCoroutine("IMoveCamera", new object[] { (int) (GameObject.Find(name).transform.position.x - PlayerOverworld.instance.transform.position.x), (int) (GameObject.Find(name).transform.position.y - PlayerOverworld.instance.transform.position.y), speed, straightLine, waitEnd, info }, appliedScript.GetVar("_internalScriptName").String); } [CYFEventFunction] public void MoveCamera(int pixX, int pixY, int speed = 5, bool straightLine = false, bool waitEnd = true) { if (StCoroutine != null) StCoroutine("IMoveCamera", new object[] { pixX, pixY, speed, straightLine, waitEnd, "Screen.MoveCamera" }, appliedScript.GetVar("_internalScriptName").String); } [CYFEventFunction] public void ResetCameraPosition(int speed = 5, bool straightLine = false, bool waitEnd = true) { if (StCoroutine != null) StCoroutine("IMoveCamera", new object[] { 0, 0, speed, straightLine, waitEnd, "Screen.ResetCameraPosition" }, appliedScript.GetVar("_internalScriptName").String); } } ================================================ FILE: Assets/Scripts/Lua/CLRBindings/Overworld/LuaScreenOW.cs.meta ================================================ fileFormatVersion: 2 guid: bf8898594f5c8eb4f8821dce998fa265 timeCreated: 1490255826 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/CLRBindings/Overworld.meta ================================================ fileFormatVersion: 2 guid: a7bfd183458fdd1419c580eaf3d6f296 folderAsset: yes timeCreated: 1490255702 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/CLRBindings/ProjectileController.cs ================================================ using System.Collections.Generic; using MoonSharp.Interpreter; using UnityEngine; using UnityEngine.UI; /// /// Lua binding to set and retrieve information for bullets in the game. /// public class ProjectileController { private Projectile p; private readonly LuaSpriteController spr; private readonly Dictionary vars = new Dictionary(); private float lastX; private float lastY; private float lastAbsX; private float lastAbsY; public static bool globalPixelPerfectCollision; public ProjectileController(Projectile p) { this.p = p; spr = LuaSpriteController.GetOrCreate(p.gameObject, true); spr.Reset(); } // The x position of the sprite, relative to the arena position and its anchor. public float x { get { return p == null ? lastX : p.self.position.x - ArenaManager.arenaCenter.x; } set { MoveTo(value, y); } } // The y position of the sprite, relative to the arena position and its anchor. public float y { get { return p == null ? lastY : p.self.position.y - ArenaManager.arenaCenter.y; } set { MoveTo(x, value); } } // The x position of the sprite, relative to the bottom left corner of the screen. public float absx { get { return p == null ? lastAbsX : p.self.position.x; } set { MoveToAbs(value, absy); } } // The y position of the sprite, relative to the bottom left corner of the screen. public float absy { get { return p == null ? lastAbsY : p.self.position.y; } set { MoveToAbs(absx, value); } } //Bullet.Duplicate() has been suspended because of some bugs. Maybe that I'll get on it later. /*private DynValue Duplicate(Transform parent, Transform current) { Transform[] children = UnitaleUtil.GetFirstChildren(current.gameObject.transform); int currentIndex = 1; Table table = new Table(null); if (current == p.transform) p.ctrl = this; //Bullet Replication GameObject go = GameObject.Instantiate(current.gameObject); go.transform.SetParent(parent); go.GetComponent().owner = current.GetComponent().owner; //Debug.Log(current.GetComponent().ctrl); //go.GetComponent().ctrl = Instantiate(current.GetComponent().ctrl); //ProjectileController projectileController = new ProjectileController(go.GetComponent()); //projectileController.active = current.GetComponent().ctrl.active; //Debug.Log("isPersistent current " + current.GetComponent().ctrl.isPersistent); //projectileController.isPersistent = current.GetComponent().ctrl.isPersistent; //Debug.Log("isPersistent new " + projectileController.isPersistent); //projectileController.vars = current.GetComponent().ctrl.vars; go.self.pivot = current.self.pivot; go.self.anchorMin = current.self.anchorMin; go.self.anchorMax = current.self.anchorMax; go.self.sizeDelta = current.self.sizeDelta; go.transform.localPosition = current.localPosition; go.transform.localRotation = current.localRotation; table.Set(currentIndex++, UserData.Create(go.GetComponent().ctrl)); //foreach (string key in vars.Keys) // projectileController.SetVar(key, vars[key]); foreach (Transform tf in UnitaleUtil.GetFirstChildren(go.transform)) Destroy(tf.gameObject); //Children Replication if (children.Length > 0) for (int i = 0; i < children.Length; i++) { DynValue tabledv = Duplicate(go.transform, children[i]); for (int j = 0; j < tabledv.Table.Length; j++) table.Set(currentIndex++, tabledv.Table.Get(j + 1)); } return DynValue.NewTable(table); } public DynValue Duplicate() { return Duplicate(p.transform.parent, p.transform); }*/ public bool ppcollision { get { if (p == null) throw new CYFException("Attempted to get the collision mode of a removed bullet."); return p.isPP(); } set { if (p == null) throw new CYFException("Attempted to set the collision mode of a removed bullet."); if (!p.isPP() && value) p.texture = ((Texture2D)p.GetComponent().mainTexture).GetPixels32(); p.ppcollision = value; p.ppchanged = true; } } public bool ppchanged { get { if (p == null) throw new CYFException("Attempted to get the value of bullet.ppchanged from a removed bullet."); return p.ppchanged; } } public bool isactive { get { return p != null; } } public bool isPersistent = false; public string layer { get { return spr.img.transform.parent.name == "BulletPool" ? "" : spr.img.transform.parent.name.Substring(0, spr.img.transform.parent.name.Length - 6); } set { Transform parent = spr.img.transform.parent; try { spr.img.transform.SetParent(GameObject.Find(value == "" ? "BulletPool" : value + "Bullet").transform); } catch { spr.img.transform.SetParent(parent); } } } public LuaSpriteController sprite { get { return spr; } } /*public void UpdatePosition() { x = p.self.anchoredPosition.x - ArenaManager.arenaCenter.x; y = p.self.anchoredPosition.y - ArenaManager.arenaCenter.y; absx = p.self.anchoredPosition.x; absy = p.self.anchoredPosition.y; }*/ public void ResetCollisionSystem() { if (p == null) throw new CYFException("Attempted to reset the personal collision system of a removed bullet."); p.ppchanged = false; p.ppcollision = globalPixelPerfectCollision; } public void Remove() { if (!isactive) return; UnitaleUtil.RemoveChildren(p.gameObject); lastX = x; lastY = y; lastAbsX = absx; lastAbsY = absy; if (p.gameObject.GetComponent() != null) Object.Destroy(p.gameObject.GetComponent()); p.gameObject.GetComponent().enabled = false; p.gameObject.GetComponent().enabled = false; spr.StopAnimation(); BulletPool.instance.Requeue(p); p = null; } public void Move(float newX, float newY) { MoveToAbs(absx + newX, absy + newY); } public void MoveTo(float newX, float newY) { MoveToAbs(ArenaManager.arenaCenter.x + newX, ArenaManager.arenaCenter.y + newY); } public void MoveToAbs(float newX, float newY) { if (p == null) { if (GlobalControls.retroMode) return; throw new CYFException("Attempted to move a removed bullet. You can use a bullet's isactive property to check if it has been removed."); } if (GlobalControls.retroMode) p.self.anchoredPosition = new Vector2(newX, newY); else p.self.position = new Vector2(newX, newY); } public void SendToTop() { p.self.SetAsLastSibling(); } public void SendToBottom() { p.self.SetAsFirstSibling(); } private DynValue _OnHit = DynValue.Nil; public DynValue OnHit { get { return _OnHit; } set { if ((value.Type & (DataType.Nil | DataType.Function | DataType.ClrFunction)) == 0) throw new CYFException("bullet.OnHit: This variable has to be a function!"); if (value.Type == DataType.Function && value.Function.OwnerScript != p.owner) throw new CYFException("bullet.OnHit: You can only use a function created in the same script as the projectile!"); _OnHit = value; } } public void SetVar(string name, DynValue value) { if (name == null) throw new CYFException("bullet.SetVar: The first argument (the index) is nil.\n\nSee the documentation for proper usage."); vars[name] = value; } public DynValue GetVar(string name) { if (name == null) throw new CYFException("bullet.GetVar: The first argument (the index) is nil.\n\nSee the documentation for proper usage."); DynValue retval; return vars.TryGetValue(name, out retval) ? retval : null; } public DynValue this[string key] { get { return GetVar(key); } set { SetVar(key, value); } } public bool isColliding() { if (p == null) return false; return p.isPP() ? p.HitTestPP() : p.HitTest(); } //////////////////// // Children stuff // //////////////////// public string name { get { return p.gameObject.name; } } public int childIndex { get { return p.self.GetSiblingIndex() + 1; } set { p.self.SetSiblingIndex(value - 1); } } public int childCount { get { return p.self.childCount; } } public DynValue GetParent() { return UnitaleUtil.GetObjectParent(p.self); } public void SetParent(object parent) { UnitaleUtil.SetObjectParent(this, parent); LuaSpriteController sParent = parent as LuaSpriteController; ProjectileController pParent = parent as ProjectileController; if (pParent != null) sParent = pParent.sprite; if (sParent == null) return; if (sprite.img.GetComponent()) sprite.img.GetComponent().inverted = sParent._masked == LuaSpriteController.MaskMode.INVERTEDSPRITE || sParent._masked == LuaSpriteController.MaskMode.INVERTEDSTENCIL; } public DynValue GetChild(int index) { if (index > childCount) throw new CYFException("This object only has " + childCount + " children yet you try to get its child #" + index); return UnitaleUtil.GetObject(sprite.img.transform.GetChild(--index)); } public DynValue[] GetChildren() { DynValue[] tab = new DynValue[sprite.img.transform.childCount]; for (int i = 0; i < sprite.img.transform.childCount; i++) tab[i] = GetChild(i + 1); return tab; } } ================================================ FILE: Assets/Scripts/Lua/CLRBindings/ProjectileController.cs.meta ================================================ fileFormatVersion: 2 guid: 8ffcc4068f3140e4f93ed14e67aab64b timeCreated: 1447554349 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/CLRBindings.meta ================================================ fileFormatVersion: 2 guid: aa52e611db6c62b45816616497d1a11c folderAsset: yes timeCreated: 1450098859 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/ErrorDisplay.cs ================================================ using UnityEngine; using UnityEngine.UI; /// /// Class to contain a Lua error message, which is displayed as soon as the Error scene loads. /// public class ErrorDisplay : MonoBehaviour { public static string Message; private void Start() { if (GameObject.Find("Main Camera OW")) { Destroy(GameObject.Find("Main Camera OW")); Destroy(GameObject.Find("Canvas OW")); Destroy(GameObject.Find("Canvas Two")); Destroy(GameObject.Find("Player")); } UnitaleUtil.firstErrorShown = false; string mess = !GlobalControls.modDev ? "restart CYF" : "reload"; GetComponent().text = Message + "\n\nPress ESC to " + mess; } } ================================================ FILE: Assets/Scripts/Lua/ErrorDisplay.cs.meta ================================================ fileFormatVersion: 2 guid: e56ebaefbc7b5bc44915ab30c9b65d86 timeCreated: 1449439723 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/FileLoader.cs ================================================ using System; using System.Collections.Generic; using System.IO; using System.Linq; using MoonSharp.Interpreter.CoreLib; using UnityEngine; using UnityEngine.SceneManagement; /// /// Static utility class to take care of various file loading features in Unitale. /// public static class FileLoader { public static void calcDataRoot() { DirectoryInfo rootInfo = new DirectoryInfo(Application.dataPath); // Mac compatibility if (Application.platform == RuntimePlatform.OSXPlayer) rootInfo = rootInfo.Parent; if (rootInfo == null) return; string SysDepDataRoot = rootInfo.FullName; while (true) { DirectoryInfo[] dfs = rootInfo.GetDirectories(); if (dfs.Any(df => df.FullName == Path.Combine(SysDepDataRoot, "Mods"))) { DataRoot = SysDepDataRoot.Replace('/', Path.DirectorySeparatorChar).Replace('\\', Path.DirectorySeparatorChar); return; } try { System.Diagnostics.Debug.Assert(rootInfo.Parent != null, "rootInfo.Parent != null"); rootInfo = new DirectoryInfo(rootInfo.Parent.FullName); } catch { UnitaleUtil.DisplayLuaError("CYF's Startup", "The engine detected no Mods folder in your files: are you sure it exists?"); return; } SysDepDataRoot = rootInfo.FullName; //Debug.Log(SysDepDataRoot); } //if (Application.platform == RuntimePlatform.OSXPlayer) /*OSX has stuff bundled in .app things*/ SysDepDataRoot = rootInfo.Parent.Parent.FullName; //else if (Application.platform == RuntimePlatform.WindowsEditor || Application.platform == RuntimePlatform.OSXEditor) { /*everything is fine*/ } //else SysDepDataRoot = rootInfo.Parent.FullName; } private static string _DataRoot; /// /// Get the full platform-dependent path to the application root (the folder in which the Unitale executable resides). /// public static string DataRoot { get { if (_DataRoot == null) calcDataRoot(); return _DataRoot; } private set { _DataRoot = value; LoadModule.DataRoot = value; } } /// /// Get the full path to the main directory of the currently selected mod. /// public static string ModDataPath { get { return Path.Combine(DataRoot, "Mods/" + StaticInits.MODFOLDER); } } /// /// Get the path to the default Undertale assets directory. /// public static string DefaultDataPath { get { return Path.Combine(DataRoot, "Default"); } } /// /// Return the given file as a byte array. /// /// Path to file that should be read /// Suffix of the file after the mod or default folder /// Byte array containing all bytes in the file. public static byte[] GetBytesFrom(ref string filename, string pathSuffix = "Sprites/") { SanitizePath(ref filename, pathSuffix, true, true); return File.ReadAllBytes(filename); } /// /// Returns the path to the given file within the selected mod directory. /// /// Path to file relative to mod directory root /// Full path to the file specified public static string PathToModFile(string filename) { return Path.Combine(ModDataPath, filename); } /// /// Returns the path to the given file within the default directory. /// /// Path to file relative to default directory root /// Full path to the file specified public static string PathToDefaultFile(string filename) { return Path.Combine(DefaultDataPath, filename); } public static bool SceneExists(string name) { for (int i = 0; i < SceneManager.sceneCountInBuildSettings; i++) if (Path.GetFileNameWithoutExtension(SceneUtility.GetScenePathByBuildIndex(i)) == name) return true; return false; } public static string GetScript(string path, string errorSource, string errorContext) { path += path.EndsWith(".lua") ? "" : ".lua"; FileInfo f = new FileInfo(Path.Combine(PathToModFile("Lua"), path)); if (!f.Exists) UnitaleUtil.DisplayLuaError(errorSource, "Tried to load " + errorContext + " script \"" + path + "\" but it couldn't be found. Is it mispelled?\n\nFull path: " + f.FullName); SanitizePath(ref path, "Lua/", true, true); return File.ReadAllText(path); } /////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////// /// /// Checks if a file exists in CYF's Default or Mods folder and returns a clean path to it without its extension using SanitizePath(). /// /// Path to the file to require, relative or absolute. Will also contain the clean path to the existing resource if found. /// String to add to the tested path to check in the given folder. /// Defines whether the error screen should be displayed if the file isn't in either folder. /// True if you want to get the absolute path to the file, false otherwise. /// True if the sanitization was successful, false otherwise. public static bool GetRelativePathWithoutExtension(ref string fileName, string pathSuffix, bool errorOnFailure = true, bool needsAbsolutePath = false) { bool result = SanitizePath(ref fileName, pathSuffix, errorOnFailure, needsAbsolutePath); if (!result) return false; int extIndex = fileName.LastIndexOf('.'); fileName = extIndex > 0 ? fileName.Substring(0, extIndex) : fileName; return true; } public static Dictionary relativeSanitizationDictionary = new Dictionary(); public static Dictionary absoluteSanitizationDictionary = new Dictionary(); /// /// Checks if a file exists in CYF's Default or Mods folder and returns a clean path to it. /// It only runs RequireFile() if it's truly useful, otherwise it just checks if the file at the given path exists. /// /// Path to the file to require, relative or absolute. Will also contain the clean path to the existing resource if found. /// String to add to the tested path to check in the given folder. /// True if the file you are looking for needs to exist. In this case, the function will return false if it doesn't exist. /// True if you want to get the absolute path to the file, false otherwise. /// Defines whether the error screen should be displayed if the file isn't in either folder. /// True if the sanitization was successful, false otherwise. public static bool SanitizePath(ref string fileName, string pathSuffix, bool needsToExist = true, bool needsAbsolutePath = false, bool errorOnFailure = true) { string pathToTest = fileName.Contains(DataRoot) ? fileName : pathSuffix + fileName; fileName = fileName.Replace('/', Path.DirectorySeparatorChar).Replace('\\', Path.DirectorySeparatorChar); // Check if this same string has been passed to RequireFile before if (needsAbsolutePath && absoluteSanitizationDictionary.ContainsKey(pathToTest)) { fileName = absoluteSanitizationDictionary[pathToTest]; return true; } if (!needsAbsolutePath && relativeSanitizationDictionary.ContainsKey(pathToTest)) { fileName = relativeSanitizationDictionary[pathToTest]; return true; } // Sanitize if path from CYF root, need to transform a relative path to an absolute path and vice-versa, or if there's an occurence of .. bool leadingSlash = fileName.StartsWith(Path.DirectorySeparatorChar.ToString()) && !fileName.Contains(DataRoot); if (!LoadModule.RequireFile(ref fileName, pathSuffix, needsToExist, needsAbsolutePath, errorOnFailure)) if (leadingSlash) { // Passthrough: Remove the leading slash if the file wasn't found if (!fileName.StartsWith(DataRoot)) fileName = fileName.Replace('\\', '/').TrimStart('/'); // TODO: Remove this for 0.7 if (!LoadModule.RequireFile(ref fileName, pathSuffix, needsToExist, needsAbsolutePath, errorOnFailure)) return false; } else return false; // Add the sanitized path if the file actually exists if (needsAbsolutePath) absoluteSanitizationDictionary.Add(pathToTest, fileName); else relativeSanitizationDictionary.Add(pathToTest, fileName); // If the file doesn't exist but its existence is needed, throw an error bool exists = pathToTest == "" || new FileInfo(fileName).Exists || new FileInfo(pathToTest).Exists || new FileInfo(PathToModFile(pathToTest)).Exists || new FileInfo(PathToDefaultFile(pathToTest)).Exists; if (needsToExist && !exists) { string toDisplay = fileName.Contains(DataRoot) ? fileName : new FileInfo(PathToModFile(pathToTest)).FullName; throw new CYFException("Attempted to load " + toDisplay + " from either a mod or default directory, but it was missing in both."); } return true; } } ================================================ FILE: Assets/Scripts/Lua/FileLoader.cs.meta ================================================ fileFormatVersion: 2 guid: 96f980fdf49d1b64eab18dcd0f6c45ac timeCreated: 1446849472 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/LuaScriptBinder.cs ================================================ using System; using System.Collections.Generic; using MoonSharp.Interpreter; using MoonSharp.Interpreter.Loaders; using UnityEngine; using Object = UnityEngine.Object; internal class LuaTextManagerDescriptor : MoonSharp.Interpreter.Interop.StandardUserDataDescriptor { public LuaTextManagerDescriptor(Type type, InteropAccessMode accessMode) : base(type, accessMode) { } public override string AsString(object obj) { return "LuaTextManager"; } } /// /// Takes care of creating objects with globally bound functions. /// Doubles as a dictionary for the SetGlobal/GetGlobal functions attached to these scripts. /// Is also used to store global variables from the game, to be accessed from Lua scripts. /// public static class LuaScriptBinder { private static Dictionary battleGlobals = new Dictionary(); private static Dictionary sessionGlobals = new Dictionary(); private static Dictionary permanentGlobals = new Dictionary(); private static readonly MusicManager mgr = new MusicManager(); private static readonly NewMusicManager newmgr = new NewMusicManager(); /// /// Registers C# types with MoonSharp so we can bind them to Lua scripts later. /// static LuaScriptBinder() { // Battle bindings UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(new LuaTextManagerDescriptor(typeof(LuaTextManager), InteropAccessMode.Default)); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); // Overworld bindings UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); } /// /// Generates Script object with globally defined functions and objects bound, and the os/io/file modules taken out. /// /// Script object for use within Unitale public static Script BindScript() { Script script = new Script(CoreModules.Preset_Complete ^ CoreModules.IO ^ CoreModules.OS_System) { Options = { ScriptLoader = new FileSystemScriptLoader() } }; // library support ((ScriptLoaderBase)script.Options.ScriptLoader).ModulePaths = new[] { FileLoader.PathToModFile("Lua/?.lua"), FileLoader.PathToDefaultFile("Lua/?.lua"), FileLoader.PathToModFile("Lua/Libraries/?.lua"), FileLoader.PathToDefaultFile("Lua/Libraries/?.lua") }; // separate function bindings script.Globals["SetGlobal"] = (Action)SetBattleGlobal; script.Globals["GetGlobal"] = (Func)GetBattleGlobal; script.Globals["SetRealGlobal"] = (Action)SetSessionGlobal; script.Globals["GetRealGlobal"] = (Func)GetSessionGlobal; script.Globals["SetAlMightyGlobal"] = (Action)SetPermanentGlobal; script.Globals["GetAlMightyGlobal"] = (Func)GetPermanentGlobal; script.Globals["isCYF"] = true; script.Globals["isRetro"] = GlobalControls.retroMode; script.Globals["safe"] = ControlPanel.instance.Safe; #if UNITY_STANDALONE_WIN || UNITY_EDITOR_WIN script.Globals["windows"] = true; #else script.Globals["windows"] = false; #endif script.Globals["UnloadSprite"] = (Action)SpriteRegistry.Unload; script.Globals["CYFversion"] = GlobalControls.CYFversion; script.Globals["LTSversion"] = GlobalControls.LTSversion; if (!UnitaleUtil.IsOverworld) { script.Globals["CreateSprite"] = (Func)SpriteUtil.MakeIngameSprite; script.Globals["CreateLayer"] = (Func)SpriteUtil.CreateLayer; script.Globals["CreateProjectileLayer"] = (Action)SpriteUtil.CreateProjectileLayer; script.Globals["SetFrameBasedMovement"] = (Action)SetFrameBasedMovement; script.Globals["SetAction"] = (Action)SetAction; script.Globals["SetPPCollision"] = (Action)SetPPCollision; script.Globals["AllowPlayerDef"] = (Action)AllowPlayerDef; script.Globals["CreateText"] = (Func)CreateText; script.Globals["CreateBar"] = (Func)LifeBarController.Create; script.Globals["CreateBarWithSprites"] = (Func)LifeBarController.Create; script.Globals["GetCurrentState"] = (Func)GetState; script.Globals["BattleDialog"] = (Action)EnemyEncounter.BattleDialog; script.Globals["BattleDialogue"] = (Action)EnemyEncounter.BattleDialog; script.Globals["CreateState"] = (Action)UIController.CreateNewUIState; if (EnemyEncounter.doNotGivePreviousEncounterToSelf) EnemyEncounter.doNotGivePreviousEncounterToSelf = false; else script.Globals["Encounter"] = EnemyEncounter.script; DynValue PlayerStatus = UserData.Create(PlayerController.luaStatus); script.Globals.Set("Player", PlayerStatus); DynValue ArenaStatus = UserData.Create(ArenaManager.luaStatus); script.Globals.Set("Arena", ArenaStatus); DynValue LuaUI = UserData.Create(new LuaPlayerUI()); script.Globals.Set("UI", LuaUI); } else if (!GlobalControls.isInShop) { try { DynValue PlayerOW = UserData.Create(EventManager.instance.luaPlayerOw); script.Globals.Set("FPlayer", PlayerOW); DynValue EventOW = UserData.Create(EventManager.instance.luaEventOw); script.Globals.Set("FEvent", EventOW); DynValue GeneralOW = UserData.Create(EventManager.instance.luaGeneralOw); script.Globals.Set("FGeneral", GeneralOW); DynValue InventoryOW = UserData.Create(EventManager.instance.luaInventoryOw); script.Globals.Set("FInventory", InventoryOW); DynValue ScreenOW = UserData.Create(EventManager.instance.luaScreenOw); script.Globals.Set("FScreen", ScreenOW); DynValue MapOW = UserData.Create(EventManager.instance.luaMapOw); script.Globals.Set("FMap", MapOW); } catch { /* ignored */ } } script.Globals["DEBUG"] = (Action)UnitaleUtil.WriteInLogAndDebugger; script.Globals["EnableDebugger"] = (Action)EnableDebugger; // clr bindings DynValue MusicMgr = UserData.Create(mgr); script.Globals.Set("Audio", MusicMgr); DynValue NewMusicMgr = UserData.Create(newmgr); script.Globals.Set("NewAudio", NewMusicMgr); // What? Why? bool emptyInventory = false; if (Inventory.inventory.Count == 0) { Inventory.inventory.Add(new UnderItem("Testing Dog")); emptyInventory = true; } DynValue inv = UserData.Create(Inventory.luaInventory); script.Globals.Set("Inventory", inv); if (emptyInventory) Inventory.inventory.Clear(); DynValue InputMgr = UserData.Create(GlobalControls.luaInput); script.Globals.Set("Input", InputMgr); DynValue Win = UserData.Create(new Misc()); script.Globals.Set("Misc", Win); DynValue TimeInfo = UserData.Create(new LuaUnityTime()); script.Globals.Set("Time", TimeInfo); DynValue DiscordMgr = UserData.Create(new LuaDiscord()); script.Globals.Set("Discord", DiscordMgr); return script; } private delegate TResult Func(T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg5); private delegate TResult Func(T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg, T6 arg6); public static string GetState() { try { return (UIController.instance.frozenState != "PAUSE") ? UIController.instance.frozenState : UIController.instance.state; } catch { return "NONE (error)"; } } public static DynValue GetBattleGlobal(string key) { return GetGeneralGlobal(battleGlobals, "GetGlobal", key); } public static void SetBattleGlobal(string key, DynValue value) { SetGeneralGlobal(battleGlobals, "SetGlobal", key, value); } public static DynValue GetSessionGlobal(string key) { return GetGeneralGlobal(sessionGlobals, "GetRealGlobal", key); } public static void SetSessionGlobal(string key, DynValue value) { SetGeneralGlobal(sessionGlobals, "SetRealGlobal", key, value); } public static DynValue GetPermanentGlobal(string key) { return GetGeneralGlobal(permanentGlobals, "GetAlMightyGlobal", key); } public static void SetPermanentGlobal(string key, DynValue value) { SetPermanentGlobal(key, value, true); } public static void SetPermanentGlobal(string key, DynValue value, bool reload) { if (value.Type != DataType.Number && value.Type != DataType.String && value.Type != DataType.Boolean && value.Type != DataType.Nil) { UnitaleUtil.WriteInLogAndDebugger("SetAlMightyGlobal: The value \"" + key + "\" can't be saved as permanent data because it is a " + value.Type.ToString().ToLower() + "."); return; } SetGeneralGlobal(permanentGlobals, "SetAlMightyGlobal", key, value); if (reload) SaveLoad.SavePermanentGlobals(key); } private static DynValue GetGeneralGlobal(Dictionary dict, string funcName, string key) { if (dict == null || key == null) throw new CYFException(funcName + ": The first argument (the index) is nil.\n\nSee the documentation for proper usage."); if (!dict.ContainsKey(key)) return null; if (dict[key].Type != DataType.Table) return dict[key]; // Due to how MoonSharp tables require an owner, we have to create an entirely new table if we want to work with it in other scripts. DynValue t = DynValue.NewTable(new Table(null)); foreach (TablePair pair in dict[key].Table.Pairs) t.Table.Set(pair.Key, pair.Value); return t; } private static void SetGeneralGlobal(Dictionary dict, string funcName, string key, DynValue value) { if (dict == null || key == null) throw new CYFException(funcName + ": The first argument (the index) is nil.\n\nSee the documentation for proper usage."); if (dict.ContainsKey(key)) dict.Remove(key); dict.Add(key, value); } /// /// Clears the global dictionary. Used in the reset functionality, as everything is reinitialized. /// public static void ClearBattleGlobals() { battleGlobals.Clear(); } public static void ClearSessionGlobals() { sessionGlobals.Clear(); } public static void ClearPermanentGlobals() { permanentGlobals.Clear(); SaveLoad.SavePermanentGlobals(); } public static void ClearVariables() { ClearSessionGlobals(); // Battle bindings UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(new LuaTextManagerDescriptor(typeof(LuaTextManager), InteropAccessMode.Default)); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); // Overworld bindings UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); UserData.RegisterType(); } /// /// Returns this script's dictionaries /// /// public static Dictionary GetAllBattleGlobals() { return battleGlobals; } public static Dictionary GetAllSessionGlobals() { return sessionGlobals; } public static Dictionary GetAllPermanentGlobals() { return permanentGlobals; } /// /// Replaces the current dictionary with the given one. /// /!\ THIS ERASES THE CURRENT DICTIONARY /!\ /// /// public static void SetAllBattleGlobals(Dictionary newDict) { battleGlobals = newDict; } public static void SetAllSessionGlobals(Dictionary newDict) { sessionGlobals = newDict; } public static void SetAllPermanentGlobals(Dictionary newDict) { permanentGlobals = newDict; } /// /// Removes one or several keys from the dictionaries. /// /// public static void RemoveBattleGlobal(string str) { battleGlobals.Remove(str); } public static void RemoveBattleGlobals(List list) { foreach (string str in list) battleGlobals.Remove(str); } public static void RemoveBattleGlobals(string[] strs) { foreach (string str in strs) battleGlobals.Remove(str); } public static void RemoveSessionGlobal(string str) { sessionGlobals.Remove(str); } public static void RemoveSessionGlobals(List list) { foreach (string str in list) sessionGlobals.Remove(str); } public static void RemoveSessionGlobals(string[] strs) { foreach (string str in strs) sessionGlobals.Remove(str); } public static void RemovePermanentGlobal(string str) { permanentGlobals.Remove(str); } public static void RemovePermanentGlobals(List list) { foreach (string str in list) permanentGlobals.Remove(str); } public static void RemovePermanentGlobals(string[] strs) { foreach (string str in strs) permanentGlobals.Remove(str); } /// /// Returns a list that contains all keys that contains the string given in argument. /// /// /// public static List GetKeysWithString(string str) { List list = new List(); foreach (string key in sessionGlobals.Keys) if (key.Contains(str)) list.Add(key); return list; } public static void CopySessionGlobalsToBattleGlobals() { sessionGlobals["CYFSwitch"] = DynValue.NewBoolean(true); foreach (string key in sessionGlobals.Keys) { DynValue temp; sessionGlobals.TryGetValue(key, out temp); SetBattleGlobal(key, temp); } } public static void SetFrameBasedMovement(bool b) { ControlPanel.instance.FrameBasedMovement = b; } public static void SetAction(string action) { try { UIController.instance.forcedAction = (UIController.Actions)Enum.Parse(typeof(UIController.Actions), action, true); if (UIController.instance.forcedAction != UIController.Actions.NONE) UIController.instance.MovePlayerToAction(UIController.instance.forcedAction); } catch { throw new CYFException("SetAction() can only take \"FIGHT\", \"ACT\", \"ITEM\" or \"MERCY\", but you entered \"" + action + "\"."); } } public static void SetPPCollision(bool b) { ProjectileController.globalPixelPerfectCollision = b; foreach (LuaProjectile p in GameObject.Find("Canvas").GetComponentsInChildren(true)) if (!p.ppchanged) p.ppcollision = b; } public static void AllowPlayerDef(bool b) { PlayerController.allowplayerdef = b; } public static void SetPPAlphaLimit(float f) { if (f < 0 || f > 1) UnitaleUtil.DisplayLuaError("Pixel-Perfect alpha limit", "The alpha limit should be between 0 and 1."); else ControlPanel.instance.MinimumAlpha = f; } public static LuaTextManager CreateText(Script scr, DynValue text, DynValue position, int textWidth, string layer = "BelowPlayer", int bubbleHeight = -1) { // Check if the arguments are what they should be if (text == null || (text.Type != DataType.Table && text.Type != DataType.String)) throw new CYFException("CreateText: The text argument must be a non-empty table of strings or a simple string."); if (position == null || position.Type != DataType.Table || position.Table.Get(1).Type != DataType.Number || position.Table.Get(2).Type != DataType.Number) throw new CYFException("CreateText: The position argument must be a non-empty table of two numbers."); GameObject go = Object.Instantiate(Resources.Load("Prefabs/CstmTxtContainer")); LuaTextManager luatm = go.GetComponentInChildren(); luatm.MoveToAbs((float)position.Table.Get(1).Number, (float)position.Table.Get(2).Number); UnitaleUtil.GetChildPerName(go.transform, "BubbleContainer").GetComponent().pivot = new Vector2(0, 1); UnitaleUtil.GetChildPerName(go.transform, "BubbleContainer").GetComponent().localPosition = new Vector2(-12, 8); UnitaleUtil.GetChildPerName(go.transform, "BubbleContainer").GetComponent().sizeDelta = new Vector2(textWidth + 20, 100); //Used to set the borders UnitaleUtil.GetChildPerName(go.transform, "BackHorz").GetComponent().sizeDelta = new Vector2(textWidth + 20, 100 - 20 * 2); //BackHorz UnitaleUtil.GetChildPerName(go.transform, "BackVert").GetComponent().sizeDelta = new Vector2(textWidth - 20, 100); //BackVert UnitaleUtil.GetChildPerName(go.transform, "CenterHorz").GetComponent().sizeDelta = new Vector2(textWidth + 16, 96 - 16 * 2); //CenterHorz UnitaleUtil.GetChildPerName(go.transform, "CenterVert").GetComponent().sizeDelta = new Vector2(textWidth - 16, 96); //CenterVert luatm.Move(0, 0); foreach (ScriptWrapper scrWrap in ScriptWrapper.instances) { if (scrWrap.script != scr) continue; luatm.SetCaller(scrWrap); break; } // Layers don't exist in the overworld, so we don't set it if (!UnitaleUtil.IsOverworld || GlobalControls.isInShop) luatm.layer = layer; else luatm.layer = (layer == "BelowPlayer" ? "Default" : layer); // Converts the text argument into a table if it's a simple string text = text.Type == DataType.String ? DynValue.NewTable(scr, text) : text; ////////////////////////////////////////// /////////// LATE START SETTER ////////// ////////////////////////////////////////// // Text objects' Late Start will be disabled if the first line of text contains [instant] before any regular characters bool enableLateStart = true; // if we've made it this far, then the text is valid. // so, let's scan the first line of text for [instant] string firstLine = text.Table.Get(1).String; // if [instant] or [instant:allowcommand] is found, check for the earliest match, and whether it is at the beginning if (firstLine.IndexOf("[instant]", StringComparison.OrdinalIgnoreCase) > -1 || firstLine.IndexOf("[instant:allowcommand]", StringComparison.OrdinalIgnoreCase) > -1) { // determine whether [instant] or [instant:allowcommand] is first string testFor = "[instant]"; if (firstLine.IndexOf("[instant:allowcommand]", StringComparison.OrdinalIgnoreCase) > -1 && firstLine.IndexOf("[instant:allowcommand]", StringComparison.OrdinalIgnoreCase) < firstLine.IndexOf("[instant]", StringComparison.OrdinalIgnoreCase) || firstLine.IndexOf("[instant]", StringComparison.OrdinalIgnoreCase) == -1) testFor = "[instant:allowcommand]"; // grab all of the text that comes before the matched command string precedingText = firstLine.Substring(0, firstLine.IndexOf(testFor, StringComparison.OrdinalIgnoreCase)); // remove all commands other than the matched command from this variable while (precedingText.IndexOf('[') > -1) { int i = 0; if (UnitaleUtil.ParseCommandInline(precedingText, ref i) == null) break; precedingText = precedingText.Replace(precedingText.Substring(0, i + 1), ""); } // if the length of the remaining string is 0, then disable late start! if (precedingText.Length == 0) enableLateStart = false; } ////////////////////////////////////////// /////////// INITIAL FONT SETTER ////////// ////////////////////////////////////////// // If the first line of text has [font] at the beginning, use it initially! if (firstLine.IndexOf("[font:", StringComparison.OrdinalIgnoreCase) > -1 && firstLine.Substring(firstLine.IndexOf("[font:", StringComparison.OrdinalIgnoreCase)).IndexOf(']') > -1) { // grab all of the text that comes before the matched command string precedingText = firstLine.Substring(0, firstLine.IndexOf("[font:", StringComparison.OrdinalIgnoreCase)); // remove all commands other than the matched command from this variable while (precedingText.IndexOf('[') > -1) { int i = 0; if (UnitaleUtil.ParseCommandInline(precedingText, ref i) == null) break; precedingText = precedingText.Replace(precedingText.Substring(0, i + 1), ""); } // if the length of the remaining string is 0, then set the font! if (precedingText.Length == 0) { int startCommand = firstLine.IndexOf("[font:", StringComparison.OrdinalIgnoreCase); string command = UnitaleUtil.ParseCommandInline(precedingText, ref startCommand); if (command != null) { string fontPartOne = command.Substring(6); string fontPartTwo = fontPartOne.Substring(0, fontPartOne.IndexOf("]", StringComparison.OrdinalIgnoreCase)); UnderFont font = SpriteFontRegistry.Get(fontPartTwo); if (font == null) throw new CYFException("The font \"" + fontPartTwo + "\" doesn't exist.\nYou should check if you made a typo, or if the font really is in your mod."); luatm.SetFont(font); } else luatm.ResetFont(); } else luatm.ResetFont(); } else luatm.ResetFont(); // Bubble variables luatm.bubble = true; luatm._textMaxWidth = textWidth; luatm.bubbleHeight = bubbleHeight; if (enableLateStart) luatm.lateStartWaiting = true; luatm.SetText(text, false); luatm.ShowBubble(); if (!enableLateStart) return luatm; luatm.LateStart(); return luatm; } public static void SetButtonLayer(string layer) { GameObject obj1 = GameObject.Find("Stats"); GameObject obj2 = GameObject.Find("UIRect"); Transform parent1 = obj1.transform.parent; Transform parent2 = obj2.transform.parent; try { if (layer == "default") { obj1.transform.SetParent(GameObject.Find("Canvas").transform); obj1.transform.SetSiblingIndex(obj1.transform.parent.GetComponentInChildren().transform.GetSiblingIndex() + 1); obj2.transform.SetParent(GameObject.Find("Canvas").transform); obj2.transform.SetSiblingIndex(obj2.transform.parent.GetComponentInChildren().transform.GetSiblingIndex() + 1); } else { obj1.transform.SetParent(GameObject.Find(layer + "Layer").transform); obj2.transform.SetParent(GameObject.Find(layer + "Layer").transform); } } catch { obj1.transform.SetParent(parent1); obj2.transform.SetParent(parent2); } } public static void EnableDebugger(bool state) { if (UserDebugger.instance == null) return; UserDebugger.instance.canShow = state; if (state || !UserDebugger.instance.gameObject.activeSelf) return; UserDebugger.instance.gameObject.SetActive(false); Camera.main.GetComponent().enabled = false; } } ================================================ FILE: Assets/Scripts/Lua/LuaScriptBinder.cs.meta ================================================ fileFormatVersion: 2 guid: ade18da977c26fe4b9e5ad22d28ace1c timeCreated: 1498875627 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/ScriptWrapper.cs ================================================ using UnityEngine; using MoonSharp.Interpreter; using System; using System.Collections.Generic; public class ScriptWrapper { [MoonSharpHidden] public static List instances = new List(); [MoonSharpHidden] public Script script; public string scriptname = "???"; private const string toDoString = "setmetatable({}, {__index=function(t, name) return _getv(name) end}) "; public DynValue this[string key] { get { return GetVar(key); } set { SetVar(key, value); } } public ScriptWrapper(/*bool overworld = false*/) { script = LuaScriptBinder.BindScript(/*overworld*/); Bind("_getv", (Func)GetVar); DoString(toDoString); instances.Add(this); } public void Remove() { instances.Remove(this); } internal DynValue DoString(string source) { DynValue d = DynValue.Nil, res = DynValue.Nil; try { res = script.DoString(source, null, scriptname != "???" ? scriptname : null); } catch (InterpreterException ex) { UnitaleUtil.DisplayLuaError(scriptname, ex.DecoratedMessage == null ? ex.Message : UnitaleUtil.FormatErrorSource(ex.DecoratedMessage, ex.Message) + ex.Message, ex.DoNotDecorateMessage); } catch (Exception ex) { if (GlobalControls.retroMode) return d; if (ex.GetType().ToString() == "System.IndexOutOfRangeException" && ex.StackTrace.StartsWith(" at (wrapper stelemref) object:stelemref (object,intptr,object)" + "\r\n at MoonSharp.Interpreter.DataStructs.FastStack`1[MoonSharp.Interpreter.DynValue].Push")) UnitaleUtil.DisplayLuaError(scriptname, "Possible infinite loop\n\nThis is a " + ex.GetType() + " error.\n\n" + "You almost definitely have an infinite loop in your code. A function tried to call itself infinitely. It could be a normal function or a metatable function." + "\n\n\nFull stracktrace (see CYF output log at " + Application.persistentDataPath + "/output_log.txt):\n\n" + ex.StackTrace); else UnitaleUtil.DisplayLuaError(scriptname, "This is a " + ex.GetType() + " error. Contact a dev and show them this screen, this must be an engine-side error.\n\n" + ex.Message + "\n\n" + ex.StackTrace + "\n"); } return res; } public void SetVar(string key, DynValue value) { if (key == null) throw new CYFException("script.SetVar: The first argument (key) is nil.\n\nSee the documentation for proper usage."); script.Globals.Set(key, MoonSharpUtil.CloneIfRequired(script, value)); } public DynValue GetVar(string key) { return GetVar(null, key); } public DynValue GetVar(Script caller, string key) { if (key == null) throw new CYFException("script.GetVar: The first argument (key) is nil.\n\nSee the documentation for proper usage."); DynValue value = script.Globals.Get(key); if (value == null || value.IsNil()) return DynValue.NewNil(); if (caller == null) return value; return script.Globals[key] != null ? MoonSharpUtil.CloneIfRequired(caller, value) : null; } public DynValue Call(string function, DynValue arg) { return Call(function, new[] { arg }); } public DynValue Call(string function, DynValue[] args = null, bool checkExist = false) { return Call(script.Globals.Get(function), function, args, checkExist); } public DynValue Call(DynValue function, string functionName, DynValue arg, bool checkExist = false) { return Call(function, functionName, new[] { arg }, checkExist); } public DynValue Call(DynValue function, string functionName, DynValue[] args = null, bool checkExist = false) { if ((function.Type & (DataType.ClrFunction | DataType.Function)) == 0) { if (checkExist && !GlobalControls.retroMode) UnitaleUtil.DisplayLuaError(scriptname, "Attempted to call the function \"" + functionName + "\", but it didn't exist."); } else try { return script.Call(function, args ?? new DynValue[0]); } catch (Exception e) { if (args != null && args[0].Type == DataType.Table && args.Length == 1) { DynValue[] argsNew = UnitaleUtil.TableToDynValueArray(args[0].Table); try { return script.Call(function, argsNew); } catch (Exception e2) { if (e2 as InterpreterException != null) e = e2; } } UnitaleUtil.HandleError(scriptname, functionName, e); } return DynValue.Nil; } internal void Bind(string key, object func) { script.Globals[key] = func; } } ================================================ FILE: Assets/Scripts/Lua/ScriptWrapper.cs.meta ================================================ fileFormatVersion: 2 guid: 1c71c6f14040f23478d7091596eed6f3 timeCreated: 1451373856 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/StaticRegistries/AudioClipRegistry.cs ================================================ using System; using System.Collections.Generic; using System.IO; using System.Linq; using UnityEngine; using UnityEngine.Networking; public class AudioClipRegistry { public static Dictionary dict = new Dictionary(); private static readonly string[] extensions = { ".ogg", ".wav" }; // Note: also requires support from FileLoader.getAudioClip(). private static readonly Dictionary dictDefault = new Dictionary(); private static readonly Dictionary dictMod = new Dictionary(); public static void Start() { LoadAllFrom(FileLoader.PathToDefaultFile("")); } public static void Set(string key, AudioClip value) { if (dict.ContainsKey(key.ToLower())) dict.Remove(key.ToLower()); dict[key.ToLower()] = value; } private static AudioClip Get(string key, string prefix) { string k = key; key = key.TrimStart('/', '\\'); string oggKey = key + (key.ToLower().EndsWith(".ogg") ? "" : ".ogg"); string wavKey = key + (key.ToLower().EndsWith(".wav") ? "" : ".wav"); if (!FileLoader.SanitizePath(ref oggKey, prefix, true, false, false)) { FileLoader.SanitizePath(ref wavKey, prefix, true, false, !GlobalControls.retroMode); key = wavKey; } else key = oggKey; string lowerKey = key.ToLower(); return dict.ContainsKey(lowerKey) ? dict[lowerKey] : TryLoad(k, key, prefix); } public static AudioClip GetVoice(string key) { if (key.Length >= 14 && key.Substring(0, 14).ToLower() == "sounds/voices/") key = key.Substring(14); return Get(key, "Sounds/Voices/"); } public static AudioClip GetSound(string key) { key = (string)MusicManager.hiddenDictionary[key] ?? key; if (key.Length >= 7 && key.Substring(0, 7).ToLower() == "sounds/") key = key.Substring(7); return Get(key, "Sounds/"); } public static AudioClip GetMusic(string key) { if (key.Length >= 6 && key.Substring(0, 6).ToLower() == "audio/") key = key.Substring(6); return Get(key, "Audio/"); } public static AudioClip TryLoad(string origKey, string key, string prefix) { string lowerKey = key.ToLower(); if (dictMod.ContainsKey(lowerKey)) dict[lowerKey] = GetAudioClip(dictMod[lowerKey].FullName); else if (dictDefault.ContainsKey(lowerKey)) dict[lowerKey] = GetAudioClip(dictDefault[lowerKey].FullName); else { AudioClip audio = TryFetchFromMod(origKey, prefix + key); if (audio == null) audio = TryFetchFromDefault(origKey, prefix + key); if (audio == null) { UnitaleUtil.Warn("The audio file \"" + origKey + "\" doesn't exist."); return null; } dict[lowerKey] = audio; } return dict[lowerKey]; } private static AudioClip TryFetchFromDefault(string origKey, string key) { FileInfo tryF = new FileInfo(Path.Combine(FileLoader.PathToDefaultFile(""), key)); if (!tryF.Exists) return null; dictDefault[key] = tryF; dict[key] = GetAudioClip(tryF.FullName); return dict[key]; } private static AudioClip TryFetchFromMod(string origKey, string key) { FileInfo tryF = new FileInfo(Path.Combine(FileLoader.PathToModFile(""), key)); if (!tryF.Exists) return null; dictMod[key] = tryF; dict[key] = GetAudioClip(tryF.FullName); return dict[key]; } public static void Init() { LoadAllFrom(FileLoader.PathToModFile(""), true); } private static void LoadAllFrom(string directoryPath, bool mod = false) { dict.Clear(); DirectoryInfo dInfo = new DirectoryInfo(directoryPath); if (!dInfo.Exists) { UnitaleUtil.DisplayLuaError("mod loading", "You tried to load the mod \"" + StaticInits.MODFOLDER + "\" but it can't be found.\nAre you sure it exists?"); throw new CYFException("mod loading"); } FileInfo[] fInfo = dInfo.GetFiles("*.*", SearchOption.AllDirectories).Where(file => extensions.Contains(file.Extension)).ToArray(); if (mod) { dictMod.Clear(); foreach (FileInfo file in fInfo) { string k = file.FullName.Substring(directoryPath.Length + 1); FileLoader.SanitizePath(ref k, ""); dictMod[k.ToLower()] = file; } } else { dictDefault.Clear(); foreach (FileInfo file in fInfo) { string k = file.FullName.Substring(directoryPath.Length + 1); FileLoader.SanitizePath(ref k, ""); dictDefault[k.ToLower()] = file; } } } /// /// Get an AudioClip at the given full path. Attempts to retrieve it from the AudioClipRegistry first by using folderRoot to extract the clip's name, otherwise attempts to load from disk. /// /// Full path to a file. /// AudioClip object on successful load, otherwise null. public static AudioClip GetAudioClip(string musicFilePath) { AudioType type; if (musicFilePath.ToLower().EndsWith(".ogg")) type = AudioType.OGGVORBIS; else if (musicFilePath.ToLower().EndsWith(".wav")) type = AudioType.WAV; else return null; UnityWebRequest www = UnityWebRequestMultimedia.GetAudioClip(new Uri(musicFilePath).AbsoluteUri.Replace("+", "%2B"), type); www.SendWebRequest(); while (!www.isDone) { } // hold up a bit while it's loading; delay isn't noticeable and loading will fail otherwise AudioClip music = DownloadHandlerAudioClip.GetContent(www); music.name = musicFilePath; music.LoadAudioData(); Set(musicFilePath, music); return music; } } ================================================ FILE: Assets/Scripts/Lua/StaticRegistries/AudioClipRegistry.cs.meta ================================================ fileFormatVersion: 2 guid: 24921cc893667d04ab40717ccf60d77f timeCreated: 1447798554 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/StaticRegistries/ShaderRegistry.cs ================================================ using System; using System.IO; using System.Linq; using System.Collections.Generic; using UnityEngine; using UnityEngine.Networking; // See the comments above retrieveAssetBundle public static class ShaderRegistry { public static Material UI_DEFAULT_MATERIAL; private static readonly Dictionary materialsDefault = new Dictionary(); private static readonly Dictionary materialsMod = new Dictionary(); private static readonly Dictionary dictDefault = new Dictionary(); private static readonly Dictionary dictMod = new Dictionary(); private static readonly string OSType = Misc.OSType.ToLower(); // Load all default AssetBundles into memory one time, and never unload them // (except when the overworld gets restarted or whatnot) public static void Start() { UI_DEFAULT_MATERIAL = new Material(Shader.Find("UI/Default")); LoadAllFrom(FileLoader.PathToDefaultFile("Shaders"), false); } // Retrieve a shader from a loaded AssetBundle public static Material Get(string bundle, string key) { string bundleL = bundle.ToLower(); string keyL = key.ToLower(); if (dictMod.ContainsKey(bundleL)) return materialsMod.ContainsKey(bundleL + keyL) ? materialsMod[bundleL + keyL] : TryLoad(bundleL, keyL, true, bundle, key); if (dictDefault.ContainsKey(bundleL)) return materialsDefault.ContainsKey(bundleL + keyL) ? materialsDefault[bundleL + keyL] : TryLoad(bundleL, keyL, false, bundle, key); throw new CYFException("Shader AssetBundle \"" + bundle + "\" could not be found in a mod or default directory."); } // Creates a new Material with an extracted shader private static Material TryLoad(string bundleLower, string keyLower, bool mod, string bundleName, string key) { AssetBundle bundle = mod ? dictMod[bundleLower] : dictDefault[bundleLower]; if (!bundle.Contains(keyLower)) throw new CYFException("Shader AssetBundle \"" + bundleName + "\" does not contain shader \"" + key + "\"."); Shader shade = bundle.LoadAsset(keyLower) as Shader; if (shade != null && !shade.isSupported) throw new CYFException("The shader \"" + key + "\" is not supported. It might not be suited for your OS, or this might be a problem with the shader itself."); Material mat = new Material(shade); if (mod) materialsMod[bundleLower + keyLower] = mat; else materialsDefault[bundleLower + keyLower] = mat; return mat; } // Unloads previous mod-specific Materials and opens AssetBundles for the new mod if applicable public static void Init() { materialsMod.Clear(); LoadAllFrom(FileLoader.PathToModFile("Shaders"), true); if (Camera.main.GetComponent() && CameraShader.luashader != null) CameraShader.luashader.Revert(); } // Opens all AssetBundles in a directory and stores them private static void LoadAllFrom(string directoryPath, bool mod) { DirectoryInfo shaderFolder = new DirectoryInfo(directoryPath); if (!shaderFolder.Exists) return; DirectoryInfo[] shaderFolderContents = shaderFolder.GetDirectories("*", SearchOption.TopDirectoryOnly); List shaderBundles = shaderFolderContents.Select(d => d.GetFiles("*.*", SearchOption.AllDirectories).Where(file => Path.GetExtension(file.Name) == "").ToArray()) .Select(localShaders => localShaders.Single(s => s.Name == OSType)) .Where(OSSpecificBundle => OSSpecificBundle != null).ToList(); if (mod) { foreach (KeyValuePair pair in dictMod) try { pair.Value.Unload(true); } catch { /* ignored */ } dictMod.Clear(); foreach (FileInfo file in shaderBundles) { DirectoryInfo parent = file.Directory; if (parent != null) dictMod[parent.Name] = RetrieveAssetBundle(file.FullName); } } else { foreach (KeyValuePair pair in dictDefault) try { pair.Value.Unload(true); } catch { /* ignored */ } dictDefault.Clear(); foreach (FileInfo file in shaderBundles) { DirectoryInfo parent = file.Directory; if (parent == null) continue; string bundle = parent.Name; string bundleL = bundle.ToLower(); dictDefault[bundleL] = RetrieveAssetBundle(file.FullName); // Fill up dict with Default Materials string[] names = dictDefault[bundleL].GetAllAssetNames(); // GetAllAssetNames returns "Assets/Editor/Shaders/myShader.shader" instead of just "myShader" // The default shaders have no subfolders, so we can safely just trim the string to everything after the last slash, and remove the ".shader" foreach (string key in names) { string[] bits = key.Split('/'); string newKey = bits[bits.Length - 1].Replace(".shader", ""); string keyL = newKey.ToLower(); materialsDefault[bundleL + newKey] = TryLoad(bundleL, keyL, false, bundle, newKey); } } } } // NOTE: According to this guide (https://blogs.unity3d.com/2020/04/09/learn-to-save-memory-usage-by-improving-the-way-you-use-assetbundles/) // using AssetBundle.LoadFromFile (and LoadFromFileAsync) is only recommended when you intend to take out a lot of assets at once, or continually. // That is very not the goal for shaders in CYF, especially not Default shaders. // As such, instead of using AssetBundle.LoadFromFile, I'm using the page's recommended alternative, UnityWebRequestAssetBundle.GetAssetBundle. // If you wish to use the AssetBundle.LoadFromFile approach instead, uncomment the first line and comment the rest. private static AssetBundle RetrieveAssetBundle(string fullPath) { //return AssetBundle.LoadFromFile(fullPath); try { UnityWebRequest uwr = UnityWebRequestAssetBundle.GetAssetBundle(new Uri(fullPath).AbsoluteUri.Replace("+", "%2B")); uwr.SendWebRequest(); while (!uwr.isDone) { } // hold up a bit while it's loading; delay isn't noticeable and loading will fail otherwise AssetBundle content = DownloadHandlerAssetBundle.GetContent(uwr); if (content == null) throw new CYFException("Error while loading the shader \"" + fullPath + "\".\n\nIt's likely that you have two identical shader AssetBundles loaded at once."); if (uwr.error != null) throw new CYFException(uwr.error); return content; } catch (CYFException e) { UnitaleUtil.DisplayLuaError("loading a shader", e.Message); } catch (Exception e) { UnitaleUtil.DisplayLuaError("loading a shader", "This is a " + e.GetType() + " error. Please show this screen to a developer.\n\n" + e.Message + "\n\n" + e.StackTrace); } return null; } } ================================================ FILE: Assets/Scripts/Lua/StaticRegistries/ShaderRegistry.cs.meta ================================================ fileFormatVersion: 2 guid: bf8a3389126e3e34d8925dc98b81fd65 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/StaticRegistries/SpriteFontRegistry.cs ================================================ using System.Collections.Generic; using System.IO; using System.Xml; using UnityEngine; public static class SpriteFontRegistry { public const string UI_DEFAULT_NAME = "uidialog"; public const string UI_DAMAGETEXT_NAME = "uidamagetext"; public const string UI_MONSTERTEXT_NAME = "monster"; public const string UI_SMALLTEXT_NAME = "uibattlesmall"; public static GameObject LETTER_OBJECT = Resources.Load("Prefabs/letter"); public static GameObject BUBBLE_OBJECT = Resources.Load("Prefabs/DialogBubble"); private static readonly Dictionary dictDefault = new Dictionary(); private static readonly Dictionary dictMod = new Dictionary(); private static readonly Dictionary dict = new Dictionary(); public static void Start() { LoadAllFrom(FileLoader.PathToDefaultFile("Sprites/UI/Fonts")); } public static UnderFont Get(string key) { string k = key; key = key.TrimStart('/', '\\') + (key.ToLower().EndsWith(".png") ? "" : ".png"); FileLoader.SanitizePath(ref key, "Sprites/UI/Fonts/", false); key = key.ToLower(); return dict.ContainsKey(key) ? dict[key] : TryLoad(k, key); } public static UnderFont TryLoad(string origKey, string key) { if (!dictMod.ContainsKey(key) && !dictDefault.ContainsKey(key)) return TryFetchFromMod(origKey, key) ?? TryFetchFromDefault(origKey, key); dict[key] = GetUnderFont(origKey); return dict[key]; } private static UnderFont TryFetchFromDefault(string origKey, string key) { FileInfo tryF = new FileInfo(Path.Combine(FileLoader.PathToDefaultFile("Sprites/UI/Fonts/"), origKey) + (origKey.ToLower().EndsWith(".png") ? "" : ".png")); if (!tryF.Exists) return null; dictDefault[key] = tryF; dict[key] = GetUnderFont(origKey); return dict[key]; } private static UnderFont TryFetchFromMod(string origKey, string key) { FileInfo tryF = new FileInfo(Path.Combine(FileLoader.PathToModFile("Sprites/UI/Fonts/"), origKey.TrimStart('/')) + (origKey.ToLower().EndsWith(".png") ? "" : ".png")); if (!tryF.Exists) return null; dictMod[key] = tryF; dict[key] = GetUnderFont(origKey); return dict[key]; } public static void Init() { LoadAllFrom(FileLoader.PathToModFile("Sprites/UI/Fonts"), true); } private static void LoadAllFrom(string directoryPath, bool mod = false) { dict.Clear(); DirectoryInfo dInfo = new DirectoryInfo(directoryPath); if (!dInfo.Exists) return; FileInfo[] fInfo = dInfo.GetFiles("*.png", SearchOption.TopDirectoryOnly); if (mod) { dictMod.Clear(); foreach (FileInfo file in fInfo) { string k = file.FullName; FileLoader.SanitizePath(ref k, "Sprites/UI/Fonts/"); dictMod[k.ToLower()] = file; } } else { dictDefault.Clear(); foreach (FileInfo file in fInfo) { string k = file.FullName; FileLoader.SanitizePath(ref k, "Sprites/UI/Fonts/"); dictDefault[k.ToLower()] = file; } } } private static UnderFont GetUnderFont(string fontName) { XmlDocument xml = new XmlDocument(); string xmlPath = fontName + ".xml"; if (!FileLoader.SanitizePath(ref xmlPath, "Sprites/UI/Fonts/", true, true)) return null; try { xml.Load(xmlPath); } catch (XmlException ex) { UnitaleUtil.DisplayLuaError("Instanciating a font", "An error was encountered while loading the font \"" + fontName + "\":\n\n" + ex.Message); return null; } if (xml["font"] == null) { UnitaleUtil.DisplayLuaError("Instanciating a font", "The font '" + fontName + "' doesn't have a font element at its root."); return null; } Dictionary fontMap = LoadBuiltInFont(xml["font"]["spritesheet"], fontName + ".png"); UnderFont underfont; try { underfont = new UnderFont(fontMap, fontName); } catch { UnitaleUtil.DisplayLuaError("Instanciating a font", "The fonts need a space character to compute their line height, and the font '" + fontName + "' doesn't have one."); return null; } if (xml["font"]["voice"] != null) { underfont.Sound = AudioClipRegistry.GetVoice(xml["font"]["voice"].InnerText); underfont.SoundName = xml["font"]["voice"].InnerText; } if (xml["font"]["linespacing"] != null) underfont.LineSpacing = ParseUtil.GetFloat(xml["font"]["linespacing"].InnerText); if (xml["font"]["charspacing"] != null) underfont.CharSpacing = ParseUtil.GetFloat(xml["font"]["charspacing"].InnerText); if (xml["font"]["color"] != null) underfont.DefaultColor = ParseUtil.GetColor(xml["font"]["color"].InnerText); return underfont; } private static void AddLetter(Dictionary letters, char letter, Sprite s, string fontPath) { if (letters.ContainsKey(letter)) { UnitaleUtil.DisplayLuaError("", "Error while loading the font " + fontPath + "\n\nThe letter \" " + letter + " \" has been added several times to the font!", true); return; } letters.Add(letter, s); } private static Dictionary LoadBuiltInFont(XmlNode sheetNode, string fontPath) { Sprite[] letterSprites = SpriteUtil.AtlasFromXml(sheetNode, SpriteUtil.FromFile(fontPath, "Sprites/UI/Fonts/")); Dictionary letters = new Dictionary(); foreach (Sprite s in letterSprites) { string name = s.name; if (name.Length == 1) AddLetter(letters, name[0], s, fontPath); else switch (name) { case "slash": AddLetter(letters, '/', s, fontPath); break; case "dot": AddLetter(letters, '.', s, fontPath); break; case "pipe": AddLetter(letters, '|', s, fontPath); break; case "backslash": AddLetter(letters, '\\', s, fontPath); break; case "colon": AddLetter(letters, ':', s, fontPath); break; case "questionmark": AddLetter(letters, '?', s, fontPath); break; case "doublequote": AddLetter(letters, '"', s, fontPath); break; case "asterisk": AddLetter(letters, '*', s, fontPath); break; case "space": AddLetter(letters, ' ', s, fontPath); break; case "lt": AddLetter(letters, '<', s, fontPath); break; case "rt": AddLetter(letters, '>', s, fontPath); break; case "ampersand": AddLetter(letters, '&', s, fontPath); break; } } return letters; } } ================================================ FILE: Assets/Scripts/Lua/StaticRegistries/SpriteFontRegistry.cs.meta ================================================ fileFormatVersion: 2 guid: 7318225c673ea6c4e8b7078c4e65a365 timeCreated: 1498875626 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/StaticRegistries/SpriteRegistry.cs ================================================ using System.Collections.Generic; using System.IO; using UnityEngine; using UnityEngine.UI; public static class SpriteRegistry { private static readonly Dictionary dict = new Dictionary(); public static Image GENERIC_SPRITE_PREFAB = Resources.Load("Prefabs/generic_sprite"); public static Sprite EMPTY_SPRITE; private static readonly Dictionary dictDefault = new Dictionary(); private static readonly Dictionary dictMod = new Dictionary(); public static void Start() { LoadAllFrom(FileLoader.PathToDefaultFile("Sprites")); } public static void Set(string key, Sprite value) { dict[ProcessKey(key)] = value; } public static void Unload(string key) { key = ProcessKey(key); if (dict.ContainsKey(key)) dict.Remove(key); if (dictMod.ContainsKey(key)) dictMod.Remove(key); if (dictDefault.ContainsKey(key)) dictDefault.Remove(key); } public static Sprite Get(string origKey) { origKey += origKey.ToLower().EndsWith(".png") ? "" : ".png"; string key = ProcessKey(origKey); return dict.ContainsKey(key) ? dict[key] : TryLoad(origKey, key); } public static Sprite GetMugshot(string key) { return Get("Mugshots/" + key); } private static Sprite TryLoad(string origKey, string key) { if (dictMod.ContainsKey(key)) dict[key] = SpriteUtil.FromFile(origKey); else if (dictDefault.ContainsKey(key)) dict[key] = SpriteUtil.FromFile(origKey); else return TryFetchFromMod(origKey, key) ?? TryFetchFromDefault(origKey, key); return dict[key]; } private static Sprite TryFetchFromDefault(string origKey, string key) { FileInfo tryF = new FileInfo(Path.Combine(FileLoader.PathToDefaultFile("Sprites"), origKey) + (origKey.ToLower().EndsWith(".png") ? "" : ".png")); if (!tryF.Exists) return null; dictDefault[key] = tryF; dict[key] = SpriteUtil.FromFile(origKey); return dict[key]; } private static Sprite TryFetchFromMod(string origKey, string key) { FileInfo tryF = new FileInfo(Path.Combine(FileLoader.PathToModFile("Sprites"), origKey.TrimStart('/')) + (origKey.ToLower().EndsWith(".png") ? "" : ".png")); if (!tryF.Exists) return null; dictMod[key] = tryF; dict[key] = SpriteUtil.FromFile(origKey); return dict[key]; } public static void Init() { LoadAllFrom(FileLoader.PathToModFile("Sprites"), true); if (EMPTY_SPRITE == null) EMPTY_SPRITE = Get("empty"); } private static void LoadAllFrom(string directoryPath, bool mod = false) { dict.Clear(); DirectoryInfo dInfo = new DirectoryInfo(directoryPath); if (!dInfo.Exists) { UnitaleUtil.DisplayLuaError("mod loading", "You tried to load the mod \"" + StaticInits.MODFOLDER + "\" but it can't be found, or at least its \"Sprites\" folder can't be found.\nAre you sure it exists?"); throw new CYFException("mod loading"); } FileInfo[] fInfoTest = dInfo.GetFiles("*.png", SearchOption.AllDirectories); if (mod) { dictMod.Clear(); foreach (FileInfo file in fInfoTest) dictMod[ProcessKey(file.FullName.Substring(directoryPath.Length + 1))] = file; } else { dictDefault.Clear(); foreach (FileInfo file in fInfoTest) { string key = ProcessKey(file.FullName.Substring(directoryPath.Length + 1)); dictDefault[key] = file; } } } private static string ProcessKey(string key) { key = key.TrimStart('/', '\\') + (key.ToLower().EndsWith(".png") ? "" : ".png"); FileLoader.SanitizePath(ref key, "Sprites/"); return key.ToLower(); } } ================================================ FILE: Assets/Scripts/Lua/StaticRegistries/SpriteRegistry.cs.meta ================================================ fileFormatVersion: 2 guid: 9c133e8a87b90e545ad0714264c47023 timeCreated: 1447519547 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua/StaticRegistries.meta ================================================ fileFormatVersion: 2 guid: cd7955f76f605364b8865b849aba76f3 folderAsset: yes timeCreated: 1450098987 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Lua.meta ================================================ fileFormatVersion: 2 guid: 32e1dcc6437a7004ca243bc4a29a625d folderAsset: yes timeCreated: 1446849465 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Overworld/CYFAnimator.cs ================================================ using System; using UnityEngine; public class CYFAnimator : MonoBehaviour { public int movementDirection = 0; public string beginAnim = "StopDown"; public string specialHeader = ""; private int threeFramePass = 3; private LuaSpriteController sprctrl; private Vector3 lastPos; private bool waitingForLateStart = true; private void OnEnable() { StaticInits.Loaded += LateStart; } private void OnDisable() { StaticInits.Loaded -= LateStart; } [System.Serializable] // Allows the edition of this data in the Unity Editor public struct Anim { public string name; public string anims; public float transitionTime; } public Anim[] anims; private Anim GetAnimPerName(string animName) { foreach (Anim anim in anims) if (anim.name == animName) return anim; return new Anim(); } public bool AnimExists(string animName) { return GetAnimPerName(animName).name == null; } // Use this for initialization public void LateStart() { if (EventManager.instance.spriteControllers.ContainsKey(gameObject.name)) sprctrl = EventManager.instance.spriteControllers[gameObject.name]; else if (gameObject.name == "Player") sprctrl = PlayerOverworld.instance.sprctrl; else { EventManager.instance.ResetEvents(false); if (!EventManager.instance.spriteControllers.ContainsKey(gameObject.name)) throw new CYFException("A CYFAnimator component must be tied to an event, however the GameObject " + gameObject.name + " doesn't seem to have one."); } lastPos = gameObject.transform.position; if (!waitingForLateStart) return; ReplaceAnim(beginAnim); waitingForLateStart = false; } // Update is called once per frame private void Update () { if (waitingForLateStart) return; string animName = specialHeader; if (GetAnimPerName(animName).name == null) { if (gameObject.transform.position != lastPos) { animName += "Moving"; threeFramePass = 0; } else if (threeFramePass < 3) { animName += "Moving"; threeFramePass++; } else animName += "Stop"; int currentDirection = movementDirection; switch (currentDirection) { case 2: animName += "Down"; break; case 4: animName += "Left"; break; case 6: animName += "Right"; break; case 8: animName += "Up"; break; case 0: if (beginAnim.Contains("Up")) animName += "Up"; if (beginAnim.Contains("Right")) animName += "Right"; if (beginAnim.Contains("Left")) animName += "Left"; if (beginAnim.Contains("Down")) animName += "Down"; break; } } lastPos = gameObject.transform.position; if (animName != beginAnim) ReplaceAnim(animName); } private void ReplaceAnim(string animName) { Anim anim = GetAnimPerName(animName); try { sprctrl.SetAnimation(anim.anims.Replace(" ", "").Replace("{", "").Replace("}", "").Split(','), anim.transitionTime); } catch (Exception e) { throw new CYFException("Bad animation for event \"" + gameObject.name + "\", animation \"" + animName + "\":\n\n" + e.Message + "\n" + e.StackTrace); } beginAnim = animName; } } ================================================ FILE: Assets/Scripts/Overworld/CYFAnimator.cs.meta ================================================ fileFormatVersion: 2 guid: 44f4eb1dd5662834c949b35a8b28394c timeCreated: 1493027273 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Overworld/EnterNameScript.cs ================================================ using UnityEngine; using UnityEngine.UI; using UnityEngine.SceneManagement; using System.Linq; using System.Collections; using System.Collections.Generic; public class EnterNameScript : MonoBehaviour { private bool weirdBackspaceShift; private bool isNewGame = true; private bool confirm; private bool hackFirstString; private string choiceLetter = "A", playerName = ""; private readonly Dictionary specialNameDict = new Dictionary(); private readonly string[] ForbiddenNames = { "lukark", "rtl", "rhenaud" }; private string confirmText; public GameObject textObjFolder; public AudioSource uiAudio; public TextManager tmInstr, tmName, tmLettersMaj, tmLettersMin; // Use this for initialization private void Start() { AddToDict(); isNewGame = SaveLoad.savedGame == null; try { GameObject.Find("textframe_border_outer").SetActive(false); } catch { /* ignored */ } tmInstr.SetTextQueue(new[] { new TextMessage((GlobalControls.crate ? "GIV HMI A NAME!!!" : "Name the fallen human."), false, true) }); tmInstr.SetHorizontalSpacing(2); tmName.SetHorizontalSpacing(2); GameObject firstCamera = GameObject.Find("Main Camera"); firstCamera.name = "temp"; if (GameObject.Find("Main Camera")) Destroy(GameObject.Find("Main Camera")); firstCamera.name = "Main Camera"; if (!isNewGame) { playerName = PlayerCharacter.instance.Name; } else { Camera.main.GetComponent().clip = AudioClipRegistry.GetMusic("mus_menu"); Camera.main.GetComponent().Play(); } tmName.SetTextQueue(new[] { new TextMessage(playerName, false, true) }); tmLettersMaj.SetTextQueue(new[] { new TextMessage("[charspacing:52.2][linespacing:-1]ABCDEFG\nHIJKLMN\nOPQRSTU\nVWXYZ", false, true) }); tmLettersMaj.SetEffect(new ShakeEffect(tmLettersMaj)); tmLettersMin.SetTextQueue(new[] { new TextMessage("[charspacing:52.2][linespacing:-1]abcdefg\nhijklmn\nopqrstu\nvwxyz", false, true) }); tmLettersMin.SetEffect(new ShakeEffect(tmLettersMin)); for (int i = 0; i < tmLettersMaj.GetComponentsInChildren().Length; i ++) tmLettersMaj.GetComponentsInChildren()[i].name = tmLettersMaj.GetComponentsInChildren()[i].sprite.name; for (int i = 0; i < tmLettersMin.GetComponentsInChildren().Length; i ++) tmLettersMin.GetComponentsInChildren()[i].name = tmLettersMaj.GetComponentsInChildren()[i].sprite.name.ToLower(); GameObject.Find("A").GetComponent().color = new Color(1, 1, 0, 1); } // Update is called once per frame private void Update() { if (confirm) return; if (!hackFirstString && tmName.transform.childCount != 0 && !isNewGame) { hackFirstString = true; tmName.SetTextQueue(new[] { new TextMessage(playerName, false, true) }); tmName.MoveTo(-calcTotalLength(tmName) / 2, tmName.transform.localPosition.y); } if (GlobalControls.input.Down == ButtonState.PRESSED) { switch (choiceLetter) { case "Quit": setColor("A"); break; case "Backspace": setColor("D"); break; case "Done": setColor("G"); break; case "T": case "U": setColor(choiceLetter[0] + 18); break; case "V": case "W": case "X": case "Y": case "Z": setColor(choiceLetter[0] + 11); break; case "t": case "u": setColor("Done"); break; case "v": case "w": setColor("Quit"); break; case "x": case "y": case "z": setColor("Backspace"); break; default: setColor(choiceLetter[0] + 7); break; } } else if (GlobalControls.input.Up == ButtonState.PRESSED) { switch (choiceLetter) { case "Quit": setColor("v"); break; case "Backspace": setColor("y"); break; case "Done": setColor("u"); break; case "a": case "b": case "c": case "d": case "e": setColor(choiceLetter[0] - 11); break; case "f": case "g": setColor(choiceLetter[0] - 18); break; case "A": case "B": setColor("Quit"); break; case "C": case "D": case "E": setColor("Backspace"); break; case "F": case "G": setColor("Done"); break; default: setColor(choiceLetter[0] - 7); break; } } else if (GlobalControls.input.Right == ButtonState.PRESSED) { switch (choiceLetter) { case "Quit": setColor("Backspace"); break; case "Backspace": setColor("Done"); break; case "Done": setColor("Quit"); break; case "G": case "N": case "U": case "g": case "n": case "u": setColor(choiceLetter[0] - 6); break; case "Z": case "z": setColor(choiceLetter[0] - 4); break; default: setColor(choiceLetter[0] + 1); break; } } else if (GlobalControls.input.Left == ButtonState.PRESSED) { switch (choiceLetter) { case "Quit": setColor("Done"); break; case "Backspace": setColor("Quit"); break; case "Done": setColor("Backspace"); break; case "A": case "H": case "O": case "a": case "h": case "o": setColor(choiceLetter[0] + 6); break; case "V": case "v": setColor(choiceLetter[0] + 4); break; default: setColor(choiceLetter[0] - 1); break; } } else if (GlobalControls.input.Cancel == ButtonState.PRESSED) { weirdBackspaceShift = true; if (playerName.Length > 0) playerName = playerName.Substring(0, playerName.Length - 1); else weirdBackspaceShift = false; tmName.SetTextQueue(new[] { new TextMessage(playerName, false, true) }); tmName.MoveTo(-calcTotalLength(tmName) / 2, tmName.transform.localPosition.y); } else if (GlobalControls.input.Confirm == ButtonState.PRESSED) { switch (choiceLetter) { case "Quit": GameObject.Find("Main Camera").GetComponent().Stop(); SceneManager.LoadScene("TitleScreen"); break; case "Backspace": { weirdBackspaceShift = true; if (playerName.Length > 0) playerName = playerName.Substring(0, playerName.Length - 1); else weirdBackspaceShift = false; break; } case "Done": { if (playerName.Length > 0) { weirdBackspaceShift = false; confirm = true; specialNameDict.TryGetValue(playerName.ToLower(), out confirmText); StartCoroutine(waitConfirm(ForbiddenNames.Contains(playerName.ToLower()))); textObjFolder.SetActive(false); } break; } default: { if (playerName.Length < 9) playerName += choiceLetter; else playerName = playerName.Substring(0, 8) + choiceLetter; weirdBackspaceShift = false; break; } } tmName.SetTextQueue(new[] { new TextMessage(playerName, false, true) }); tmName.MoveTo(-calcTotalLength(tmName) / 2, tmName.transform.localPosition.y); uiAudio.PlayOneShot(AudioClipRegistry.GetSound("menuconfirm")); return; } else return; uiAudio.PlayOneShot(AudioClipRegistry.GetSound("menumove")); } private void setColor(int a) { setColor(((char)a).ToString()); } private void setColor(string str) { if (choiceLetter.Length != 1) GameObject.Find(choiceLetter).GetComponent().color = new Color(1, 1, 1, 1); else GameObject.Find(choiceLetter).GetComponent().color = new Color(1, 1, 1, 1); choiceLetter = str; if (choiceLetter.Length != 1) GameObject.Find(choiceLetter).GetComponent().color = new Color(1, 1, 0, 1); else GameObject.Find(choiceLetter).GetComponent().color = new Color(1, 1, 0, 1); } private IEnumerator waitConfirm(bool isForbidden = false) { yield return 0; tmInstr.SetTextQueue(new[] { new TextMessage((confirmText ?? (GlobalControls.crate ? "LAL GUD???" : "Is this name correct?")), false, true) }); tmName.SetEffect(new ShakeEffect(tmName)); GameObject.Find("Backspace").GetComponent().enabled = false; tmLettersMaj.gameObject.SetActive(false); tmLettersMin.gameObject.SetActive(false); setColor("Quit"); GameObject.Find("Done").GetComponent().color = new Color(1, 1, 1, isForbidden ? 0 : 1); float diff = calcTotalLength(tmName)*2; float actualX = tmName.transform.localPosition.x, actualY = tmName.transform.localPosition.y; while (GlobalControls.input.Confirm != ButtonState.PRESSED) { if (tmName.transform.localScale.x < 3) { float scale = Mathf.Min(3, tmName.transform.localScale.x + 0.01f); tmName.transform.localScale = new Vector3(scale, scale, 1); tmName.MoveTo(actualX - (tmName.transform.localScale.x - 1) * diff / 2, actualY - (tmName.transform.localScale.x - 1) * diff / 6); } if ((GlobalControls.input.Left == ButtonState.PRESSED || GlobalControls.input.Right == ButtonState.PRESSED) && GameObject.Find("Done").GetComponent().enabled &&!isForbidden) { setColor(choiceLetter == "Quit" ? "Done": "Quit"); uiAudio.PlayOneShot(AudioClipRegistry.GetSound("menumove")); } yield return 0; } uiAudio.PlayOneShot(AudioClipRegistry.GetSound("menuconfirm")); if (choiceLetter == "Quit") { textObjFolder.SetActive(true); confirmText = null; confirm = false; tmName.transform.localScale = new Vector3(1, 1, 1); tmName.SetEffect(null); tmName.SetTextQueue(new[] { new TextMessage(playerName, false, true) }); tmName.MoveTo(-calcTotalLength(tmName)/2, 145); tmInstr.SetTextQueue(new[] { new TextMessage((GlobalControls.crate ? "QWIK QWIK QWIK!!!" : "Name the fallen human."), false, true) }); tmLettersMaj.gameObject.SetActive(true); tmLettersMin.gameObject.SetActive(true); GameObject.Find("Backspace").GetComponent().enabled = true; setColor("Done"); } else { PlayerCharacter.instance.Name = playerName; if (isNewGame) { GameObject.Find("Main Camera").GetComponent().Stop(); GameObject.Find("Main Camera").GetComponent().PlayOneShot(AudioClipRegistry.GetSound("intro_holdup")); SpriteRenderer blank = GameObject.Find("Blank").GetComponent(); while (blank.color.a <= 1) { if (tmName.transform.localScale.x < 3) { float scale = Mathf.Min(3, tmName.transform.localScale.x + 0.01f); tmName.transform.localScale = new Vector3(scale, scale, 1); tmName.MoveTo(actualX - (tmName.transform.localScale.x - 1f) * diff / 2f, actualY - (tmName.transform.localScale.x - 1f) * diff / 6); } blank.color = new Color(blank.color.r, blank.color.g, blank.color.b, blank.color.a + 0.003f); yield return 0; } while (GameObject.Find("Main Camera").GetComponent().isPlaying) yield return 0; UnitaleUtil.ResetOW(); SceneManager.LoadScene("TransitionOverworld"); DiscordControls.StartOW(); } else { SaveLoad.Save(); SceneManager.LoadScene("TitleScreen"); } } } float calcTotalLength(TextManager txtmgr) { int count = 0; float totalWidth = 0; RectTransform[] rts = txtmgr.gameObject.GetComponentsInChildren(); for (int i = 0; i < rts.Length/2; i++) { if (weirdBackspaceShift && i == rts.Length /2 - 1) break; totalWidth += rts[i*2].sizeDelta.x; count++; } totalWidth += txtmgr.hSpacing * count; return totalWidth; } private void AddToDict() { specialNameDict.Add("lukark", "Hey, that's my name!\nDon't copy me."); specialNameDict.Add("rtl", "Still my name, dude."); specialNameDict.Add("rhenao", "The basis name."); specialNameDict.Add("rhenaud", "My real name."); specialNameDict.Add("uduu", "(Broken) The path to victory. Go to\nthe 2nd map. Real name: UDUUL"); specialNameDict.Add("thefail", "(Broken) DO 3 BARREL ROLLS!!!"); specialNameDict.Add("exception", "(Broken) It's me."); specialNameDict.Add("fugitive", "(Broken) *flees*\n/me flees"); specialNameDict.Add("four", "4"); specialNameDict.Add("outbounds", "Go behind that dog!"); specialNameDict.Add("soulless", "They shall fall, one\nafter another."); specialNameDict.Add("notfound", "404"); specialNameDict.Add("404", "Name not found."); specialNameDict.Add("cyf", "The true name.\nCreate Your Frisk FTW!"); specialNameDict.Add("credits", "RhenaudTheLukark and lvkuln.\nThat's it, I think."); specialNameDict.Add("mmmmmmmmm", "You just want to watch\nthe engine burn."); specialNameDict.Add("wwwwwwwww", "You just want to watch\nthe engine burn."); specialNameDict.Add("undertale", "Without this game,\nthis wouldn't exist."); specialNameDict.Add("frisk", "That'll do nothing here."); specialNameDict.Add("chara", "Classic af. Your \"The true name.\"\nis in another castle."); specialNameDict.Add("undyne", "It's not like you'll\nfind her, anyway."); specialNameDict.Add("alphys", "Chances to see\nher: 0%."); specialNameDict.Add("asgore", "Goatdad can't kill\nyou here."); specialNameDict.Add("toriel", "Goatmom can't help\nyou here."); specialNameDict.Add("papyrus", "HAVING MORE THAN\n6 CHARACTERS HELPS!"); specialNameDict.Add("sans", "no bad time for ya."); specialNameDict.Add("asriel", "If that's your\nchoice..."); specialNameDict.Add("flowey", "You sadist."); } } ================================================ FILE: Assets/Scripts/Overworld/EnterNameScript.cs.meta ================================================ fileFormatVersion: 2 guid: 0d40d86c0aa041e4a9cb93f4989d86b3 timeCreated: 1463999854 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Overworld/EventManager.cs ================================================ using System; using System.Collections; using System.Collections.Generic; using System.IO; using System.Linq; using System.Reflection; using MoonSharp.Interpreter; using UnityEngine; using UnityEngine.SceneManagement; using UnityEngine.UI; using Coroutine = UnityEngine.Coroutine; public class EventManager : MonoBehaviour { public static EventManager instance; // The instance of this class, only one EventManager should exist at all times private static int _eventLayer; // The id of the Event Layer public ScriptWrapper script; // The non-coroutine script which is currently being run public List autoDone = new List(); // All auto event pages which have been run public List events = new List(); // This map's events public List initializedEvents = new List(); // All events with an initialization event page which have been initialized public Dictionary eventScripts = new Dictionary(); // Lua scripts loaded for event GameObjects public Dictionary cSharpCoroutines = new Dictionary(); // Coroutines run by usual overworld functions for each event public Dictionary coroutines = new Dictionary(); // Event coroutines currently running public Dictionary spriteControllers = new Dictionary(); // Sprite objects spawned in the overworld private static string _eventCodeFirst, _eventCodeLast; // The internal Lua code loaded into event scripts (prefix and suffix) private TextManager _textManager; // The current TextManager public int actualEventIndex = -1; // ID of the actual event we're running public bool readyToReLaunch; // Used to prevent overworld GameOver errors public bool bgmCoroutine; // Check if the BGM is already fading public bool passPressOnce; // Used in order to prevent Confirm key actions to be run when they shouldn't public bool scriptRunning; // Defines whether a script is being executed or not public bool ScriptRunning { // This value takes in account whether the player can do something or not on top of checking if a script is being executed or not get { return scriptRunning || PlayerOverworld.instance.forceNoAction; } set { scriptRunning = value; } } public bool onceReload; // Reloads all events when a new map is entered public bool fadeOutToMap = true; // Defines whether the next map transition will be instant or not public bool eventsLoading; // True if initialization pages (event page 0) are currently being executed public bool eventsLoaded; // True if all initialization pages (event page 0) have been executed public bool initialized; // True if EventManager has been initialized properly. Might be useless? private readonly Dictionary _boundValueName = new Dictionary(); // Used to generate the prefix and suffix of any event script public LuaPlayerOW luaPlayerOw; // Instance of LuaPlayerOW used to execute event functions public LuaEventOW luaEventOw; // Instance of LuaEventOW used to execute event functions public LuaGeneralOW luaGeneralOw; // Instance of LuaGeneralOW used to execute event functions public LuaInventoryOW luaInventoryOw; // Instance of LuaInventoryOW used to execute event functions public LuaScreenOW luaScreenOw; // Instance of LuaScreenOW used to execute event functions public LuaMapOW luaMapOw; // Instance of LuaMapOW used to execute event functions /// /// Run once when this component is created. /// public void LateStart() { // Get the layer that will interact with our object, here EventLayer _eventLayer = LayerMask.GetMask("EventLayer"); _textManager = GameObject.Find("TextManager OW").GetComponent(); // Create all instances of event function classes and store them if (_boundValueName.Count == 0) { _boundValueName.Add(typeof(LuaEventOW), "Event"); _boundValueName.Add(typeof(LuaPlayerOW), "Player"); _boundValueName.Add(typeof(LuaGeneralOW), "General"); _boundValueName.Add(typeof(LuaInventoryOW), "Inventory"); _boundValueName.Add(typeof(LuaScreenOW), "Screen"); _boundValueName.Add(typeof(LuaMapOW), "Map"); luaPlayerOw = new LuaPlayerOW(); luaEventOw = new LuaEventOW(); luaGeneralOw = new LuaGeneralOW(_textManager); luaInventoryOw = new LuaInventoryOW(); luaScreenOw = new LuaScreenOW(); luaMapOw = new LuaMapOW(); } instance = this; } /// /// Run whenever this Component is enabled. /// private void OnEnable() { LuaEventOW.StCoroutine += StCoroutine; LuaPlayerOW.StCoroutine += StCoroutine; LuaGeneralOW.StCoroutine += StCoroutine; LuaInventoryOW.StCoroutine += StCoroutine; LuaScreenOW.StCoroutine += StCoroutine; LuaMapOW.StCoroutine += StCoroutine; StaticInits.Loaded += AfterLoad; } /// /// Run whenever this Component is disabled. /// private void OnDisable() { LuaEventOW.StCoroutine -= StCoroutine; LuaPlayerOW.StCoroutine -= StCoroutine; LuaGeneralOW.StCoroutine -= StCoroutine; LuaInventoryOW.StCoroutine -= StCoroutine; LuaScreenOW.StCoroutine -= StCoroutine; LuaMapOW.StCoroutine -= StCoroutine; StaticInits.Loaded -= AfterLoad; } /// /// Run whenever the map's mod is loaded. /// It resets all current events, initializes all events with an initialization page and fade the map out when it's done. /// public void AfterLoad() { eventsLoading = true; if (script == null) { // Only run once, when the map is loaded for the first time if (!onceReload) { onceReload = true; ResetEvents(); TestEventDestruction(); PlayerOverworld.instance.utHeart = GameObject.Find("utHeart").GetComponent(); } // Execute all initialization pages of events having one one after the other, one per frame foreach (GameObject t in events) if (t != null) { if (!UnitaleUtil.TestContainsListVector2(t.GetComponent().eventTriggers, 0) || initializedEvents.Contains(t)) continue; initializedEvents.Add(t); ExecuteEvent(t, 0); return; } // Fade the map out when the map is initialized or there are events if (initialized || events.Count != 0) if (fadeOutToMap) FindObjectOfType().BeginFade(-1); else FindObjectOfType().FadeInstant(-1, true); initialized = true; fadeOutToMap = true; eventsLoading = false; eventsLoaded = true; // If there's a current script, that means the map is already initialized, so we just check if said script's event is done } else CheckEndEvent(); } /// /// Checks if the current event script is done, and ends the event properly if it is. /// private void CheckEndEvent() { if (script == null) return; Table t = script.script.Globals; if (t.Get(DynValue.NewString("CYFEventCoroutine")).Coroutine.State == CoroutineState.Dead && GameObject.Find("textframe_border_outer").GetComponent().color.a == 0) EndEvent(); } /// /// Checks which script will be the target of future event function calls. /// Might cause problems, CYFEventCheckRefresh might be skipped for some events given how it's set up. /// public void CheckCurrentEvent() { // Focus on coroutine events for (int count = 0; count < coroutines.Count; count++) { ScriptWrapper scr = coroutines.ElementAt(count).Key; Table t = scr.script.Globals; if (!t.Get(DynValue.NewString("CYFEventCheckRefresh")).Boolean) continue; SetCurrentScript(scr); t.Set(DynValue.NewString("CYFEventCheckRefresh"), DynValue.NewBoolean(false)); } // Focus on the current non-coroutine event if (script == null) return; Table t2 = script.script.Globals; if (!t2.Get(DynValue.NewString("CYFEventCheckRefresh")).Boolean) return; SetCurrentScript(script); t2.Set(DynValue.NewString("CYFEventCheckRefresh"), DynValue.NewBoolean(false)); } /// /// Changes the target script of future event function calls. /// /// New target script. private void SetCurrentScript(ScriptWrapper scr) { luaEventOw.appliedScript = scr; luaGeneralOw.appliedScript = scr; luaInventoryOw.appliedScript = scr; luaPlayerOw.appliedScript = scr; luaScreenOw.appliedScript = scr; luaMapOw.appliedScript = scr; } /// /// Called once every frame. /// private void Update() { try { // Executed once on map load if (readyToReLaunch && SceneManager.GetActiveScene().name != "TransitionOverworld") { readyToReLaunch = false; LateStart(); } // Stall the Update function as long as initialization pages have to be run if (eventsLoading) { AfterLoad(); return; } if (!eventsLoaded) return; // Update the current non-coroutine event CheckCurrentEvent(); // Remove any invalid event from the events list TestEventDestruction(); // Update coroutine events RunCoroutines(); if (script == null && !ScriptRunning && !PlayerOverworld.instance.inBattleAnim && !PlayerOverworld.instance.menuRunning[2]) { // Run an available auto event if (TestEventAuto()) return; // If the Player pressed the Confirm key, check if it's in range of a button press event if (GlobalControls.input.Confirm == ButtonState.PRESSED && !passPressOnce && (GameObject.Find("FadingBlack") == null || GameObject.Find("FadingBlack").GetComponent().alpha <= 0)) { RaycastHit2D hit; TestEventPress(PlayerOverworld.instance.lastMove.x, PlayerOverworld.instance.lastMove.y, out hit); } else passPressOnce = false; if (events.Count != 0) for (int i = 0; i < events.Count; i ++) { GameObject go = events[i]; EventOW ev = go.GetComponent(); if (ev.actualPage < -1) { } // Remove all events which current event page is exactly -1 else if (ev.actualPage == -1) { events.Remove(go); i--; Destroy(go); // Throw an error if an event's current event page doesn't exist } else if (!UnitaleUtil.TestContainsListVector2(ev.eventTriggers, ev.actualPage) && ev.eventTriggers.Count != 0) { UnitaleUtil.DisplayLuaError(ev.name, "The trigger of the page #" + ev.actualPage + " doesn't exist.\nYou'll need to add it via Unity, on this event's EventOW Component."); return; } } } else passPressOnce = false; CheckEndEvent(); } catch (InvalidOperationException e) { Debug.LogError(e.Message); } } /// /// Tests if the player activates an event while he was hitting the Confirm button on the map. /// /// Horizontal direction the Player is looking at. /// Vertical direction the Player is looking at. /// RaycastHit2D object used to do stuff. public bool TestEventPress(float xDir, float yDir, out RaycastHit2D hit) { BoxCollider2D boxCollider = GameObject.Find("Player").GetComponent(); Transform playerTransform = GameObject.Find("Player").transform; // Store the start position to move from, based on the Player's current transform position Vector2 start = new Vector2(playerTransform.position.x + playerTransform.localScale.x * boxCollider.offset.x, playerTransform.position.y + playerTransform.localScale.y * boxCollider.offset.y); // Calculate the end position based on the direction parameters passed in when calling Move and using our boxCollider Vector2 dir = new Vector2(xDir, yDir); // Calculate the current size of the Player's boxCollider Vector2 size = new Vector2(boxCollider.size.x * PlayerOverworld.instance.PlayerPos.localScale.x, boxCollider.size.y * PlayerOverworld.instance.PlayerPos.localScale.y); // Disable boxCollider so that the line cast doesn't hit the Player's own collider, and disable the non touching events' colliders boxCollider.enabled = false; foreach (GameObject go in events) { if (GetTrigger(go, go.GetComponent().actualPage) > 0 && go.GetComponent()) { go.GetComponent().enabled = false; } } // Cast a box from start point to end point, checking collision on blockingLayer hit = Physics2D.BoxCast(start, size, 0, dir, Mathf.Sqrt(Mathf.Pow(boxCollider.size.x * PlayerOverworld.instance.transform.localScale.x * xDir, 2) + Mathf.Pow(boxCollider.size.y * PlayerOverworld.instance.transform.localScale.y * yDir, 2)), _eventLayer); // Re-enable the disabled colliders after BoxCast boxCollider.enabled = true; foreach (GameObject go in events) if (GetTrigger(go, go.GetComponent().actualPage) > 0 && go.GetComponent()) go.GetComponent().enabled = true; // Execute the event that our cast collided with if there's any return hit.collider != null && ExecuteEvent(hit.collider.gameObject); } /// /// Checks if an auto event page is ready to be executed, and runs it if there's any. /// /// True if an auto event page is run, false otherwise. public bool TestEventAuto() { GameObject go1 = null; try { foreach (GameObject go2 in events) { go1 = go2; if (GetTrigger(go2, go2.GetComponent().actualPage) != 2) continue; if (autoDone.Contains(go2)) continue; autoDone.Add(go2); return ExecuteEvent(go2); } if (!go1) { return false; } } // Catch any Lua exception and display it on screen catch (InterpreterException e) { UnitaleUtil.DisplayLuaError((go1 != null ? go1.name : "Unknown event") + ", page #" + (go1 != null ? go1.GetComponent().actualPage : 0), UnitaleUtil.FormatErrorSource(e.DecoratedMessage, e.Message) + e.Message); } // Catch any engine exception and display it on screen catch (Exception e) { UnitaleUtil.DisplayLuaError((go1 != null ? go1.name : "Unknown event") + ", page #" + (go1 != null ? go1.GetComponent().actualPage : 0), "Unknown error of type " + e.GetType() + ". Please send this to the main dev.\n\n" + e.Message + "\n\n" + e.StackTrace); } return false; } /// /// Removes any invalid event or any event ready to be destroyed in the events table . /// public void TestEventDestruction() { for (int i = 0; i < events.Count; i++) { GameObject go = events[i]; if (!go) events.Remove(go); else if (!go.GetComponent()) events.Remove(go); else if (go.GetComponent().actualPage == -1) luaEventOw.Remove(go.name); else i ++; i --; } } /// /// Runs all coroutine events one after the other. /// private void RunCoroutines() { GameObject go1 = null; try { try { // Run each coroutine for (int count = 0; count < coroutines.Count; count++) { ScriptWrapper scr = coroutines.ElementAt(count).Key; if (scr == script) continue; GameObject go2 = eventScripts.FirstOrDefault(x => x.Value == scr).Key; go1 = go2; ExecuteEvent(go2, coroutines[scr], true); } } catch (Exception e) { Debug.LogError(e.Message); } // If a coroutine has been deleted, remove the event for (int i = events.Count - 1; i >= 0; i--) { if (GetTrigger(events[i], events[i].GetComponent().actualPage) != 3 || coroutines.ContainsKey(eventScripts[events[i]]) || eventScripts[events[i]] == script) continue; go1 = events[i]; ExecuteEvent(events[i], -1, true); } } // Catch any Lua exception and display it on screen catch (InterpreterException e) { UnitaleUtil.DisplayLuaError((go1 != null ? go1.name : "Unknown event") + ", page #" + (go1 != null ? go1.GetComponent().actualPage : 0), e.DecoratedMessage); } // Catch any engine exception and display it on screen catch (Exception e) { UnitaleUtil.DisplayLuaError((go1 != null ? go1.name : "Unknown event") + ", page #" + (go1 != null ? go1.GetComponent().actualPage : 0), "Unknown error of type " + e.GetType() + ". Please send this to the main dev.\n\n" + e.Message + "\n\n" + e.StackTrace); } } /// /// Gets an event's given page trigger and returns it. /// /// Target GameObject. /// Index of the page to get the trigger of. /// The trigger of the event's given page. public int GetTrigger(GameObject go, int index) { foreach (Vector2 vec in go.GetComponent().eventTriggers) if (System.Math.Abs(vec.x - index) < 0.0001f) return (int)vec.y; return -2; } /// /// Resets the events by counting them all again, stopping the current events and destroying all the current images. /// /// Set to true if you want all scripts to be reloaded as well. public void ResetEvents(bool resetScripts = true) { coroutines.Clear(); initializedEvents.Clear(); events.Clear(); autoDone.Clear(); // Reset all loaded scripts in order to reload them later if (resetScripts) { spriteControllers.Clear(); eventScripts.Clear(); ScriptWrapper.instances.Clear(); } PlayerOverworld.instance.parallaxes.Clear(); // Load all events foreach (GameObject go in GameObject.FindGameObjectsWithTag("Event")) { events.Add(go); if (go.GetComponent()) { // Create the event's collider automatically if it's not set if (go.GetComponent().size == new Vector2(0, 0)) go.GetComponent().size = new Vector2(go.GetComponent().sizeDelta.x / go.GetComponent().localScale.x * 100, go.GetComponent().sizeDelta.y / go.GetComponent().localScale.y * 100); // Center the event's collider on the y axis if it's offset by -1 in both axis // TODO: Pick another value? People might encounter this by accident if (go.GetComponent().offset == new Vector2(-1, -1)) go.GetComponent().offset = new Vector2(0, go.GetComponent().size.y / 2); } // Repopulate the spriteControllers table spriteControllers[go.name] = LuaSpriteController.GetOrCreate(go); // Initialize the event's script if scripts have been reset if (resetScripts) if (go.GetComponent().scriptToLoad != "none") { string scriptToLoad = go.GetComponent().scriptToLoad; eventScripts.Add(go, InitScript(scriptToLoad, go.GetComponent())); } // Start the event's animator if it has one if (go.GetComponent()) go.GetComponent().LateStart(); } // Store parallaxes if there are any foreach (Transform t in UnitaleUtil.GetFirstChildren(null)) { if (!t) continue; if (!t.gameObject) continue; if (t.gameObject.name.Contains("Parallax")) PlayerOverworld.instance.parallaxes.Add(t); } } /// /// Executes an event page of a given GameObject. /// /// The target GameObject. /// Set to a given value if you want to start a given event page, otherwise triggers the event's current event page. /// Defines whether this event page should be run as a coroutine or not. /// True if it was successful, false otherwise. [HideInInspector] public bool ExecuteEvent(GameObject go, int page = -1, bool isCoroutine = false) { // If there is a script running and the event isn't a coroutine, the event can't be run if (script != null && !isCoroutine) return false; int eventIndex = -1; // Retrieve the event's index in the events table for (int i = 0; i < events.Count; i++) if (events[i].Equals(go)) { eventIndex = i; break; } // If the event can't be found in the events table, something's wrong if (eventIndex == -1) { if (!isCoroutine) UnitaleUtil.DisplayLuaError("Overworld engine", "Whoops! There is an error with event indexing."); return false; } // Related to CYF v0.6's secret if (UnitaleUtil.IsSpecialAnnouncement(go.name) && page != 0) { StartCoroutine(SpecialAnnouncementEvent()); return true; } // If the script we have to load exists, let's initialize it and then execute it if (!isCoroutine) { actualEventIndex = eventIndex; PlayerOverworld.instance.PlayerNoMove = true; ScriptRunning = true; } try { // Retrieve the script we have to run the event from // Special case for CYF v0.6's secret event, which code is hidden in the source code var scr = UnitaleUtil.IsSpecialAnnouncement(go.name) ? InitScript(go.name, go.GetComponent()) : eventScripts[go]; // Add the coroutine to the coroutines table if it's not in it if (isCoroutine && !coroutines.ContainsKey(scr)) coroutines.Add(scr, go.GetComponent().actualPage); // Update the current script if the event isn't a coroutine else if (!isCoroutine) script = scr; // Focus all overworld function objects on the script we retrieved, then call the event's current or given page SetCurrentScript(scr); scr.Call("CYFEventStartEvent", DynValue.NewString("EventPage" + (page == -1 ? go.GetComponent().actualPage : page))); // Catch any Lua exception and display it on screen } catch (InterpreterException ex) { UnitaleUtil.DisplayLuaError(go.GetComponent().scriptToLoad, ex.DecoratedMessage ?? ex.Message); return false; // Catch any engine exception and display it on screen } catch (Exception ex) { UnitaleUtil.DisplayLuaError(go.GetComponent().scriptToLoad, ex.Message); return false; } // If the current script is not a coroutine, prevent the Confirm key press from doing any other action and set the text manager up if (isCoroutine) return true; _textManager.SetCaller(script); _textManager.transform.parent.parent.SetAsLastSibling(); passPressOnce = true; return true; } /// /// Retrieves all functions from all event function objects and return them as strings. /// /// Event function object to parse. /// A list of strings with the names of all functions of this object. private IEnumerable CreateBindListMember(Type t) { MethodInfo[] methods = t.GetMethods(); return (from method in methods where MethodHasCyfEventFunctionAttribute(method) select method.Name).ToList(); } /// /// Checks if the given member (function) has the CYFEventFunction attribute. /// /// Function to check. /// True if the function has the CYFEventFunction attribute, false otherwise. private static bool MethodHasCyfEventFunctionAttribute(MemberInfo mb) { const bool includeInherited = false; return mb.GetCustomAttributes(typeof(CYFEventFunction), includeInherited).Any(); } /// /// Generates the internal Lua code used by CYF events. /// private void GenerateEventCode() { _eventCodeFirst = string.Empty; // Parse all event function objects foreach (Type t in _boundValueName.Keys) { IEnumerable members = CreateBindListMember(t); _eventCodeFirst += "\n" + _boundValueName[t] + " = {"; // Get all the functions of the current event function object and add it to the event script's prefix foreach (string member in members) // Store all functions as a call to CYFEventForwarder _eventCodeFirst += "\n " + member + " = function(...) CYFEventLastAction = '" + _boundValueName[t] + "." + member + "' return CYFEventForwarder(F" + _boundValueName[t] + "." + member + ", ...) end,"; // Throw an error if the user tries to add or get a value from the new, table-based object _eventCodeFirst += "\n}\nsetmetatable(" + _boundValueName[t] + @", { __index = function(t, k) error(""cannot access field "" .. tostring(k) .. "" of userdata <" + t + @">"", 2) end, __newindex = function(t, k) error(""cannot access field "" .. tostring(k) .. "" of userdata <" + t + @">"", 2) end })"; } _eventCodeFirst += @" CYFEventCoroutine = coroutine.create(DEBUG) -- Coroutine for the current event script CYFEventCheckRefresh = true -- Variable checked for by the C# scripts CYFEventLastAction = """" -- Checked for in a workaround for General.Wait local CYFEventAlreadyLaunched = false -- Function to read regular Lua error messages and make them say 'line' and 'char' for readability local errorPattern = ':%([%d%-,]+%):' function CYFFormatError(err) local code = err:match(errorPattern) if code then local before = err:sub(0, err:find(errorPattern) + (code:sub(0, 2) == ':(' and 1 or 0)) local numbers = err:match('[%d,%-]+%)'):sub(0, -2) local after = err:sub(err:find(numbers:gsub('%-', '%%-'), #before) + #numbers) -- There are only 3 possible formats for error messages -- See Assets/Plugins/MoonSharp/Interpreter/Debugging/SourceRef.cs line 178 local allNums = {} for num in numbers:gmatch('%d+') do table.insert(allNums, num) end if numbers == numbers:match('%d+,%d+') then numbers = 'line ' .. allNums[1] .. ', char ' .. allNums[2] elseif numbers == numbers:match('%d+,%d+%-%d+') then numbers = 'line ' .. allNums[1] .. ', char ' .. allNums[2] .. '-' .. allNums[3] elseif numbers == numbers:match('%d+,%d+%-%d+,%d+') then numbers = 'line ' .. allNums[1] .. ', char ' .. allNums[2] .. '-line ' .. allNums[3] .. ', char ' .. allNums[4] end return ""error in script "" .. _internalScriptName .. ""\n\n"" .. before .. numbers .. after else return err end end -- Function called by the coroutine created in CYFEventStartEvent function CYFEventFuncToLaunch(x) if _internalScriptName == nil then _internalScriptName = '"; _eventCodeLast = @"' end local err if not xpcall(x, function(err2) err = err2 end) then error(CYFFormatError(err), 0) end end -- Signals the end of an asynchronous event on the C# side and resumes the coroutine on the Lua side function CYFEventNextCommand() CYFEventAlreadyLaunched = true if tostring(coroutine.status(CYFEventCoroutine)) == 'suspended' then local ok, errorMsg = coroutine.resume(CYFEventCoroutine) if not ok then error(errorMsg, 0) end end end -- Currently unused function CYFEventStopCommand() coroutine.yield() end -- Called whenever activating an overworld Event object's event pages; Creates a coroutine that runs the matching EventPage function function CYFEventStartEvent(func) if _G[func] == nil then error(""error in script "" .. _internalScriptName .. ""\n\nThe function "" .. func .. "" doesn't exist in the Event script."", 0) end CYFEventCoroutine = coroutine.create(function() CYFEventFuncToLaunch(_G[func]) end) local ok, errorMsg = coroutine.resume(CYFEventCoroutine) if not ok then error(errorMsg, 0) end end -- Function called by the fake table-based overworld objects, which runs necessary code for the C# side before running the real function (like General.Wait) function CYFEventForwarder(func, ...) CYFEventAlreadyLaunched = false CYFEventCheckRefresh = true FGeneral.HiddenReloadAppliedScript() local ok local result local hasArgs = false for k, v in pairs(({...})) do hasArgs = true ok, result = pcall(func, ...) break end if not hasArgs then ok, result = pcall(func) end if not ok then error(CYFFormatError(result), 0) end if not CYFEventAlreadyLaunched then coroutine.yield() end return result end"; } // Handles 6 arguments for CreateText() private delegate TResult Func(T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg, T6 arg6); /// /// Initializes event scripts so they can be used later. /// /// Name of the event script. /// Component of the event GameObject, it's best to use an EventOW. /// A new script wrapper allowing the user to run script functions. private ScriptWrapper InitScript(string eventName, Component ev) { // Create a ScriptWrapper object ScriptWrapper scr = new ScriptWrapper { scriptname = eventName }; // Load a special script hidden within CYF's internals if we're loading CYF 0.6.5's secret string scriptText = UnitaleUtil.IsSpecialAnnouncement(eventName) ? CYF_RELEASE_SCRIPT : FileLoader.GetScript("Events/" + eventName, "Loading an event", "event"); if (scriptText == null) { UnitaleUtil.DisplayLuaError("Launching an event", "The event \"" + eventName + "\" doesn't exist."); return null; } // Run engine-provided Lua code for Event scripts (generate it if needed) if (_eventCodeFirst == null) GenerateEventCode(); try { scr.script.DoString(_eventCodeFirst + ev.gameObject.name + _eventCodeLast, null, "CYF internal event code (please report!)"); } // Catch any Lua exception and display it on screen catch (InterpreterException ex) { UnitaleUtil.DisplayLuaError(eventName, UnitaleUtil.FormatErrorSource(ex.DecoratedMessage, ex.Message) + ex.Message); return null; // Catch any engine exception and display it on screen } catch (Exception ex) { UnitaleUtil.DisplayLuaError(eventName, ex.Message); return null; } // Add a few useful functions to event scripts scr.script.Globals["CreateLayer"] = (Func) SpriteUtil.CreateLayer; scr.script.Globals["CreateSprite"] = (Func) SpriteUtil.MakeIngameSprite; scr.script.Globals["CreateText"] = (Func) LuaScriptBinder.CreateText; // Actually execute the loaded script try { scr.DoString(scriptText); } // Catch any Lua exception and display it on screen catch (InterpreterException ex) { UnitaleUtil.DisplayLuaError(eventName, UnitaleUtil.FormatErrorSource(ex.DecoratedMessage, ex.Message) + ex.Message); return null; } // Catch any engine exception and display it on screen catch (Exception ex) { UnitaleUtil.DisplayLuaError(eventName, ex.Message); return null; } return scr; } /// /// Used in SetChoice, moves the soul sprite during a selection. /// /// Soul's position /// Defines whether there's a question or not. /// True if the question spans over three lines. public void SetPlayerOnSelection(int selection, bool question = false, bool threeLines = false) { if (question) { if (threeLines) selection += 2; else selection += 4; } int xMv = selection % _textManager.columnNumber; int yMv = selection / _textManager.columnNumber; if (_textManager.letters.Count > 0) GameObject.Find("tempHeart").GetComponent().position = new Vector3(_textManager.letters[0].image.transform.position.x + xMv * _textManager.columnShift, _textManager.letters[0].image.transform.position.y - yMv * _textManager.font.LineSpacing + 9, GameObject.Find("tempHeart").GetComponent().position.z); } /// /// Computes the direction of a given vector following a computer's numeric pad. (2: Down, 4: Left, 6: Right, 8: Up, 0: Zero) /// TODO: Change this function so it doesn't follow a numeric pad anymore. /// /// Vector to analyze. /// Return the direction of the vector following a computer's numeric pad. (2: Down, 4: Left, 6: Right, 8: Up, 0: Zero) public int CheckDirection(Vector2 dir) { // Case x = y = 0 if (dir == Vector2.zero) return 0; // Case x = 0 if (dir.x == 0) return dir.y > 0 ? 8 : 2; // Case y = 0 if (dir.y == 0) return dir.x > 0 ? 6 : 4; // Compare both magnitudes float tempDir = dir.y / dir.x; // Case y magnitude > x magnitude if (tempDir > 1 || tempDir < -1) return dir.y > 0 ? 8 : 2; // Case x magnitude > y magnitude return dir.x > 0 ? 6 : 4; } /// /// Used to store various data when saving the game or unloading the map. /// /// True if you want to save the Player's data in this map as well. public void SetEventStates(bool addPlayer = false) { string id = SceneManager.GetActiveScene().name; EventOW[] eventOws = (EventOW[])FindObjectsOfType(typeof(EventOW)); // Create or retrieve a MapData object to store all of this map's data GameState.MapData mapInfos = GlobalControls.GameMapData.ContainsKey(id) ? GlobalControls.GameMapData[id] : new GameState.MapData(); // Remove this map from the current save data if it exists if (GlobalControls.GameMapData.ContainsKey(id)) GlobalControls.GameMapData.Remove(id); // Store this map's data MapInfos mi = FindObjectOfType(); mapInfos.Name = SceneManager.GetActiveScene().name; mapInfos.Music = mi.music; mapInfos.ModToLoad = mi.modToLoad; mapInfos.MusicKept = mi.isMusicKeptBetweenBattles; mapInfos.NoRandomEncounter = mi.noRandomEncounter; // Copy the data of each event which has been saved before Dictionary eis = new Dictionary(); foreach (string str in GlobalControls.EventData.Keys) eis.Add(str, GlobalControls.EventData[str]); // Add the Player's data to the map if it has been requested if (addPlayer) { GameState.EventInfos eiPlayer = new GameState.EventInfos { CurrPage = 0, CurrSpriteNameOrCYFAnim = GameObject.Find("Player").GetComponent().specialHeader, NoCollision = false, Anchor = UnitaleUtil.VectorToVect(GameObject.Find("Player").GetComponent().anchorMax), Pivot = UnitaleUtil.VectorToVect(GameObject.Find("Player").GetComponent().pivot) }; eis.Add("Player", eiPlayer); } foreach (EventOW ev in eventOws) { // Only save events linked to scripts if (ev.name.Contains("Image") || ev.name.Contains("Tone")) continue; // If this event has been saved before, remove it from the save file in order to overwrite the event's data if (eis.ContainsKey(ev.name)) eis.Remove(ev.name); try { // Fill in the event's data GameState.EventInfos ei = new GameState.EventInfos { CurrPage = ev.actualPage, CurrSpriteNameOrCYFAnim = ev.GetComponent() ? ev.GetComponent().specialHeader : spriteControllers[ev.name].spritename != "empty" ? spriteControllers[ev.name].spritename : instance.spriteControllers[ev.name].img.GetComponent() ? instance.spriteControllers[ev.name].img.GetComponent().sprite.name : instance.spriteControllers[ev.name].img.GetComponent().sprite.name, NoCollision = ev.gameObject.layer == 0, Anchor = UnitaleUtil.VectorToVect(ev.GetComponent().anchorMax), Pivot = UnitaleUtil.VectorToVect(ev.GetComponent().pivot) }; // Add it to the saved events dictionary eis.Add(ev.name, ei); } catch { /* ignored */ } } // Store all of the map's data in the current save data object mapInfos.EventInfo = eis; GlobalControls.GameMapData.Add(id, mapInfos); //MapDataParser(); // Clear all sprites spriteControllers.Clear(); } /// /// Tries to change a map value. /// /// Name of the target map. /// Name of the variable to change. /// New value of the target variable. public static void TrySetMapValue(string mapName, string var, object val) { var = var.ToLower(); // Stop the function if the value we're trying to change doesn't exist if (var != "music" && var != "modtoload" && var != "musickept" && var != "norandomencounter") throw new CYFException("You tried to change a map's \"" + var + "\" value but it doesn't exist.\nYou can only choose between \"Music\", \"ModToLoad\", \"MusicKept\" and \"NoRandomEncounter\"."); // MusicKept and NoRandomEncounter are both booleans so we check for their value if (var == "musickept" || var == "norandomencounter") { switch (val.ToString().ToLower()) { case "true": val = true; break; case "false": val = false; break; default: throw new CYFException("\"MusicKept\" and \"NoRandomEncounter\" are boolean values. You can only enter \"true\" or \"false\"."); } } // Update the value in the saved map dictionary foreach (KeyValuePair kvp in GlobalControls.GameMapData) { if (kvp.Value.Name != mapName) continue; // Get the right map GameState.MapData mapData = kvp.Value; GlobalControls.GameMapData.Remove(kvp.Key); // Change the right value and update the map switch (var) { case "music": mapData.Music = val.ToString(); break; case "modtoload": mapData.ModToLoad = val.ToString(); break; case "musickept": mapData.MusicKept = (bool)val; break; default: mapData.NoRandomEncounter = (bool)val; break; } GlobalControls.GameMapData.Add(kvp.Key, mapData); return; } GameState.TempMapData tmi = new GameState.TempMapData(); bool found = false; // Update the value in the map changes dictionary if it exists foreach (KeyValuePair kvp in GlobalControls.TempGameMapData) { if (kvp.Key != mapName) continue; // Get the right map tmi = kvp.Value; found = true; break; } // If this map isn't in the map changes dictionary, add it if (!found) { tmi = new GameState.TempMapData { MusicChanged = false, ModToLoadChanged = false, MusicKeptChanged = false, NoRandomEncounterChanged = false }; } switch (var) { // Change the right value and update case "music": tmi.Music = val.ToString(); tmi.MusicChanged = true; break; case "modtoload": tmi.ModToLoad = val.ToString(); tmi.ModToLoadChanged = true; break; case "musickept": tmi.MusicKept = (bool)val; tmi.MusicKeptChanged = true; break; default: tmi.NoRandomEncounter = (bool)val; tmi.NoRandomEncounterChanged = true; break; } GlobalControls.TempGameMapData.Add(mapName, tmi); } /// /// Tries to get a map value. /// /// Name of the target map. /// Name of the variable to change. /// Value of the target variable. public static object TryGetMapValue(string mapName, string var) { var = var.ToLower(); // Get the value in the current save if the Player visited that map foreach (GameState.MapData md in GlobalControls.GameMapData.Values) if (md.Name == mapName) switch (var) { case "music": return md.Music; case "modtoload": return md.ModToLoad; case "musickept": return md.MusicKept; default: return md.NoRandomEncounter; } // Get the value in the current map changes dictionary if the map was changed at some point foreach (GameState.TempMapData tmd in GlobalControls.TempGameMapData.Values) if (tmd.Name == mapName) switch (var) { case "music": return tmd.Music; case "modtoload": return tmd.ModToLoad; case "musickept": return tmd.MusicKept; default: return tmd.NoRandomEncounter; } int buildIndex = -1; // Try to get the value from the unvisited map's scene if it exists // Test whether the map exists or not for (int i = 0; i < SceneManager.sceneCountInBuildSettings; i++) { if (mapName == Path.GetFileNameWithoutExtension(SceneUtility.GetScenePathByBuildIndex(i))) { buildIndex = i; break; } if (i == SceneManager.sceneCountInBuildSettings - 1) throw new CYFException("The scene \"" + mapName + "\" doesn't exist.\nYou must enter the scene's file name, not its alias."); } // Retrieve the value from the unvisited scene foreach (GameObject go in SceneManager.GetSceneByBuildIndex(buildIndex).GetRootGameObjects()) { if (!go.GetComponent()) continue; switch (var) { case "music": return go.GetComponent().music; case "modtoload": return go.GetComponent().modToLoad; case "musickept": return go.GetComponent().isMusicKeptBetweenBattles; default: return go.GetComponent().noRandomEncounter; } } return null; } /// /// Debug function used to print all data saved for a map. /// public static void MapDataParser() { string str = "MapData = {\n"; bool once = false, once2 = false; foreach (string id in GlobalControls.GameMapData.Keys) { str += once ? ",\n" : ""; if (!once) once = true; str += " scene " + id + " for\n"; GameState.MapData mi = GlobalControls.GameMapData[id]; str += " Name = \"" + mi.Name + "\"\n"; str += " Music = \"" + mi.Music + "\"\n"; str += " ModToLoad = \"" + mi.ModToLoad + "\"\n"; str += " MusicKept = " + mi.MusicKept + "\n"; str += " NoRandomEncounter = " + mi.NoRandomEncounter + "\n"; str += " EventInfo = {\n"; foreach (string str2 in mi.EventInfo.Keys) { str += once2 ? ",\n" : ""; if (!once2) once2 = true; GameState.EventInfos ei = mi.EventInfo[str2]; str += " name = \"" + str2 + "\" for \n"; str += " CurrPage = " + ei.CurrPage + "\n"; str += " CurrSpriteNameOrCYFAnim = \"" + ei.CurrSpriteNameOrCYFAnim + "\"\n"; str += " NoCollision = " + ei.NoCollision + "\n"; str += " Anchor = " + UnitaleUtil.VectToVector(ei.Anchor) + "\n"; str += " Pivot = " + UnitaleUtil.VectToVector(ei.Pivot) + ""; } str += "\n }"; once2 = false; } str += "\n}"; print(str); } /// /// Copies the data saved for a map and apply it to the current map. /// /// Map object to update. /// Name of the map to retrieve data from. public static void GetMapState(MapInfos mi, string id) { // Retrieve data from the map changes dictionary if it's the first time the Player enters it if (!GlobalControls.GameMapData.ContainsKey(id)) { if (!GlobalControls.TempGameMapData.ContainsKey(SceneManager.GetActiveScene().name)) return; GameState.TempMapData tmd = GlobalControls.TempGameMapData[SceneManager.GetActiveScene().name]; GlobalControls.TempGameMapData.Remove(SceneManager.GetActiveScene().name); if (tmd.MusicChanged) mi.music = tmd.Music; if (tmd.ModToLoadChanged) mi.modToLoad = tmd.ModToLoad; if (tmd.MusicKeptChanged) mi.isMusicKeptBetweenBattles = tmd.MusicKept; if (tmd.NoRandomEncounterChanged) mi.noRandomEncounter = tmd.NoRandomEncounter; return; } // Fill in the MapInfos object from the saved data for this map GameState.MapData miSave = GlobalControls.GameMapData[id]; mi.music = miSave.Music; mi.modToLoad = miSave.ModToLoad; mi.isMusicKeptBetweenBattles = miSave.MusicKept; mi.noRandomEncounter = miSave.NoRandomEncounter; // Copy the data for each event into the given MapInfos foreach (string str in miSave.EventInfo.Keys) { try { GameObject go = GameObject.Find(str); // If the event doesn't exist, go to the next event if (go == null) continue; GameState.EventInfos ei = miSave.EventInfo[str]; // Fill in Player or event-specific data if (str == "Player") go.GetComponent().specialHeader = ei.CurrSpriteNameOrCYFAnim; else { EventOW ev = go.GetComponent(); if (!ev) continue; ev.actualPage = ei.CurrPage; ev.gameObject.layer = ei.NoCollision ? 0 : 21; try { // Sets data to the event's animator if it exists if (ev.GetComponent()) ev.GetComponent().specialHeader = ei.CurrSpriteNameOrCYFAnim; // Sets the event's sprite using auto-load if it exists else if (ev.GetComponent()) ev.GetComponent().SpritePath = ei.CurrSpriteNameOrCYFAnim; // Sets the event's sprite directly otherwise else if (ev.GetComponent()) ev.GetComponent().sprite = SpriteRegistry.Get(ei.CurrSpriteNameOrCYFAnim); else ev.GetComponent().sprite = SpriteRegistry.Get(ei.CurrSpriteNameOrCYFAnim); } catch { Debug.LogWarning("Map loading: Couldn't load sprite " + ei.CurrSpriteNameOrCYFAnim + " for object " + ev.name); // ignored } } go.GetComponent().anchorMax = UnitaleUtil.VectToVector(ei.Anchor); go.GetComponent().anchorMin = UnitaleUtil.VectToVector(ei.Anchor); go.GetComponent().pivot = UnitaleUtil.VectToVector(ei.Pivot); } catch (Exception e) { Debug.LogError(e); } } } /// /// Ends the current event. /// public void EndEvent() { PlayerOverworld.instance.textmgr.SetTextFrameAlpha(0); PlayerOverworld.instance.textmgr.SetTextQueue(new TextMessage[] { }); PlayerOverworld.instance.PlayerNoMove = false; PlayerOverworld.instance.UIPos = 0; ScriptRunning = false; script = null; } /// /// Starts a coroutine triggered by a standard overworld function. /// /// Name of the coroutine to start. /// Arguments of the coroutine. /// Name of the event calling this coroutine. public void StCoroutine(string coroutineName, object args, string evName) { // Create the key that will be stored in the cSharpCoroutines table string key = evName + "." + coroutineName; // End this coroutine if this event is already running it ForceEndCoroutine(key); Coroutine newCoroutine; // Create the coroutine by itself, passing arguments if needed if (args == null) newCoroutine = StartCoroutine(coroutineName); else if (!args.GetType().IsArray) newCoroutine = StartCoroutine(coroutineName, args); else newCoroutine = StartCoroutine(coroutineName, (object[])args); cSharpCoroutines.Add(key, newCoroutine); } /// /// Stops a coroutine immediately. /// /// Key of the coroutine as it is stored in the cSharpCoroutines table. public void ForceEndCoroutine(string key) { // Stops the coroutine if it exists and remove it from the table if (!cSharpCoroutines.ContainsKey(key)) return; Coroutine existingCoroutine; cSharpCoroutines.TryGetValue(key, out existingCoroutine); if (existingCoroutine != null) StopCoroutine(existingCoroutine); cSharpCoroutines.Remove(key); } /// /// Hidden C# event script starting the sequence related to CYF v0.6's secret. /// Don't tell anyone it's an actual event script function! /// /// All coroutines must return an IEnumerator object, don't mind it. private IEnumerator SpecialAnnouncementEvent() { // Prevents the Player from moving luaPlayerOw.CanMove(false); // This very weird RealGlobal is used in order to know if we should delete the event spawning CYF v0.6's secret // Makes the event disappear the next time it's encountered LuaScriptBinder.SetSessionGlobal("1a6377e26b5119334e651552be9f17f8d92e83c9", DynValue.NewBoolean(false)); // Get all sprites from the Resources/Sprites folder Sprite[] resourceSprites = Resources.LoadAll("Sprites"); Dictionary sprites = resourceSprites.ToDictionary(spr => spr.name); // Get all audio files from the Resources/Audios folder AudioClip[] resourceAudios = Resources.LoadAll("Audios"); Dictionary audios = resourceAudios.ToDictionary(audioClip => audioClip.name); // Retrieve the event object related to CYF v0.6's secret GameObject go = GameObject.Find("4eab1af3ab6a932c23b3cdb8ef618b1af9c02088"); // Set the event's sprite to mm2 go.GetComponent().sprite = sprites["mm2"]; // Make the sprite more visible go.transform.position = new Vector3(go.transform.position.x, go.transform.position.y, -1); // Stop all audios NewMusicManager.StopAll(); // Play the sound 4eab1af3ab6a932c23b3cdb8ef618b1af9c02088 AudioSource audioSource = NewMusicManager.CreateChannelAndGetAudioSource("4eab1af3ab6a932c23b3cdb8ef618b1af9c02088"); audioSource.loop = false; audioSource.clip = audios["sound"]; audioSource.Play(); // Wait until the audio's done playing while (audioSource.isPlaying) yield return 0; // Destroy the overworld, and enter CYF v0.6's secret scene NewMusicManager.DestroyChannel("4eab1af3ab6a932c23b3cdb8ef618b1af9c02088"); SceneManager.LoadScene("SpecialAnnouncement"); Destroy(GameObject.Find("Player")); Destroy(GameObject.Find("Canvas OW")); Destroy(GameObject.Find("Canvas Two")); Destroy(GameObject.Find("Main Camera OW")); } /// /// Hidden event initialization function used for the event related to CYF v0.6's secret. /// private const string CYF_RELEASE_SCRIPT = "function EventPage0()\n" + " if not GetRealGlobal(\"1a6377e26b5119334e651552be9f17f8d92e83c9\") then\n" + " Event.Remove(Event.GetName())\n" + " end\n" + "end\n" + "function EventPage1() end"; //----------------------------------------------------------------------------------------------------------- // --- Lua Functions --- // // All event commands have to be finished with script.Call("CYFEventNextCommand"); // If you need to return a value to the lua script, try to use try the finally block. // // Plus, if you want to create functions, test first if the GameObject the // player is accessing to is an event: if you don't, you'll be a really // bad person and you'll go to hell. Don't ask why tho. // (aka the function can cause errors and it'll be your fault) //----------------------------------------------------------------------------------------------------------- /// /// Gives the Player a choice, the result will be stored in the variable 'lastChoice' in the event script after the choice is done. /// /// Most coroutines have the same argument, which is a table of values. /// This one should include, in order: /// * bool question - True if you want a question to be shown, false otherwise. /// * bool oneLiners - Two booleans in a table defining whether the two options are one line long or not. /// /// All coroutines must return an IEnumerator object, don't mind it. private IEnumerator ISetChoice(object[] args) { ScriptWrapper scr = luaGeneralOw.appliedScript; // Retrieve all arguments bool question; bool[] oneLiners; try { question = (bool)args[0]; } catch { throw new CYFException("The argument \"question\" must be a boolean."); } try { oneLiners = (bool[])args[1]; } catch { throw new CYFException("The argument \"oneLiners\" must be a boolean table."); } // Stop if this function is used in a coroutine if (coroutines.ContainsKey(scr) && script != scr) { UnitaleUtil.DisplayLuaError(scr.scriptname, "General.SetChoice: This function cannot be used in a coroutine with \"waitEnd\" set to true."); yield break; } // Stop if this function is used in the initialization page of an event if (eventsLoading) { UnitaleUtil.DisplayLuaError(scr.scriptname, "General.SetChoice: This function cannot be used in EventPage0 with \"waitEnd\" set to true."); yield break; } // Wait for the message to be displayed while (!_textManager.LineComplete()) yield return 0; int actualChoice = 0; // Spawn the choice soul and move it in front of the first (left) option GameObject tempHeart = new GameObject("tempHeart", typeof(RectTransform)); tempHeart.GetComponent().sizeDelta = new Vector2(16, 16); tempHeart.transform.SetParent(GameObject.Find("Canvas OW").transform); Image img = tempHeart.AddComponent(); img.sprite = PlayerOverworld.instance.utHeart.sprite; img.color = new Color(1, 0, 0, 1); SetPlayerOnSelection(actualChoice, question, !oneLiners[0]); // Main loop of the choice dialogue while (true) { int xMov = GlobalControls.input.Right == ButtonState.PRESSED ? 1 : GlobalControls.input.Left == ButtonState.PRESSED ? -1 : 0; // Move the soul in front of the current selected option if one of the Left or Right keys are pressed if (xMov != 0) { actualChoice = UnitaleUtil.SelectionChoice(2, actualChoice, xMov, 0, 1, 2, false); SetPlayerOnSelection(actualChoice, question, !oneLiners[actualChoice]); // Confirm the selected option if a Confirm key is pressed } else if (GlobalControls.input.Confirm == ButtonState.PRESSED) if (!_textManager.LineComplete() && _textManager.CanSkip()) _textManager.SkipLine(); else break; yield return 0; } // Sets the value of the variable 'lastChoice' in the current script to 0 if the left option was picked or to 1 otherwise script.script.Globals.Set(DynValue.NewString("lastChoice"), DynValue.NewNumber(actualChoice)); Destroy(tempHeart); yield return 0; } /// /// Moves a given event to given coordinates. /// /// Most coroutines have the same argument, which is a table of values. /// This one should include, in order: /// * string eventName - The name of the event we're moving. /// * float dirX - The end x position of the event starting from the bottom left corner of the map. /// * float dirY - The end y position of the event starting from the bottom left corner of the map. /// * bool wallPass - True if the event can walk through walls, false otherwise. /// * bool waitEnd - True if the script has to wait for the end of the coroutine, false otherwise. /// /// All coroutines must return an IEnumerator object, don't mind it. private IEnumerator IMoveEventToPoint(object[] args) { //NEED PARENTAL REMOVE ScriptWrapper scr = (ScriptWrapper)args[0]; // Retrieve all arguments string eventName; float dirX, dirY; bool wallPass, waitEnd; try { eventName = (string)args[1]; } catch { throw new CYFException("The argument \"name\" must be a string."); } try { dirX = (float)args[2]; } catch { throw new CYFException("The argument \"dirX\" must be a number."); } try { dirY = (float)args[3]; } catch { throw new CYFException("The argument \"dirY\" must be a number."); } try { wallPass = (bool)args[4]; } catch { throw new CYFException("The argument \"wallPass\" must be a boolean."); } try { waitEnd = (bool)args[5]; } catch { throw new CYFException("The argument \"waitEnd\" must be a boolean."); } if (waitEnd) // Stop if this function is used in a coroutine and we have to wait for the end of the function to continue if (coroutines.ContainsKey(scr) && script != scr) { UnitaleUtil.DisplayLuaError(scr.scriptname, "Event.MoveToPoint: This function cannot be used in a coroutine with \"waitEnd\" set to true."); yield break; // Stop if this function is used in the initialization page of an event and we have to wait for the end of the function to continue } else if (eventsLoading) { UnitaleUtil.DisplayLuaError(scr.scriptname, "Event.MoveToPoint: This function cannot be used in EventPage0 with \"waitEnd\" set to true."); yield break; } for (int i = 0; i < events.Count || eventName == "Player"; i++) // Get the right event or the Player if (eventName == events[i].name || eventName == "Player") { GameObject go = eventName == "Player" ? GameObject.Find("Player") : events[i]; // For usual events, we must move its parent, SpritePivot, instead of itself Transform target = null; if (go.transform.parent != null) if (go.transform.parent.name == "SpritePivot") target = go.transform.parent; target = target ?? go.transform; // Check if the target is already being moved in another MoveEventToPoint call ScriptWrapper isMovingSource = eventName == "Player" ? go.GetComponent().isMovingSource : go.GetComponent().isMovingSource; Vector2 roundedPos = new Vector2(Mathf.Round(target.position.x * 1000) / 1000, Mathf.Round(target.position.y * 1000) / 1000); Vector2 roundedEnd = new Vector2(Mathf.Round(dirX * 1000) / 1000, Mathf.Round(dirY * 1000) / 1000); // If it's where it should be, stop the target's movement if (roundedPos == roundedEnd) if (eventName == "Player") go.GetComponent().isMovingSource = null; else go.GetComponent().isMovingSource = null; // Properly end the current call of this coroutine if the target is already being moved if (isMovingSource != null && isMovingSource != scr && (eventName == "Player" ? go.GetComponent().isMovingWaitEnd : go.GetComponent().isMovingWaitEnd)) isMovingSource.Call("CYFEventNextCommand"); // Update some values related to movement if (eventName == "Player") { go.GetComponent().isMovingSource = null; go.GetComponent().isMovingWaitEnd = waitEnd; } else { go.GetComponent().isMovingSource = null; go.GetComponent().isMovingWaitEnd = waitEnd; } // If we're not waiting for the end of function, go to the next line if (!waitEnd) scr.Call("CYFEventNextCommand"); // Store the target's initial position Vector2 originalPosition = new Vector2(target.position.x, target.position.y); // Store the distance between the target's initial and final position Vector2 endPoint = new Vector2(dirX - target.position.x, dirY - target.position.y); // The animation process is automatic, if you renamed the Animation's triggers and animations as the Player's if (go.GetComponent()) { int direction = CheckDirection(endPoint); go.GetComponent().movementDirection = direction; } while (true) { Vector2 clamped = Vector2.ClampMagnitude(endPoint, 1); // Try to move the target by 1 pixel var moveTest = PlayerOverworld.instance.AttemptMove(clamped.x, clamped.y, go, wallPass); // Increment the distance from the initial position var distanceFromStart = new Vector2(target.position.x - originalPosition.x, target.position.y - originalPosition.y); // Update some values related to movement if (eventName == "Player") { go.GetComponent().isBeingMoved = (moveTest || wallPass) && distanceFromStart.magnitude > 0; go.GetComponent().isMoving = (moveTest || wallPass) && distanceFromStart.magnitude > 0; go.GetComponent().isMovingSource = scr; go.GetComponent().isMovingWaitEnd = waitEnd; } else { go.GetComponent().isMovingSource = ((moveTest || wallPass) && distanceFromStart.magnitude > 0) ? scr : null; go.GetComponent().isMovingWaitEnd = waitEnd; } // If the distance between the initial position of the target and its current position is greater than // the distance between the initial position of the target and its final position, the movement is done // If the target collides with something and can't go through walls, end the movement if (distanceFromStart.magnitude >= endPoint.magnitude || (!moveTest && !wallPass)) { // Move the target to its final position if it reached it if (distanceFromStart.magnitude >= endPoint.magnitude) target.position = new Vector3(dirX, dirY, target.position.z); // Update some values related to movement if (eventName == "Player") { go.GetComponent().isBeingMoved = false; go.GetComponent().isMoving = false; go.GetComponent().isMovingSource = null; go.GetComponent().isMovingWaitEnd = false; } else { go.GetComponent().isMovingSource = null; go.GetComponent().isMovingWaitEnd = false; } // If we're waiting for the end of function, go to the next line if (waitEnd) scr.Call("CYFEventNextCommand"); yield break; } yield return 0; // If the target doesn't exist anymore, exit the function right now if (go != null) continue; scr.Call("CYFEventNextCommand"); yield break; } } // If the event can't be found, throw a warning in CYF's console UnitaleUtil.WriteInLogAndDebugger("Event.MoveToPoint: The name you entered in the function doesn't exist. Did you forget to add the 'Event' tag?"); scr.Call("CYFEventNextCommand"); } /// /// Wait for the Player to press a Confirm key. /// /// All coroutines must return an IEnumerator object, don't mind it. private IEnumerator IWaitForInput() { ScriptWrapper scr = luaGeneralOw.appliedScript; // Stop if this function is used in a coroutine if (coroutines.ContainsKey(scr) && script != scr) { UnitaleUtil.DisplayLuaError(scr.scriptname, "General.WaitForInput: This function cannot be used in a coroutine."); yield break; } // Stop if this function is used in the initialization page of an event if (eventsLoading) { UnitaleUtil.DisplayLuaError(scr.scriptname, "General.WaitForInput: This function cannot be used in EventPage0."); yield break; } // Wait until the Player presses a Confirm key while (GlobalControls.input.Confirm != ButtonState.PRESSED) yield return 0; scr.Call("CYFEventNextCommand"); } /// /// Progressively sets the tone of the overworld map. /// /// Most coroutines have the same argument, which is a table of values. /// This one should include, in order: /// * bool waitEnd - True if the script has to wait for the end of the coroutine, false otherwise. /// * int r - Red value of the tone image, clamped between 0 and 255. /// * int g - Green value of the tone image, clamped between 0 and 255. /// * int b - Blue value of the tone image, clamped between 0 and 255. /// * int a - Alpha value of the tone image, clamped between 0 and 255. /// /// All coroutines must return an IEnumerator object, don't mind it. private IEnumerator ISetTone(object[] args) { ScriptWrapper scr = luaScreenOw.appliedScript; // Retrieve all arguments bool waitEnd; int r, g, b, a; try { waitEnd = (bool)args[0]; } catch { throw new CYFException("The argument \"waitEnd\" must be a boolean."); } try { r = (int)args[1]; } catch { throw new CYFException("The argument \"r\" must be a number."); } try { g = (int)args[2]; } catch { throw new CYFException("The argument \"g\" must be a number."); } try { b = (int)args[3]; } catch { throw new CYFException("The argument \"b\" must be a number."); } try { a = (int)args[4]; } catch { throw new CYFException("The argument \"a\" must be a number."); } if (waitEnd) { // Stop if this function is used in a coroutine and we have to wait for the end of the function to continue if (coroutines.ContainsKey(scr) && script != scr) { UnitaleUtil.DisplayLuaError(scr.scriptname, "Screen.SetTone: This function cannot be used in a coroutine with \"waitEnd\" set to true."); yield break; } // Stop if this function is used in the initialization page of an event and we have to wait for the end of the function to continue if (eventsLoading) { UnitaleUtil.DisplayLuaError(scr.scriptname, "Screen.SetTone: This function cannot be used in EventPage0 with \"waitEnd\" set to true."); yield break; } } // Get the tone's current color and compute the color differences between the current and future tone Color c = GameObject.Find("Tone").GetComponent().color; int[] currents = { (int)(c.r * 255), (int)(c.g * 255), (int)(c.b * 255), (int)(c.a * 255) }; int[] lacks = { r - currents[0], g - currents[1], b - currents[2], a - currents[3] }; int[] beginLacks = lacks; float[] realLacks = { lacks[0], lacks[1], lacks[2], lacks[3] }; // Compute which value has the highest difference, which we will use to know when the function is done float highest = lacks.Aggregate(0, (current, i) => Mathf.Abs(i) > current ? Mathf.Abs(i) : current); float beginHighest = highest; // If we're not waiting for the end of function, go to the next line if (!waitEnd) scr.Call("CYFEventNextCommand"); // Slowly change the tone's color until we reach the requested one while (GameObject.Find("Tone") != null && highest > 0) { for (int i = 0; i < realLacks.Length; i++) realLacks[i] -= beginLacks[i] * 4 / beginHighest; if (highest <= 4) GameObject.Find("Tone").GetComponent().color = new Color32((byte)r, (byte)g, (byte)b, (byte)a); else { GameObject.Find("Tone").GetComponent().color = new Color32((byte)(r - Mathf.RoundToInt(realLacks[0])), (byte)(g - Mathf.RoundToInt(realLacks[1])), (byte)(b - Mathf.RoundToInt(realLacks[2])), (byte)(a - Mathf.RoundToInt(realLacks[3]))); } highest -= 4; yield return 0; } // If we're waiting for the end of function, go to the next line if (waitEnd) scr.Call("CYFEventNextCommand"); yield return 0; } /// /// Progressively rotates an event in 3D. /// /// Most coroutines have the same argument, which is a table of values. /// This one should include, in order: /// * string eventName - The name of the event to rotate. /// * float rotateX - Rotation value of the X axis in degrees. Might not end up as the same value as it was given due to how 3D rotation works. /// * float rotateY - Rotation value of the Y axis in degrees. Might not end up as the same value as it was given due to how 3D rotation works. /// * float rotateZ - Rotation value of the Z axis in degrees. Might not end up as the same value as it was given due to how 3D rotation works. /// * bool waitEnd - True if the script has to wait for the end of the coroutine, false otherwise. /// /// All coroutines must return an IEnumerator object, don't mind it. private IEnumerator IRotateEvent(object[] args) { ScriptWrapper scr = (ScriptWrapper)args[0]; // Retrieve all arguments string eventName; float rotateX, rotateY, rotateZ; bool waitEnd; try { eventName = (string)args[1]; } catch { throw new CYFException("The argument \"name\" must be a string."); } try { rotateX = (float)args[2]; } catch { throw new CYFException("The argument \"rotateX\" must be a number."); } try { rotateY = (float)args[3]; } catch { throw new CYFException("The argument \"rotateY\" must be a number."); } try { rotateZ = (float)args[4]; } catch { throw new CYFException("The argument \"rotateZ\" must be a number."); } try { waitEnd = (bool)args[5]; } catch { throw new CYFException("The argument \"waitEnd\" must be a boolean."); } if (waitEnd) // Stop if this function is used in a coroutine and we have to wait for the end of the function to continue if (coroutines.ContainsKey(scr) && script != scr) { UnitaleUtil.DisplayLuaError(scr.scriptname, "Event.Rotate: This function cannot be used in a coroutine with \"waitEnd\" set to true."); yield break; // Stop if this function is used in the initialization page of an event and we have to wait for the end of the function to continue } else if (eventsLoading) { UnitaleUtil.DisplayLuaError(scr.scriptname, "Event.Rotate: This function cannot be used in EventPage0 with \"waitEnd\" set to true."); yield break; } for (int i = 0; i < events.Count || eventName == "Player"; i++) { // Get the right event or the Player GameObject go = events[i]; if (eventName != go.name && eventName != "Player") continue; if (eventName == "Player") go = GameObject.Find("Player"); // Check if the target is already being rotated in another RotateEvent call ScriptWrapper isRotatingSource = eventName == "Player" ? go.GetComponent().isRotatingSource : go.GetComponent().isRotatingSource; // If it's in the right rotation, stop the target's rotation if (go.transform.rotation.eulerAngles.x == rotateX && go.transform.rotation.eulerAngles.y == rotateY && go.transform.rotation.eulerAngles.z == rotateZ) if (eventName == "Player") go.GetComponent().isRotatingSource = null; else go.GetComponent().isRotatingSource = null; // Properly end the current call of this coroutine if the target is already being moved if (isRotatingSource != null && isRotatingSource != scr && (eventName == "Player" ? go.GetComponent().isRotatingWaitEnd : go.GetComponent().isRotatingWaitEnd)) isRotatingSource.Call("CYFEventNextCommand"); // Update some values related to rotation if (eventName == "Player") { go.GetComponent().isRotatingSource = scr; go.GetComponent().isRotatingWaitEnd = waitEnd; } else { go.GetComponent().isRotatingSource = scr; go.GetComponent().isRotatingWaitEnd = waitEnd; } // If we're not waiting for the end of function, go to the next line if (!waitEnd) scr.Call("CYFEventNextCommand"); // Compute how many degrees are lacking before reaching the requested rotation float lackX = rotateX - go.transform.rotation.eulerAngles.x; float lackY = rotateY - go.transform.rotation.eulerAngles.y; float lackZ = rotateZ - go.transform.rotation.eulerAngles.z; // Compute which axis has the highest difference var highest = Mathf.Abs(lackX) > Mathf.Abs(lackY) ? lackX : lackY; highest = Mathf.Abs(highest) < Mathf.Abs(lackZ) ? lackZ : highest; bool reverse = highest > 0; var basisHighest = Mathf.Abs(highest); while (highest != 0) { // Progressively rotate the target 4 degrees at a time if ((highest > -4 && highest < 4)) break; go.transform.rotation = Quaternion.Euler(rotateX + ((basisHighest - Mathf.Abs(highest - basisHighest)) * lackX / basisHighest), rotateY + ((basisHighest - Mathf.Abs(highest - basisHighest)) * lackY / basisHighest), rotateZ + ((basisHighest - Mathf.Abs(highest - basisHighest)) * lackZ / basisHighest)); highest += reverse ? -4 : 4; yield return 0; } // Set the target's rotation to the requested rotation go.GetComponent().rotation = Quaternion.Euler(rotateX, rotateY, rotateZ); // Update some values related to rotation // TODO: Find a way to compress this code? Duplicate code if (eventName == "Player") { go.GetComponent().isRotatingSource = null; go.GetComponent().isRotatingWaitEnd = false; } else { go.GetComponent().isRotatingSource = null; go.GetComponent().isRotatingWaitEnd = false; } // If we're waiting for the end of function, go to the next line if (waitEnd) scr.Call("CYFEventNextCommand"); yield break; } // If the event can't be found, throw a warning in CYF's console UnitaleUtil.WriteInLogAndDebugger("Event.Rotate: The name you entered in the function isn't an event's name. Did you forget to add the 'Event' tag?"); scr.Call("CYFEventNextCommand"); yield return 0; } /// /// Fades the audio out over a given amount of frames. /// /// Most coroutines have the same argument, which is a table of values. /// This one should include, in order: /// * int fadeFrames - The amount of frames before the BGM is completely stopped. /// * bool waitEnd - True if the script has to wait for the end of the coroutine, false otherwise. /// /// All coroutines must return an IEnumerator object, don't mind it. private IEnumerator IFadeBGM(object[] args) { ScriptWrapper scr = luaScreenOw.appliedScript; // Retrieve all arguments int fadeFrames; bool waitEnd; try { fadeFrames = (int)args[0]; } catch { throw new CYFException("The argument \"fadeFrames\" must be an integer."); } try { waitEnd = (bool)args[1]; } catch { throw new CYFException("The argument \"waitEnd\" must be a boolean."); } if (waitEnd) // Stop if this function is used in a coroutine and we have to wait for the end of the function to continue if (coroutines.ContainsKey(scr) && script != scr) { UnitaleUtil.DisplayLuaError(scr.scriptname, "General.StopBGM: This function cannot be used in a coroutine with \"waitEnd\" set to true."); yield break; // Stop if this function is used in the initialization page of an event and we have to wait for the end of the function to continue } else if (eventsLoading) { UnitaleUtil.DisplayLuaError(scr.scriptname, "General.StopBGM: This function cannot be used in EventPage0 with \"waitEnd\" set to true."); yield break; } bgmCoroutine = true; // If we're not waiting for the end of function, go to the next line if (!waitEnd) scr.Call("CYFEventNextCommand"); // Get the current overworld audio AudioSource currentOverworldAudio = UnitaleUtil.GetCurrentOverworldAudio(); float frames = 0, startVolume = currentOverworldAudio.volume; // Fade the audio out over fadeFrames frames while (frames < fadeFrames) { currentOverworldAudio.volume = startVolume - (startVolume * frames / fadeFrames); frames++; yield return 0; } // Stop the audio and reset the volume currentOverworldAudio.Stop(); currentOverworldAudio.volume = startVolume; bgmCoroutine = false; // If we're waiting for the end of function, go to the next line if (!waitEnd) scr.Call("CYFEventNextCommand"); yield return 0; } /// /// Fades the audio out over a given amount of frames. /// /// Most coroutines have the same argument, which is a table of values. /// This one should include, in order: /// * int frames - The amount of frames during which the flash will be visible. /// * bool waitEnd - True if the script has to wait for the end of the coroutine, false otherwise. /// /// All coroutines must return an IEnumerator object, don't mind it. private IEnumerator IFlash(object[] args) { ScriptWrapper scr = luaScreenOw.appliedScript; // Retrieve all arguments int frames, colorR, colorG, colorB, colorA; bool waitEnd; try { frames = (int)args[0]; } catch { throw new CYFException("The argument \"frames\" must be a number."); } try { colorR = (int)args[1]; } catch { throw new CYFException("The argument \"colorR\" must be a number."); } try { colorG = (int)args[2]; } catch { throw new CYFException("The argument \"colorG\" must be a number."); } try { colorB = (int)args[3]; } catch { throw new CYFException("The argument \"colorB\" must be a number."); } try { colorA = (int)args[4]; } catch { throw new CYFException("The argument \"colorA\" must be a number."); } try { waitEnd = (bool)args[5]; } catch { throw new CYFException("The argument \"waitEnd\" must be a boolean."); } if (waitEnd) { // Stop if this function is used in a coroutine and we have to wait for the end of the function to continue if (coroutines.ContainsKey(scr) && script != scr) { UnitaleUtil.DisplayLuaError(scr.scriptname, "Screen.Flash: This function cannot be used in a coroutine with \"waitEnd\" set to true."); yield break; // Stop if this function is used in the initialization page of an event and we have to wait for the end of the function to continue } if (eventsLoading) { UnitaleUtil.DisplayLuaError(scr.scriptname, "Screen.Flash: This function cannot be used in EventPage0 with \"waitEnd\" set to true."); yield break; } } // If we're not waiting for the end of function, go to the next line if (!waitEnd) scr.Call("CYFEventNextCommand"); // Create a new GameObject named 'flash' at the middle of the screen GameObject flash = new GameObject("flash", typeof(Image)); flash.transform.SetParent(GameObject.Find("Canvas OW").transform); flash.transform.position = Camera.main.transform.position + new Vector3(0, 0, 1); flash.GetComponent().sizeDelta = new Vector2(1000, 800); // Change the flash's color and fade it out over time flash.GetComponent().color = new Color32((byte)colorR, (byte)colorG, (byte)colorB, (byte)colorA); for (int frame = 0; frame < frames; frame++) { if (frame != 0) flash.GetComponent().color = new Color32((byte)colorR, (byte)colorG, (byte)colorB, (byte)(colorA - colorA * frame / frames)); yield return 0; } Destroy(flash); // If we're waiting for the end of function, go to the next line if (waitEnd) scr.Call("CYFEventNextCommand"); yield return 0; } /// /// Displays a window for the Player to save the game, or save the game forcefully. /// /// Most coroutines have the same argument, which is a table of values. /// This one should include, in order: /// * bool forced - True to prevent the save dialogue to appear and save regardless of the Player's choice. /// /// All coroutines must return an IEnumerator object, don't mind it. private IEnumerator ISave(object[] args) { ScriptWrapper scr = luaGeneralOw.appliedScript; // Retrieve all arguments bool forced; try { forced = (bool)args[0]; } catch { throw new CYFException("The argument \"forced\" must be a boolean."); } if (forced) { // Save the game immediately if requested SaveLoad.Save(true); if (scr != null) scr.Call("CYFEventNextCommand"); yield break; } // Stop if this function is used in a coroutine and the save prompt must be displayed if (coroutines.ContainsKey(scr) && script != scr) { UnitaleUtil.DisplayLuaError(scr.scriptname, "General.Save: This function cannot be used in a coroutine."); yield break; } // Stop if this function is used in the initialization page of an event and the save prompt must be displayed if (eventsLoading) { UnitaleUtil.DisplayLuaError(scr.scriptname, "General.Save: This function cannot be used in EventPage0."); yield break; } bool save = true; Color c = PlayerOverworld.instance.utHeart.color; // Move the Player to the first choice of the save dialogue box and display it PlayerOverworld.instance.utHeart.transform.position = new Vector3(151 + Camera.main.transform.position.x - 320, 224 + Camera.main.transform.position.y - 240, PlayerOverworld.instance.utHeart.transform.position.z); PlayerOverworld.instance.utHeart.color = new Color(c.r, c.g, c.b, 1); // Display the save dialogue box GameObject.Find("save_border_outer").GetComponent().color = new Color(1, 1, 1, 1); GameObject.Find("save_interior").GetComponent().color = new Color(0, 0, 0, 1); GameObject.Find("save_border_outer").transform.SetAsLastSibling(); PlayerOverworld.instance.utHeart.transform.SetAsLastSibling(); // Retrieve all of the save dialogue box's texts TextManager txtLevel = GameObject.Find("TextManagerLevel").GetComponent(), txtTime = GameObject.Find("TextManagerTime").GetComponent(), txtMap = GameObject.Find("TextManagerMap").GetComponent(), txtName = GameObject.Find("TextManagerName").GetComponent(), txtSave = GameObject.Find("TextManagerSave").GetComponent(), txtReturn = GameObject.Find("TextManagerReturn").GetComponent(); // Update all of the save dialogue box's texts if (SaveLoad.savedGame != null) { var playerName = SaveLoad.savedGame.player.Name; double playerLevel = SaveLoad.savedGame.player.LV; txtName.SetTextQueue(new[] { new TextMessage("[charspacing:2]" + playerName, false, true) }); txtLevel.SetTextQueue(new[] { new TextMessage("[charspacing:2]LV" + playerLevel, false, true) }); txtTime.SetTextQueue(new[] { new TextMessage("[charspacing:2]" + UnitaleUtil.TimeFormatter(SaveLoad.savedGame.playerTime), false, true) }); GameObject.Find("TextManagerTime").GetComponent().MoveTo(180f - UnitaleUtil.PredictTextWidth(txtTime), 68); txtMap.SetTextQueue(new[] { new TextMessage("[charspacing:2]" + SaveLoad.savedGame.lastScene, false, true) }); } else { txtName.SetTextQueue(new[] { new TextMessage("[charspacing:2]EMPTY", false, true) }); txtLevel.SetTextQueue(new[] { new TextMessage("[charspacing:2]LV0", false, true) }); txtTime.SetTextQueue(new[] { new TextMessage("[charspacing:2]0:00", false, true) }); GameObject.Find("TextManagerTime").GetComponent().MoveTo(130f, 68); txtMap.SetTextQueue(new[] { new TextMessage("[charspacing:2]--", false, true) }); } txtSave.SetTextQueue(new[] { new TextMessage("[charspacing:2]Save", false, true) }); txtReturn.SetTextQueue(new[] { new TextMessage("[charspacing:2]Return", false, true) }); // Hide the text dialogue box GameObject.Find("Mugshot").GetComponent().color = new Color(1, 1, 1, 0); GameObject.Find("textframe_border_outer").GetComponent().color = new Color(1, 1, 1, 0); GameObject.Find("textframe_interior").GetComponent().color = new Color(0, 0, 0, 0); yield return 0; // Main loop of the save dialogue bool end = false; while (true) { // Move the soul in front of the current selected option if one of the Left or Right keys are pressed if (GlobalControls.input.Left == ButtonState.PRESSED || GlobalControls.input.Right == ButtonState.PRESSED) { PlayerOverworld.instance.utHeart.transform.position = new Vector3((save ? 331 : 151) + Camera.main.transform.position.x - 320, PlayerOverworld.instance.utHeart.transform.position.y, PlayerOverworld.instance.utHeart.transform.position.z); save = !save; // Select automatically "Return" if a Cancel key has been pressed } else if (GlobalControls.input.Cancel == ButtonState.PRESSED) { end = true; // Choose the currently selected option if a Confirm key has been pressed } else if (GlobalControls.input.Confirm == ButtonState.PRESSED) { if (save) { // Save the game SaveLoad.Save(true); // Update the save dialogue box's data PlayerOverworld.instance.utHeart.color = new Color(c.r, c.g, c.b, 0); txtName.SetTextQueue(new[] { new TextMessage("[charspacing:2]" + PlayerCharacter.instance.Name, false, true) }); txtLevel.SetTextQueue(new[] { new TextMessage("[charspacing:2]LV" + PlayerCharacter.instance.LV, false, true) }); txtTime.SetTextQueue(new[] { new TextMessage("[charspacing:2]" + UnitaleUtil.TimeFormatter(SaveLoad.savedGame.playerTime), false, true) }); GameObject.Find("TextManagerTime").GetComponent().MoveTo(180f - UnitaleUtil.PredictTextWidth(txtTime), 68); txtMap.SetTextQueue(new[] { new TextMessage("[charspacing:2]" + SaveLoad.savedGame.lastScene, false, true) }); txtSave.SetTextQueue(new[] { new TextMessage("[charspacing:2]File saved.", false, true) }); txtReturn.SetTextQueue(new[] { new TextMessage("[charspacing:2]", false, true) }); foreach (Image img in GameObject.Find("save_interior").transform.GetComponentsInChildren()) img.color = new Color(1, 1, 0, 1); GameObject.Find("save_interior").GetComponent().color = new Color(0, 0, 0, 1); GameObject.Find("Player").GetComponent().PlayOneShot(AudioClipRegistry.GetSound("saved")); GameObject.Find("Mugshot").GetComponent().color = new Color(1, 1, 1, 0); GameObject.Find("textframe_border_outer").GetComponent().color = new Color(1, 1, 1, 0); GameObject.Find("textframe_interior").GetComponent().color = new Color(0, 0, 0, 0); // Wait until the Player presses the Confirm key again do { passPressOnce = true; yield return 0; } while (GlobalControls.input.Confirm != ButtonState.PRESSED); } end = true; } // Hides the save dialogue box if (end) { PlayerOverworld.instance.utHeart.color = new Color(c.r, c.g, c.b, 0); txtName.HideTextObject(); txtLevel.HideTextObject(); txtTime.HideTextObject(); txtMap.HideTextObject(); txtSave.HideTextObject(); txtReturn.HideTextObject(); GameObject.Find("save_border_outer").GetComponent().color = new Color(1, 1, 1, 0); GameObject.Find("save_interior").GetComponent().color = new Color(0, 0, 0, 0); script.Call("CYFEventNextCommand"); yield break; } yield return 0; } } /// /// Moves the overworld camera by a given amount of pixels horizontally and vertically, possibly in a straight line. /// /// Most coroutines have the same argument, which is a table of values. /// This one should include, in order: /// * int pixX - Amount of pixels to move the camera by horizontally. /// * int pixY - Amount of pixels to move the camera by vertically. /// * int speed - Amount of pixels the camera will move by each frame. /// * bool straightLine - True if you want the camera to move in a straight line to its destination, false otherwise. /// * bool waitEnd - True if the script has to wait for the end of the coroutine, false otherwise. /// * string info - Internal value used to display the name of the function calling this coroutine in case of an error. /// /// All coroutines must return an IEnumerator object, don't mind it. private IEnumerator IMoveCamera(object[] args) { ScriptWrapper scr = luaScreenOw.appliedScript; // Retrieve all arguments int pixX, pixY, speed; bool straightLine, waitEnd; string info; try { pixX = (int)args[0]; } catch { throw new CYFException("The argument \"pixX\" must be a number."); } try { pixY = (int)args[1]; } catch { throw new CYFException("The argument \"pixY\" must be a number."); } try { speed = (int)args[2]; } catch { throw new CYFException("The argument \"speed\" must be a number."); } try { straightLine = (bool)args[3]; } catch { throw new CYFException("The argument \"straightLine\" must be a boolean."); } try { waitEnd = (bool)args[4]; } catch { throw new CYFException("The argument \"waitEnd\" must be a boolean."); } try { info = (string)args[5]; } catch { throw new CYFException("The argument \"info\" must be a string."); } // Stop if this function is used in a coroutine and we have to wait for the end of the function to continue if (coroutines.ContainsKey(scr) && script != scr && waitEnd) { UnitaleUtil.DisplayLuaError(instance.events[instance.actualEventIndex].name, info + ": This function cannot be used in a coroutine with \"waitEnd\" set to true."); yield break; } // Stop if this function is used in the initialization page of an event and we have to wait for the end of the function to continue if (eventsLoading) { UnitaleUtil.DisplayLuaError(instance.events[instance.actualEventIndex].name, info + ": This function cannot be used in EventPage0 with \"waitEnd\" set to true."); yield break; } // Stop if the camera's speed is negative as it will cause an infinite loop. if (speed <= 0) { UnitaleUtil.DisplayLuaError(instance.events[instance.actualEventIndex].name, info + ": The speed of the camera must be strictly positive."); yield break; } // Compute the horizontal and vertical moving speed of the camera float currentX = PlayerOverworld.instance.cameraShift.x, currentY = PlayerOverworld.instance.cameraShift.y, xSpeed = currentX > pixX ? -speed : speed, ySpeed = currentY > pixY ? -speed : speed; if (straightLine) { Vector2 clamped = Vector2.ClampMagnitude(new Vector2(pixX - currentX, pixY - currentY), speed); xSpeed = clamped.x; ySpeed = clamped.y; } // If we're not waiting for the end of function, go to the next line if (!waitEnd) scr.Call("CYFEventNextCommand"); while (currentX != pixX || currentY != pixY) { // Move the camera horizontally if it's not where it should be if (currentX != pixX) if (Mathf.Abs(xSpeed) < Mathf.Abs(pixX - currentX)) { currentX += xSpeed; PlayerOverworld.instance.cameraShift.x += xSpeed; // Move the camera to its final x position if the camera's speed is greater than the distance between the camera's position and the camera's final position } else { currentX = pixX; PlayerOverworld.instance.cameraShift.x = pixX; } // Move the camera vertically if it's not where it should be if (currentY != pixY) if (Mathf.Abs(ySpeed) < Mathf.Abs(pixY - currentY)) { currentY += ySpeed; PlayerOverworld.instance.cameraShift.y += ySpeed; // Move the camera to its final y position if the camera's speed is greater than the distance between the camera's position and the camera's final position } else { currentY = pixY; PlayerOverworld.instance.cameraShift.y = pixY; } yield return 0; } // If we're waiting for the end of function, go to the next line if (waitEnd) scr.Call("CYFEventNextCommand"); yield return 0; } /// /// Waits for a given amount of frames before resuming the function's execution. /// /// Frames to wait for before resuming the script's execution. There are 60 frames per second. /// All coroutines must return an IEnumerator object, don't mind it. private IEnumerator IWait(int frames) { ScriptWrapper scr = luaGeneralOw.appliedScript; // Stop if this function is used in a coroutine and we have to wait for the end of the function to continue if (coroutines.ContainsKey(scr) && script != scr) { UnitaleUtil.DisplayLuaError(scr.scriptname, "General.Wait: This function cannot be used in a coroutine."); yield break; } // Stop if this function is used in the initialization page of an event and we have to wait for the end of the function to continue if (eventsLoading) { UnitaleUtil.DisplayLuaError(scr.scriptname, "General.Wait: This function cannot be used in EventPage0."); yield break; } // Wait for a given amount of frames int curr = 0; while (curr != frames) { curr++; yield return 0; } // Go to the next function if this function hasn't been interrupted if (scr.GetVar("CYFEventLastAction").String == "General.Wait") scr.Call("CYFEventNextCommand"); yield return 0; } /// /// Fades the screen out and sends the Player to a Shop. /// /// True if you want to be sent to the Shop instantaneously. /// All coroutines must return an IEnumerator object, don't mind it. private IEnumerator IEnterShop(bool instant) { ScriptWrapper scr = luaGeneralOw.appliedScript; // Stop if this function is used in a coroutine and we have to wait for the end of the function to continue if (coroutines.ContainsKey(scr) && script != scr) { UnitaleUtil.DisplayLuaError(scr.scriptname, "General.EnterShop: This function cannot be used in a coroutine."); yield break; } // Stop if this function is used in the initialization page of an event and we have to wait for the end of the function to continue if (eventsLoading) { UnitaleUtil.DisplayLuaError(scr.scriptname, "General.EnterShop: This function cannot be used in EventPage0."); yield break; } // Fade the screen out for a second if (!instant) { Fading fade = FindObjectOfType(); float fadeTime = fade.BeginFade(1); yield return new WaitForSeconds(fadeTime); } // End this event EndEvent(); // Teleport the Player to a standard Shop scene and configure the shop PlayerOverworld.HideOverworld("Shop"); GlobalControls.isInShop = true; SceneManager.LoadScene("Shop", LoadSceneMode.Additive); yield return 0; } /// /// Spawns the box menu, allowing the Player to store items in it. /// /// All coroutines must return an IEnumerator object, don't mind it. private IEnumerator ISpawnBoxMenu() { ScriptWrapper scr = luaInventoryOw.appliedScript; // Add the component that takes care of the item box to the item box UI GameObject.Find("itembox").AddComponent(); // Prevent the Player from doing anything while the menu is up PlayerOverworld.instance.PlayerNoMove = true; yield return 0; // Prevent the Player from doing anything while the menu is up again, in case the first call was reverted PlayerOverworld.instance.PlayerNoMove = true; // Wait until the item box component is deleted while (ItemBoxUI.active) yield return 0; scr.Call("CYFEventNextCommand"); yield return 0; } } ================================================ FILE: Assets/Scripts/Overworld/EventManager.cs.meta ================================================ fileFormatVersion: 2 guid: a642b03daace7a24b85df7b6296af679 timeCreated: 1497559775 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 600 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Overworld/EventOW.cs ================================================ using UnityEngine; using System.Collections.Generic; public class EventOW : MonoBehaviour { public string scriptToLoad; public int actualPage; public List eventTriggers = new List(); public float moveSpeed; [HideInInspector] public ScriptWrapper isMovingSource; [HideInInspector] public bool isMovingWaitEnd = false; [HideInInspector] public ScriptWrapper isRotatingSource; [HideInInspector] public bool isRotatingWaitEnd = false; public void OnTriggerEnter2D(Collider2D col) { if (EventManager.instance.readyToReLaunch || EventManager.instance.script != null || EventManager.instance.ScriptRunning || EventManager.instance.eventsLoading || PlayerOverworld.instance.inBattleAnim || PlayerOverworld.instance.menuRunning[2]) return; if (EventManager.instance.GetTrigger(gameObject, actualPage) == 1 && col == GameObject.Find("Player").GetComponent()) EventManager.instance.ExecuteEvent(gameObject); } } ================================================ FILE: Assets/Scripts/Overworld/EventOW.cs.meta ================================================ fileFormatVersion: 2 guid: 846d0d1a9b9e1c14884c79473a1f1d14 timeCreated: 1461397834 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Overworld/Fading.cs ================================================ using UnityEngine; public class Fading : MonoBehaviour { public SpriteRenderer fade; // The texture that will overlay the screen. This can be a black image or a loading graphic [HideInInspector] public float fadeSpeed = 3f; // The fading speed public float alpha = 1.0f; // The texture's alpha between 0 and 1 private int fadeDir = 1; // The direction to fade : in = -1 or out = 1 private bool eventSent; public delegate void LoadedAction(); public static event LoadedAction FinishFade; public static event LoadedAction StartFade; private void Update() { if (fade == null) fade = GetComponent(); if ((fade.color.a > 0 && fadeDir == -1) || (fade.color.a < 1 && fadeDir == 1)) { // Fade in/out the alpha value using a direction, a speed and Time.deltatime to convert the operations to seconds alpha += fadeDir * fadeSpeed * Time.deltaTime; // Force (clamp) the number between 0 and 1 because GUI.color uses alpha values between 0 and 1 //alpha = Mathf.Clamp01(alpha); //print(alpha); fade.color = new Color(0, 0, 0, alpha); } else if (!eventSent) { eventSent = true; if (FinishFade != null) FinishFade(); } /*GUI.color = new Color(GUI.color.r, GUI.color.g, GUI.color.b, alpha); // Set the alpha value GUI.depth = drawDepth; // Make the black texture render on top (drawn last) GUI.DrawTexture(new Rect(0, 0, Screen.width, Screen.height), fadeOutTexture); // Draw the texture to fit the entire screen area*/ } // Sets fadeDir to the direction parameter making the scene fade in if -1 and out if 1 public float BeginFade(int direction) { gameObject.transform.SetAsLastSibling(); fadeDir = direction; eventSent = false; alpha = direction == 1 ? 0 : 1; fade.color = new Color(0, 0, 0, alpha); if (StartFade != null && StaticInits.MODFOLDER != "@Title") StartFade(); return 1f / fadeSpeed; // Return the fadeSpeed variable so it's easy to time the Application.LoadLevel(); } public void FadeInstant(int direction, bool needSig = false) { gameObject.transform.SetAsLastSibling(); fadeDir = direction; alpha = direction == 1 ? 1 : 0; fade.color = new Color(0, 0, 0, alpha); if (!needSig || FinishFade == null) return; if (StartFade != null) StartFade(); FinishFade(); } // LoadScene is called when a level is loaded. It takes loaded level index (int) as a parameter so you can limit the fade in to certain scenes /*public void LoadScene(Scene scene, LoadSceneMode mode) { string index = SceneManager.GetActiveScene().name; if (!GlobalControls.nonOWScenes.Contains(index)) { BeginFade(-1); // Call the fade in function } }*/ } ================================================ FILE: Assets/Scripts/Overworld/Fading.cs.meta ================================================ fileFormatVersion: 2 guid: 6d1238b2133fb7f43b3ff2efc445e7d3 timeCreated: 1459034449 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Overworld/GameState.cs ================================================ using UnityEngine; using UnityEngine.SceneManagement; using System.Linq; using System.Collections; using System.Collections.Generic; using MoonSharp.Interpreter; /// /// Class used as a database that is saved and loaded during the game. /// Is used as the savefile in SaveLoad. /// [System.Serializable] public class GameState { public static GameState current; public Hashtable soundDictionary; public ControlPanel controlpanel; public PlayerCharacter player; public Dictionary playerVariablesStr = new Dictionary(); public Dictionary playerVariablesNum = new Dictionary(); public Dictionary playerVariablesBool = new Dictionary(); public string lastScene; public Dictionary mapInfos = new Dictionary(); public Dictionary tempMapInfos = new Dictionary(); public List inventory = new List(); public List boxContents = new List(); public float playerTime; public string CYFversion = ""; [System.Serializable] public struct EventInfos { public int CurrPage; public bool NoCollision; public string CurrSpriteNameOrCYFAnim; public Vect Anchor; public Vect Pivot; } [System.Serializable] public struct MapData { public string Name; public string Music; public string ModToLoad; public bool MusicKept; public bool NoRandomEncounter; public Dictionary EventInfo; } [System.Serializable] public struct TempMapData { public string Name; public string Music; public bool MusicChanged; public string ModToLoad; public bool ModToLoadChanged; public bool MusicKept; public bool MusicKeptChanged; public bool NoRandomEncounter; public bool NoRandomEncounterChanged; } [System.Serializable] public struct Vect { public float x; public float y; public float z; } public void SaveGameVariables() { CYFversion = GlobalControls.CYFversion; try { GameObject Player = GameObject.Find("Player"); LuaScriptBinder.SetSessionGlobal("PlayerPosX", DynValue.NewNumber(Player.transform.position.x)); LuaScriptBinder.SetSessionGlobal("PlayerPosY", DynValue.NewNumber(Player.transform.position.y)); LuaScriptBinder.SetSessionGlobal("PlayerPosZ", DynValue.NewNumber(Player.transform.position.z)); } catch { LuaScriptBinder.SetSessionGlobal("PlayerPosX", DynValue.NewNumber(SaveLoad.savedGame.playerVariablesNum["PlayerPosX"])); LuaScriptBinder.SetSessionGlobal("PlayerPosY", DynValue.NewNumber(SaveLoad.savedGame.playerVariablesNum["PlayerPosY"])); LuaScriptBinder.SetSessionGlobal("PlayerPosZ", DynValue.NewNumber(SaveLoad.savedGame.playerVariablesNum["PlayerPosZ"])); } string mapName; if (UnitaleUtil.MapCorrespondanceList.ContainsKey(SceneManager.GetActiveScene().name)) mapName = UnitaleUtil.MapCorrespondanceList[SceneManager.GetActiveScene().name]; else if (GlobalControls.nonOWScenes.Contains(SceneManager.GetActiveScene().name) || GlobalControls.isInFight) mapName = SaveLoad.savedGame.lastScene; else mapName = SceneManager.GetActiveScene().name; lastScene = mapName; soundDictionary = MusicManager.hiddenDictionary; controlpanel = ControlPanel.instance; player = PlayerCharacter.instance; inventory.Clear(); foreach (UnderItem item in Inventory.inventory) inventory.Add(item.Name); boxContents.Clear(); foreach (UnderItem item in ItemBox.items) boxContents.Add(item.Name); playerTime = Time.time - GlobalControls.overworldTimestamp; try { foreach (string key in LuaScriptBinder.GetAllSessionGlobals().Keys) { DynValue dv; LuaScriptBinder.GetAllSessionGlobals().TryGetValue(key, out dv); switch (dv.Type) { case DataType.Number: playerVariablesNum.Add(key, dv.Number); break; case DataType.String: playerVariablesStr.Add(key, dv.String); break; case DataType.Boolean: playerVariablesBool.Add(key, dv.Boolean); break; case DataType.Nil: LuaScriptBinder.RemoveSessionGlobal(key); break; default: UnitaleUtil.WriteInLogAndDebugger("The saved value \"" + key + "\" is erroneous because a " + dv.Type.ToString().ToLower() + " can't be saved. Deleting it now."); LuaScriptBinder.RemoveSessionGlobal(key); break; } } } catch { /* ignored */ } mapInfos = GlobalControls.GameMapData; tempMapInfos = GlobalControls.TempGameMapData; } public void LoadGameVariables(bool loadGlobals = true) { GlobalControls.TempGameMapData = tempMapInfos; GlobalControls.GameMapData = mapInfos; foreach (string key in playerVariablesNum.Keys) { if (!loadGlobals && !key.Contains("PlayerPos")) continue; double a; playerVariablesNum.TryGetValue(key, out a); LuaScriptBinder.SetSessionGlobal(key, DynValue.NewNumber(a)); } if (loadGlobals) { foreach (string key in playerVariablesStr.Keys) { string a; playerVariablesStr.TryGetValue(key, out a); LuaScriptBinder.SetSessionGlobal(key, DynValue.NewString(a)); } foreach (string key in playerVariablesBool.Keys) { bool a; playerVariablesBool.TryGetValue(key, out a); LuaScriptBinder.SetSessionGlobal(key, DynValue.NewBoolean(a)); } } Inventory.inventory.Clear(); foreach (string str in inventory) Inventory.inventory.Add(new UnderItem(str)); ItemBox.items.Clear(); foreach (string str in boxContents) ItemBox.items.Add(new UnderItem(str)); PlayerCharacter.instance = player; ControlPanel.instance = controlpanel; MusicManager.hiddenDictionary = soundDictionary; string mapName = UnitaleUtil.MapCorrespondanceList.ContainsValue(lastScene) ? UnitaleUtil.MapCorrespondanceList.FirstOrDefault(x => x.Value == lastScene).Key : lastScene; LuaScriptBinder.SetSessionGlobal("PlayerMap", DynValue.NewString(mapName)); } } ================================================ FILE: Assets/Scripts/Overworld/GameState.cs.meta ================================================ fileFormatVersion: 2 guid: 4243c54affe4cdf45bd33458a0a03768 timeCreated: 1463846231 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Overworld/IntroManager.cs ================================================ using System; using UnityEngine; using UnityEngine.UI; using UnityEngine.SceneManagement; public class IntroManager : MonoBehaviour { private TextManager text; private Image img; public string[] imagePaths, textsToDisplay, specialEffects, goToNextDirect; private bool finish, start = true, pause, fadeMusic, sameImage, mask; private float timer, timerEffect; private int currentIndex; private enum Effect { NONE, SCROLLUP, SCROLLDOWN, SCROLLLEFT, SCROLLRIGHT }; private Effect currentEffect = Effect.NONE; // Use this for initialization private void Start () { if (!SaveLoad.started) { StaticInits.Start(); SaveLoad.Start(); new ControlPanel(); new PlayerCharacter(); #if UNITY_STANDALONE_WIN || UNITY_EDITOR_WIN Misc.WindowName = GlobalControls.crate ? ControlPanel.instance.WinodwBsaisNmae : ControlPanel.instance.WindowBasisName; #endif SaveLoad.LoadPermanentGlobals(); LuaScriptBinder.SetSessionGlobal("ModFolder", MoonSharp.Interpreter.DynValue.NewString("@Title")); UnitaleUtil.AddKeysToMapCorrespondanceList(); } Camera.main.GetComponent().clip = AudioClipRegistry.GetMusic("mus_intro"); Camera.main.GetComponent().Play(); if (imagePaths.Length != textsToDisplay.Length) throw new Exception("You need to have the same number of images and lines of text."); text = FindObjectOfType(); img = GameObject.Find("CutsceneImages").GetComponent(); text.SetVerticalSpacing(6); text.SetHorizontalSpacing(6); if (SpriteRegistry.Get("Intro/mask") != null) { mask = true; GameObject.Find("Mask").GetComponent().sprite = SpriteRegistry.Get("Intro/mask"); GameObject.Find("Mask").GetComponent().color = new Color(1, 1, 1, 1); } TextMessage[] mess = new TextMessage[textsToDisplay.Length]; for (int i = 0; i < mess.Length; i ++) mess[i] = new TextMessage("[waitall:2]" + textsToDisplay[i], false, false); text.SetTextQueue(mess); img.sprite = SpriteRegistry.Get("Intro/" + imagePaths[0]); img.SetNativeSize(); if (specialEffects[0] != string.Empty) try { ApplyEffect((Effect)Enum.Parse(typeof(Effect), specialEffects[currentIndex].ToUpper())); } catch { UnitaleUtil.DisplayLuaError("IntroManager", "The effect " + specialEffects[currentIndex] + " doesn't exist."); } if (goToNextDirect[0] == "Y") timer = 0.5f; } // Update is called once per frame private void Update () { timer += Time.deltaTime; //Effect update if (CheckEffect() &&!start &&!finish &&!fadeMusic) UpdateEffect(); //Stop the intro if (Input.anyKeyDown && !Input.GetKeyDown(KeyCode.F4)) { Camera.main.GetComponent().Stop(); Camera.main.GetComponent().volume = 1; SceneManager.LoadScene("TitleScreen"); } //Fade out if (finish &&!fadeMusic &&!CheckEffect()) { if (timer < 1.75f &&!pause) pause = true; if (timer < 1.75f && timer > 1 &&!sameImage) img.color = new Color(img.color.r, img.color.g, img.color.b, (-timer + 1.75f) * 4/3); else if (timer > 1.75f && pause) { pause = false; timer = 0.0f; finish = false; img.color = new Color(img.color.r, img.color.g, img.color.b, 0); //Check end of intro if (text.AllLinesComplete()) { fadeMusic = true; text.HideTextObject(); } else { img.sprite = SpriteRegistry.Get("Intro/" + imagePaths[++currentIndex]); img.SetNativeSize(); img.rectTransform.pivot = new Vector2(0.5f, 0.5f); img.rectTransform.position = new Vector2(320, 240); timerEffect = 0.0f; if (specialEffects[currentIndex] != string.Empty) try { ApplyEffect((Effect)Enum.Parse(typeof(Effect), specialEffects[currentIndex])); } catch { UnitaleUtil.DisplayLuaError("IntroManager", "The effect " + specialEffects[currentIndex] + " doesn't exist."); } text.NextLineText(); start = true; } } } //Fade in else if (start &&!fadeMusic) { if (timer < 0.5f &&!sameImage) img.color = new Color(img.color.r, img.color.g, img.color.b, 2 * timer); else { start = false; img.color = new Color(img.color.r, img.color.g, img.color.b, 1); timer = 0.0f; if (currentIndex != textsToDisplay.Length - 1) switch (goToNextDirect[currentIndex + 1]) { case "Y": sameImage = true; break; case "N": sameImage = false; break; default: sameImage = imagePaths[currentIndex] == imagePaths[currentIndex + 1]; break; } else sameImage = false; } } //End of intro else if (fadeMusic) { if (timer < 1) Camera.main.GetComponent().volume = 1 - timer; else { Camera.main.GetComponent().Stop(); Camera.main.GetComponent().volume = 1; SceneManager.LoadScene("TitleScreen"); } } //End of current page else if (text.LineComplete() &&!start &&!CheckEffect()) { finish = true; timer = 0; } } private void ApplyEffect(Effect e) { currentEffect = e; switch(e) { case Effect.SCROLLUP: if (img.rectTransform.sizeDelta.y < (mask ? 220 : 480)) UnitaleUtil.DisplayLuaError("IntroManager", "You can't apply a scroll down effect on an image which has a lower y boundary than the screen's y boundary."); img.rectTransform.pivot = new Vector2(0.5f, 1); img.rectTransform.position = new Vector2(img.rectTransform.position.x, mask ? img.rectTransform.sizeDelta.y + 204 : img.rectTransform.sizeDelta.y); break; case Effect.SCROLLDOWN: if (img.rectTransform.sizeDelta.y < (mask ? 220 : 480)) UnitaleUtil.DisplayLuaError("IntroManager", "You can't apply a scroll down effect on an image which has a lower y boundary than the screen's y boundary."); img.rectTransform.pivot = new Vector2(0.5f, 0); img.rectTransform.position = new Vector2(img.rectTransform.position.x, mask ? 424 - img.rectTransform.sizeDelta.y : 480 - img.rectTransform.sizeDelta.y); break; case Effect.SCROLLLEFT: if (img.rectTransform.sizeDelta.x < (mask ? 400 : 640)) UnitaleUtil.DisplayLuaError("IntroManager", "You can't apply a scroll down effect on an image which has a lower x boundary than the screen's x boundary."); img.rectTransform.pivot = new Vector2(0, 0.5f); img.rectTransform.position = new Vector2(mask ? 520 - img.rectTransform.sizeDelta.x : 640 - img.rectTransform.sizeDelta.y, img.rectTransform.position.y); break; case Effect.SCROLLRIGHT: if (img.rectTransform.sizeDelta.x < (mask ? 400 : 640)) UnitaleUtil.DisplayLuaError("IntroManager", "You can't apply a scroll down effect on an image which has a lower x boundary than the screen's x boundary."); img.rectTransform.pivot = new Vector2(1, 0.5f); img.rectTransform.position = new Vector2(mask ? img.rectTransform.sizeDelta.x + 120 : img.rectTransform.sizeDelta.x, img.rectTransform.position.y); break; } } private void UpdateEffect() { if (timerEffect < 4) timerEffect += Time.deltaTime; else switch (currentEffect) { case Effect.SCROLLUP: img.rectTransform.position = new Vector2(img.rectTransform.position.x, img.rectTransform.position.y - 1); break; case Effect.SCROLLDOWN: img.rectTransform.position = new Vector2(img.rectTransform.position.x, img.rectTransform.position.y + 1); break; case Effect.SCROLLRIGHT: img.rectTransform.position = new Vector2(img.rectTransform.position.x + 1, img.rectTransform.position.y); break; case Effect.SCROLLLEFT: img.rectTransform.position = new Vector2(img.rectTransform.position.x - 1, img.rectTransform.position.y); break; } } private bool CheckEffect() { switch (currentEffect) { case Effect.SCROLLUP: return img.rectTransform.position.y > (mask ? 424 : 480); case Effect.SCROLLDOWN: return img.rectTransform.position.y < (mask ? 204 : 0); case Effect.SCROLLRIGHT: return img.rectTransform.position.x < (mask ? 120 : 0); case Effect.SCROLLLEFT: return img.rectTransform.position.x > (mask ? 520 : 640); default: return false; } } } ================================================ FILE: Assets/Scripts/Overworld/IntroManager.cs.meta ================================================ fileFormatVersion: 2 guid: 6745c757768b2134396024317226f9a7 timeCreated: 1483298847 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Overworld/ItemBoxUI.cs ================================================ using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using MoonSharp.Interpreter; public class ItemBoxUI : MonoBehaviour { private readonly List inventory = new List(); private readonly List inventorySprites = new List(); private readonly List boxContents = new List(); private readonly List boxContentsSprites = new List(); private GameObject player; private bool inventoryColumn = true; private int lineIndex; public static bool active; private void Start() { if (Inventory.inventory.Count == 0 && ItemBox.items.Count == 0) { System.Random rnd = new System.Random(); string[] words = { "effort", "time", "feeling" }; Table text = new Table(EventManager.instance.luaInventoryOw.appliedScript.script); text.Set(DynValue.NewNumber(1), DynValue.NewString("You have no items.[w:10]\nYou put a little " + words[rnd.Next(0, 3)] + "\rinto the box.")); EventManager.instance.luaGeneralOw.SetDialog(DynValue.NewTable(text)); Destroy(this); return; } active = true; GetComponent().color = new Color(1, 1, 1, 1); player = GameObject.Find("utHeartMenu"); Color c = player.GetComponent().color; player.GetComponent().color = new Color(c.r, c.g, c.b, 1); for (int i = 0; i < Inventory.inventorySize; i++) { GameObject go = new GameObject(); go.AddComponent(); go.AddComponent(); TextManager tm = go.GetComponent(); tm.transform.SetParent(transform); tm.MoveTo(80, 410 - (i * 32)); inventory.Add(tm); LuaSpriteController sprite = (LuaSpriteController) (SpriteUtil.MakeIngameSprite("px", -1).UserData.Object); sprite.img.transform.SetParent(transform); sprite.SetPivot(0, 0.5f); sprite.MoveToAbs(Misc.cameraX + 92, Misc.cameraY + 386 - (i * 32)); sprite.xscale = 190; sprite.color = new[] { 1f, 0f, 0f }; inventorySprites.Add(sprite); } for (int i = 0; i < ItemBox.capacity; i++) { GameObject go = new GameObject(); go.AddComponent(); go.AddComponent(); TextManager tm = go.GetComponent(); tm.transform.SetParent(transform); tm.MoveTo(372, 410 - (i * 32)); boxContents.Add(tm); LuaSpriteController sprite = (LuaSpriteController) (SpriteUtil.MakeIngameSprite("px", -1).UserData.Object); sprite.img.transform.SetParent(transform); sprite.SetPivot(0, 0.5f); sprite.MoveToAbs(Misc.cameraX + 384, Misc.cameraY + 386 - (i * 32)); sprite.xscale = 190; sprite.color = new[] { 1f, 0f, 0f }; boxContentsSprites.Add(sprite); } RefreshDisplay(); } // Update is called once per frame private void Update() { if (GlobalControls.input.Confirm == ButtonState.PRESSED) { List selectedInv = inventoryColumn ? Inventory.inventory : ItemBox.items; List otherInv = inventoryColumn ? ItemBox.items : Inventory.inventory; int otherInvCapacity = inventoryColumn ? ItemBox.capacity : Inventory.inventorySize; if (lineIndex < selectedInv.Count) { UnderItem item = selectedInv[lineIndex]; if (otherInv.Count < otherInvCapacity) { if (inventoryColumn) { ItemBox.AddToBox(item.Name); Inventory.RemoveItem(lineIndex); } else { Inventory.AddItem(item.Name); ItemBox.RemoveFromBox(lineIndex); } UnitaleUtil.PlaySound("SeparateSound", "menuconfirm"); } else UnitaleUtil.PlaySound("SeparateSound", "menumove"); } else UnitaleUtil.PlaySound("SeparateSound", "menumove"); RefreshDisplay(); } else if (GlobalControls.input.Up == ButtonState.PRESSED) { lineIndex--; if (lineIndex < 0) lineIndex = (inventoryColumn ? Inventory.inventorySize : ItemBox.capacity) - 1; UnitaleUtil.PlaySound("SeparateSound", "menumove"); RefreshDisplay(); } else if (GlobalControls.input.Down == ButtonState.PRESSED) { lineIndex++; if (lineIndex >= (inventoryColumn ? Inventory.inventorySize : ItemBox.capacity)) lineIndex = 0; UnitaleUtil.PlaySound("SeparateSound", "menumove"); RefreshDisplay(); } else if (GlobalControls.input.Left == ButtonState.PRESSED || GlobalControls.input.Right == ButtonState.PRESSED) { if (lineIndex >= Inventory.inventorySize || lineIndex >= ItemBox.capacity) return; inventoryColumn = !inventoryColumn; UnitaleUtil.PlaySound("SeparateSound", "menumove"); RefreshDisplay(); } else if (GlobalControls.input.Cancel == ButtonState.PRESSED) { UnitaleUtil.PlaySound("SeparateSound", "menumove"); DestroySelf(); } } private void RefreshDisplay() { player.transform.position = new Vector3(Misc.cameraX + (inventoryColumn ? 58 : 350), Misc.cameraY + 390 - (lineIndex * 32), GameObject.Find("utHeartMenu").transform.position.z); for (int i = 0; i < Inventory.inventorySize; i++) { TextManager tm = inventory[i]; string text = i < Inventory.inventory.Count ? Inventory.inventory[i].Name : ""; tm.SetText(new TextMessage("[font:uidialoglilspace]" + text, false, true)); inventorySprites[i].alpha = i < Inventory.inventory.Count ? 0f : 1f; } for (int i = 0; i < ItemBox.capacity; i++) { TextManager tm = boxContents[i]; string text = i < ItemBox.items.Count ? ItemBox.items[i].Name : ""; tm.SetText(new TextMessage("[font:uidialoglilspace]" + text, false, true)); boxContentsSprites[i].alpha = i < ItemBox.items.Count ? 0f : 1f; } } private void DestroySelf() { while (inventory.Count > 0) { inventory[0].HideTextObject(); Destroy(inventory[0].gameObject); inventory.RemoveAt(0); inventorySprites[0].Remove(); inventorySprites.RemoveAt(0); } while (boxContents.Count > 0) { boxContents[0].HideTextObject(); Destroy(boxContents[0].gameObject); boxContents.RemoveAt(0); boxContentsSprites[0].Remove(); boxContentsSprites.RemoveAt(0); } Color c = player.GetComponent().color; player.GetComponent().color = new Color(c.r, c.g, c.b, 0); GetComponent().color = new Color(1, 1, 1, 0); active = false; Destroy(this); } } ================================================ FILE: Assets/Scripts/Overworld/ItemBoxUI.cs.meta ================================================ fileFormatVersion: 2 guid: 48b69983e984f9a469fe1ad40ade1b11 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Overworld/MapInfos.cs ================================================ using UnityEngine; using UnityEngine.SceneManagement; public class MapInfos : MonoBehaviour { public string music; public string modToLoad; public bool isMusicKeptBetweenBattles; public bool noRandomEncounter; private void Start() { EventManager.GetMapState(this, SceneManager.GetActiveScene().name); } } ================================================ FILE: Assets/Scripts/Overworld/MapInfos.cs.meta ================================================ fileFormatVersion: 2 guid: 7a4ef58bda0647d48b67028c05b00813 timeCreated: 1461397496 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Overworld/MapLoader.cs ================================================ using System.Xml; public static class MapLoader { public static void LoadMap(string path) { XmlDocument xml = new XmlDocument(); string xmlPath = path + ".xml"; if (!FileLoader.SanitizePath(ref xmlPath, "Maps")) return; xml.Load(xmlPath); } } ================================================ FILE: Assets/Scripts/Overworld/MapLoader.cs.meta ================================================ fileFormatVersion: 2 guid: 08d4e22df93ecbf4aaa607cb97a45b3b timeCreated: 1503581534 licenseType: Free MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Overworld/PermanentGameState.cs ================================================ using System.Collections.Generic; using MoonSharp.Interpreter; /// /// Class used as a database that is saved and loaded during the game. /// Is used as the save file in SaveLoad. /// [System.Serializable] public class AlMightyGameState { public static GameState current; public Dictionary AlMightyVariablesStr = new Dictionary(); public Dictionary AlMightyVariablesNum = new Dictionary(); public Dictionary AlMightyVariablesBool = new Dictionary(); public void SaveAllGlobals() { AlMightyVariablesNum.Clear(); AlMightyVariablesStr.Clear(); AlMightyVariablesBool.Clear(); try { foreach (string key in LuaScriptBinder.GetAllPermanentGlobals().Keys) { DynValue dv; LuaScriptBinder.GetAllPermanentGlobals().TryGetValue(key, out dv); if (dv != null) switch (dv.Type) { case DataType.Number: AlMightyVariablesNum.Add(key, dv.Number); break; case DataType.String: AlMightyVariablesStr.Add(key, dv.String); break; case DataType.Boolean: AlMightyVariablesBool.Add(key, dv.Boolean); break; case DataType.Nil: LuaScriptBinder.RemoveSessionGlobal(key); break; default: UnitaleUtil.WriteInLogAndDebugger("The permanent global \"" + key + "\" is erroneous because a " + dv.Type.ToString().ToLower() + " can't be saved. Deleting it now."); LuaScriptBinder.RemovePermanentGlobal(key); break; } } } catch { /* ignored */ } } public void LoadAllGlobals() { foreach (string key in AlMightyVariablesNum.Keys) { double a; AlMightyVariablesNum.TryGetValue(key, out a); LuaScriptBinder.SetPermanentGlobal(key, DynValue.NewNumber(a), false); } foreach (string key in AlMightyVariablesStr.Keys) { string a; AlMightyVariablesStr.TryGetValue(key, out a); LuaScriptBinder.SetPermanentGlobal(key, DynValue.NewString(a), false); } foreach (string key in AlMightyVariablesBool.Keys) { bool a; AlMightyVariablesBool.TryGetValue(key, out a); LuaScriptBinder.SetPermanentGlobal(key, DynValue.NewBoolean(a), false); } } } ================================================ FILE: Assets/Scripts/Overworld/PermanentGameState.cs.meta ================================================ fileFormatVersion: 2 guid: 783e6f50ee5a9c0448c479cf2dbee385 timeCreated: 1470732119 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Overworld/PlayerOverworld.cs ================================================ using UnityEngine; using UnityEngine.SceneManagement; using UnityEngine.UI; using System.IO; using System.Collections; using System.Collections.Generic; using System.Linq; using MoonSharp.Interpreter; public class PlayerOverworld : MonoBehaviour { public static PlayerOverworld instance; public int BlockingLayer; //Layer on which collision will be checked public int EventLayer; //Layer of the events, colliding too public int forcedMove = 0; //Direction of a forced move //public int rolled = 0; public float speed; public static float audioCurrTime; public bool firstTime = false; //Boolean used to not launch another event a the end of the previous event public bool inBattleAnim; public bool PlayerNoMove { //Is the player not able to move? get { return _playerNoMove || forceNoAction || inBattleAnim; } set { _playerNoMove = value; isMoving = false; } } public bool forceNoAction = false; public bool[] menuRunning = { false, false, false, false, false }; public Vector2 lastMove; //The Player's last input public Vector2 cameraShift = new Vector2(); public Vector2 backgroundSize = new Vector3(640, 480); public Transform PlayerPos; //The Transform component attached to this object public Image utHeart; public static AudioSource audioKept; public LuaSpriteController sprctrl; public TextManager textmgr; //The map's text manager public List parallaxes = new List(); public bool isMoving; public bool isMovingWaitEnd; public ScriptWrapper isMovingSource; public bool isBeingMoved; public ScriptWrapper isRotatingSource; public bool isRotatingWaitEnd; private bool _playerNoMove; private int battleWalkCount; //Will be used to check the battle appearance private float TimeIndicator; //A time indicator used for the soul's movement during the pre-Encounter anim private Rigidbody2D rb2D; //The Rigidbody2D component attached to this object private AudioSource uiAudio; //AudioSource used for the pre-Encounter sounds private CYFAnimator animator; //private bool lockedCamera = false; //Used to stop the camera's position refresh public int UIPos; // 0: Auto-decide UI position; 1: Bottom; 2: Top //Start overrides the Start function of MovingObject public void Start() { instance = this; GameObject Player = GameObject.Find("Player"); uiAudio = Player.GetComponent(); utHeart = GameObject.Find("utHeart").GetComponent(); utHeart.color = new Color(utHeart.color.r, utHeart.color.g, utHeart.color.b, 0); //StartCoroutine(LaunchMusic()); //Get a component reference to the Player's transform PlayerPos = Player.transform.parent; //If the player's position already exists, move the player to it if (LuaScriptBinder.GetSessionGlobal("PlayerPosX") != null && LuaScriptBinder.GetSessionGlobal("PlayerPosY") != null && LuaScriptBinder.GetSessionGlobal("PlayerPosZ") != null) { Vector2 temp = new Vector3((float)LuaScriptBinder.GetSessionGlobal("PlayerPosX").Number, (float)LuaScriptBinder.GetSessionGlobal("PlayerPosY").Number, (float)LuaScriptBinder.GetSessionGlobal("PlayerPosZ").Number); PlayerPos.position = temp; } else PlayerPos.position = Vector3.zero; //Get a component reference to the Player's animator component //animator = Player.GetComponent(); sprctrl = LuaSpriteController.GetOrCreate(Player.gameObject); sprctrl.loopmode = "LOOP"; animator = Player.GetComponent(); //Get a component reference to this object's Rigidbody2D rb2D = Player.GetComponent(); //Get the layer that blocks our object, here BlockingLayer and EventLayer BlockingLayer = LayerMask.GetMask("BlockingLayer"); EventLayer = LayerMask.GetMask("EventLayer"); textmgr = GameObject.Find("TextManager OW").GetComponent(); //How many times the player has to move before encounter an enemy battleWalkCount = Math.RandomRange(300, 1000); //Let's set the last movement to Down. lastMove = new Vector2(0, 1); EventManager.instance = GameObject.Find("Main Camera OW").GetComponent(); if (NewMusicManager.Exists("StaticKeptAudio")) return; audioKept = NewMusicManager.CreateChannelAndGetAudioSource("StaticKeptAudio"); audioKept.loop = true; DontDestroyOnLoad(audioKept); } private IEnumerator OnEnable2() { yield return 0; if (NewMusicManager.audiolist.ContainsKey("src")) NewMusicManager.audiolist.Remove("src"); if (NewMusicManager.audiolist.ContainsKey("StaticKeptAudio")) NewMusicManager.audiolist.Remove("StaticKeptAudio"); MusicManager.src = Camera.main.GetComponent(); NewMusicManager.audiolist.Add("src", MusicManager.src); //NewMusicManager.audioname.Add("src", MusicManager.filename); if (audioKept) NewMusicManager.audiolist.Add("StaticKeptAudio", audioKept); //NewMusicManager.audioname.Add("StaticKeptAudio", "Sorry, nyi"); PlayerPos = GameObject.Find("Player").transform; Color color = PlayerPos.GetComponent().color; GameObject.Find("PlayerEncounter").GetComponent().color = new Color(color.r, color.g, color.b, 0); GameObject.Find("EncounterBubble").GetComponent().color = new Color(1, 1, 1, 0); PlayerPos.GetComponent().color = new Color(color.r, color.g, color.b, 1); GameObject.Find("black").GetComponent().color = new Color(0, 0, 0, 0); Image heart = GameObject.Find("utHeart").GetComponent(); heart.color = new Color(heart.color.r, heart.color.g, heart.color.b, 0); StartCoroutine(TextCoroutine()); } public void RestartMusic() { MapInfos mi = GameObject.Find("Background").GetComponent(); AudioSource owAudio = UnitaleUtil.GetCurrentOverworldAudio(); if (owAudio == audioKept) { GameObject.Find("Main Camera OW").GetComponent().Stop(); GameObject.Find("Main Camera OW").GetComponent().clip = null; GameObject.Find("Main Camera OW").GetComponent().time = 0; } else { audioKept.Stop(); audioKept.clip = null; audioKept.time = 0; } if (owAudio.name.Contains("Camera")) owAudio = GameObject.Find("Main Camera OW").GetComponent(); if (owAudio.clip == null) { if (mi.music != "none") { owAudio.clip = AudioClipRegistry.GetMusic(mi.music); owAudio.Play(); } else owAudio.Stop(); } else { //Get the file's name with this...thing? string test = owAudio.clip.name.Replace('\\', '/').Split(new[] { "/Audio/" }, System.StringSplitOptions.RemoveEmptyEntries)[1].Split('.')[0]; if (test != mi.music) { if (mi.music != "none") { owAudio.Stop(); owAudio.clip = AudioClipRegistry.GetMusic(mi.music); owAudio.Play(); } else owAudio.Stop(); } else if (!owAudio.isPlaying && owAudio != audioKept) { owAudio.time = audioCurrTime; audioCurrTime = 0; if (owAudio.time == 0) owAudio.Play(); else owAudio.UnPause(); } } } private void OnEnable() { SceneManager.sceneLoaded += LoadScene; Fading.FinishFade += FinishFade; ControlPanel.instance.FrameBasedMovement = false; try { EventManager.instance.ScriptRunning = false; EventManager.instance.script = null; } catch { /* ignored */ } if (GlobalControls.realName != null) PlayerCharacter.instance.Name = GlobalControls.realName; TimeIndicator = 0; inBattleAnim = false; StartCoroutine(OnEnable2()); } private void OnDisable() { SceneManager.sceneLoaded -= LoadScene; Fading.FinishFade -= FinishFade; } private void LoadScene(Scene scene, LoadSceneMode mode) { PlayerNoMove = true; } //Scene loading private void FinishFade() { PlayerNoMove = false; } // Scene loaded private void NextText() { if (textmgr.CanAutoSkipAny(true) || textmgr.LineComplete()) { if (!textmgr.AllLinesComplete()) textmgr.NextLineText(); else if (textmgr.LineCount() != 0) { EventManager.instance.passPressOnce = true; textmgr.transform.parent.parent.SetAsFirstSibling(); textmgr.SetTextQueue(null); textmgr.HideTextObject(); textmgr.SetHorizontalSpacing(textmgr.font.CharSpacing); textmgr.SetVerticalSpacing(); textmgr.SetTextFrameAlpha(0); if (EventManager.instance.script != null) EventManager.instance.script.Call("CYFEventNextCommand"); else PlayerNoMove = false; //End text no event } } } private IEnumerator TextCoroutine() { while (true) { yield return 0; if (!GameObject.Find("textframe_border_outer")) continue; if (GameObject.Find("textframe_border_outer").GetComponent().color.a == 0) continue; try { if (textmgr.CanAutoSkipAny(true)) NextText(); if (GlobalControls.input.Cancel == ButtonState.PRESSED && !textmgr.LineComplete() && textmgr.CanSkip()) { if (EventManager.instance.script != null && EventManager.instance.script.GetVar("playerskipdocommand").Boolean) textmgr.DoSkipFromPlayer(); else textmgr.SkipLine(); } else if (GlobalControls.input.Confirm == ButtonState.PRESSED && !EventManager.instance.passPressOnce) NextText(); } catch { /* ignored */ } } } private void Update() { if (GameOverBehavior.gameOverContainerOw.activeSelf) return; //Used to increment TimeIndicator for our pre-Encounter anim if (TimeIndicator > 0 && TimeIndicator < 1) { TimeIndicator += Time.deltaTime; if (TimeIndicator > 1) TimeIndicator = 1; Image heart = GameObject.Find("utHeart").GetComponent(); Image playerMask = GameObject.Find("PlayerEncounter").GetComponent(); Vector2 positionCamera = Camera.main.transform.position; Vector2 end = new Vector2(PlayerPos.position.x - (positionCamera.x - 320 + 48), PlayerPos.position.y + playerMask.sprite.texture.height / 2.5f - (positionCamera.y - 240 + 25)); //Here we move the heart to the place it'll be on the beginning of the battle if ((Vector2)heart.transform.position != end) heart.transform.position = new Vector3(PlayerPos.position.x - end.x * TimeIndicator, PlayerPos.position.y + playerMask.sprite.texture.height / 2.5f - end.y * TimeIndicator, 0); } int horizontal = 0; //Used to store the horizontal move direction int vertical = 0; //Used to store the vertical move direction int currentDirection = 0; //If you locked the player, do nothing if (!PlayerNoMove) { int left = GlobalControls.input.Left > 0 ? 1 : 0; int right = GlobalControls.input.Right > 0 ? 1 : 0; int up = GlobalControls.input.Up > 0 ? 1 : 0; int down = GlobalControls.input.Down > 0 ? 1 : 0; horizontal = right - left; vertical = up - down; //Just some animations switches if (animator.movementDirection == 0) { if (up == 1) currentDirection = 8; else if (down == 1) currentDirection = 2; else if (right == 1) currentDirection = 6; else if (left == 1) currentDirection = 4; } if (GlobalControls.input.Up == ButtonState.PRESSED) currentDirection = 8; else if (GlobalControls.input.Right == ButtonState.PRESSED) currentDirection = 6; else if (GlobalControls.input.Left == ButtonState.PRESSED) currentDirection = 4; else if (GlobalControls.input.Down == ButtonState.PRESSED) currentDirection = 2; if ((animator.beginAnim.Contains("Up") && GlobalControls.input.Up <= 0) || (animator.beginAnim.Contains("Right") && GlobalControls.input.Right <= 0) || (animator.beginAnim.Contains("Left") && GlobalControls.input.Left <= 0) || (animator.beginAnim.Contains("Down") && GlobalControls.input.Down <= 0)) { if (horizontal < 0) currentDirection = 4; else if (horizontal > 0) currentDirection = 6; else if (vertical > 0) currentDirection = 8; else if (vertical < 0) currentDirection = 2; } } if (currentDirection != 0) animator.movementDirection = currentDirection; if (!isBeingMoved) isMoving = AttemptMove(horizontal, vertical); if (GlobalControls.input.Menu == ButtonState.PRESSED) if (menuRunning[2] && !menuRunning[3] && !menuRunning[4]) CloseMenu(true); menuRunning[4] = false; } //Moves the object public void Move(float xDir, float yDir, GameObject go) { Transform goTransform = go.transform; if (goTransform.parent != null) if (goTransform.parent.name == "SpritePivot") goTransform = goTransform.parent; //Don't calculate anything if no movement if (xDir != 0 || yDir != 0) { //Creates the movement of our object Vector2 end = new Vector2(xDir, yDir); if (go == rb2D.gameObject) end *= speed; else end *= go.GetComponent().moveSpeed; goTransform.position += (Vector3)end; } //If the GameObject is the player, check if the camera can follow him or not if (go == gameObject && !inBattleAnim && GameObject.Find("Background") != null) { RectifyCameraPosition(new Vector2(goTransform.GetChild(0).position.x, goTransform.GetChild(0).position.y + Mathf.Round(PlayerPos.GetChild(0).GetComponent().sprite.texture.height / 2f))); GameObject.Find("Canvas OW").transform.position = new Vector3(Camera.main.transform.position.x, Camera.main.transform.position.y, -10); } //Decrease battleWalkCount if the player is moving freely if ((xDir != 0 || yDir != 0) && !PlayerNoMove && EventManager.instance.script == null && go == gameObject) battleWalkCount--; } //testMove returns true if it is able to move and false if not. //testMove takes parameters for x direction, y direction and a RaycastHit2D to check collision public bool TestMove(float xDir, float yDir, out RaycastHit2D hit, GameObject go) { Transform goTransform = go.transform; BoxCollider2D boxCollider = go.GetComponent(); if (!boxCollider) { hit = new RaycastHit2D(); return true; } //Store start position to move from, based on objects current transform position Vector2 start = new Vector2(goTransform.position.x + goTransform.localScale.x * boxCollider.offset.x, goTransform.position.y + goTransform.localScale.x * boxCollider.offset.y); //Calculate end position based on the direction parameters passed in when calling Move and using our boxCollider Vector2 dir = new Vector2(xDir, yDir); //Calculate the current size of the object's boxCollider Vector2 size = new Vector2(boxCollider.size.x * goTransform.localScale.x, boxCollider.size.y * goTransform.localScale.y); //Disable the boxCollider so that linecast doesn't hit this object's own collider boxCollider.enabled = false; float moveSpeed = go == rb2D.gameObject ? this.speed : go.GetComponent().moveSpeed; //Cast a line from start point to end point checking collision on blockingLayer and then EventLayer hit = Physics2D.BoxCast(start, size, 0, dir, Mathf.Sqrt(Mathf.Pow(xDir * moveSpeed, 2) + Mathf.Pow(yDir * moveSpeed, 2)), BlockingLayer); if (hit.transform == null) hit = Physics2D.BoxCast(start, size, 0, dir, Mathf.Sqrt(Mathf.Pow(xDir * moveSpeed, 2) + Mathf.Pow(yDir * moveSpeed, 2)), EventLayer); //Re-enable boxCollider after BoxCast boxCollider.enabled = true; //Check if anything was hit //If something was hit, return false, Move was unsuccesful return hit.transform == null; } public bool AttemptMove(float xDir, float yDir, GameObject go = null, bool wallPass = false) { if (go == null) go = gameObject; //If there's an input, register the last input if (!(xDir == 0 && yDir == 0) && go == gameObject) lastMove = new Vector2(xDir, yDir); bool canMove2; //Check if nothing was hit by BoxCast //If nothing was hit, move normally if (wallPass || go.layer == 0 || (xDir == 0 && yDir == 0)) { canMove2 = !(xDir == 0 && yDir == 0); Move(xDir, yDir, go); } else { //Hit will store whatever our linecast hits when Move is called RaycastHit2D hit; //Set canMove to true if Move was successful, false if failed bool canMove = TestMove(xDir, yDir, out hit, go); canMove2 = canMove; if (hit.transform == null) Move(xDir, yDir, go); //If we can go on sides else if (TestMove(xDir, 0, out hit, go)) Move(xDir, 0, go); //if we can go up or down else if (TestMove(0, yDir, out hit, go)) Move(0, yDir, go); else Move(0, 0, go); } //If we moved enough to set battleWalkCount to 0... if (battleWalkCount != 0) return canMove2; if (!GameObject.Find("Background").GetComponent().noRandomEncounter) { battleWalkCount = -1; //...let's set an encounter! SetEncounterAnim(); } else battleWalkCount = Math.RandomRange(300, 1000); return canMove2; } /// /// The encounter anim, that ends to a battle /// /// The name of the encounter. If not set, the encounter will be random. /// /// public void SetEncounterAnim(string encounterName = "", string anim = "normal", bool ForceNoFlee = false) { StartCoroutine(AnimationBeforeBattle(encounterName, anim, ForceNoFlee)); } //The function that creates the animation before the encounter private IEnumerator AnimationBeforeBattle(string encounterName = "", string anim = "normal", bool ForceNoFlee = false) { bool quickAnim = (anim == "fast"); bool instant = (anim == "instant"); PlayerNoMove = true; //Begin encounter inBattleAnim = true; //Here are the player's soul and a black sprite, we'll need to make them go up Image heart = GameObject.Find("utHeart").GetComponent(); Image playerMask = GameObject.Find("PlayerEncounter").GetComponent(); Image blackFont = GameObject.Find("black").GetComponent(); playerMask.GetComponent().sprite = PlayerPos.GetComponent().sprite; audioCurrTime = MusicManager.src.time; Camera.main.GetComponent().Stop(); blackFont.transform.SetAsLastSibling(); playerMask.transform.SetAsLastSibling(); heart.transform.SetAsLastSibling(); //If you want a quick animation, we just keep the end of the anim if (!quickAnim && !instant) { uiAudio.PlayOneShot(AudioClipRegistry.GetSound("BeginBattle1")); //Shows the encounter bubble, the "!" on the player SpriteRenderer EncounterBubble = GameObject.Find("EncounterBubble").GetComponent(); EncounterBubble.color = new Color(EncounterBubble.color.r, EncounterBubble.color.g, EncounterBubble.color.b, 1f); EncounterBubble.transform.position = new Vector3(EncounterBubble.transform.position.x, PlayerPos.position.y + playerMask.sprite.texture.height + 6); yield return new WaitForSeconds(0.5f); } //Set the heart's position to the player's position heart.transform.position = new Vector3(PlayerPos.position.x, PlayerPos.position.y + (playerMask.sprite.texture.height / 2.5f), -5100); Vector2 positionCamera = Camera.main.transform.position; Vector2 end = new Vector2(PlayerPos.position.x - (positionCamera.x - 320 + 48), PlayerPos.position.y + PlayerPos.GetComponent().sizeDelta.y / 2 - (positionCamera.y - 240 + 25)); blackFont.transform.position = new Vector3(positionCamera.x, positionCamera.y, blackFont.transform.position.z); blackFont.color = new Color(blackFont.color.r, blackFont.color.g, blackFont.color.b, 1f); Vector2 nativeSizeDelta = new Vector2(PlayerPos.GetComponent().sprite.texture.width, PlayerPos.GetComponent().sprite.texture.height); playerMask.transform.position = new Vector3(PlayerPos.position.x, PlayerPos.position.y, -5040); playerMask.sprite = PlayerPos.GetComponent().sprite; playerMask.rectTransform.sizeDelta = new Vector2(nativeSizeDelta.x * Mathf.Abs(sprctrl.xscale), nativeSizeDelta.y * Mathf.Abs(sprctrl.yscale)) / 100; //playerMask.transform.localScale = new Vector3(PlayerPos.lossyScale.x / playerMask.transform.lossyScale.x, PlayerPos.lossyScale.y / playerMask.transform.lossyScale.y, 1); Color color = PlayerPos.GetComponent().color; PlayerPos.GetComponent().color = new Color(color.r, color.g, color.b, 0); playerMask.GetComponent().color = new Color(color.r, color.g, color.b, 1); if (!instant){ for (int i = 0; i < 2; i++) { heart.color = new Color(heart.color.r, heart.color.g, heart.color.b, 1f); uiAudio.PlayOneShot(AudioClipRegistry.GetSound("BeginBattle2")); yield return new WaitForSeconds(0.075f); heart.color = new Color(heart.color.r, heart.color.g, heart.color.b, 0f); yield return new WaitForSeconds(0.075f); } } playerMask.color = new Color(color.r, color.g, color.b, 0); heart.color = new Color(heart.color.r, heart.color.g, heart.color.b, 1f); blackFont.color = new Color(blackFont.color.r, blackFont.color.g, blackFont.color.b, 1f); //----------------------------------------------- uiAudio.PlayOneShot(AudioClipRegistry.GetSound("BeginBattle3")); TimeIndicator += Time.deltaTime; if (TimeIndicator > 1) TimeIndicator = 1; Vector3 finalPosition = new Vector3(positionCamera.x - 320 + 48, positionCamera.y - 240 + 25, -5100f); //Here we move the heart to the place it'll be on the beginning of the battle if (heart.transform.position != finalPosition) heart.transform.position = new Vector3(PlayerPos.position.x - (end.x * TimeIndicator), (PlayerPos.position.y + (playerMask.sprite.texture.height / 2.5f)) - (end.y * TimeIndicator), 0); if (!instant) yield return new WaitForSeconds(1f); //Set the heart's position heart.transform.position = finalPosition; if (instant) { color = PlayerPos.GetComponent().color; GameObject.Find("PlayerEncounter").GetComponent().color = new Color(color.r, color.g, color.b, 0); GameObject.Find("EncounterBubble").GetComponent().color = new Color(1, 1, 1, 0); PlayerPos.GetComponent().color = new Color(color.r, color.g, color.b, 1); GameObject.Find("black").GetComponent().color = new Color(0, 0, 0, 0); heart.color = new Color(heart.color.r, heart.color.g, heart.color.b, 0); } //Launch the battle StartCoroutine(SetEncounter(encounterName, ForceNoFlee)); yield return 0; } //The function that is used to launch a battle private IEnumerator SetEncounter(string encounterName = "", bool ForceNoFlee = false, bool instant = false) { //Saves our last map and the position of our player, before the battle string mapName = UnitaleUtil.MapCorrespondanceList.ContainsKey(SceneManager.GetActiveScene().name) ? UnitaleUtil.MapCorrespondanceList[SceneManager.GetActiveScene().name] : SceneManager.GetActiveScene().name; LuaScriptBinder.SetSessionGlobal("PlayerMap", DynValue.NewString(mapName)); Transform tf = rb2D.transform; LuaScriptBinder.SetSessionGlobal("PlayerPosX", DynValue.NewNumber(tf.position.x)); LuaScriptBinder.SetSessionGlobal("PlayerPosY", DynValue.NewNumber(tf.position.y)); LuaScriptBinder.SetSessionGlobal("PlayerPosZ", DynValue.NewNumber(tf.position.z)); //Sets the mod's folder and the encounter file's name to know what file we have to load string ModFolder = StaticInits.MODFOLDER, Encounter; LuaScriptBinder.SetSessionGlobal("ModFolder", DynValue.NewString(ModFolder)); if (ForceNoFlee) LuaScriptBinder.SetSessionGlobal("ForceNoFlee", DynValue.NewBoolean(true)); DirectoryInfo di = new DirectoryInfo(Path.Combine(FileLoader.DataRoot, "Mods/" + StaticInits.MODFOLDER + "/Lua/Encounters")); FileInfo[] encounterFiles = di.GetFiles(); if (string.IsNullOrEmpty(encounterName)) { ArrayList encounterNames = new ArrayList(); foreach (FileInfo encounterFile in encounterFiles) { if (!encounterFile.Name.EndsWith(".lua") || encounterFile.Name[0] == '#') continue; encounterNames.Add(Path.GetFileNameWithoutExtension(encounterFile.Name)); } switch (encounterNames.Count) { case 0: UnitaleUtil.DisplayLuaError("Overworld System", "There's no valid encounter to launch.\nYou need to have at least 1 encounter in your mod that doesn't have a '#' as its first character!"); yield break; case 1: Encounter = Path.GetFileNameWithoutExtension(encounterNames[0].ToString()); break; default: Encounter = Path.GetFileNameWithoutExtension(encounterNames[Math.RandomRange(0, encounterNames.Count)].ToString()); break; } } else Encounter = Path.GetFileNameWithoutExtension(encounterName); //Let's set the folder and file we want to load. StaticInits.MODFOLDER = ModFolder; StaticInits.ENCOUNTER = Encounter; //We save the state of the events. EventManager.instance.SetEventStates(true); LuaScriptBinder.ClearBattleGlobals(); if (!instant) yield return new WaitForEndOfFrame(); FindObjectOfType().FadeInstant(1); //Reset how many times the player has to move before encounter an enemy battleWalkCount = Math.RandomRange(300, 1000); //GameObject.Find("Main Camera OW").tag = "Untagged"; HideOverworld("Battle"); EventManager.instance.eventsLoaded = false; //Now, we load our battle. GlobalControls.isInFight = true; SceneManager.LoadScene("Battle", LoadSceneMode.Additive); DiscordControls.StartBattle(ModFolder, Encounter); yield return 0; } /// /// Sets a dialogue (old method). /// /// The text that'll be printed /// Will the text be rearranged? (\r replacements etc) /// The mugshots that'll be used in the dialogue box public void SetDialog(string[] textTable, bool rearranged, DynValue mugshots = null) { if (textTable[0] == string.Empty) { UnitaleUtil.WriteInLogAndDebugger("Old SetDialog: There is no text to print!"); return; } TextMessage[] textmsg = new TextMessage[textTable.Length]; for (int i = 0; i < textTable.Length; i++) textmsg[i] = new TextMessage(textTable[i], rearranged, false, mugshots); PlayerNoMove = true; //Old SetDialog EventManager.instance.passPressOnce = true; textmgr.SetTextFrameAlpha(1); //textmgr.setTextQueue(textmsg, mugshots); textmgr.SetTextQueue(textmsg); textmgr.transform.parent.parent.SetAsLastSibling(); } /// /// Rectifies the position of the camera, to be sure that the background will always be on tha camera. /// /// /// public void RectifyCameraPosition(Vector3 pos) { if (pos.x < 320) pos.x = 320; else if (pos.x > backgroundSize.x - 320) pos.x = Mathf.RoundToInt(backgroundSize.x - 320); if (pos.y < 240) pos.y = 240; else if (pos.y > backgroundSize.y - 240) pos.y = Mathf.RoundToInt(backgroundSize.y - 240); pos += (Vector3)cameraShift; pos.z = -10000; Camera.main.transform.position = pos; foreach (Transform t in parallaxes) { if (!t) continue; Vector3 dimPlx = t.GetComponent().sizeDelta * t.localScale.x; t.position = new Vector3(Mathf.Round(dimPlx.x) > 640 ? (dimPlx.x / 2 + (backgroundSize.x - dimPlx.x) * ((pos.x - 320) / (backgroundSize.x - 640))) : t.position.x, Mathf.Round(dimPlx.y) > 480 ? (dimPlx.y / 2 + (backgroundSize.y - dimPlx.y) * ((pos.y - 240) / (backgroundSize.y - 480))) : t.position.y, t.position.z); } } public static void AutoSetUIPos() { if (instance.UIPos == 0) { float cameraOffset = (GameObject.Find("Main Camera OW").GetComponent().position.y - 240); float playerPos = Mathf.Ceil(instance.gameObject.GetComponent().position.y - cameraOffset); SetUIPos(playerPos < 230); } else SetUIPos(instance.UIPos == 2); } public static void SetUIPos(bool top = false) { instance.UIPos = top ? 2 : 1; float cameraOffset = (GameObject.Find("Main Camera OW").GetComponent().position.y - 240); RectTransform textframe = GameObject.Find("textframe_border_outer").GetComponent(); RectTransform menustat = GameObject.Find("menustat_border_outer").GetComponent(); // Inverted position if (top) { // Text box textframe.position = new Vector3(textframe.position.x, 318 + cameraOffset, textframe.position.z); // Stat box menustat.localPosition = new Vector3(menustat.localPosition.x, -192, menustat.localPosition.z); // Normal position } else { // Text box textframe.position = new Vector3(textframe.position.x, 8 + cameraOffset, textframe.position.z); // Stat box menustat.localPosition = new Vector3(menustat.localPosition.x, 78, menustat.localPosition.z); } } public static IEnumerator LaunchMenu() { instance.PlayerNoMove = true; instance.menuRunning[2] = true; instance.menuRunning[3] = false; instance.menuRunning[4] = true; //Start menu GameObject.Find("MenuContainer").transform.SetAsLastSibling(); TextManager[] txtmgrs = GameObject.Find("MenuContainer").GetComponentsInChildren(); instance.uiAudio.PlayOneShot(AudioClipRegistry.GetSound("menumove")); /* 0-6 : Menu 7-17 : Item 18-27 : Stat */ foreach (TextManager txt in txtmgrs) txt.SetHorizontalSpacing(2); instance.UIPos = 0; AutoSetUIPos(); GameObject.Find("TextManager OW").GetComponent().SetText(new TextMessage("", false, false)); GameObject.Find("menustat_border_outer").GetComponent().color = new Color(1, 1, 1, 1); GameObject.Find("menuchoice_border_outer").GetComponent().color = new Color(1, 1, 1, 1); GameObject.Find("menustat_interior").GetComponent().color = new Color(0, 0, 0, 1); GameObject.Find("menuchoice_interior").GetComponent().color = new Color(0, 0, 0, 1); txtmgrs[0].SetText(new TextMessage("" + PlayerCharacter.instance.Name, false, true)); if (GlobalControls.crate) { txtmgrs[1].SetText(new TextMessage("[font:menu]LV " + PlayerCharacter.instance.LV, false, true)); txtmgrs[2].SetText(new TextMessage("[font:menu]PH " + (int)PlayerCharacter.instance.HP + "/" + PlayerCharacter.instance.MaxHP, false, true)); txtmgrs[3].SetText(new TextMessage("[font:menu]G " + PlayerCharacter.instance.Gold, false, true)); txtmgrs[4].SetText(new TextMessage((Inventory.inventory.Count > 0 ? "" : "[color:808080]") + "TEM", false, true)); txtmgrs[5].SetText(new TextMessage("TAST", false, true)); txtmgrs[6].SetText(new TextMessage("LECL", false, true)); } else { txtmgrs[1].SetText(new TextMessage("[font:menu]LV " + PlayerCharacter.instance.LV, false, true)); txtmgrs[2].SetText(new TextMessage("[font:menu]HP " + (int)PlayerCharacter.instance.HP + "/" + PlayerCharacter.instance.MaxHP, false, true)); txtmgrs[3].SetText(new TextMessage("[font:menu]G " + PlayerCharacter.instance.Gold, false, true)); txtmgrs[4].SetText(new TextMessage((Inventory.inventory.Count > 0 ? "" : "[color:808080]") + "ITEM", false, true)); txtmgrs[5].SetText(new TextMessage("STAT", false, true)); txtmgrs[6].SetText(new TextMessage("CELL", false, true)); } GameObject.Find("Mugshot").GetComponent().color = new Color(1, 1, 1, 0); GameObject.Find("textframe_border_outer").GetComponent().color = new Color(1, 1, 1, 0); GameObject.Find("textframe_interior").GetComponent().color = new Color(0, 0, 0, 0); Color c = GameObject.Find("utHeartMenu").GetComponent().color; GameObject.Find("utHeartMenu").GetComponent().color = new Color(c.r, c.g, c.b, 1); GameObject.Find("utHeartMenu").transform.localPosition = new Vector3(-255, 35, GameObject.Find("utHeartMenu").transform.position.z); int choice = 2; yield return 0; while (!instance.menuRunning[3]) { if (!instance.menuRunning[0]) { if (GlobalControls.input.Up == ButtonState.PRESSED) { choice = (choice + 1) % 3; GameObject.Find("utHeartMenu").transform.localPosition = new Vector3(-255, 35 - ((2 - choice % 3) * 36), GameObject.Find("utHeartMenu").transform.position.z); } else if (GlobalControls.input.Down == ButtonState.PRESSED) { choice = (choice + 2) % 3; GameObject.Find("utHeartMenu").transform.localPosition = new Vector3(-255, 35 - ((2 - choice % 3) * 36), GameObject.Find("utHeartMenu").transform.position.z); } else if (GlobalControls.input.Confirm == ButtonState.PRESSED) { instance.uiAudio.PlayOneShot(AudioClipRegistry.GetSound("menuconfirm")); instance.menuRunning[0] = true; switch (choice) { case 2: { //ITEM int invCount = Inventory.inventory.Count; if (invCount == 0) { instance.menuRunning[0] = false; } else { for (int i = 0; i != invCount; i++) txtmgrs[i + 7].SetText(new TextMessage(Inventory.inventory[i].Name, false, true)); if (GlobalControls.crate) { txtmgrs[15].SetText(new TextMessage("SUE", false, true)); txtmgrs[16].SetText(new TextMessage("FINO", false, true)); txtmgrs[17].SetText(new TextMessage("DORP", false, true)); } else { txtmgrs[15].SetText(new TextMessage("USE", false, true)); txtmgrs[16].SetText(new TextMessage("INFO", false, true)); txtmgrs[17].SetText(new TextMessage("DROP", false, true)); } GameObject.Find("Mugshot").GetComponent().color = new Color(1, 1, 1, 0); GameObject.Find("textframe_border_outer").GetComponent().color = new Color(1, 1, 1, 0); GameObject.Find("textframe_interior").GetComponent().color = new Color(0, 0, 0, 0); GameObject.Find("item_border_outer").GetComponent().color = new Color(1, 1, 1, 1); GameObject.Find("item_interior").GetComponent().color = new Color(0, 0, 0, 1); GameObject.Find("utHeartMenu").transform.localPosition = new Vector3(-48, 143, GameObject.Find("utHeartMenu").transform.position.z); int index = 0; yield return 0; while (instance.menuRunning[0] && !instance.menuRunning[1] && !instance.menuRunning[3]) { if (GlobalControls.input.Down == ButtonState.PRESSED) { index = (index + 1) % invCount; instance.uiAudio.PlayOneShot(AudioClipRegistry.GetSound("menumove")); GameObject.Find("utHeartMenu").transform.localPosition = new Vector3(-48, 143 - 32 * index, GameObject.Find("utHeartMenu").transform.position.z); } else if (GlobalControls.input.Up == ButtonState.PRESSED) { index = (index + invCount - 1) % invCount; instance.uiAudio.PlayOneShot(AudioClipRegistry.GetSound("menumove")); GameObject.Find("utHeartMenu").transform.localPosition = new Vector3(-48, 143 - 32 * index, GameObject.Find("utHeartMenu").transform.position.z); } else if (GlobalControls.input.Cancel == ButtonState.PRESSED) { instance.menuRunning[0] = false; for (int i = 7; i <= 17; i++) txtmgrs[i].HideTextObject(); GameObject.Find("Mugshot").GetComponent().color = new Color(1, 1, 1, 0); GameObject.Find("textframe_border_outer").GetComponent().color = new Color(1, 1, 1, 0); GameObject.Find("textframe_interior").GetComponent().color = new Color(0, 0, 0, 0); GameObject.Find("item_border_outer").GetComponent().color = new Color(1, 1, 1, 0); GameObject.Find("item_interior").GetComponent().color = new Color(0, 0, 0, 0); GameObject.Find("utHeartMenu").transform.localPosition = new Vector3(-255, 35 - ((2 - choice % 3) * 36), GameObject.Find("utHeartMenu").transform.position.z); } else if (GlobalControls.input.Confirm == ButtonState.PRESSED) { instance.menuRunning[1] = true; instance.uiAudio.PlayOneShot(AudioClipRegistry.GetSound("menuconfirm")); int index2 = 0; GameObject.Find("utHeartMenu").transform.localPosition = new Vector3(-48, -137, GameObject.Find("utHeartMenu").transform.position.z); // -53,42,156 yield return 0; while (instance.menuRunning[1] && !instance.menuRunning[3]) { if (GlobalControls.input.Left == ButtonState.PRESSED) { instance.uiAudio.PlayOneShot(AudioClipRegistry.GetSound("menumove")); index2 = (index2 + 2) % 3; switch (index2) { case 0: GameObject.Find("utHeartMenu").transform.localPosition = new Vector3(-48, -137, GameObject.Find("utHeartMenu").transform.position.z); break; case 1: GameObject.Find("utHeartMenu").transform.localPosition = new Vector3(47, -137, GameObject.Find("utHeartMenu").transform.position.z); break; case 2: GameObject.Find("utHeartMenu").transform.localPosition = new Vector3(161, -137, GameObject.Find("utHeartMenu").transform.position.z); break; } } else if (GlobalControls.input.Right == ButtonState.PRESSED) { instance.uiAudio.PlayOneShot(AudioClipRegistry.GetSound("menumove")); index2 = (index2 + 1) % 3; switch (index2) { case 0: GameObject.Find("utHeartMenu").transform.localPosition = new Vector3(-48, -137, GameObject.Find("utHeartMenu").transform.position.z); break; case 1: GameObject.Find("utHeartMenu").transform.localPosition = new Vector3(47, -137, GameObject.Find("utHeartMenu").transform.position.z); break; case 2: GameObject.Find("utHeartMenu").transform.localPosition = new Vector3(161, -137, GameObject.Find("utHeartMenu").transform.position.z); break; } } else if (GlobalControls.input.Cancel == ButtonState.PRESSED) { GameObject.Find("utHeartMenu").transform.localPosition = new Vector3(-48, 143 - 32 * index, GameObject.Find("utHeartMenu").transform.position.z); instance.menuRunning[1] = false; } else if (GlobalControls.input.Confirm == ButtonState.PRESSED) { instance.uiAudio.PlayOneShot(AudioClipRegistry.GetSound("menuconfirm")); for (int i = 7; i <= 17; i++) txtmgrs[i].HideTextObject(); GameObject.Find("item_border_outer").GetComponent().color = new Color(1, 1, 1, 0); GameObject.Find("item_interior").GetComponent().color = new Color(0, 0, 0, 0); GameObject.Find("utHeartMenu").GetComponent().color = new Color(c.r, c.g, c.b, 0); instance.menuRunning[3] = true; switch (index2) { case 0: instance.textmgr.SetEffect(null); Inventory.UseItem(index); //Update the stat text managers again, which means you can see the item's effects immediately txtmgrs[0].SetText(new TextMessage("" + PlayerCharacter.instance.Name, false, true)); if (GlobalControls.crate) { txtmgrs[1].SetText(new TextMessage("[font:menu]LV " + PlayerCharacter.instance.LV, false, true)); txtmgrs[2].SetText(new TextMessage("[font:menu]PH " + (int)PlayerCharacter.instance.HP + "/" + PlayerCharacter.instance.MaxHP, false, true)); txtmgrs[3].SetText(new TextMessage("[font:menu]G " + PlayerCharacter.instance.Gold, false, true)); txtmgrs[4].SetText(new TextMessage((Inventory.inventory.Count > 0 ? "" : "[color:808080]") + "TEM", false, true)); txtmgrs[5].SetText(new TextMessage("TAST", false, true)); txtmgrs[6].SetText(new TextMessage("LECL", false, true)); } else { txtmgrs[1].SetText(new TextMessage("[font:menu]LV " + PlayerCharacter.instance.LV, false, true)); txtmgrs[2].SetText(new TextMessage("[font:menu]HP " + (int)PlayerCharacter.instance.HP + "/" + PlayerCharacter.instance.MaxHP, false, true)); txtmgrs[3].SetText(new TextMessage("[font:menu]G " + PlayerCharacter.instance.Gold, false, true)); txtmgrs[4].SetText(new TextMessage((Inventory.inventory.Count > 0 ? "" : "[color:808080]") + "ITEM", false, true)); txtmgrs[5].SetText(new TextMessage("STAT", false, true)); txtmgrs[6].SetText(new TextMessage("CELL", false, true)); } break; case 1: string str; Inventory.NametoDesc.TryGetValue(Inventory.inventory[index].Name, out str); instance.textmgr.SetEffect(null); instance.textmgr.SetText(new TextMessage("\"" + Inventory.inventory[index].Name + "\"\n" + str, true, false)); instance.textmgr.transform.parent.parent.SetAsLastSibling(); break; case 2: instance.textmgr.SetEffect(null); instance.textmgr.SetText(new TextMessage(GlobalControls.crate ? ("U DORPED TEH " + Inventory.inventory[index].Name + "!!!!!") : "You dropped the " + Inventory.inventory[index].Name + ".", true, false)); instance.textmgr.transform.parent.parent.SetAsLastSibling(); Inventory.RemoveItem(index); break; } while (instance.PlayerNoMove) yield return 0; yield return CloseMenu(true); } yield return 0; } } yield return 0; } } break; } case 1: { // STAT GameObject.Find("utHeartMenu").GetComponent().color = new Color(c.r, c.g, c.b, 0); txtmgrs[18].SetText(new TextMessage("\"" + PlayerCharacter.instance.Name + "\"", false, true)); txtmgrs[19].SetText(new TextMessage("LV " + PlayerCharacter.instance.LV, false, true)); txtmgrs[20].SetText(new TextMessage("HP " + PlayerCharacter.instance.HP + "/" + PlayerCharacter.instance.MaxHP, false, true)); if (GlobalControls.crate) { txtmgrs[21].SetText(new TextMessage("TA " + (PlayerCharacter.instance.ATK + PlayerCharacter.instance.WeaponATK) + " (" + PlayerCharacter.instance.WeaponATK + ")", false, true)); txtmgrs[22].SetText(new TextMessage("DF " + (PlayerCharacter.instance.DEF + PlayerCharacter.instance.ArmorDEF) + " (" + PlayerCharacter.instance.ArmorDEF + ")", false, true)); txtmgrs[23].SetText(new TextMessage("EPX: " + PlayerCharacter.instance.EXP, false, true)); txtmgrs[24].SetText(new TextMessage("NETX: " + PlayerCharacter.instance.GetNext(), false, true)); txtmgrs[25].SetText(new TextMessage("WAEPON: " + PlayerCharacter.instance.Weapon, false, true)); txtmgrs[26].SetText(new TextMessage("AROMR: " + PlayerCharacter.instance.Armor, false, true)); txtmgrs[27].SetText(new TextMessage("GLOD: " + PlayerCharacter.instance.Gold, false, true)); } else { txtmgrs[21].SetText(new TextMessage("AT " + (PlayerCharacter.instance.ATK + PlayerCharacter.instance.WeaponATK) + " (" + PlayerCharacter.instance.WeaponATK + ")", false, true)); txtmgrs[22].SetText(new TextMessage("DF " + (PlayerCharacter.instance.DEF + PlayerCharacter.instance.ArmorDEF) + " (" + PlayerCharacter.instance.ArmorDEF + ")", false, true)); txtmgrs[23].SetText(new TextMessage("EXP: " + PlayerCharacter.instance.EXP, false, true)); txtmgrs[24].SetText(new TextMessage("NEXT: " + PlayerCharacter.instance.GetNext(), false, true)); txtmgrs[25].SetText(new TextMessage("WEAPON: " + PlayerCharacter.instance.Weapon, false, true)); txtmgrs[26].SetText(new TextMessage("ARMOR: " + PlayerCharacter.instance.Armor, false, true)); txtmgrs[27].SetText(new TextMessage("GOLD: " + PlayerCharacter.instance.Gold, false, true)); } GameObject.Find("Mugshot").GetComponent().color = new Color(1, 1, 1, 0); GameObject.Find("textframe_border_outer").GetComponent().color = new Color(1, 1, 1, 0); GameObject.Find("textframe_interior").GetComponent().color = new Color(0, 0, 0, 0); GameObject.Find("stat_border_outer").GetComponent().color = new Color(1, 1, 1, 1); GameObject.Find("stat_interior").GetComponent().color = new Color(0, 0, 0, 1); yield return 0; while (instance.menuRunning[0] && !instance.menuRunning[3]) { if (GlobalControls.input.Cancel == ButtonState.PRESSED || GlobalControls.input.Confirm == ButtonState.PRESSED) { GameObject.Find("utHeartMenu").GetComponent().color = new Color(c.r, c.g, c.b, 1); instance.uiAudio.PlayOneShot(AudioClipRegistry.GetSound("menuconfirm")); instance.menuRunning[0] = false; for (int i = 18; i <= 27; i++) txtmgrs[i].HideTextObject(); GameObject.Find("Mugshot").GetComponent().color = new Color(1, 1, 1, 0); GameObject.Find("textframe_border_outer").GetComponent().color = new Color(1, 1, 1, 0); GameObject.Find("textframe_interior").GetComponent().color = new Color(0, 0, 0, 0); GameObject.Find("stat_border_outer").GetComponent().color = new Color(1, 1, 1, 0); GameObject.Find("stat_interior").GetComponent().color = new Color(0, 0, 0, 0); } yield return 0; } break; } default: //CELL yield return CloseMenu(); instance.textmgr.SetEffect(null); instance.textmgr.SetText(new TextMessage(GlobalControls.crate ? "NO CELPLHONE ALOLWDE!!!" : "But you don't have a cellphone... [w:10]yet.", true, false)); instance.textmgr.transform.parent.parent.SetAsLastSibling(); break; } } else if (GlobalControls.input.Cancel == ButtonState.PRESSED) yield return CloseMenu(true); } yield return 0; } while (instance.PlayerNoMove) yield return 0; instance.menuRunning[2] = false; instance.menuRunning[3] = false; } private static bool CloseMenu(bool endOfInText = false) { foreach (Transform tf in GameObject.Find("MenuContainer").GetComponentsInChildren()) { if (tf.GetComponent()) tf.gameObject.GetComponent().color = new Color(tf.gameObject.GetComponent().color.r, tf.gameObject.GetComponent().color.b, tf.gameObject.GetComponent().color.g, 0); if (tf.GetComponent()) tf.gameObject.GetComponent().HideTextObject(); } instance.menuRunning = new[] { false, false, !endOfInText, true, true }; GameObject.Find("Mugshot").GetComponent().color = new Color(1, 1, 1, 0); GameObject.Find("textframe_border_outer").GetComponent().color = new Color(1, 1, 1, 0); GameObject.Find("textframe_interior").GetComponent().color = new Color(0, 0, 0, 0); GameObject.Find("TextManager OW").GetComponent().skipNowIfBlocked = true; if (endOfInText) instance.PlayerNoMove = false; //Close menu SetUIPos(); instance.UIPos = 0; return true; } private static readonly List overworldMusics = new List(); public static void HideOverworld(string callFrom = "Unknown") { Camera.main.GetComponent().enabled = false; overworldMusics.Clear(); List toDelete = new List(); foreach (string str in NewMusicManager.audiolist.Keys) { AudioSource audio = (AudioSource)NewMusicManager.audiolist[str]; if (!audio) { toDelete.Add(str); continue; } if (audio.name.Contains("StaticKeptAudio")) continue; if (!audio.isPlaying || str == "src") continue; overworldMusics.Add(str); NewMusicManager.Stop(str); } foreach (string str in toDelete) if (str != "src") NewMusicManager.DestroyChannel(str); MusicManager.src.Stop(); GameObject go2 = new GameObject(); GameObject go = Instantiate(go2); Destroy(go2); go.name = "GameObject"; foreach (Transform t in UnitaleUtil.GetFirstChildren(null, true)) if (t != go && !t.name.Contains("AudioChannel") && t.name != "BGCamera") if (callFrom == "Shop" && t.name == "Main Camera OW") { t.GetComponent().enabled = false; t.GetComponent().enabled = false; t.transform.position = new Vector3(320, 240, t.transform.position.z); } else t.SetParent(go.transform); go.SetActive(false); } public static void ShowOverworld(string callFrom = "Unknown") { GameObject go = (from tf in UnitaleUtil.GetFirstChildren(null, true) where tf.gameObject.name == "GameObject" select tf.gameObject).FirstOrDefault(); if (go != null) { go.SetActive(true); if (GameObject.Find("Main Camera")) Destroy(GameObject.Find("Main Camera")); foreach (Transform tf in UnitaleUtil.GetFirstChildren(go.transform, true)) { try { tf.SetParent(null); if (tf.name == "Canvas OW" || tf.name == "Canvas Two" || tf.name == "Main Camera OW" || tf.name == "GameOverContainer" || tf.name == "BGCamera") DontDestroyOnLoad(tf.gameObject); else if (tf.childCount > 0) if (tf.GetChild(0).name == "Player") DontDestroyOnLoad(tf.gameObject); } catch { /* ignored */ } } } instance.StartCoroutine(ShowOverworld2(callFrom)); } private static IEnumerator ShowOverworld2(string callFrom) { yield return 0; if (callFrom == "Battle") { Destroy(GameObject.Find("psContainer")); Destroy(GameObject.Find("GameObject")); GameObject.Find("Main Camera OW").GetComponent().Awake(); DiscordControls.ShowOWScene(SceneManager.GetActiveScene().name); } FindObjectOfType().fade.color = new Color(0, 0, 0, 1); foreach (string str in overworldMusics) try { if (!NewMusicManager.Exists(str)) NewMusicManager.CreateChannel(str); AudioSource channel = ((AudioSource)NewMusicManager.audiolist[str]); string clipNameWithPrefix = NewMusicManager.GetAudioName(str); if (clipNameWithPrefix.StartsWith("music:")) NewMusicManager.PlayMusic(str, NewMusicManager.GetAudioName(str, false), channel.loop, channel.volume); else if (clipNameWithPrefix.StartsWith("sound:")) NewMusicManager.PlaySound(str, NewMusicManager.GetAudioName(str, false), channel.loop, channel.volume); else if (clipNameWithPrefix.StartsWith("voice:")) NewMusicManager.PlayVoice(str, NewMusicManager.GetAudioName(str, false), channel.loop, channel.volume); } catch { /* ignored */ } overworldMusics.Clear(); instance.OnDisable(); instance.OnEnable(); if (callFrom == "Shop") { GameObject maincamera = GameObject.Find("Main Camera OW"); maincamera.GetComponent().enabled = true; maincamera.GetComponent().enabled = true; } else { bool restart = true; foreach (TPHandler tp in FindObjectsOfType()) if (tp.gameObject.name.Contains("TP On-the-fly")) restart = StaticInits.MODFOLDER == FindObjectOfType().modToLoad; if (restart) instance.RestartMusic(); } yield return 0; foreach (Transform tf in UnitaleUtil.GetFirstChildren(GameObject.Find("Canvas OW").transform, true)) if (tf.gameObject.GetComponent()) { tf.gameObject.GetComponent().Start(); break; } StaticInits.SendLoaded(); } } ================================================ FILE: Assets/Scripts/Overworld/PlayerOverworld.cs.meta ================================================ fileFormatVersion: 2 guid: f8cf8619ec337c54ea4e60411b51f440 timeCreated: 1498875628 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 410 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Overworld/SaveLoad.cs ================================================ using System; using UnityEngine; using System.Runtime.Serialization.Formatters.Binary; using System.IO; /// /// A static class that is used to load and save a gamestate. /// public static class SaveLoad { public static GameState savedGame; // The current session save public static AlMightyGameState permanentGameState; // The permanent save public static bool started; public static void Start() { started = true; try { if (File.Exists(Application.persistentDataPath + "/save.gd")) { Debug.Log("We found a save at this location : " + Application.persistentDataPath + "/save.gd"); BinaryFormatter bf = new BinaryFormatter(); FileStream file = File.Open(Application.persistentDataPath + "/save.gd", FileMode.Open); savedGame = (GameState)bf.Deserialize(file); if (savedGame.CYFversion == null || string.Compare(savedGame.CYFversion, GlobalControls.OverworldVersion, StringComparison.OrdinalIgnoreCase) < 0) throw new CYFException("Your save file is from CYF v" + (savedGame.CYFversion ?? "0.6.3 or earlier") + ", " + "but you are currently running CYF v" + GlobalControls.CYFversion + ". Your save is incompatible with this version of CYF.\n\n" + "To fix this, you must delete your save file. It can be found here: \n" + Application.persistentDataPath + "/save.gd\n\n" + "Or, you can Press R now to delete your save and close CYF.\n" + "Tell me if you have any more problems, and thanks for following my fork! ^^"); file.Close(); } else Debug.Log("There's no save at all."); } catch (CYFException c) { GlobalControls.allowWipeSave = true; UnitaleUtil.DisplayLuaError(StaticInits.ENCOUNTER, c.Message, true); } catch (Exception e) { GlobalControls.allowWipeSave = true; UnitaleUtil.DisplayLuaError(StaticInits.ENCOUNTER, "Have you saved on a previous or newer version of CYF? Your save isn't compatible with this version.\n\n" + "To fix this, you must delete your save file. It can be found here: \n" + Application.persistentDataPath + "/save.gd\n\n" + "Or, you can Press R now to delete your save and close CYF.\n" + "Tell me if you have any more problems, and thanks for following my fork! ^^\n\nError encountered:\n" + e.Message + "\n" + e.StackTrace, true); } } public static void Save(bool saveMapState = false) { if (saveMapState) EventManager.instance.SetEventStates(true); GameState currentGame = new GameState(); currentGame.SaveGameVariables(); BinaryFormatter bf = new BinaryFormatter(); //Application.persistentDataPath is a string, so if you wanted you can put that into unitaleutil.writeinlog if you want to know where save games are located FileStream file = File.Create(Application.persistentDataPath + "/save.gd"); bf.Serialize(file, currentGame); savedGame = currentGame; Debug.Log("Save created at this location : " + Application.persistentDataPath + "/save.gd"); file.Close(); } public static bool Load(bool loadGlobals = true) { if (File.Exists(Application.persistentDataPath + "/save.gd")) { Debug.Log("We found a save at this location : " + Application.persistentDataPath + "/save.gd"); BinaryFormatter bf = new BinaryFormatter(); FileStream file = File.Open(Application.persistentDataPath + "/save.gd", FileMode.Open); GameState currentGame = (GameState)bf.Deserialize(file); currentGame.LoadGameVariables(loadGlobals); file.Close(); return true; } Debug.Log("There's no save to load."); savedGame = null; return false; } public static void SavePermanentGlobals(string key = null) { permanentGameState = new AlMightyGameState(); permanentGameState.SaveAllGlobals(); File.Delete(Application.persistentDataPath + "/AlMightySave.gd"); BinaryFormatter bf = new BinaryFormatter(); //Application.persistentDataPath is a string, so if you wanted you can put that into unitaleutil.writeinlog if you want to know where save games are located FileStream file = File.Create(Application.persistentDataPath + "/AlMightySave.gd"); bf.Serialize(file, permanentGameState); Debug.Log(key == null ? "Permanent globals have been saved!" : "The permanent global \"" + key + "\" has been saved!"); file.Close(); } public static bool LoadPermanentGlobals() { if (File.Exists(Application.persistentDataPath + "/AlMightySave.gd")) { Debug.Log("We found a permanent save at this location : " + Application.persistentDataPath + "/AlMightySave.gd"); BinaryFormatter bf = new BinaryFormatter(); FileStream file = File.Open(Application.persistentDataPath + "/AlMightySave.gd", FileMode.Open); permanentGameState = (AlMightyGameState)bf.Deserialize(file); permanentGameState.LoadAllGlobals(); file.Close(); return true; } Debug.Log("There is no permanent save to load."); return false; } } ================================================ FILE: Assets/Scripts/Overworld/SaveLoad.cs.meta ================================================ fileFormatVersion: 2 guid: 21947f5cd1de16143987cb1177aa9537 timeCreated: 1463031214 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Overworld/ShopScript.cs ================================================ using System; using System.Linq; using MoonSharp.Interpreter; using UnityEngine; using UnityEngine.UI; public class ShopScript : MonoBehaviour { public static string scriptName; private int numberOfChoices = 4; private int selection; private bool waitForSelection; private bool infoActive; private bool interrupted; private string[] mainName; private DynValue[] mainInfo; private int[] mainPrice; private int currentItemIndex; private int sellItem = -1; private readonly State[] canSelect = { State.MENU, State.BUY, State.BUYCONFIRM, State.SELL, State.SELLCONFIRM, State.TALK }; private readonly State[] bigTexts = { State.SELL, State.SELLCONFIRM, State.TALKINPROGRESS, State.INTERRUPT, State.EXIT }; private enum State { MENU, BUY, BUYCONFIRM, SELL, SELLCONFIRM, TALK, TALKINPROGRESS, EXIT, INTERRUPT } private State currentState = State.MENU; private State interruptState = State.MENU; private TPHandler tp; public TextManager tmMain, tmChoice, tmInfo, tmBigTalk, tmGold, tmItem; public GameObject tmInfoParent, utHeart; public ScriptWrapper script; // Use this for initialization private void Start() { FindObjectOfType().BeginFade(-1); tmBigTalk.SetTextQueue(new[] { new TextMessage("[novoice]", false, true) }); EnableBigText(false); if (scriptName == null) throw new CYFException("You must give a valid script name to the function General.EnterShop()"); script = new ScriptWrapper { scriptname = scriptName }; string scriptText = FileLoader.GetScript("Shops/" + scriptName, "Loading a shop", "event"); try { script.DoString(scriptText); script.SetVar("background", UserData.Create(LuaSpriteController.GetOrCreate(GameObject.Find("Background")))); script.script.Globals["Interrupt"] = ((Action) Interrupt); script.script.Globals["CreateSprite"] = (Func) SpriteUtil.MakeIngameSprite; script.script.Globals["CreateLayer"] = (Func) SpriteUtil.CreateLayer; script.script.Globals["CreateText"] = (Func) LuaScriptBinder.CreateText; UnitaleUtil.TryCall(script, "Start"); tmMain.SetCaller(script); tmChoice.SetCaller(script); tmInfo.SetCaller(script); tmBigTalk.SetCaller(script); tmMain.SetTextQueue(new[] { new TextMessage("[linespacing:11]" + script.GetVar("maintalk").String, true, false) }); tmChoice.SetTextQueue(new[] { new TextMessage("[novoice][font:uidialoglilspace][linespacing:9] Buy\n Sell\n Talk\n Exit", false, true) }); tmGold.SetTextQueue(new[] { new TextMessage("[novoice]" + PlayerCharacter.instance.Gold + "G", false, true) }); tmItem.SetTextQueue(new[] { new TextMessage("[novoice]" + Inventory.inventory.Count + "/8", false, true) }); tmInfo.SetTextQueue(new[] { new TextMessage("[novoice]", false, true) }); Camera.main.GetComponent().clip = AudioClipRegistry.GetMusic(script.GetVar("music").String); Camera.main.GetComponent().time = 0; Camera.main.GetComponent().Play(); SetPlayerOnSelection(); } catch (InterpreterException ex) { UnitaleUtil.DisplayLuaError(scriptName, ex.DecoratedMessage != null ? UnitaleUtil.FormatErrorSource(ex.DecoratedMessage, ex.Message) + ex.Message : ex.Message); } catch (Exception ex) { UnitaleUtil.DisplayLuaError(scriptName, "Unknown error. Usually means you're missing a sprite.\nSee documentation for details.\nStacktrace below in case you wanna notify a dev.\n\nError: " + ex.Message + "\n\n" + ex.StackTrace); } } private delegate TResult Func(T1 arg1, T2 arg2, T3 arg3, T4 arg4, T5 arg, T6 arg6); // void CreateLayer(string name, string relatedTag = "BelowUI", bool before = false) { SpriteUtil.CreateLayer(name, relatedTag, before); } // DynValue CreateSprite(string filename, string tag = "BelowUI", int childNumber = -1) { return SpriteUtil.MakeIngameSprite(filename, tag, childNumber); } private static TextMessage[] BuildTextFromTable(DynValue text, string beforeText) { TextMessage[] msgs = new TextMessage[text.Type == DataType.Table ? text.Table.Length : 1]; for (int i = 0; i < msgs.Length; i++) if (text.Type == DataType.Table) msgs[i] = new RegularMessage(beforeText + text.Table.Get(i + 1).String); else msgs[i] = new RegularMessage(beforeText + text.String); return msgs; } private void Interrupt(DynValue text, string nextState = "MENU") { if (currentState == State.INTERRUPT) return; UnitaleUtil.TryCall(script, "OnInterrupt", DynValue.NewString(nextState)); try { interruptState = (State)Enum.Parse(typeof(State), nextState, true); } catch { throw new CYFException("\"" + nextState + "\" is not a valid shop state."); } ChangeState(State.INTERRUPT, -1, text); } private void EnableBigText(bool enable) { if (enable) { if (!tmMain.IsFinished()) tmMain.SkipLine(); if (!tmChoice.IsFinished()) tmChoice.SkipLine(); } tmBigTalk.transform.parent.parent.gameObject.SetActive(enable); } private void ChangeState(State state, int select = -1, object arg = null) { EnableBigText(bigTexts.Contains(state)); if (currentState == State.INTERRUPT) interrupted = false; currentState = state; //Switch comparison states string text; switch (state) { case State.MENU: UnitaleUtil.TryCall(script, "EnterMenu"); if (!interrupted) { sellItem = -1; if (select != -1) selection = select; numberOfChoices = 4; tmChoice.SetTextQueue(new[] { new TextMessage("[novoice][font:uidialoglilspace][linespacing:9] Buy\n Sell\n Talk\n Exit", false, true) }); tmMain.SetTextQueue(new[] { new TextMessage("[linespacing:11]" + script.GetVar("maintalk").String, true, false) }); tmGold.SetTextQueue(new[] { new TextMessage("[novoice]" + PlayerCharacter.instance.Gold + "G", false, true) }); tmItem.SetTextQueue(new[] { new TextMessage("[novoice]" + Inventory.inventory.Count + "/8", false, true) }); infoActive = false; tmInfoParent.transform.position = new Vector3(tmInfoParent.transform.position.x, 70, tmInfoParent.transform.position.z); } break; case State.BUYCONFIRM: currentItemIndex = selection; selection = 1; numberOfChoices = 2; tmChoice.SetTextQueue(new[] { new TextMessage("[font:uidialoglilspace][linespacing:0][novoice]Buy for\n" + mainPrice[currentItemIndex] + "G?\n\n Yes\n No", false, true) }); break; case State.SELLCONFIRM: currentItemIndex = selection; selection = 1; numberOfChoices = 2; tmBigTalk.SetTextQueue(new[] { new TextMessage("\n[linespacing:11][font:uidialoglilspace][novoice] Sell the " + Inventory.inventory[currentItemIndex].Name + " for " + Inventory.NametoPrice[Inventory.inventory[currentItemIndex].Name] / 5 + "G?\n\n Yes\tNo" + "\n\n\t [color:ffff00](" + PlayerCharacter.instance.Gold + "G)", false, true) }); break; case State.BUY: UnitaleUtil.TryCall(script, "EnterBuy"); if (!interrupted) { if (select != -1) selection = select; text = BuildBuyString().Replace("\n", " \n").Replace("\r", " \r").Replace("\t", " \t"); numberOfChoices = text.Split('\n', '\r', '\t').Length; tmChoice.SetTextQueue(new[] { new TextMessage("[linespacing:9][font:uidialoglilspace]" + script.GetVar("buytalk").String, false, false) }); tmMain.SetTextQueue(new[] { new TextMessage("[novoice][linespacing:11][font:uidialoglilspace]" + text, false, true) }); tmGold.SetTextQueue(new[] { new TextMessage("[novoice]" + PlayerCharacter.instance.Gold + "G", false, true) }); tmItem.SetTextQueue(new[] { new TextMessage("[novoice]" + Inventory.inventory.Count + "/8", false, true) }); } break; case State.SELL: UnitaleUtil.TryCall(script, "EnterSell"); if (!interrupted) { if (select != -1) selection = select; if (sellItem == -1) sellItem = Inventory.inventory.Count; text = BuildSellString(); numberOfChoices = Inventory.inventory.Count + 1; tmBigTalk.SetTextQueue(new[] { new TextMessage("[novoice][font:uidialoglilspace][linespacing:11]" + text, false, true) }); if (Inventory.inventory.Count == 0) { UnitaleUtil.TryCall(script, "FailSell", DynValue.NewString("empty")); if (!interrupted) HandleCancel(); } } break; case State.TALK: UnitaleUtil.TryCall(script, "EnterTalk"); if (!interrupted) { if (select != -1) selection = select; text = BuildTalkString(); numberOfChoices = mainName.Length + 1; tmMain.SetTextQueue(new[] { new TextMessage("[linespacing:11]" + text, false, true) }); tmChoice.SetTextQueue(new[] { new TextMessage("[font:uidialoglilspace][linespacing:9]" + script.GetVar("talktalk").String, false, false) }); } break; case State.TALKINPROGRESS: UnitaleUtil.TryCall(script, "SuccessTalk", DynValue.NewString(mainName[selection])); if (!interrupted) { TextMessage[] texts = BuildTalkResultStrings(); tmBigTalk.SetTextQueue(texts); utHeart.GetComponent().enabled = false; } break; case State.EXIT: UnitaleUtil.TryCall(script, "EnterExit"); if (!interrupted) { TextMessage[] texts2 = BuildTextFromTable(script.GetVar("exittalk"), "[linespacing:11]"); tmBigTalk.SetTextQueue(texts2); utHeart.GetComponent().enabled = false; } break; case State.INTERRUPT: tmBigTalk.SetTextQueue(BuildTextFromTable((DynValue) arg, "[linespacing:11]")); utHeart.GetComponent().enabled = false; interrupted = true; break; } if (canSelect.Contains(state)) waitForSelection = true; } private void SetPlayerOnSelection() { if (Array.IndexOf(canSelect, currentState) == -1) return; TextManager tm = null; switch (currentState) { case State.MENU: case State.BUYCONFIRM: tm = tmChoice; break; case State.BUY: case State.TALK: tm = tmMain; break; case State.SELL: case State.SELLCONFIRM: tm = tmBigTalk; break; } if (tm == null) return; int usedSelection = selection; if (currentState == State.BUYCONFIRM) usedSelection += 3; if (currentState == State.SELLCONFIRM) usedSelection += 6; Vector3 v = tm.letters[GetIndexFirstCharOfGivenLine(tm, usedSelection)].image.transform.position; utHeart.transform.position = new Vector3(v.x - 16, v.y + 8, v.z); if (currentState != State.BUY) return; infoActive = selection != numberOfChoices - 1; if (!infoActive) return; string info = mainPrice[selection] == 0 ? "SOLD OUT" : mainInfo[selection].String; tmInfo.SetTextQueue(new[] { new TextMessage("[novoice][font:uidialoglilspace]" + info, false, true) }); } private static int GetIndexFirstCharOfGivenLine(TextManager tm, int choiceIndex = 0) { string text = tm.textQueue[0].Text; int count = -1, columnsUsed = 0, bracketCount = 0, bracketBegin = 0; for (int i = 0; i < text.Length; i++) { if (tm.letters.Any(data => data.index == i)) count++; switch (text[i]) { case ' ': case '*': continue; case '[': if (bracketCount == 0) bracketBegin = i; bracketCount++; break; case '\n': case '\r': choiceIndex -= tm.columnNumber - columnsUsed; columnsUsed = 0; continue; case '\t': choiceIndex--; columnsUsed++; continue; } if (bracketCount == 0 && choiceIndex <= 0) return count; if (text[i] == ']' && bracketCount > 0) bracketCount--; // Unmatched open bracket at end of text if (bracketCount > 0 && i == text.Length - 1) { bracketCount = 0; i = bracketBegin; } } return 0; } private string BuildBuyString() { string result = "[font:uidialoglilspace][linespacing:11]"; DynValue[] itemName, itemInfo, itemPrice; try { itemName = UnitaleUtil.TableToDynValueArray(script.GetVar("buylist").Table.Get(1).Table); itemInfo = UnitaleUtil.TableToDynValueArray(script.GetVar("buylist").Table.Get(2).Table); itemPrice = UnitaleUtil.TableToDynValueArray(script.GetVar("buylist").Table.Get(3).Table); } catch { throw new CYFException("The variable \"buylist\" must contain a table!"); } mainName = new string[itemName.Length]; mainInfo = new DynValue[itemName.Length]; mainPrice = new int[itemName.Length]; for (int i = 0; i < itemName.Length; i ++) { if (i < itemPrice.Length && itemPrice[i].Type != DataType.Number && itemPrice[i].Number % 1 != 0) throw new CYFException("The price table must contain integers."); if (!Inventory.NametoDesc.Keys.Contains(itemName[i].String)) throw new CYFException("The item \"" + itemName[i].String + "\" doesn't exist in the inventory database."); mainName[i] = itemName[i].String; mainInfo[i] = i >= itemInfo.Length ? DynValue.NewString(Inventory.NametoDesc[itemName[i].String]) : itemInfo[i]; mainPrice[i] = i >= itemPrice.Length ? Inventory.NametoPrice[mainName[i]] : (int)itemPrice[i].Number; try { if (mainPrice[i] == -1) mainPrice[i] = Inventory.NametoPrice[mainName[i]]; if (mainPrice[i] == 0) result += " [color:808080]--- SOLD OUT ---[color:ffffff]\n"; else result += " " + mainPrice[i] + "G - " + mainName[i] + "\n"; } catch { throw new CYFException("The item \"" + mainName[i] + "\" doesn't have a price in the database."); } } return result + " Exit"; } private string BuildTalkString() { DynValue talks, talkResults; try { talks = script.GetVar("talklist").Table.Get(1); talkResults = script.GetVar("talklist").Table.Get(2); } catch { throw new CYFException("The variable talklist must be an array which contains two other arrays."); } string result = "[font:uidialoglilspace][linespacing:11]"; if (talks.Type == DataType.Table) { mainName = new string[talks.Table.Length]; mainInfo = new DynValue[talks.Table.Length]; for (int i = 0; i < talks.Table.Length; i ++) { mainName[i] = talks.Table.Get(i + 1).String; result += " " + mainName[i] + "\n"; mainInfo[i] = talkResults.Table.Get(i + 1); } } else throw new CYFException("The variable talklist must be an array which contains two other arrays."); return result + " Exit"; } private TextMessage[] BuildTalkResultStrings() { return BuildTextFromTable(mainInfo[selection], "[linespacing:11]"); } private string BuildSellString() { string result = ""; mainName = new string[Inventory.inventory.Count]; for (int i = 0; i < 8; i ++) { if (i < Inventory.inventory.Count) { int price = Inventory.NametoPrice[Inventory.inventory[i].Name]; result += " " + (i % 2 == 0 ? "" : " ") + (price == 0 ? "NO!" : price / 5 + "G") + " - " + Inventory.inventory[i].ShortName; } else if (i < sellItem) result += " [color:888888](thanks PURCHASE)"; else result += " "; result += (i % 2 == 0 ? "\t" : "\n"); } return result + " [color:ffffff]Exit\t [color:ffff00](" + PlayerCharacter.instance.Gold + "G)"; } private void HandleAction() { switch (currentState) { case State.EXIT: break; case State.MENU: switch (selection) { case 0: ChangeState(State.BUY, 0); break; case 1: ChangeState(State.SELL, 0); break; case 2: ChangeState(State.TALK, 0); break; case 3: HandleCancel(); break; } break; case State.BUY: if (selection == numberOfChoices - 1) HandleCancel(); else { ChangeState(State.BUYCONFIRM, 0); if (mainPrice[currentItemIndex] == 0) { UnitaleUtil.TryCall(script, "FailBuy", DynValue.NewString("soldout")); HandleCancel(); } } break; case State.SELL: if (selection == 8) HandleCancel(); else { ChangeState(State.SELLCONFIRM, 0); if (Inventory.NametoPrice[Inventory.inventory[currentItemIndex].Name] == 0) { UnitaleUtil.PlaySound("SeparateSound", "ShopFail"); UnitaleUtil.TryCall(script, "FailSell", DynValue.NewString("cantsell")); HandleCancel(); } } break; case State.TALK: if (selection == numberOfChoices - 1) HandleCancel(); else ChangeState(State.TALKINPROGRESS); break; case State.BUYCONFIRM: if (selection == numberOfChoices - 1) UnitaleUtil.TryCall(script, "ReturnBuy"); else { if (PlayerCharacter.instance.Gold < mainPrice[currentItemIndex]) UnitaleUtil.TryCall(script, "FailBuy", DynValue.NewString("gold")); else if (Inventory.inventory.Count == Inventory.inventorySize) UnitaleUtil.TryCall(script, "FailBuy", DynValue.NewString("full")); else if (mainPrice[currentItemIndex] == 0) UnitaleUtil.TryCall(script, "FailBuy", DynValue.NewString("soldout")); else { UnitaleUtil.TryCall(script, "SuccessBuy", DynValue.NewString(mainName[currentItemIndex])); UnitaleUtil.PlaySound("SeparateSound", "ShopSuccess"); PlayerCharacter.instance.SetGold(PlayerCharacter.instance.Gold - mainPrice[currentItemIndex]); Inventory.AddItem(mainName[currentItemIndex]); tmGold.SetTextQueue(new[] { new TextMessage("[novoice]" + PlayerCharacter.instance.Gold + "G", false, true) }); tmItem.SetTextQueue(new[] { new TextMessage("[novoice]" + Inventory.inventory.Count + "/8", false, true) }); } } if (!interrupted) { selection = currentItemIndex; HandleCancel(); } break; case State.SELLCONFIRM: if (selection == numberOfChoices - 1) UnitaleUtil.TryCall(script, "ReturnSell"); else { UnitaleUtil.TryCall(script, "SuccessSell", DynValue.NewString(mainName[currentItemIndex])); UnitaleUtil.PlaySound("SeparateSound", "ShopSuccess"); PlayerCharacter.instance.SetGold(PlayerCharacter.instance.Gold + Inventory.NametoPrice[Inventory.inventory[currentItemIndex].Name] / 5); Inventory.RemoveItem(currentItemIndex); if (currentItemIndex == Inventory.inventory.Count && Inventory.inventory.Count != 1) currentItemIndex--; } if (!interrupted) { currentItemIndex = 0; selection = currentItemIndex; HandleCancel(); } break; } } private void HandleCancel(bool fromKey = false) { switch (currentState) { case State.MENU: if (!fromKey) ChangeState(State.EXIT); break; case State.BUY: case State.SELL: case State.TALK: ChangeState(State.MENU, (int)(currentState - 1) / 2 ); break; case State.BUYCONFIRM: ChangeState(State.BUY, currentItemIndex); break; case State.SELLCONFIRM: ChangeState(State.SELL, currentItemIndex); break; } } private void SelectionInputManager() { utHeart.GetComponent().enabled = true; int xMov = GlobalControls.input.Left == ButtonState.PRESSED ? -1 : GlobalControls.input.Right == ButtonState.PRESSED ? 1 : 0; int yMov = GlobalControls.input.Up == ButtonState.PRESSED ? -1 : GlobalControls.input.Down == ButtonState.PRESSED ? 1 : 0; if (xMov != 0 || yMov != 0) { switch (currentState) { case State.MENU: selection = UnitaleUtil.SelectionChoice(4, selection, xMov, yMov, 4, 1); break; case State.TALK: case State.BUY: selection = UnitaleUtil.SelectionChoice(numberOfChoices, selection, xMov, yMov, numberOfChoices, 1); break; case State.BUYCONFIRM: selection = UnitaleUtil.SelectionChoice(2, selection, xMov, yMov, 2, 1); break; case State.SELLCONFIRM: selection = UnitaleUtil.SelectionChoice(2, selection, xMov, yMov, 1, 2, false); break; case State.SELL: if (selection == 8 && yMov == -1) selection = numberOfChoices - 2 - (numberOfChoices - 2) % 2; else selection = UnitaleUtil.SelectionChoice(selection < 8 && (xMov != 0 || selection % 2 == 1) ? numberOfChoices - 1 : 9, selection, xMov, yMov, 5, 2); if (currentState == State.SELL && selection >= numberOfChoices - 1) selection = 8; break; } SetPlayerOnSelection(); } else if (GlobalControls.input.Confirm == ButtonState.PRESSED) HandleAction(); else if (GlobalControls.input.Cancel == ButtonState.PRESSED) HandleCancel(true); } private void TextInputManager() { if (GlobalControls.input.Cancel == ButtonState.PRESSED && !tmBigTalk.LineComplete() && tmBigTalk.CanSkip()) { if (script.GetVar("playerskipdocommand").Boolean) tmBigTalk.DoSkipFromPlayer(); else tmBigTalk.SkipLine(); } else if ((GlobalControls.input.Confirm == ButtonState.PRESSED || tmBigTalk.CanAutoSkipAny(true)) && tmBigTalk.LineComplete() && !tmBigTalk.AllLinesComplete()) tmBigTalk.NextLineText(); else if ((GlobalControls.input.Confirm == ButtonState.PRESSED || tmBigTalk.CanAutoSkipAny(true)) && tmBigTalk.AllLinesComplete()) { switch (currentState) { case State.TALKINPROGRESS: ChangeState(State.TALK); utHeart.GetComponent().enabled = true; EnableBigText(false); break; case State.EXIT: if (tp != null) break; if (script.GetVar("returnscene").Type != DataType.String) throw new CYFException("The variable \"returnscene\" must be a string."); if (script.GetVar("returnpos").Type != DataType.Table) throw new CYFException("The variable \"returnpos\" must be a table."); else if (script.GetVar("returnpos").Table.Length < 2) throw new CYFException("The variable \"returnpos\" must be a table with two numbers."); else if (script.GetVar("returnpos").Table.Get(1).Type != DataType.Number || script.GetVar("returnpos").Table.Get(2).Type != DataType.Number) throw new CYFException("The variable \"returnpos\" must be a table with two numbers."); if (script.GetVar("returndir").Type != DataType.Number) throw new CYFException("The variable \"returndir\" must be a number."); else if (script.GetVar("returndir").Number > 8 || script.GetVar("returndir").Number < 2 || script.GetVar("returndir").Number % 2 == 1) throw new CYFException("The variable \"returndir\" must be either 2 (Down), 4 (Left), 6 (Right) or 8 (Up)."); tmBigTalk.HideTextObject(); tp = Instantiate(Resources.Load("Prefabs/TP On-the-fly")); tp.sceneName = script.GetVar("returnscene").String; tp.position = new Vector2((float) script.GetVar("returnpos").Table.Get(1).Number, (float) script.GetVar("returnpos").Table.Get(2).Number); tp.direction = (int) script.GetVar("returndir").Number; script.Remove(); DontDestroyOnLoad(tp); StartCoroutine(tp.LaunchTP()); break; case State.INTERRUPT: utHeart.GetComponent().enabled = true; EnableBigText(false); ChangeState(interruptState); break; } } } // Update is called once per frame private void Update() { if (script.GetVar("Update") != null) UnitaleUtil.TryCall(script, "Update"); if (waitForSelection) { SetPlayerOnSelection(); waitForSelection = false; } if (canSelect.Contains(currentState)) SelectionInputManager(); else TextInputManager(); if (infoActive && tmInfoParent.transform.position.y != 234) { tmInfoParent.transform.position = new Vector3(tmInfoParent.transform.position.x, tmInfoParent.transform.position.y + 6 <= 234 ? tmInfoParent.transform.position.y + 6 : 234, tmInfoParent.transform.position.z); } else if (!infoActive && tmInfoParent.transform.position.y != 70) tmInfoParent.transform.position = new Vector3(tmInfoParent.transform.position.x, tmInfoParent.transform.position.y - 6 >= 70 ? tmInfoParent.transform.position.y - 6 : 70, tmInfoParent.transform.position.z); } } ================================================ FILE: Assets/Scripts/Overworld/ShopScript.cs.meta ================================================ fileFormatVersion: 2 guid: 47f2627eecbdab3448e2f99131e367e9 timeCreated: 1498875626 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Overworld/SpecialAnnouncementScript.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using UnityEngine; using UnityEngine.UI; public class SpecialAnnouncementScript : MonoBehaviour { // Globally used variables public Text mainText, subText; // Text objects used for the old CYF v0.6 secret and the new part of the secret public AudioSource mainAudio, subAudio; // Audio objects, first one used for the two vocal messages, the second one used for Goat Sound private LuaSpriteController mainSprite, subSprite, fadeSprite, pauseSprite; // Sprites used for both animated characters, the fade effect and the pause button private int phase = 0; // Current speech phase private float punderTime = 0; // Used to store the current time when switching to the old text to the new one private string lastPunderSprite = "", lastLuSprite = ""; // Variables used to know whether we should change the current animated sprite or not private bool firstTalk = false; // Used in order to know when to fade in the first animated character private readonly Dictionary punderSprites = new Dictionary(); // Dictionaries storing the two animated characters' sprites private readonly Dictionary luSprites = new Dictionary(); // Dictionaries storing the two animated characters' sprites private readonly Dictionary audioFiles = new Dictionary(); // Dictionary storing all of the project's files // MisriHalek reference variables public Image misriHalek; private Vector2 MHPos; private bool MHStarted; private bool MHJustStarted; // Volume check variables private float lastTime; private const int sampleDataLength = 256; private float clipVolume; private float[] clipSampleData; // Dictionary associating two functions: the goal is to associate a current time value and its punder face private readonly Dictionary, Func> punderFaceList = new Dictionary, Func> { { x => x == 0, () => "veryHappy" }, { x => x < 7.5, () => "question" }, { x => x < 8.5, () => "idle" }, { x => x < 18.5, () => "happy" }, { x => x < 21, () => "perv" }, { x => x < 23, () => "misriHalek" }, { x => x < 28.5, () => "happy" }, { x => x < 42, () => "serious" }, { x => x < 55.5, () => "happy" }, { x => x < 57.5, () => "serious" }, { x => x < 58, () => "happy" }, { x => x < 59, () => "sad" }, { x => x < 60, () => "happy" }, { x => x < 62, () => "sad" }, { x => x < 64.5, () => "happy" }, { x => x < 74, () => "serious" }, { x => x < 80, () => "idle" }, { x => x < 94.7, () => "serious" }, { x => x < 107.5, () => "happy" }, { x => x < 117, () => "serious" }, { x => x < 120.25, () => "happy" }, { x => x < 120.4, () => "undyne2" }, { x => x < 120.55, () => "undyne" }, { x => x < 120.65, () => "undyne2" }, { x => x < 120.75, () => "undyne3" }, { x => x < 121, () => "undyne" }, { x => x < 129, () => "happy" }, { x => x < 130, () => "questionHappy" }, { x => x < 133.5, () => "happy" }, { x => x < 137, () => "determined" }, { x => x < 138.6, () => "happy" }, { x => x < 139.25, () => "laugh" }, { x => x < 143.1, () => "happy" }, { x => x < 150, () => "veryHappy" } }; // Dictionary associating two functions: the goal is to associate a current time value and its punder face private readonly Dictionary, Func> luFaceList = new Dictionary, Func> { { x => x < 2, () => "NormalNormal" }, { x => x < 3.5, () => "WaveNormal" }, { x => x < 6.3, () => "NormalNormal" }, { x => x < 8, () => "PointNormal" }, { x => x < 12.4, () => "NormalSad" }, { x => x < 14.5, () => "NormalNormal" }, { x => x < 18.4, () => "PointHappy" }, { x => x < 19.5, () => "NormalNormal" }, { x => x < 22.4, () => "HoldNormal" }, { x => x < 27.2, () => "PointNormal" }, { x => x < 31.1, () => "NormalHappy" }, { x => x < 32.2, () => "NormalNormal" }, { x => x < 34.4, () => "NormalHappy" }, { x => x < 38, () => "WaveHappy" }, }; // Use this for initialization private void Start() { // Load CYF's save file StaticInits.Start(); SaveLoad.Start(); // Set up CYF's basic objects new ControlPanel(); new PlayerCharacter(); #if UNITY_STANDALONE_WIN || UNITY_EDITOR_WIN Misc.WindowName = GlobalControls.crate ? ControlPanel.instance.WinodwBsaisNmae : ControlPanel.instance.WindowBasisName; #endif // Load CYF's permanent globals SaveLoad.LoadPermanentGlobals(); // Load all resources needed for this animation to play Sprite[] punderSprs = Resources.LoadAll("Sprites/Punder"); foreach (Sprite spr in punderSprs) punderSprites.Add(spr.name, spr); Sprite[] luSprs = Resources.LoadAll("Sprites/Lu"); foreach (Sprite spr in luSprs) luSprites.Add(spr.name, spr); AudioClip[] adcs = Resources.LoadAll("Audios"); foreach (AudioClip adc in adcs) audioFiles.Add(adc.name, adc); // Create all sprites needed for the animation mainSprite = (LuaSpriteController) SpriteUtil.MakeIngameSprite("empty", "Default").UserData.Object; mainSprite.alpha = 0; mainSprite.SetPivot(.5f, 0); mainSprite.x = 0; mainSprite.y = 20; fadeSprite = (LuaSpriteController) SpriteUtil.MakeIngameSprite("black", "Default").UserData.Object; fadeSprite.alpha = 0; pauseSprite = (LuaSpriteController) SpriteUtil.MakeIngameSprite("empty", "Default").UserData.Object; SetSprite(Resources.Load("Sprites/pause"), "", pauseSprite); pauseSprite.alpha = 0; subSprite = (LuaSpriteController) SpriteUtil.MakeIngameSprite("empty", "Lu").UserData.Object; subSprite.x = 0; subSprite.y = -400; SetSprite("HoldNormal0", false); // Preload all other audio files to prevent lag spikes foreach (AudioClip clip in audioFiles.Values) { mainAudio.clip = clip; mainAudio.Play(); } mainAudio.clip = audioFiles["MisriHalek"]; mainAudio.loop = false; mainAudio.Play(); clipSampleData = new float[sampleDataLength]; } // Set the main or sub sprite using a string key private void SetSprite(string key, bool main) { LuaSpriteController spr = main ? mainSprite : subSprite; SetSprite(key, spr, main ? 0 : 1); } // Set a sprite using a string key private void SetSprite(string key, LuaSpriteController spr, int main = -1) { Dictionary sprDict = main == 0 ? punderSprites : luSprites; SetSprite(sprDict[key], key, spr, main); } // Set a given sprite to a sprite controller protected virtual void SetSprite(Sprite key, string strKey, LuaSpriteController spr, int main = -1) { if (key == null) throw new Exception("Tried to set sprite with key \"" + strKey + "\"."); if (main >= 0 && main <= 1 && (main == 0 ? lastPunderSprite : lastLuSprite) == strKey) return; spr.img.GetComponent().sprite = key; spr.img.GetComponent().sizeDelta = new Vector2(key.texture.width, key.texture.height); switch (main) { case 0: lastPunderSprite = strKey; break; case 1: lastLuSprite = strKey; spr.Scale(2, 2); break; } } // Update is called once per frame private void Update() { if (mainAudio.time != lastTime) { lastTime = mainAudio.time; // Compute which sprite to use string currentSprite = (punderTime == 0 ? punderFaceList : luFaceList).First(sw => sw.Key(mainAudio.time)).Value(); int talkLevel = 0; if (mainAudio.isPlaying) { // Compute the current and following sound samples to know which sprite to display // I read 256 samples, which is about 20ms on a 44khz stereo clip, beginning at the current sample position of the clip // I compute the average of the volume of these samples and use it to know which sprite to display mainAudio.clip.GetData(clipSampleData, mainAudio.timeSamples); clipVolume = 0f; foreach (float sample in clipSampleData) clipVolume += Mathf.Abs(sample); clipVolume /= sampleDataLength; if (punderTime == 0) talkLevel = clipVolume > 0.031 ? 1 : 0; // -30dB else talkLevel = clipVolume > 0.056 ? 2 : clipVolume > 0.01 ? 1 : 0; // -25db & -40db if (!firstTalk && talkLevel > 0) firstTalk = true; } // Actually set the sprite using the volume computed earlier string suffix = punderTime == 0 ? (talkLevel > 0 ? "T" : "") : talkLevel.ToString(); SetSprite(currentSprite + (currentSprite.Contains("undyne") ? "" : suffix), punderTime == 0); } // Fades the first animated character in when the volume is high enough if (firstTalk && mainSprite.alpha < 1) mainSprite.alpha += Time.deltaTime; if (punderTime > 0) { // Fade in the other elements while playing the second thing if (mainAudio.time <= 2 && fadeSprite.alpha < 1) fadeSprite.alpha = Mathf.Min(.5f, mainAudio.time / 3); } CheckPhaseEvent(); } // Execute a range of events private void CheckPhaseEvent() { if (punderTime == 0) switch (phase) { case 0: if (mainAudio.time >= 15) { phase ++; mainText.text = "(This friend in question is MisriHalek, the guy who made...)"; } break; case 1: if (mainAudio.time >= 21) { if (!MHStarted) { mainText.text = "(This friend in question is MisriHalek, the guy who made this dude down there!)"; mainAudio.time = 21; mainAudio.Pause(); MHStarted = true; MHJustStarted = true; misriHalek.transform.localPosition = new Vector2(360, -360); MHPos = misriHalek.transform.localPosition; subAudio.loop = false; subAudio.clip = audioFiles["GoatSound"]; subAudio.Play(); } if (subAudio.time != 0 && MHPos.x > 280 && subAudio.time < subAudio.clip.length / 2) MHPos = new Vector2(MHPos.x - 5, MHPos.y + 10); else if (subAudio.time == 0 && MHPos.x < 360) MHPos = new Vector2(MHPos.x + 5, MHPos.y - 10); else if (MHJustStarted) MHJustStarted = false; else if (subAudio.time == 0 && !subAudio.isPlaying && !MHJustStarted) { phase++; mainAudio.UnPause(); mainText.text = ""; } misriHalek.transform.localPosition = subAudio.time != 0 ? new Vector2(MHPos.x + (float)(UnityEngine.Random.value - .5) * 10, MHPos.y + (float)(UnityEngine.Random.value - .5) * 10) : MHPos; } break; case 2: if (mainAudio.time >= 73) { phase++; mainText.text = "(You really should write this down :P)"; } break; case 3: if (mainAudio.time >= 80) { phase++; mainText.text = ""; } break; case 4: if (mainAudio.time >= 116) { phase++; mainText.text = "(Yep, shared. However, let the others discover what you discovered by yourself, it's funnier that way for them!)"; } break; case 5: if (mainAudio.time >= 125) { phase++; mainText.text = ""; } break; case 6: if (mainAudio.time >= 133.5) { phase++; mainText.text = "(I ordered a Frisk, but all I got was a crate!)"; } break; case 7: if (mainAudio.time >= 143) { phase++; subAudio.loop = false; subAudio.clip = audioFiles["ButtonSound"]; subAudio.Play(); pauseSprite.alpha = 1; mainAudio.time = 143; punderTime = mainAudio.time; mainAudio.time = 0; mainAudio.clip = audioFiles["Rhenny"]; mainAudio.loop = false; mainAudio.Play(); } break; default: phase++; mainText.text = "(I ordered a Frisk, but all I got was a crate!)\n\nThanks for listening to the end guys, you can now close the game!"; break; } else { switch (phase) { case 8: if (mainAudio.time >= 1.2) { subSprite.y = Mathf.Min(-160f, subSprite.y + 6); if (subSprite.y >= -160f) phase++; } break; case 9: if (mainAudio.time >= 18.5) { subSprite.y = Mathf.Max(-400f, subSprite.y - 6); if (subSprite.y <= -400f) phase++; } break; case 10: if (mainAudio.time >= 20) { subText.rectTransform.localPosition = new Vector3(subText.rectTransform.localPosition.x, Mathf.Min(-92, subText.rectTransform.localPosition.y + 4), subText.rectTransform.localPosition.z); subSprite.y = Mathf.Min(-138f, subSprite.y + 4); if (subSprite.y >= -138f) phase++; } break; case 11: if (mainAudio.time >= 22.4) { subSprite.y = Mathf.Max(-160, subSprite.y - 4); if (subSprite.y <= -160f) phase++; } break; case 12: if (mainAudio.time >= mainAudio.clip.length - 2) { subSprite.y = Mathf.Max(-400f, subSprite.y - 10); if (subSprite.y <= -400f) phase++; } break; } if (mainAudio.isPlaying) return; subAudio.loop = false; subAudio.clip = audioFiles["ButtonSound"]; subAudio.Play(); pauseSprite.alpha = 0; fadeSprite.alpha = 0; mainAudio.clip = audioFiles["MisriHalek"]; mainAudio.loop = false; mainAudio.time = punderTime; punderTime = 0; mainAudio.Play(); } } } ================================================ FILE: Assets/Scripts/Overworld/SpecialAnnouncementScript.cs.meta ================================================ fileFormatVersion: 2 guid: 68da3a59a7fef2545a932ae833649006 timeCreated: 1498950759 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Overworld/TPHandler.cs ================================================ using UnityEngine; using UnityEngine.SceneManagement; using System.Collections; using System.Linq; public class TPHandler : MonoBehaviour { public string sceneName; //The name of the scene we'll load public Vector2 position; //The future position of our player public int direction = 0; //The direction of the player public bool activated; //Checks if we're already in a TP public bool noFadeIn; public bool noFadeOut; private Collider2D playerC2D; //The player's Collider2D private Collider2D objectC2D; //This object's Collider2D //Use this for initialization private void Start() { //Same for the object we're testing objectC2D = GetComponent(); if (!GlobalControls.isInShop) { //Finds the player in the GameObject list, and store its Collider2D playerC2D = GameObject.Find("Player").GetComponent(); } } private void OnTriggerEnter2D(Object col) { if (activated || col != playerC2D || PlayerOverworld.instance.PlayerNoMove || EventManager.instance.script != null) return; activated = true; objectC2D.enabled = false; StaticInits.MODFOLDER = GameObject.Find("Background").GetComponent().modToLoad; gameObject.transform.SetParent(null); DontDestroyOnLoad(gameObject); StartCoroutine(LaunchTP()); } //launchTP makes our tp, and lots of other nice stuff public IEnumerator LaunchTP() { PlayerOverworld.instance.PlayerNoMove = true; //Launch TP if (GameObject.Find("FadingBlack")) if (!noFadeIn) { float fadeTime = GameObject.Find("FadingBlack").GetComponent().BeginFade(1); yield return new WaitForSeconds(fadeTime); } else GameObject.Find("FadingBlack").GetComponent().FadeInstant(1); EventManager.instance.fadeOutToMap = !noFadeOut; if (GlobalControls.isInShop) { PlayerOverworld.ShowOverworld("Shop"); GlobalControls.isInShop = false; } EventManager.instance.SetEventStates(); GlobalControls.EventData.Clear(); if (!FileLoader.SceneExists(sceneName)) { UnitaleUtil.DisplayLuaError("Teleportation script", "The map named \"" + sceneName + "\" doesn't exist."); yield break; } if (GlobalControls.nonOWScenes.Contains(sceneName)) { UnitaleUtil.DisplayLuaError("Teleportation script", "Sorry, but \"" + sceneName + "\" is not the name of an overworld scene."); yield break; } SceneManager.LoadScene(sceneName); StartCoroutine(TransitionOverworld.GetIntoDaMap("tphandler", new object[] { position, this })); } public void LaunchTPInternal() { StartCoroutine(LaunchTP()); } } ================================================ FILE: Assets/Scripts/Overworld/TPHandler.cs.meta ================================================ fileFormatVersion: 2 guid: cafce2c3f7e465f478d7b302ab1b8236 timeCreated: 1458856694 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Overworld/Title.cs ================================================ using UnityEngine; using UnityEngine.SceneManagement; using System.Collections; public class Title : MonoBehaviour { public int phase; public int indexChoice = 0; private float diff, actualX, actualY; private bool initPhase; private int choiceLetter; private readonly string[] firstPhaseEventNames = { "Continue", "Reset", "ChangeName" }; private readonly string[] secondPhaseEventNames = { "No", "Yes" }; public TextManager tmName, TextManagerName, TextManagerLevel, TextManagerTime, TextManagerMap; public GameObject Logo, LogoCrate, RetromodeCanvas; public SpriteRenderer PressEnterOrZ; // Use this for initialization private void Start() { if (!SaveLoad.started) { StaticInits.Start(); SaveLoad.Start(); new ControlPanel(); new PlayerCharacter(); #if UNITY_STANDALONE_WIN || UNITY_EDITOR_WIN Misc.WindowName = GlobalControls.crate ? ControlPanel.instance.WinodwBsaisNmae : ControlPanel.instance.WindowBasisName; #endif SaveLoad.LoadPermanentGlobals(); LuaScriptBinder.SetSessionGlobal("ModFolder", MoonSharp.Interpreter.DynValue.NewString("@Title")); UnitaleUtil.AddKeysToMapCorrespondanceList(); } GameObject firstCamera = GameObject.Find("Main Camera"); firstCamera.SetActive(false); if (GameObject.Find("Main Camera")) Destroy(firstCamera); else firstCamera.SetActive(true); tmName.SetHorizontalSpacing(2); tmName.SetFont(SpriteFontRegistry.Get(SpriteFontRegistry.UI_DEFAULT_NAME)); diff = calcTotalLength(tmName); actualX = tmName.transform.localPosition.x; actualY = tmName.transform.localPosition.y; if (GlobalControls.crate) { Logo.GetComponent().enabled = false; LogoCrate.GetComponent().enabled = true; } DontDestroyOnLoad(Camera.main.gameObject); StartCoroutine(TitlePhase1()); } private IEnumerator TitlePhase1() { Camera.main.GetComponent().PlayOneShot(AudioClipRegistry.GetSound("intro_noise")); while (Camera.main.GetComponent().isPlaying) yield return 0; while (phase == 0) { PressEnterOrZ.color = new Color(255, 255, 255, PressEnterOrZ.color.a == 1 ? 0 : 1); yield return new WaitForSeconds(1); } } // Update is called once per frame private void Update() { if (GlobalControls.input.Confirm == ButtonState.PRESSED && phase == 0) { phase++; Camera.main.GetComponent().Stop(); Destroy(RetromodeCanvas); StopCoroutine(TitlePhase1()); } else switch (phase) { case 1: { if (!initPhase) { initPhase = true; Camera.main.GetComponent().clip = AudioClipRegistry.GetMusic("mus_menu"); Camera.main.GetComponent().Play(); try { if (!SaveLoad.Load()) { SceneManager.LoadScene("EnterName"); } else { PressEnterOrZ.gameObject.SetActive(false); Logo.SetActive(false); LogoCrate.SetActive(false); GameObject.Find("Back1").SetActive(false); TextManagerName.SetHorizontalSpacing(2); TextManagerLevel.SetHorizontalSpacing(2); TextManagerTime.SetHorizontalSpacing(2); TextManagerMap.SetHorizontalSpacing(2); TextManagerName.SetTextQueue(new[] { new TextMessage(PlayerCharacter.instance.Name, false, true) }); TextManagerLevel.SetTextQueue(new[] { new TextMessage((GlobalControls.crate ? "VL" : "LV") + PlayerCharacter.instance.LV, false, true) }); TextManagerTime.SetTextQueue(new[] {new TextMessage(UnitaleUtil.TimeFormatter(SaveLoad.savedGame.playerTime), false, true) }); TextManagerMap.SetTextQueue(new[] { new TextMessage(SaveLoad.savedGame.lastScene, false, true) }); tmName.SetTextQueue(new[] { new TextMessage(PlayerCharacter.instance.Name, false, true) }); diff = calcTotalLength(tmName); tmName.SetEffect(new ShakeEffect(tmName)); } } catch { GlobalControls.allowWipeSave = true; if (GlobalControls.crate) UnitaleUtil.DisplayLuaError(StaticInits.ENCOUNTER, "U USED AN ODL VERSOIN OF CFY? IT ISN'T COMAPTIBEL.\n\n" + "DELEET UR SAVE OT NOT HVAE DA ERRRO AGAIN. HREE: \n" + Application.persistentDataPath + "/save.gd\n\n" + "OR PERS R NWO TO DELEET SAV N CLOSE YCF.\n\n\n" + "IF MOAR PORBLMES, TELL EM! :D\n\n"); else UnitaleUtil.DisplayLuaError(StaticInits.ENCOUNTER, "Have you saved on a previous or newer version of CYF? Your save isn't compatible with this version.\n\n" + "To fix this, you must delete your save file. It can be found here: \n" + Application.persistentDataPath + "/save.gd\n\n" + "Or, you can Press R now to delete your save and close CYF.\n\n\n" + "Tell me if you have any more problems, and thanks for following my fork! ^^\n\n"); } } else { if (GlobalControls.input.Right == ButtonState.PRESSED || GlobalControls.input.Left == ButtonState.PRESSED) setColor(choiceLetter == 2 ? 2 : (choiceLetter + 1) % 2); if (GlobalControls.input.Up == ButtonState.PRESSED || GlobalControls.input.Down == ButtonState.PRESSED) setColor(choiceLetter == 2 ? 0 : 2); else if (GlobalControls.input.Confirm == ButtonState.PRESSED) switch (choiceLetter) { case 0: phase = -1; StartCoroutine(LoadGame()); break; case 1: phase = 2; GameObject.Find(firstPhaseEventNames[choiceLetter]).GetComponent().color = new Color(1, 1, 1, 1); GameObject.Find("CanvasReset").transform.position = new Vector3(320, 240, -500); setColor(0, 2); break; case 2: SceneManager.LoadScene("EnterName"); break; } } break; } case 2: { if (tmName.transform.localScale.x < 3) { float scale = Mathf.Min(3, tmName.transform.localScale.x + 0.01f); tmName.transform.localScale = new Vector3(scale, scale, 1); tmName.MoveTo(actualX - ((tmName.transform.localScale.x - 1) * diff / 2), actualY - ((tmName.transform.localScale.x - 1) * diff / 6)); } if (GlobalControls.input.Right == ButtonState.PRESSED || GlobalControls.input.Left == ButtonState.PRESSED) setColor((choiceLetter + 1) % 2, 2); else if (GlobalControls.input.Confirm == ButtonState.PRESSED) { if (choiceLetter == 1) { Camera.main.GetComponent().Stop(); Camera.main.GetComponent().PlayOneShot(AudioClipRegistry.GetSound("intro_holdup")); phase = -1; StartCoroutine(NewGame()); } else { phase = 1; GameObject.Find(secondPhaseEventNames[choiceLetter]).GetComponent().color = new Color(1, 1, 1, 1); GameObject.Find("CanvasReset").transform.position = new Vector3(320, 240, 50); tmName.transform.localPosition = new Vector3(actualX, actualY, tmName.transform.localPosition.z); tmName.transform.localScale = new Vector3(1, 1, 1); setColor(0); } } break; } } } private void setColor(int nbr, int mode = 1) { string obj = mode == 1 ? firstPhaseEventNames[choiceLetter] : secondPhaseEventNames[choiceLetter]; GameObject.Find(obj).GetComponent().color = new Color(1, 1, 1, 1); choiceLetter = nbr; obj = mode == 1 ? firstPhaseEventNames[choiceLetter] : secondPhaseEventNames[choiceLetter]; GameObject.Find(obj).GetComponent().color = new Color(1, 1, 0, 1); } private IEnumerator LoadGame() { DontDestroyOnLoad(gameObject); UnitaleUtil.ResetOW(); SceneManager.LoadScene("TransitionOverworld"); DiscordControls.StartOW(); yield return 0; //yield return Application.isLoadingLevel; //GameObject.Find("Player").transform.position = new Vector3(; StaticInits.InitAll(LuaScriptBinder.GetSessionGlobal("ModFolder").String, true); if (GameObject.Find("Main Camera")) Destroy(GameObject.Find("Main Camera")); Destroy(gameObject); } private IEnumerator NewGame() { SpriteRenderer blank = GameObject.Find("Blank").GetComponent(); while (blank.color.a <= 1) { if (tmName.transform.localScale.x < 3) { float scale = Mathf.Min(3, tmName.transform.localScale.x + 0.01f); tmName.transform.localScale = new Vector3(scale, scale, 1); tmName.MoveTo(actualX - ((tmName.transform.localScale.x - 1) * diff / 2), actualY - ((tmName.transform.localScale.x - 1) * diff / 6)); } blank.color = new Color(blank.color.r, blank.color.g, blank.color.b, blank.color.a + 0.003f); yield return 0; } while (Camera.main.GetComponent().isPlaying) yield return 0; PlayerCharacter.instance.Reset(false); LuaScriptBinder.ClearVariables(); GlobalControls.GameMapData.Clear(); Inventory.inventory.Clear(); DontDestroyOnLoad(gameObject); UnitaleUtil.ResetOW(); SceneManager.LoadScene("TransitionOverworld"); DiscordControls.StartOW(); yield return 0; GlobalControls.overworldTimestamp += (SaveLoad.savedGame != null ? SaveLoad.savedGame.playerTime : 0f); //yield return Application.isLoadingLevel; if (GameObject.Find("Main Camera")) Destroy(GameObject.Find("Main Camera")); Destroy(gameObject); } public float calcTotalLength(TextManager txtmgr, float addNextValue = 0, int fromLetter = -1, int toLetter = -1) { float totalWidth = 0, totalMaxWidth = 0, lastY = 0; RectTransform[] rts = txtmgr.gameObject.GetComponentsInChildren(); int count = 0, begin = fromLetter > 1 ? fromLetter : 1, objective = toLetter > 1 && toLetter < rts.Length ? toLetter : rts.Length; for (int i = begin; i < objective; i++) { if (rts[i].position.y != lastY) { totalWidth += txtmgr.hSpacing * (count - 1); if (totalWidth > totalMaxWidth) totalMaxWidth = totalWidth; totalWidth = 0; count = 0; lastY = rts[i].position.y; } totalWidth += rts[i].sizeDelta.x; count++; } totalWidth += addNextValue; if (addNextValue != 0) count++; if (totalWidth != 0) totalWidth += txtmgr.hSpacing * (count - 1); return totalWidth; } } ================================================ FILE: Assets/Scripts/Overworld/Title.cs.meta ================================================ fileFormatVersion: 2 guid: 9008bedd3313d2c4e8f6e9c44a31edf9 timeCreated: 1498875627 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Overworld/TransitionOverworld.cs ================================================ using UnityEngine; using UnityEngine.UI; using UnityEngine.SceneManagement; using System.Collections; using System.Linq; using MoonSharp.Interpreter; public class TransitionOverworld : MonoBehaviour { public string FirstLevelToLoad; public Vector2 BeginningPosition; private void Start() { bool isStart = false; // Set timestamp for Overworld to calculate total play time GlobalControls.overworldTimestamp = Time.time - (SaveLoad.savedGame != null ? SaveLoad.savedGame.playerTime : 0f); // Forcefully disable retromode if it is on if (GlobalControls.retroMode) { GlobalControls.retroMode = false; try { LuaScriptBinder.SetPermanentGlobal("CYFRetroMode", DynValue.NewBoolean(false), true); } catch { /* ignored */ } } GameOverBehavior.gameOverContainerOw = GameObject.Find("GameOverContainer"); GameOverBehavior.gameOverContainerOw.SetActive(false); if (GameObject.Find("GameOverContainer")) { Destroy(GameOverBehavior.gameOverContainerOw); GameOverBehavior.gameOverContainerOw = GameObject.Find("GameOverContainer"); GameOverBehavior.gameOverContainerOw.SetActive(false); } DontDestroyOnLoad(GameOverBehavior.gameOverContainerOw); if (LuaScriptBinder.GetSessionGlobal("PlayerPosX") == null || LuaScriptBinder.GetSessionGlobal("PlayerPosY") == null || LuaScriptBinder.GetSessionGlobal("PlayerPosZ") == null) { LuaScriptBinder.SetSessionGlobal("PlayerPosX", DynValue.NewNumber(BeginningPosition.x)); LuaScriptBinder.SetSessionGlobal("PlayerPosY", DynValue.NewNumber(BeginningPosition.y)); LuaScriptBinder.SetSessionGlobal("PlayerPosZ", DynValue.NewNumber(0)); } if (GameObject.Find("Main Camera")) Destroy(GameObject.Find("Main Camera")); //Used only for the 1st scene if (LuaScriptBinder.GetSessionGlobal("PlayerMap") == null) { isStart = true; SaveLoad.Start(); string mapName2 = UnitaleUtil.MapCorrespondanceList.ContainsKey(FirstLevelToLoad) ? UnitaleUtil.MapCorrespondanceList[FirstLevelToLoad] : FirstLevelToLoad; LuaScriptBinder.SetSessionGlobal("PlayerMap", DynValue.NewString(mapName2)); StaticInits.MODFOLDER = ""; /*StaticInits.Initialized = false; GameObject.Find("Main Camera OW").GetComponent().initAll();*/ GlobalControls.realName = PlayerCharacter.instance.Name; } //Check if there is two Main Camera OW objects GameObject temp = GameObject.Find("Main Camera OW"); temp.SetActive(false); if (GameObject.Find("Main Camera OW")) Destroy(GameObject.Find("Main Camera OW")); temp.SetActive(true); // After battle tweaks ControlPanel.instance.FrameBasedMovement = false; if (GlobalControls.realName != null) PlayerCharacter.instance.Name = GlobalControls.realName; //Destroy(gameObject); DontDestroyOnLoad(GameObject.Find("Canvas OW")); DontDestroyOnLoad(GameObject.Find("Canvas Two")); DontDestroyOnLoad(GameObject.Find("Player").transform.parent.gameObject); DontDestroyOnLoad(GameObject.Find("Main Camera OW")); string mapName; if (!isStart) try { mapName = UnitaleUtil.MapCorrespondanceList.ContainsValue(LuaScriptBinder.GetSessionGlobal("PlayerMap").String) ? UnitaleUtil.MapCorrespondanceList.FirstOrDefault(x => x.Value == LuaScriptBinder.GetSessionGlobal("PlayerMap").String).Key : LuaScriptBinder.GetSessionGlobal("PlayerMap").String; } catch { mapName = LuaScriptBinder.GetSessionGlobal("PlayerMap").String; } else mapName = FirstLevelToLoad; if (!FileLoader.SceneExists(mapName)) { UnitaleUtil.DisplayLuaError("TransitionOverworld", "The map named \"" + mapName + "\" doesn't exist."); return; } if (GlobalControls.nonOWScenes.Contains(mapName)) { UnitaleUtil.DisplayLuaError("TransitionOverworld", "Sorry, but \"" + mapName + "\" is not the name of an overworld scene."); return; } SceneManager.LoadScene(mapName); GameObject.Find("Don't show it again").GetComponent().color = new Color(0, 0, 0, 0); StartCoroutine(GetIntoDaMap("transitionoverworld", null)); } public static IEnumerator GetIntoDaMap(string call, object[] neededArgs) { if (GameObject.Find("Main Camera OW")) { GameObject.Find("Main Camera OW").GetComponent().readyToReLaunch = true; GameObject.Find("Main Camera OW").tag = "MainCamera"; } //Clear any leftover Sprite and Text objects that are no longer connected to any scripts foreach (Transform child in GameObject.Find("Canvas Two").transform) if (!child.name.EndsWith("Layer")) Destroy(child.gameObject); else { foreach (Transform child2 in child) Destroy(child2.gameObject); } //Reset the player's shader between rooms. The player should realistically be the only sprite object carried between scenes. if (PlayerOverworld.instance && PlayerOverworld.instance.sprctrl != null) PlayerOverworld.instance.sprctrl.shader.Revert(); yield return 0; Camera.main.transparencySortMode = TransparencySortMode.CustomAxis; Camera.main.transparencySortAxis = new Vector3(0.0f, 1.0f, 1000000.0f); try { PlayerOverworld.instance.backgroundSize = GameObject.Find("Background").GetComponent().sizeDelta * GameObject.Find("Background").GetComponent().localScale.x; } catch { UnitaleUtil.WriteInLogAndDebugger("RectifyCameraPosition: The 'Background' GameObject is missing."); } EventManager.instance.onceReload = false; //Permits to reload the current data if needed MapInfos mi = GameObject.Find("Background").GetComponent(); if (StaticInits.MODFOLDER != mi.modToLoad) { StaticInits.InitAll(mi.modToLoad, true); LuaScriptBinder.SetSessionGlobal("ModFolder", DynValue.NewString(StaticInits.MODFOLDER)); if (call == "transitionoverworld") { EventManager.instance.ScriptRunning = false; EventManager.instance.script = null; } } AudioSource audio = UnitaleUtil.GetCurrentOverworldAudio(); if (mi.isMusicKeptBetweenBattles) { Camera.main.GetComponent().Stop(); Camera.main.GetComponent().clip = null; } else { PlayerOverworld.audioKept.Stop(); PlayerOverworld.audioKept.clip = null; } //Starts the music if there's no music if (audio.clip == null) { if (mi.music != "none") { audio.clip = AudioClipRegistry.GetMusic(mi.music); audio.time = 0; audio.Play(); } else audio.Stop(); } else { //Get the file's name with this...thing? string test = audio.clip.name.Replace('\\', '/').Split(new[] { "/Audio/" }, System.StringSplitOptions.RemoveEmptyEntries)[1].Split('.')[0]; if (test != mi.music) { if (mi.music != "none") { audio.clip = AudioClipRegistry.GetMusic(mi.music); audio.time = 0; audio.Play(); } else audio.Stop(); } } Image utHeart = GameObject.Find("utHeart").GetComponent(); utHeart.color = new Color(utHeart.color.r, utHeart.color.g, utHeart.color.b, 0); PlayerOverworld.instance.cameraShift = Vector2.zero; if (call == "tphandler") { GameObject.Find("Player").transform.parent.position = (Vector2)neededArgs[0]; PlayerOverworld.instance.gameObject.GetComponent().movementDirection = ((TPHandler)neededArgs[1]).direction; ((TPHandler)neededArgs[1]).activated = false; Destroy(((TPHandler)neededArgs[1]).gameObject); } if (GameObject.Find("Don't show it again")) Destroy(GameObject.Find("Don't show it again")); DiscordControls.ShowOWScene(SceneManager.GetActiveScene().name); StaticInits.SendLoaded(); } } ================================================ FILE: Assets/Scripts/Overworld/TransitionOverworld.cs.meta ================================================ fileFormatVersion: 2 guid: 90c34b83df9c146438231c210eb94b45 timeCreated: 1498875627 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 100 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/Overworld.meta ================================================ fileFormatVersion: 2 guid: e4b0d256c0fe4c14da23ab8ccaa2be23 folderAsset: yes timeCreated: 1458390244 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/PlayerControllers/.vs/ProjectSettings.json ================================================ { "CurrentProjectSetting": null } ================================================ FILE: Assets/Scripts/PlayerControllers/.vs/VSWorkspaceState.json ================================================ { "ExpandedNodes": [ "" ], "PreviewInSolutionExplorer": false } ================================================ FILE: Assets/Scripts/PlayerControllers/AbstractSoul.cs ================================================ using UnityEngine; public abstract class AbstractSoul { public float realSpeed; public float speed; // actual player speed used in game update cycles private bool isHalfSpeed; //private PlayerController player; protected AbstractSoul() { realSpeed = speed = ControlPanel.instance.PlayerMovementPerSec; } public abstract Color color { get; } public void SetSpeed(float s) { realSpeed = s; speed = realSpeed / (isHalfSpeed ? 2 : 1); } public void setHalfSpeed(bool _isHalfSpeed) { speed = realSpeed / (_isHalfSpeed ? 2 : 1); isHalfSpeed = _isHalfSpeed; } public abstract Vector2 GetMovement(float xDir, float yDir); public virtual void PostMovement(float xDelta, float yDelta) { } } ================================================ FILE: Assets/Scripts/PlayerControllers/AbstractSoul.cs.meta ================================================ fileFormatVersion: 2 guid: 82dc0fe6051e5544bb9c00bb903e252d timeCreated: 1446503895 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/PlayerControllers/BlueSoul.cs ================================================ using UnityEngine; public class BlueSoul : AbstractSoul { private bool jumping; private bool falling = true; private float ySpeed; private const int jumpYSpeed = 60 * 4; private const int maxFallSpeed = 60 * 9; private const int jumpDecelerationSpeed = 60 * 7; private int fallSpeed; // appears to increase per update and then reset private const int fallSpeedIncrement = 60; public BlueSoul() { fallSpeed = -fallSpeedIncrement; // mildly filthy hack to assure one frame of midair hold } public override Color color { get { return Color.blue; } } public override Vector2 GetMovement(float xDir, float yDir) { // pressing up arrow if (yDir == 1 &&!jumping &&!falling) { ySpeed = jumpYSpeed; jumping = true; falling = false; } // releasing up arrow if (yDir == 0 && jumping &&!falling) { if (ySpeed > 0) ySpeed = 0; jumping = false; falling = true; } // while midair if (jumping) ySpeed -= jumpDecelerationSpeed * Time.deltaTime; if (falling) { fallSpeed += fallSpeedIncrement; ySpeed -= fallSpeed * Time.deltaTime; } // turning point if (ySpeed <= 0) { jumping = false; falling = true; } // if fall speed is too high if (ySpeed < -maxFallSpeed) ySpeed = -maxFallSpeed; return new Vector2(xDir * speed, ySpeed); } public override void PostMovement(float xDelta, float yDelta) { if (!falling || fallSpeed <= 0 || yDelta != 0.0f) return; falling = false; fallSpeed = -fallSpeedIncrement; } } ================================================ FILE: Assets/Scripts/PlayerControllers/BlueSoul.cs.meta ================================================ fileFormatVersion: 2 guid: eb7f37ca6baceab4286078ddef165b54 timeCreated: 1446504695 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/PlayerControllers/PlayerController.cs ================================================ using UnityEngine; using UnityEngine.UI; using MoonSharp.Interpreter; public class PlayerController : MonoBehaviour { /// /// Singleton of this class: only one PlayerController object can exist at a time in the project. /// [HideInInspector] public static PlayerController instance; /// /// Lua object used by modders to interact or retrieve informations on the Player. /// [HideInInspector] public static LuaPlayerStatus luaStatus; /// /// The RectTransform of the inner box of the battle arena - set using Unity Inspector. /// public RectTransform arenaBounds; /// /// The absolute position of the Player on screen, used mainly by projectiles for collision detection. /// [HideInInspector] public Rect playerAbs; /// /// The Player's HP. /// internal float HP { get { return PlayerCharacter.instance.HP; } set { PlayerCharacter.instance.HP = value; } } /// /// Invulnerability timer duing which the Player blinks and is invulnerable as long as this value is greater than 0. /// internal float invulTimer; /// /// The Player's RectTransform. /// internal RectTransform self; /// /// How long it takes to do a full blink (appear+disappear), in seconds. /// private const float BLINK_CYCLE_SECONDS = 0.18f; /// /// Pixels to inset the Player's hitbox, as a temporary replacement for having actually good hitboxes. /// private const int HITBOX_INSET = 4; /// /// The hurt sound component attached to the Player. /// private static AudioSource playerAudio; /// /// Intended direction for movement; -1 OR 1 for x, -1 OR 1 for y. Multiplied by speed in Move() function. /// private Vector2 intendedShift; /// /// True if the Player is moving, false otherwise. Set in the Move function, retrieved through isMoving(). /// private bool moving; /// /// If true, the engine ignores movement inputs. Done when the player should be controlled by something else, like the UI. /// public bool overrideControl; /// /// Player's image. /// public Image selfImg; /// /// Player's texture. /// public Color32[] texture; /// /// Contains a Soul type that affects what player movement does. /// Only the Red soul is used for now. /// public AbstractSoul soul; /// /// True if the Player's defense should be taken in account when computing damage dealt to them, false otherwise. /// public static bool allowplayerdef; /// /// The last movement of the player. /// public Vector2 lastMovement; public int lastEnemyChosen = -1; public float lastHitMult = -1; /// /// Contains directions the player can go in. This is to make abstracting out controls and adding control schemes at a later point easier. /// private enum Directions { UP, DOWN, LEFT, RIGHT }; public void Start() { HP = PlayerCharacter.instance.HP; } public static void PlaySound(string sound) { UnitaleUtil.PlaySound("CollisionSoundChannel", sound); } public string deathMusic; public string[] deathText; public bool deathEscape = true; private int soundDelay; /// /// Hurts the player and makes them invulnerable for invulnerabilitySeconds. /// /// Damage to deal to the player. /// Optional invulnerability time for the player, in seconds. /// If false, will use Undertale's damage formula. /// If false, this function will not play any sound clips. /// public virtual void Hurt(float damage = 3, float invulnerabilitySeconds = 1.7f, bool isDefIgnored = false, bool playSound = true) { if (!isDefIgnored) if (allowplayerdef && damage > 0) { damage = damage + 2 - Mathf.FloorToInt((PlayerCharacter.instance.DEF + PlayerCharacter.instance.ArmorDEF) / 5f); if (damage <= 0) damage = 1; } // Set timer and play the hurt sound if player was actually hurt // Reset the hurt timer if the arguments passed are (0, 0) if (damage == 0 && invulnerabilitySeconds == 0) { invulTimer = 0; selfImg.enabled = true; return; } if (damage >= 0 && (invulTimer <= 0 || invulnerabilitySeconds < 0)) { if (soundDelay < 0 && playSound) { soundDelay = 2; PlaySound("hurtsound"); } if (invulnerabilitySeconds >= 0) invulTimer = invulnerabilitySeconds; if (damage != 0) SetHP(HP - damage, true); } else if (damage < 0) { if (playSound) PlaySound("healsound"); SetHP(HP - damage); } } public void SetHP(float newhp, bool allowOverheal = false) { newhp = Mathf.Min(Mathf.Round(newhp * Mathf.Pow(10, ControlPanel.instance.MaxDigitsAfterComma)) / Mathf.Pow(10, ControlPanel.instance.MaxDigitsAfterComma), ControlPanel.instance.HPLimit); // Retromode: Make Player.hp act as an integer if (GlobalControls.retroMode) newhp = Mathf.Floor(newhp); if (newhp <= 0 && !deathEscape) return; if (newhp <= 0) { deathEscape = false; if (GlobalControls.isInFight) { UnitaleUtil.TryCall(EnemyEncounter.script, "BeforeDeath"); if (deathEscape) return; DynValue dialogues = EnemyEncounter.script.GetVar("deathtext"); if (dialogues == null) deathText = null; else if (dialogues.Table == null) deathText = dialogues.String != null ? new[] { dialogues.String } : null; else { deathText = new string[dialogues.Table.Length]; for (int i = 0; i < dialogues.Table.Length; i++) deathText[i] = dialogues.Table.Get(i + 1).String; } deathMusic = EnemyEncounter.script.GetVar("deathmusic").String; if (deathMusic == "") deathMusic = null; } if (!MusicManager.IsStoppedOrNull(PlayerOverworld.audioKept)) { GetComponent().musicBefore = PlayerOverworld.audioKept; GetComponent().music = GetComponent().musicBefore.clip; GetComponent().musicBefore.Stop(); } else if (!MusicManager.IsStoppedOrNull(Camera.main.GetComponent())) { GetComponent().musicBefore = Camera.main.GetComponent(); GetComponent().music = GetComponent().musicBefore.clip; GetComponent().musicBefore.Stop(); } else { GetComponent().musicBefore = null; GetComponent().music = null; } HP = 0; invulTimer = 0; selfImg.enabled = true; setControlOverride(true); RectTransform rt = gameObject.GetComponent(); Vector2 pos = rt.position; rt.position = new Vector3(pos.x, pos.y, -1000); GlobalControls.stopScreenShake = true; gameObject.GetComponent().StartDeath(deathText, deathMusic); return; } if (allowOverheal) HP = newhp; else { // Heal: Keep the highest value between MaxHP and the current HP and don't go past MaxHP if the current HP isn't full if (newhp > PlayerCharacter.instance.MaxHP && newhp > PlayerCharacter.instance.HP) HP = Mathf.Max(PlayerCharacter.instance.MaxHP, PlayerCharacter.instance.HP); else HP = newhp; } deathEscape = true; if (UIStats.instance) UIStats.instance.setHP(HP); } public void SetMaxHPShift(int newMHP, float invulnerabilitySeconds = 1.7f, bool set = false, bool canHeal = false, bool sound = true) { int oldMHP = PlayerCharacter.instance.MaxHP; if (!set) newMHP += oldMHP; newMHP = Mathf.Min(newMHP, ControlPanel.instance.HPLimit); if (sound) { playerAudio.clip = AudioClipRegistry.GetSound(newMHP < oldMHP ? "hurtsound" : "healsound"); playerAudio.Play(); } // Add invulnerability if MaxHP was removed if (oldMHP > newMHP) invulTimer = invulnerabilitySeconds; // Death if (newMHP <= 0) { SetHP(0); return; } // No change if (newMHP == oldMHP) return; PlayerCharacter.instance.MaxHPShift = newMHP - PlayerCharacter.instance.BasisMaxHP; if (sound) { playerAudio.clip = AudioClipRegistry.GetSound(newMHP < oldMHP ? "hurtsound" : "healsound"); playerAudio.Play(); } // Heal the MaxHP difference if canHeal is true and MaxHP was added if (canHeal && oldMHP < newMHP) SetHP(PlayerCharacter.instance.HP + (newMHP - oldMHP)); // TODO: Remove overheal reset in 0.7 if (PlayerCharacter.instance.HP > PlayerCharacter.instance.MaxHP) SetHP(PlayerCharacter.instance.MaxHP); if (UIStats.instance) UIStats.instance.setMaxHP(); } public bool isHurting() { return invulTimer > 0; } // Check if player is moving, used in orange/blue projectiles to see if they should hurt or not public bool isMoving() { return moving; } // Modify absolute player position, accounting for walls public void ModifyPosition(float xMove, float yMove, bool ignoreBounds) { float xPos = self.anchoredPosition.x + xMove; float yPos = self.anchoredPosition.y + yMove; SetPosition(xPos, yPos, ignoreBounds); } public void MoveDirect(Vector2 pos) { lastMovement = pos; float oldXPos = self.anchoredPosition.x, oldYPos = self.anchoredPosition.y; ModifyPosition(pos.x, pos.y, false); MovementDelta(oldXPos, oldYPos); } // move within arena boundaries given 'directional' vector (non-unit: x is -1 OR 1 and y is -1 OR 1) public virtual void Move(Vector2 dir) { Vector2 soulDir = soul.GetMovement(dir.x, dir.y); if (ControlPanel.instance.FrameBasedMovement) soulDir *= 1.0f/60.0f; else soulDir *= Time.deltaTime; lastMovement = soulDir; // reusing the direction Vector2 for position to save ourselves the creation of a new object float oldXPos = self.anchoredPosition.x, oldYPos = self.anchoredPosition.y; ModifyPosition(soulDir.x, soulDir.y, false); MovementDelta(oldXPos, oldYPos); } // set to ignore regular battle arena controls and updates. Used to forfeit control to UI without disabling player controller. public void setControlOverride(bool overrideControls) { this.overrideControl = overrideControls; soul.setHalfSpeed(false); } public void SetPosition(float xPos, float yPos, bool ignoreBounds) { // check if new position would be out of arena bounds, and modify accordingly if it is if (!ignoreBounds) { xPos = Mathf.Clamp(xPos, arenaBounds.position.x - arenaBounds.sizeDelta.x / 2 + self.rect.size.x / 2, arenaBounds.position.x + arenaBounds.sizeDelta.x / 2 - self.rect.size.x / 2); yPos = Mathf.Clamp(yPos, arenaBounds.position.y - arenaBounds.sizeDelta.y / 2 + self.rect.size.y / 2, arenaBounds.position.y + arenaBounds.sizeDelta.y / 2 - self.rect.size.y / 2); } // set player position on screen self.anchoredPosition = new Vector2(xPos, yPos); // modify the player rectangle position so projectiles know where it is playerAbs.x = self.anchoredPosition.x - self.rect.size.x / 2 + HITBOX_INSET; playerAbs.y = self.anchoredPosition.y - self.rect.size.y / 2 + HITBOX_INSET; } public void SetSoul(AbstractSoul s) { selfImg.color = s.color; soul = s; // if still holding X keep the slow applied if (InputUtil.Held(GlobalControls.input.Cancel)) s.setHalfSpeed(true); } /// /// Built-in Unity function for initialization. /// public void Awake() { //HP = PlayerCharacter.instance.MaxHP; self = GetComponent(); selfImg = GetComponent(); playerAbs = new Rect(0, 0, selfImg.sprite.texture.width - HITBOX_INSET * 2, selfImg.sprite.texture.height - HITBOX_INSET * 2); instance = this; playerAudio = GetComponent(); SetSoul(new RedSoul()); luaStatus = new LuaPlayerStatus(this); } /// /// Modifies the movement direction based on input. Broken up into single ifs so pressing opposing keys prevents you from moving. /// private void HandleInput() { if (InputUtil.Held(GlobalControls.input.Up)) intendedShift += ModifyMovementDirection(Directions.UP); if (InputUtil.Held(GlobalControls.input.Down)) intendedShift += ModifyMovementDirection(Directions.DOWN); if (InputUtil.Held(GlobalControls.input.Left)) intendedShift += ModifyMovementDirection(Directions.LEFT); if (InputUtil.Held(GlobalControls.input.Right)) intendedShift += ModifyMovementDirection(Directions.RIGHT); if (InputUtil.Pressed(GlobalControls.input.Cancel)) soul.setHalfSpeed(true); else if (InputUtil.Released(GlobalControls.input.Cancel)) soul.setHalfSpeed(false); } // given an input direction, let intendedShift carry 'directional' vector (non-unit: x is -1 OR 1 and y is -1 OR 1) private Vector2 ModifyMovementDirection(Directions d) { switch (d) { case Directions.UP: return Vector2.up; case Directions.DOWN: return Vector2.down; case Directions.LEFT: return Vector2.left; case Directions.RIGHT: return Vector2.right; default: return Vector2.zero; } } private void MovementDelta(float oldX, float oldY) { float xDelta = self.anchoredPosition.x - oldX; float yDelta = self.anchoredPosition.y - oldY; // if the position is the same, the player hasnt moved - by doing it like this we account // for things like being moved by external factors like being shoved by boundaries // TODO: account for external factors like being moved by other scripts (enemies e.a.) if (xDelta == 0.0f && yDelta == 0.0f) moving = false; else moving = true; soul.PostMovement(xDelta, yDelta); } /// /// Built-in Unity function called once per frame. /// private void Update() { // DEBUG CONTROLS /*if (Input.GetKeyDown(KeyCode.Alpha1)) SetSoul(new RedSoul(this)); else if (Input.GetKeyDown(KeyCode.Alpha2)) SetSoul(new BlueSoul(this));*/ // END DEBUG CONTROLS /* if (!ArenaManager.instance.needsInit && (tempQueue.x != -5000 || tempQueue.y != -5000)) { SetPosition(tempQueue.x, tempQueue.y, tempQueue2); tempQueue = new Vector2(-5000, -5000); } */ // prevent player actions from working and the timer from decreasing, if the game is paused if (UIController.instance.frozenState != "PAUSE") return; // handle input and movement, unless control is overridden by the UI controller, for instance if (!overrideControl) { intendedShift = Vector2.zero; // reset direction we are going in HandleInput(); // get direction we want to go in Move(intendedShift); } // if the invulnerability timer has more than 0 seconds (usually when you get hurt), blink to reflect the hurt state if (invulTimer > 0.0f) { invulTimer -= Time.deltaTime; selfImg.enabled = !(invulTimer % BLINK_CYCLE_SECONDS > BLINK_CYCLE_SECONDS / 2.0f) || invulTimer <= 0.0f; } // constantly update the hitbox to match the position of the sprite itself if (!GlobalControls.retroMode) { playerAbs.x = luaStatus.sprite.absx - HITBOX_INSET; playerAbs.y = luaStatus.sprite.absy - HITBOX_INSET; } soundDelay--; } } ================================================ FILE: Assets/Scripts/PlayerControllers/PlayerController.cs.meta ================================================ fileFormatVersion: 2 guid: ac5f21ef4909a934996482893b311592 timeCreated: 1449881286 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 110 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/PlayerControllers/RedSoul.cs ================================================ using UnityEngine; public class RedSoul : AbstractSoul { public override Color color { get { return Color.red; } } public override Vector2 GetMovement(float xDir, float yDir) { Vector2 newDir = new Vector2(xDir * speed, yDir * speed); return newDir; } } ================================================ FILE: Assets/Scripts/PlayerControllers/RedSoul.cs.meta ================================================ fileFormatVersion: 2 guid: 6855c782cd19fdd4ebf7864b69d2e848 timeCreated: 1446504237 licenseType: Free MonoImporter: serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/PlayerControllers.meta ================================================ fileFormatVersion: 2 guid: 29d8702116a4ac54ca3de307ed2e3416 folderAsset: yes timeCreated: 1446821475 licenseType: Free DefaultImporter: userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/PregamePlaceholder/KeybindEntry.cs ================================================ using UnityEngine; using UnityEngine.UI; public class KeybindEntry : MonoBehaviour { public static KeybindSettings controller; public string Name; public Button Edit, Reset, Clear; public Text Text, KeyList; public Image Image; void Start() { Name = gameObject.name; if (controller == null) controller = FindObjectOfType(); Edit.onClick.AddListener(() => { if (controller.listening == this) controller.StopListening(); else controller.StartListening(this); }); Reset.onClick.AddListener(() => { controller.ResetKeybind(this); }); Clear.onClick.AddListener(() => { controller.ClearKeybind(this); }); if (GlobalControls.crate) { Edit.GetComponentInChildren().text = "GO"; Reset.GetComponentInChildren().text = "OLD"; Clear.GetComponentInChildren().text = "BYEE"; switch (Text.text) { case "Confirm": Text.text = "YASS GO"; break; case "Cancel": Text.text = "RATIO'D"; break; case "Menu": Text.text = "YUMMY"; break; case "Up": Text.text = "EYUP"; break; case "Down": Text.text = "DONN"; break; case "Left": Text.text = "LETFE"; break; case "Right": Text.text = "RITE"; break; default: break; } KeyList.text = Temmify.Convert(KeyList.text); } } public void SetKeyList(string keyList) { KeyList.text = keyList; } public void SetEditText(string text) { Edit.GetComponentInChildren().text = text; } public void SetColor(Color c) { Image.color = c; Text.color = c; KeyList.color = c; } } ================================================ FILE: Assets/Scripts/PregamePlaceholder/KeybindEntry.cs.meta ================================================ fileFormatVersion: 2 guid: 9580cf12eed84fd479de25a93c2e8b8d MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: -1 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/PregamePlaceholder/KeybindSettings.cs ================================================ using System; using System.Collections.Generic; using System.Linq; using UnityEngine; using UnityEngine.SceneManagement; using UnityEngine.UI; public class KeybindSettings : MonoBehaviour { public KeybindEntry Confirm, Cancel, Menu, Up, Left, Down, Right; public Text Listening; public Button Save, ResetAll, Restore, Back; private Dictionary> tempKeybinds = new Dictionary>(); private CYFTimer textHijackTimer; private CYFTimer resetAllTimer; private CYFTimer restoreTimer; private CYFTimer notSavedExitTimer; [HideInInspector] public KeybindEntry listening = null; void Start() { foreach (KeyValuePair> keybind in KeyboardInput.playerKeys) tempKeybinds[keybind.Key] = new List(keybind.Value); textHijackTimer = new CYFTimer(3, UpdateListeningText); resetAllTimer = new CYFTimer(3, CancelResetAll); restoreTimer = new CYFTimer(3, CancelRestore); notSavedExitTimer = new CYFTimer(3, CancelNoSaveExit); Save.GetComponentInChildren().text = GlobalControls.crate ? "SAV" : "Save"; CancelResetAll(); CancelRestore(); CancelNoSaveExit(); UpdateListeningText(); Save.onClick.AddListener(() => { if (listening != null) StopListening(); SaveKeybinds(); }); ResetAll.onClick.AddListener(() => { if (listening != null) StopListening(); if (resetAllTimer.IsElapsing()) { resetAllTimer.Stop(); ResetAll.GetComponentInChildren().text = GlobalControls.crate ? "BYEEEE" : "Reset All"; Reload(true); } else { resetAllTimer.Start(); ResetAll.GetComponentInChildren().text = GlobalControls.crate ? "DONUT!1" : "You sure?"; } }); Restore.onClick.AddListener(() => { if (listening != null) StopListening(); if (restoreTimer.IsElapsing()) { restoreTimer.Stop(); Restore.GetComponentInChildren().text = GlobalControls.crate ? "GO OLD" : "Restore"; FactoryResetKeybinds(); } else { restoreTimer.Start(); Restore.GetComponentInChildren().text = GlobalControls.crate ? "DONUT!1" : "You sure?"; } }); Back.onClick.AddListener(() => { if (listening != null) StopListening(); bool foundUnsaved = false; foreach (KeyValuePair> keybind in tempKeybinds) if (!keybind.Value.SequenceEqual(KeyboardInput.playerKeys[keybind.Key])) { foundUnsaved = true; break; } if (!foundUnsaved || notSavedExitTimer.IsElapsing()) { notSavedExitTimer.Stop(); SceneManager.LoadScene("Options"); } else { notSavedExitTimer.Start(); Back.GetComponentInChildren().text = GlobalControls.crate ? "DONUT!1" : "You sure?"; UnitaleUtil.PlaySound("Reset", "hurtsound"); HijackListeningText(GlobalControls.crate ? "ONO BAD DID NO SAV NO GO AAAA" : "Some keys have not been saved! Are you sure you wanna exit?", "ff0000"); } }); Reload(); } public void CancelResetAll() { ResetAll.GetComponentInChildren().text = GlobalControls.crate ? "LAL BAD" : "Reset All"; } public void CancelRestore() { Restore.GetComponentInChildren().text = GlobalControls.crate ? "GO OLD" : "Restore"; } public void CancelNoSaveExit() { Back.GetComponentInChildren().text = GlobalControls.crate ? "BYEEEE" : "Back"; } public void LoadKeybinds() { KeyboardInput.LoadPlayerKeys(); tempKeybinds.Clear(); foreach (KeyValuePair> keybind in KeyboardInput.playerKeys) tempKeybinds[keybind.Key] = new List(keybind.Value); foreach (KeybindEntry keybind in new KeybindEntry[] { Confirm, Cancel, Menu, Up, Left, Down, Right }) UpdateKeyList(keybind); UpdateColor(); } public void SaveKeybinds() { string invalidReason = null; Dictionary conflicts = KeyboardInput.GetConflicts(tempKeybinds); if (conflicts.Count > 0) { string[] conflict = conflicts[conflicts.Keys.First()]; invalidReason = "Please get rid of key conflicts before saving this configuration."; } if (invalidReason == null) foreach (KeyValuePair> p in tempKeybinds) if (p.Value.Count == 0) { invalidReason = "The keybind \"" + p.Key + "\" is unbound! Please add at least one key to it."; break; } if (invalidReason != null) { UnitaleUtil.PlaySound("Reset", "hurtsound"); HijackListeningText(GlobalControls.crate ? "BAD KEEBLEDS NOOOO GO AWAY" : invalidReason, "ff0000"); return; } KeyboardInput.SaveKeybinds(tempKeybinds); Reload(); UnitaleUtil.PlaySound("Save", "saved"); HijackListeningText(GlobalControls.crate ? "KEEBLEDS OKOK!1!!1!" : "Keybinds saved!"); } public void HijackListeningText(string text, string color = "ffff00") { Listening.text = "" + text + ""; if (textHijackTimer.IsElapsing()) textHijackTimer.Stop(); textHijackTimer.Start(); } public void Reload(bool isReset = false) { LoadKeybinds(); if (isReset) { UnitaleUtil.PlaySound("Reset", "hurtsound"); HijackListeningText(GlobalControls.crate ? "KEEBLEDS BYEEEE!1!1!!" : "Keybinds reset!"); } } public void FactoryResetKeybinds() { tempKeybinds.Clear(); foreach (KeyValuePair> keybind in KeyboardInput.defaultKeys) tempKeybinds[keybind.Key] = new List(keybind.Value); foreach (KeybindEntry keybind in new KeybindEntry[] { Confirm, Cancel, Menu, Up, Left, Down, Right }) UpdateKeyList(keybind); UpdateColor(); UnitaleUtil.PlaySound("Reset", "hurtsound"); HijackListeningText(GlobalControls.crate ? "KEEBLEDS OLD NOWWW!!1!!!" : "Keybinds restored to their default state!"); } public void UpdateColor() { List conflictingKeybinds = new List(); Dictionary conflicts = KeyboardInput.GetConflicts(tempKeybinds); foreach (string[] conflictArray in conflicts.Values) foreach (string conflict in conflictArray) if (!conflictingKeybinds.Contains(conflict)) conflictingKeybinds.Add(conflict); foreach (KeybindEntry keybind in new KeybindEntry[] { Confirm, Cancel, Menu, Up, Left, Down, Right }) { Color c; if (listening != null && listening.Name == keybind.Name) c = new Color(1, 1, 0); else if (tempKeybinds[keybind.Name].Count == 0) c = new Color(1, 0, 0); else if (conflictingKeybinds.Contains(keybind.Name)) c = new Color(1, 0, 0); else if (!tempKeybinds[keybind.Name].SequenceEqual(KeyboardInput.playerKeys[keybind.Name])) c = new Color(1, 1, 1); else c = new Color(0.7f, 0.7f, 0.7f); keybind.SetColor(c); } } public void UpdateKeyList(KeybindEntry keybind) { string keyList = string.Join(", ", tempKeybinds[keybind.Name].OrderBy(k => k.Length).ToArray()); keybind.SetKeyList(GlobalControls.crate ? Temmify.Convert(keyList) : keyList); } public void AddKeyToKeybind(KeybindEntry keybind, string key) { tempKeybinds[keybind.Name].Add(key); UpdateKeyList(keybind); UpdateColor(); } public void RemoveKeyFromKeybind(KeybindEntry keybind, string key) { tempKeybinds[keybind.Name].Remove(key); UpdateKeyList(keybind); UpdateColor(); } public void ResetKeybind(KeybindEntry keybind) { if (listening != null) StopListening(); tempKeybinds[keybind.Name] = new List(KeyboardInput.playerKeys[keybind.Name]); UpdateKeyList(keybind); UpdateListeningText(); UpdateColor(); } public void ClearKeybind(KeybindEntry keybind) { if (listening != null) StopListening(); tempKeybinds[keybind.Name].Clear(); UpdateKeyList(keybind); UpdateListeningText(); UpdateColor(); } public void StartListening(KeybindEntry keybind) { if (listening != null) StopListening(); listening = keybind; listening.SetEditText(GlobalControls.crate ? "NO GO" : "Stop"); UpdateListeningText(); UpdateColor(); } public void StopListening() { if (listening != null) listening.SetEditText(GlobalControls.crate ? "GO" : "Edit"); listening = null; UpdateListeningText(); UpdateColor(); } public void UpdateListeningText() { textHijackTimer.Stop(); Dictionary conflicts = KeyboardInput.GetConflicts(tempKeybinds); if (listening) { string crateText = "WAAAT"; switch (listening.Name) { case "Confirm": crateText = "YASS GO"; break; case "Cancel": crateText = "RATIO'D"; break; case "Menu": crateText = "YUMMY"; break; case "Up": crateText = "EYUP"; break; case "Down": crateText = "DONN"; break; case "Left": crateText = "LETFE"; break; case "Right": crateText = "RITE"; break; default: break; } Listening.text = GlobalControls.crate ? "NO DEF! ME HER GUD! HER " + crateText + "1!!1!1" : "Listening for " + listening.Name + ". Press a key to add/remove it! ESC to stop."; } else if (conflicts.Count == 0) Listening.text = GlobalControls.crate ? "ME DEF! NO HER GUD! HLEP1!!1!1" : "Not currently listening..."; else { string[] conflict = conflicts[conflicts.Keys.First()]; Listening.text = GlobalControls.crate ? "BAD KEEBLEDS NOOOO GO AWAY" : "Conflict detected: " + conflicts.Keys.First().ToString() + " used for both " + conflict[0] + " and " + conflict[1] + "."; } } void Update() { textHijackTimer.Update(); resetAllTimer.Update(); restoreTimer.Update(); notSavedExitTimer.Update(); if (listening != null) { foreach (KeyCode keycode in Enum.GetValues(typeof(KeyCode))) { string key = keycode.ToString(); if (Input.GetKeyDown(keycode)) { if (keycode == KeyCode.Escape) StopListening(); else if (tempKeybinds[listening.Name].Contains(key)) RemoveKeyFromKeybind(listening, key); else if (keycode != KeyCode.Mouse0 && !key.StartsWith("JoystickButton")) AddKeyToKeybind(listening, key); } } foreach (KeyValuePair axis in KeyboardInput.axes) { string axisName = null; float state = Input.GetAxis(axis.Key); if (state >= 0.7f && axis.Value < 0.7f) axisName = axis.Key + " +"; else if (state <= -0.7f && axis.Value > -0.7f) axisName = axis.Key + " -"; if (axisName == null) continue; if (tempKeybinds[listening.Name].Contains(axisName)) RemoveKeyFromKeybind(listening, axisName); else AddKeyToKeybind(listening, axisName); } } } } ================================================ FILE: Assets/Scripts/PregamePlaceholder/KeybindSettings.cs.meta ================================================ fileFormatVersion: 2 guid: aab9c60fbfe800a4c8b71de27310ecf4 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/PregamePlaceholder/MenuButton.cs ================================================ using UnityEngine; using UnityEngine.UI; using UnityEngine.EventSystems; public class MenuButton : MonoBehaviour, IPointerEnterHandler, IPointerExitHandler { public Color NormalColor; public Color HoverColor; private const float animateTimerMaxValue = 2; // number of frames it takes to animate private float animateTimer; private int animateDirection = -1; // -1 for Fade Out, 1 for Fade In public bool lockAnimation = false; public void Update() { if (animateDirection == 1 && animateTimer < animateTimerMaxValue) { animateTimer++; float mult = animateTimer/animateTimerMaxValue; GetComponent().color = new Color(NormalColor.r + (mult * (HoverColor.r - NormalColor.r)), NormalColor.g + (mult * (HoverColor.g - NormalColor.g)), NormalColor.b + (mult * (HoverColor.b - NormalColor.b)), NormalColor.a + (mult * (HoverColor.a - NormalColor.a))); } else if (animateDirection == -1 && animateTimer > 0) { animateTimer--; float mult = animateTimer/animateTimerMaxValue; GetComponent().color = new Color(NormalColor.r + (mult * (HoverColor.r - NormalColor.r)), NormalColor.g + (mult * (HoverColor.g - NormalColor.g)), NormalColor.b + (mult * (HoverColor.b - NormalColor.b)), NormalColor.a + (mult * (HoverColor.a - NormalColor.a))); } else if (animateTimer == 0 && animateDirection != 0) { animateDirection = 0; GetComponent().color = NormalColor; } } public void StartAnimation(int dir) { animateDirection = dir; } public void Reset() { animateDirection = -1; animateTimer = 1; Update(); } public void OnPointerEnter(PointerEventData ped) { if (!lockAnimation) StartAnimation(1); } public void OnPointerExit(PointerEventData ped) { if (!lockAnimation) StartAnimation(-1); } } ================================================ FILE: Assets/Scripts/PregamePlaceholder/MenuButton.cs.meta ================================================ fileFormatVersion: 2 guid: 525e6c79af09d3a4cbba3b47269cf03f MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/PregamePlaceholder/ModPage.cs ================================================ using System.Collections.Generic; using System.IO; using System.Linq; public class ModPage { public DirectoryInfo path; public bool isMod; public bool isOpen = true; public bool isNestedOpen { get { return (parent == null ? true : parent.isNestedOpen) && isOpen; } } public bool isHidden { get { return parent != null ? !parent.isNestedOpen : false; } } public ModPage parent; public List children = new List(); public int linkedFolders = 0; public int deepLinkedFolders { get { return children.Select(p => p.deepLinkedFolders).Sum() + linkedFolders; } } public int linkedMods = 0; public int deepLinkedMods { get { return children.Select(p => p.deepLinkedMods).Sum() + linkedMods; } } public int linkedChildren { get { return linkedFolders + linkedMods; } } public int deepLinkedChildren { get { return deepLinkedFolders + deepLinkedMods; } } public int shownChildrenAndSelf { get { return isHidden ? 0 : 1 + children.Select(p => p.shownChildrenAndSelf).Sum(); } } public int nestLevel { get { return parent == null ? 0 : parent.nestLevel + 1; } } public ModPage(DirectoryInfo _path, bool _isMod) { path = _path; isMod = _isMod; } } ================================================ FILE: Assets/Scripts/PregamePlaceholder/ModPage.cs.meta ================================================ fileFormatVersion: 2 guid: a2a9df2978499ff41a1e3d57a0a56513 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Assets/Scripts/PregamePlaceholder/OptionsScript.cs ================================================ using UnityEngine; using UnityEngine.UI; using UnityEngine.SceneManagement; using System.IO; using MoonSharp.Interpreter; using System.Collections.Generic; public class OptionsScript : MonoBehaviour { // used to prevent the player from erasing session/permanent globals or their save by accident private int SessionGlobalResetCooldown; private int PermanentGlobalResetCooldown; private int SaveCooldown; // used to update the Description periodically private int DescriptionTimer; // used to store the state of CrateYourFrisk at the start of the scene private bool LocalCrate; private bool CrateUnlocked; // game objects public GameObject ResetSG, ResetPG, ClearSave, Safe, Retro, Scale, Discord, Keys, Crate, Exit; public Text Description; // Used for controller selection private int selectedButton = -99; private List buttons = new List(); // Use this for initialization private void Start() { LocalCrate = GlobalControls.crate; CrateUnlocked = LuaScriptBinder.GetPermanentGlobal("CrateYourFrisk") != null; buttons.AddRange(new MenuButton[] { ResetSG.GetComponent(), ResetPG.GetComponent(), ClearSave.GetComponent(), Safe.GetComponent(), Retro.GetComponent(), Scale.GetComponent(), Discord.GetComponent(), Keys.GetComponent(), Exit.GetComponent() }); if (CrateUnlocked) buttons.Insert(buttons.Count - 1, Crate.GetComponent()); // add button functions // reset session globals ResetSG.GetComponent
Keyboard Key ID for CYF use
1 Alpha1
2 Alpha2
3 Alpha3
4 Alpha4
5 Alpha5
6 Alpha6
7 Alpha7
8 Alpha8
9 Alpha9
0 Alpha0


Keypad Keys:

Keyboard Key ID for CYF use
1 (End) Keypad1
2 (Down) Keypad2
3 (Page Down) Keypad3
4 (Left) Keypad4
5 Keypad5
6 (Right) Keypad6
7 (Home) Keypad7
8 (Up) Keypad8
9 (Page Up) Keypad9
0 (Insert) Keypad0
. (Del) KeypadPeriod
/ KeypadDivide
* KeypadMultiply
- KeypadMinus
+ KeypadPlus
Enter KeypadEnter
= KeypadEquals


Keyboard Arrow Keys:

Keyboard Key ID for CYF use
UpArrow
DownArrow
RightArrow
LeftArrow


Special Keyboard Keys:

Note: the % key cannot be detected as of this moment.

Keyboard Key ID for CYF use
Backspace Backspace
Tab Tab
Return/Enter Return
Pause Pause
Space Bar Space
Escape Escape
! Exclaim
@ At
# Hash
$ Dollar
^ Caret
& Ampersand
* Asterisk
( LeftParen
) RightParen
- Minus
+ Plus
_ Underscore
= Equals
: Colon
; Semicolon
" DoubleQuote
' Quote
, Comma
. Period
\ Backslash
/ Slash
? Question
< Less
> Greater
[ LeftBracket
] RightBracket
` BackQuote


Misc. Keyboard Keys:

Keyboard Key ID for CYF use
Insert Insert
Home Home
Delete Delete
End End
Page Up PageUp
Page Down PageDown
Num Lock Numlock
Caps Lock CapsLock
Scroll Lock ScrollLock
Right Shift RightShift
Left Shift LeftShift
Right Control RightControl
Left Control LeftControl
Right Alt RightAlt
Left Alt LeftAlt
Right Command RightCommand
Left Command LeftCommand
Right Apple Key RightApple
Left Apple Key LeftApple
Right Windows Key RightWindows
Left Windows Key LeftWindows
Alt Gr AltGr
Print Screen/Sys Rq SysReq
Break Break
Menu Menu


Mouse Inputs:

Mouse Input ID for CYF use
Left Mouse Button Mouse0
Right Mouse Button Mouse1
Scroll Wheel Press Mouse2
Mouse 3 Mouse3
Mouse 4 Mouse4
Mouse 5 Mouse5
Mouse 6 Mouse6


Controller Buttons:

All controller buttons follow the same format: JoystickXButtonY
X represents the number of the controller currently in use, between 1 and 8.
Y represents the number of the button checked, between 0 and 19.

Note: It is not recommended to directly query a user's controller inputs, as these can greatly vary between users. It would be best to make a keybind and let the user bind their controller buttons to it, or to restrict yourself to standard CYF keys.


Controller Axes (Joysticks, D-Pad, Triggers...):

Most controller axes follow the same format: AxisX-Y + or AxisX-Y -
X represents the number of the axis currently checked, between 3 and 10.
Y represents the number of the controller currently in use, between 1 and 2. CYF currently only handles axes for up to 2 controllers.

Axes 1 and 2 have specific names: Axis 1 is named HorizontalY, while Axis 2 is named VerticalY, following the same scheme as above.

Note: It is not recommended to directly query a user's controller inputs except for HorizontalY and VerticalY, as these can greatly vary between users. It would be best to make a keybind and let the user bind their controller buttons to it, or to restrict yourself to standard CYF keys.

* YOU WON!
* You earned 0 EXP and 0 gold.
* also the nav menu is broken now


Undertale fake button
Undertale fake button
Undertale fake button
Undertale fake button

================================================ FILE: Documentation CYF 1.0/pages/api-projectile.html ================================================ CYF Documentation - Projectile management Undertale background

Projectile management



Projectile management is, starting from 0.2.0, available from both the encounter and the wave scripts. As a result it is now in its own section.


CreateProjectileLayer( name, position = "", below = false) [E/W] Creates a layer named name that projectiles can be placed in. To create your new projectile layer, you'll need to choose a pre-existing layer.

position must be the name of an existing projectile layer.
The only default layer is "", so you must use it first.

If before is true, the new layer will be created below the layer given in position, otherwise it will be above it.


CreateProjectile( spritename, initial_x, initial_y, layer = "") returns bullet [E/W] Creates a bullet that you can store and modify, with its spawn position relative to the center of the arena. The hitbox of the bullet is a rectangle around the sprite, unless you use CYF's PP mode.
You can specify a layer if you want - otherwise, the bullet will be in the normal bullet layer.


CreateProjectileAbs( spritename, initial_x, initial_y, layer = "") returns bullet [E/W] Same as CreateProjectile, but the bullet's spawn position is relative to the bottom left of the screen instead of the arena's center. The hitbox of the bullet is a rectangle around the sprite, unless you use CYF's PP mode.
You can specify a layer if you want - otherwise, the bullet will be in the normal bullet layer.


The Bullet object

This is what you use to move around the arena and store values in. You can store a bunch of bullets in a table and modify them. The functions and variables you can use on a Bullet are as follows.
As this object exists in CYF's hierarchy, it's possible to manipulate its parent and children. See the General Objects page for more information.


sprite Bullet.sprite The bullet's sprite component. See the Sprites & Animation section for usage details.

NOTE: In 0.2.1a, modifying the sprite does not change the bullet's hitbox yet. it's always the original square of the bullet when it was created.

But, in CYF, changing the bullet's sprite does modify the bullet's hitbox!


Bullet.x The X position of this bullet, relative to the arena's center. A bullet at x=0 and y=0 will be at the center of the arena.


Bullet.y The Y position of this bullet, relative to the arena's center.


Bullet.absx The X position of this bullet, relative to the bottom-left corner of the screen.


Bullet.absy The Y position of this bullet, relative to the bottom-left corner of the screen.


Bullet.ppcollision If this is true, the bullet will use the Pixel-Perfect Collision system.

By default, this is the encounter's default collision system.

* Manually setting this will set Bullet.ppchanged to true.

See SetPPCollision in The Pixel-Perfect Collision System for more information.


Bullet.ppchanged (read-only) Tells you if the bullet's collision system has been changed by manually changing Bullet.ppcollision.

* Bullets with Bullet.ppchanged set to true will NOT be affected by future calls of
SetPPCollision (see The Pixel-Perfect Collision System).


Will be false after you call Bullet.ResetCollisionSystem(), or if you haven't changed Bullet.ppcollision.


Bullet.ResetCollisionSystem() Resets the collision system of the bullet to the encounter's default collision system.

The default collision system is set by SetPPCollision.
See The Pixel-Perfect Collision System for more information.


Bullet.layer The bullet layer that the bullet is on.

Note: It is common practice to use Bullet.layer to deparent a bullet if you need to do so. Setting it back to "" will parent the bullet to its default layer, removing its previous parenting altogether.


Bullet.isactive (read-only) Used to check if the bullet is still active.

If the bullet has been removed, this will be false; otherwise true.


Bullet.Move( x, y) Move this bullet x pixels to the right and y pixels up.

A negative x will move it to the left, and a negative y will move it downwards.


Bullet.MoveTo( x, y) Move this bullet to this position immediately, relative to the arena's center.


Bullet.MoveToAbs( x, y) Move this bullet to this position immediately, relative to the bottom-left corner of the screen.


Bullet.Remove() Destroys this bullet.

You can continue retrieving its x, y, absx and absy properties. Trying to move a removed bullet will give you a Lua error. If you're not sure if your bullet still exists, check Bullet.isactive first.


Bullet[ your_variable_name] = value (OR) Bullet.SetVar( your_variable_name, value) Sets a variable on this bullet that you can retrieve with Bullet.GetVar.

Similar in use to SetGlobal - but you can use this to store specific variables on a per-bullet basis.


Bullet[ your_variable_name] (OR) Bullet.GetVar( your_variable_name) Gets a variable that you previously set using Bullet.SetVar.


Bullet.SendToTop() Moves this bullet on top of all currently existing projectiles.

Note that newly spawned projectiles are always on top by default; this function is mostly to move existing bullets to the top.

Moves the bullet to the top of its current layer.


Bullet.SendToBottom() Moves this bullet below all currently existing projectiles.

Moves the bullet to the bottom of its current layer.


Bullet.isColliding() Returns true if the player is colliding with the bullet.

Will use PPCollision (pixel-perfect collisions) if the bullet has PP enabled. See Bullet.ppcollision.


Bullet.OnHit(bullet bullet) This variable must receive a function, which can be done in two possible ways:

Bullet.OnHit = function(bullet)
    -- Your code
end
function Bullet.OnHit(bullet)
    -- Your code
end
If it has been assigned, this function will be run instead of the script's OnHit function when the bullet collides with the Player.

The bullet and its OnHit function must both be created in the same script.


Bullet.isPersistent = false Set this to true and, if you're not in retrocompatibility mode, this will make the bullet stay loaded even after the wave ends.




Here is an example of a bullet that chases you pretty fast, but slows down as it gets closer. You have to keep moving to dodge it. This is a fairly basic example that makes use of the Player object.

oursprite = "hOI!!!!"
--Create a new bullet, starting in the upper right corner.
chasingbullet = CreateProjectile(oursprite, Arena.width/2, Arena.height/2)
--Set initial speed of 0 in both directions.
chasingbullet.SetVar('xspeed', 0)
chasingbullet.SetVar('yspeed', 0)

function Update()
    -- Get the x/y difference between the player and bullet
    local xdifference = Player.x - chasingbullet.x
    local ydifference = Player.y - chasingbullet.y
    -- We create a new speed by first halving the original speed
    -- Then we add a small fraction of the position difference between the player and bullet.
    -- The result is a bullet that moves faster as it's further away, and slower when it's closer.
    -- The value we're dividing by is experimental. Experimenting with numbers is essential!
    local xspeed = chasingbullet.GetVar('xspeed') / 2 + xdifference / 100
    local yspeed = chasingbullet.GetVar('yspeed') / 2 + ydifference / 100
    -- Now move the bullet...
    chasingbullet.Move(xspeed, yspeed)
    -- ...and store our new speeds.
    chasingbullet.SetVar('xspeed', xspeed)
    chasingbullet.SetVar('yspeed', yspeed)
end

Below is an example of a fully scripted Wave using most of these functions. It will spawn a projectile above the arena (assuming a width/height of 155/130), give it a random speed in the X direction, and drop it downwards. If it hits the bottom border of the arena, it'll bounce back up. Otherwise it'll continue falling off the screen.

spawntimer = 0
bullets = {}

-- This happens every frame while you're defending. --
function Update()
    spawntimer = spawntimer + 1 --Add 1 to the counter every frame

    -- This part takes care of bullet spawning. --
    if spawntimer%30 == 0 then  --This happens every 30 frames.
        local posx = 30 - math.random(60) --Set a random X position between -30 and 30
        local posy = 65 --and set the Y position to 65, on the top edge of the arena.
        local bullet = CreateProjectile('hOI!!!!', posx, posy) -- Create projectile with sprite hOI!!!!.png
        bullet.SetVar('velx', 1 - 2*math.random()) -- We'll use this for horizontal speed. Random between -1/1
        bullet.SetVar('vely', 0) -- We'll use this for fall speed. We're starting without downward movement.
        table.insert(bullets, bullet) -- Add this new Bullet object to the bullets table up there.
    end

    -- This part updates every bullet in the bullets table. --
    for i=1,#bullets do -- #bullets in Lua means 'length of bullets table'.
        local bullet = bullets[i] -- For convenience, so we don't have to use bullets[i]
        local velx = bullet.GetVar('velx') -- Get the X/Y velocity we just set
        local vely = bullet.GetVar('vely')
        local newposx = bullet.x + velx -- New position will be old position + velocity
        local newposy = bullet.y + vely
        if(bullet.x > -Arena.width/2 and bullet.x < Arena.width/2) then -- Are we inside the arena (horizontally)?
            if(bullet.y < -Arena.height/2 + 8) then -- And did we go past the bottom edge?
                bullet.MoveTo(bullet.x, -Arena.height/2 + 8) -- Don't move it past the edge!
                -- Note the +8; I know the bullet sprite I'm using is 16x16.
                -- Without adding 8 it'll be inside the edge.
                vely = 4 --reverse bounce direction
            end
        end
        vely = vely - 0.04 -- Apply gravity
        bullet.MoveTo(newposx, newposy) -- and finally, move our bullet
        bullet.SetVar('vely', vely) -- and store our new fall speed into the bullet again.
    end
end 


OnHit(bullet bullet) Every time a bullet collides with a player, this function gets called on the script that created the projectile. The bullet object in this function can be modified if you feel like it. For more information on the bullet object, see the documentation above.

If you implement this function in your script, you have to manually define what should happen after bullet collision. This is what allows you to create orange, cyan and green projectiles, and much much more. If you don't implement this function in your wave script, it'll stick to the default of dealing 3 damage on hit. Below are multiple examples of how to use this function.

--Defining your own damage for this wave
function OnHit(bullet)
    Player.Hurt(10)
end
--Replicating cyan bullet functionality
function OnHit(bullet)
    if Player.isMoving then
        Player.Hurt(5)
    end
end
--Replicating orange bullet functionality; opposite condition of cyan
function OnHit(bullet)
    if not Player.isMoving then
        Player.Hurt(5)
    end
end
--Replicating green bullet functionality
function OnHit(bullet)
    Player.Heal(1)
    bullet.Remove()
end

* YOU WON!
* You earned 0 EXP and 0 gold.
* also the nav menu is broken now


Undertale fake button
Undertale fake button
Undertale fake button
Undertale fake button

================================================ FILE: Documentation CYF 1.0/pages/api-text.html ================================================ CYF Documentation - Text Commands Undertale background

Text commands



There are two types of text commands: commands that get executed instantly, like text color and effects; and commands that get executed inline, as they're displayed, like wait commands and character voices. Note that currently, if you skip a text command (with X), it'll also skip all inline commands that were still in your text. Unless, that is, you use playerskipdocommand :P

On line breaks: there are actually two different kinds. In UI messages where asterisks are used, you can use \n to start a new line with an asterisk. If you want a new line without an asterisk, use \r.

This is different for monster dialogue that isn't prefixed with asterisks: Always use \n for line breaks here. Or use autolinebreak! See Special Variables.

Instant commands



[color:rrggbb] This sets the text color for all text after this command to the specified hex code. It resets per dialogue. [color:ff0000] would be red, [color:555555] a dark grey.
Here are a few examples:

[color:ff0000] Determination
[color:003cff] Integrity
[color:00c000] Kindness
[color:ffff00] Justice
[color:d535d9] Perseverance
[color:fca600] Bravery
[color:42fcff] Patience

If you have to use colours, try to stick to these. While the option for any colour is offered, actual usage in Undertale is very limited.

The default UI text is plain white and the default enemy dialogue text is plain black - [color:ffffff] and [color:000000] respectively.


[color] This command resets any previous usage of the [color:rrggbb] command, displaying any following text in the font's default color.


[alpha:aa] This command allows you to set the alpha (transparency) value of your text.

The number you enter should be a two-character hex value between "00" and "ff".


[alpha] This command resets any previous usage of the [alpha:aa] command, displaying any following text in the font's default alpha.


[starcolor:rrggbb] Same usage as color but only affects the first asterisk in a dialogue box that has asterisks. This is a dirty workaround, but now you don't need it anymore, it's deprecated.

As commands are now executed before the star, you can use [color:rrggbb] to color the star.


[effect:x] or [effect:x,intensity] or [effect:x,intensity,step] Sets the text effect for the entire message, regardless of position. You can use the following effects:

  • none: No effect on the text.

  • rotate: Rotating text, most random monsters have this by default. Intensity sets how far letters rotate, in pixels. Default is 1.5.
    Step allows shifting the rotation animation of the letters by a given degree in radians.

  • shake: Shaking text. Flowey uses this sometimes. Intensity sets how far the letters offset, in pixels. Default is 1.0.
    Step allows shifting the frequency of the twitching effect. Default is 48 frames. The value will be varied by about 33% every time the delay until the next twitch effect show up is computed.

  • twitch: Letters twitch occasionally - the battle UI has this by default. Intensity sets how far a letter should shake. Default is 2.0.


[lettereffect:x] or [lettereffect:x,intensity] or [lettereffect:x,intensity,step] This works the same as [effect:x], but it works inline. This means you can have multiple different text effects in a single line!

Keep in mind that, like all other inline text commands, this command will not execute if the player skips over it with X - unless you set playerskipdocommand to true, first.

On top of that, the default step value for the shake effect is now 500. The value will be varied by about 80% every time the delay until the next twitch effect show up is computed. It's high so the twitch effects of all letters can play at various times!


[font:x] Sets the font for this dialogue. Usually includes a default voice. As the [font] command can change both text colour and voice, if you want to have your own voice/text color do it after the font change. Possible options:

  • uidialog: Default large pixel font for UI.

  • monster: Default font for almost all monsters in the game.

  • sans: sans. use lowercase. uppercase works, but... sans.

  • papyrus: PAPYRUS! USE UPPERCASE ONLY. LOWERCASE WON'T WORK.

  • wingdings: Wingdings.

  • uibattlesmall: The font used for the character name, HP and level.

  • and a lot of others...you can even create your own font!

For all default fonts, check out the Default/Sprites/UI/Fonts folder. Every font with a matching .xml file is mapped.


[charspacing:number] and [charspacing:default] Sets the number of pixels that separate characters on the same line.
Negative = less space between characters, Positive = more space between characters

The default value is 3.
Fonts can specify a <charspacing> tag that sets this value.

Enter [charspacing:default] to reset this value to the value provided by the font (or the default value of 3).


[linespacing:number] Number of pixels that separate different lines. The number you enter here gets added on to the active font's regular line spacing.
Negative = less space between lines, Positive = more space between lines

By default, the amount of pixels between lines is 1.5 * the height of the font's "space" character.
If the font has a <linespacing> tag, its number value will be the amount of pixels between lines instead.

Enter [linespacing:0] to reset the line spacing to its original value.

Inline commands



[noskip] Prevents this dialogue from being skipped by pressing X.

It is effective only whenever the text reaches it, but if it is placed at the beginning of a line of text, it will always work, even if it is not the first command.


[noskip:off] Cancels a previous [noskip] command.


[instant] Instantly shows the entire text without having to wait or press anything.

* Note: This command works as an inline command when placed at the beginning of a line of text.


[instant:allowcommand] The same as [instant], but here other text commands are called, except [w], [letters] and commands with the "skipover" tag.

* Note: This command works as an inline command when placed at the beginning of a line of text.


[instant:stop] Cancels a previous [instant] or [instant:allowcommand] command, and resumes typing.


[instant:stopall] Cancels a previous [instant], [instant:allowcommand] command or a Player skip, and resumes typing.


[w:x] The wait command. Pauses your textbox temporarily based on the number you enter.

Technically: This will pause the textbox for x * 4 in-game frames.
Calling [w:1] will freeze the textbox for 4 in-game frames.

[w:4] is 16 in-game frames, [w:10] is 40, and so on.


[waitall:x] Makes all letters after this command take x times as long to type out. (slightly different from [w:x])

Use [waitall:1] to reset text to its default speed.

Overrides [speed:x].


[voice:filename] Sets the voice (sound per letter) to a sound located in YOUR MOD/Sounds/Voices. Applies to all letters after the command. It resets per dialogue. This has to be a .wav file, and you shouldn't include the file extension when using [voice]. If your voice sound is YOUR MOD/Sounds/Voices/mettaton.wav, you can use it with [voice:mettaton].

[voice:default] resets to the default voice (beeps). If you have a voice sound named 'default', it will be ignored.


[novoice] Removes the voice for the letters after this command. It resets per dialogue. Useful for when you should be burning in hell.


[next] Skips to the next line of the current text object automatically. If used in a monster's text object, skips the dialogue of all monsters, without concern for the other monsters' dialogue's state. You can also use this for textbox trickery. Here's an example to replicate Flowey's text-changing effect if you dodge the Friendliness Pellets(tm) twice.

first line:  "[noskip][voice:flowey][effect:none]RUN. [w:30]INTO. [w:30]THE.\n[w:30]BULLETS!![w:30][next]"
second line: "[instant][effect:none]RUN. INTO. THE.\nfriendliness\npellets"


[nextthisnow] Skips to the next dialogue of the current monster only, even if several monsters are speaking, effectively desyncing their text. It acts like [next] outside of monster text objects, its only difference is that it only affects the current monster if used on a monster's text object.


[finished] Sets this dialogue box as "finished". To go through the next dialogue box, you'll have to wait until the other monsters' dialogue boxes are also finished.


[waitfor:key] Waits for the user to press the given key to continue the message. Check the Key List to see the available keys.

* Note that keybinds are also accepted here. For more info, check the page on The Input Object


[func:x], [func:x,argument] or [func:x,{argument1, argument2...}] The most powerful command. If the previous text commands were established official characters, [func] is some kid's deviantArt original character that never dies and has all the superpowers.

In all seriousness, [func] allows you to execute any function from your script in line with the text. Refer to the examples below.

your dialogue: "hoi hoi this is dog [func:dog] and now the music changed"

function dog()
    Audio.LoadFile("dog_music")
    --plays dog_music.ogg (or .wav) from your Audio folder! for built-in functions like this, refer to section API - Functions & Objects
    --insert more code here, any code!
end
your dialogue: "dog with arguments!! [func:newmusic,temietheme] so intense!"

function newmusic(yourargumentname)
    Audio.LoadFile(yourargumentname) --with this example, it'll load 'temietheme.ogg (or .wav)'...
    --and then play it! THE FUTURE IS NOW! By using an argument, your function can be more versatile.
end


Please note that the target function must exist in the source script.
More commonly, if you are using it in monster dialogue through currentdialogue, your function must exist within the monster's Lua script, regardless of what script is actually setting the monster's dialogue.


[speed:x] Makes the text handler print x characters over every 4 frames.
The default text speed in CYF ([speed:1]) is 1 character every 4 frames.

For example, [speed:4] will type text at 4x the regular speed: 4 characters every 4 frames, or 1 per frame.

* Supports fractional numbers! [speed:0.25] writes text at 1/4th the regular speed, for instance.

Overrides [waitall:x].


[letters:x] For this frame only, the text box will show the next x characters.
If used with the command [lettersperframe:y], the next x+y-1 letters will be displayed.


[lettersperframe:x] For the rest of the line, the text box will show the next x characters every time one character should be displayed.


[name] This text gets replaced by by the name of the player. I totally forgot that we could actually use Player.name, but whatever.


[music:x] Plays the music given as an argument on the main music channel, unless the argument is one of these keywords:

  • play = Only plays the last played music, from the beginning.

  • pause = Pauses the music.

  • unpause = Unpauses the music.

  • stop, null, nil or an empty string = Stops the current music.


[sound:x] Plays the sound given as an argument.


[mugshot:face], [mugshot:null] or [mugshot:{face1,face2,...,time}] Only usable with the Overworld's main text as well as the main text object in battles.

Displays a set face sprite (or sequence of face sprites) next to your dialogue set by General.SetDialog.
Note that the overworld's automatic line break system will not account for face sprites set this way; instead, it's recommended to set a face sprite in General.SetDialog (see The General Object).

This function loads face sprites from YOUR MOD/Sprites/Mugshots, and if none exists, from Default/Sprites/Mugshots. You may put folder names in here, such as [mugshot:Papyrus/suspicious] to get the file YOUR MOD/Sprites/Mugshots/Papyrus/suspicious.png, or if it doesn't exist, Default/Sprites/Mugshots/Papyrus/suspicious.png.
Use [mugshot:null] or [mugshot] to revert the text box back to normal.


To use a sequence of face sprites, enter something such as
[mugshot:{Papyrus/happy,Papyrus/suspicious,0.1}].
This is a list of normal paths to put into [mugshot:x] as described above, followed by the amount of real time seconds between faces (such as with sprite.SetAnimation).

If you do not provide a time, or the time you enter is lower than 0, a default value of 0.2 will be used.

NOTE: While the overworld's mugshots have a size of 140x140, in battles, the mugshots are 130x130, so if bigger mugshots are applied in battles, 5 pixels around each edge are hidden.


[health:x,y] Heals the Player by x points. Can damage the player if x is negative, but the Player's HP will not go under 1 unless certain conditions are met. The parameter y is optional.

Examples:

  • [health:3] => Heals 3 HP.

  • [health:-5] => Damages 5 HP. Doesn't go under 1HP.

Tags:
  • x (y is unused if these tags are used):
    • kill = Kills the Player.

    • Max-1 = Sets the Player's HP at Player's Max HP minus 1.

    • Max = Sets the Player's HP at Player's Max HP.

  • y:
    • killable = The possible HP reduction can now kill the Player.

    • set = The amount of HP given in the first argument will be the Player's current HP.

Command tags




These tags can be added after a text command and have different behaviours.
To use them, you must do this: [command:tag] or [command:arguments:tag]. For now, only one tag can be added at a time.


skipover Makes a command only be activated when the text is not skipped (by using any [instant] command or by the player skipping). Has no effect on the commands [w] and [letters].


skiponly The command this is attached to will only be activated if the text has been skipped by using any [instant] command, or if the player skips it manually. This tag disables the commands [w] and [letters] if used with them.

* YOU WON!
* You earned 0 EXP and 0 gold.
* also the nav menu is broken now


Undertale fake button
Undertale fake button
Undertale fake button
Undertale fake button

================================================ FILE: Documentation CYF 1.0/pages/basic.html ================================================ CYF Documentation - Basic Setup Undertale background

Basic setup



By this point you'll probably want to set up an encounter of your own. Currently, scripts are set up like this:

  • Monster scripts - will contain information about your enemies. Here, you'll set things like their ATK, DEF, HP, random comments that might show up as encounter texts, random dialogue, and what ACT commands they have.

  • Encounter scripts - will contain a set of monsters, a set of wave scripts (that you can modify at any point), size of the arena, custom interactions for items, etc. A mod can have multiple encounter scripts.

  • Wave scripts - will contain an update function. You may use these to spawn, track, modify and otherwise interact with bullets during the defending phase of the game.

  • Event scripts - used within the Overworld. Will contain different functions that can be set up within Unity to run under certain conditions in game.

  • Shop scripts - used within the Overworld. Will contain many variables and functions controlling not only what items can be sold at what prices, but also shopkeeper dialog, special code and events to run, and the potential to animate the shopkeeper yourself.

From the mod selection screen, you may pick any mod, and play any encounter script within that mod.
In Create Your Frisk, the Overworld exists, and battles can be initiated from the Overworld with proper setup.

As of CYF v0.6.4, the only folder required within a mod is the YOUR MOD/Lua/Encounters/ folder. For all older versions, your encounter will break if the other folders are missing.


Files and directories



It's fairly self-explanatory. If you just want to move on fast, feel free to skip this section and go to the next one. If for any reason some of your files don't work, you might want to read this anyway.

Scripts

The Encounter scripts are located in YOUR MOD/Lua/Encounters/. The Monster scripts are in YOUR MOD/Lua/Monsters/, and your wave scripts at YOUR MOD/Lua/Waves/. If you're getting started, check out these files in example encounters to see how they're put together.

You may also create a YOUR MOD/Lua/Libraries/ folder. You can put libraries other people have made in here (or create your own) for use in your other scripts. Libraries/modules are more Lua functionality than they are Unitale functionality, so please read up about them here instead. There is an example encounter included making use of one such library.

In the Overworld, Event scripts are located in YOURMOD/Lua/Events/, and Shop scripts are located in YOURMOD/Lua/Shops. These features are explained in the Overworld category in this documentation.

Music

Music can be put in YOUR MOD/Audio/. Your music must be in .ogg or .wav format. Audacity can export to .ogg if you're missing the appropriate software.

Sounds

Sounds can be put in YOUR MOD/Sounds/. They must be in .ogg or .wav format. You can play them with Audio.PlaySound(filename); more on this in The Audio Object.

Voices

Voices can be put in YOUR MOD/Voices/. They must be in .ogg or .wav format, although .wav is generally recommended. You can use them with the [voice] text command; more on this in Text Commands.

Sprites

Sprites can be put in YOUR MOD/Sprites/. They must be in the .png format. Note that most vanilla Undertale monster sprites start with a small base resolution, then resize the sprite to 2x its original resolution for an oldschool look.

To add a background you can have one file titled bg.png in the sprites folder. This image will stretch over the entire background, so 640x480 resolution is recommended. Actually modifying and animating the background from the Lua side is not possible; however, in CYF, you may use sprite layers to create a sprite behind the built-in background layer and animate that instead.


The Default directory



Unitale and Create Your Frisk both have a "Default" directory. This is where resources from Undertale reside. It is not advised to modify files in this directory, as they are expected to be the same across all installations.

If you wish to replace any of the files for your mod, create a file with the same name at the same location instead. For instance, if you want to change the player soul hurt sound, don't replace Default/Sounds/hurtsound.wav. Instead, create a new file located at YOUR MOD/Sounds/hurtsound.wav. This also goes for sprites, music, and even fonts.


* YOU WON!
* You earned 0 EXP and 0 gold.
* also the nav menu is broken now


Undertale fake button
Undertale fake button
Undertale fake button
Undertale fake button

================================================ FILE: Documentation CYF 1.0/pages/controls.html ================================================ CYF Documentation - Controls Undertale background

Controls



In battle

Arrow keys, Z (or Enter), X (or left/right Shift) - The same as in Undertale.

Esc - Exit to the Mod Selection screen to assist in quickly testing mods.
Disabled if the encounter has unescape set to true.

F9 - Toggle the debug console. You can write text to this with DEBUG("your text here") in your scripts.

F4, Alt+Enter - Toggle fullscreen mode.
You can change how fullscreen displays with the option "cropped fullscreen" in the Options menu, found in the Mod Selection screen.

H with debugger open (F9) - Show or hide hitboxes of bullets and the player.


Mod Selection screen (main)

Z, Enter, or Mouse Click - Start an encounter, or open an encounter list for a mod if it has multiple. (see below)

X or any Shift key - Return to the disclaimer (title) screen.

Up or C - Opens the mod list, used to jump to any mods you have installed. (see below)

Left or Right arrows - Scroll through your installed mods.


Mod Selection screen (mod or encounter list)

Z, Enter, or Mouse Click - Jump to a mod you have installed (mod list), or start a selected encounter (encounter list).

X or any Shift key - Close the list.

Up and Down, Mouse Scroll, Click and Drag - Move up and down through the list.

* YOU WON!
* You earned 0 EXP and 0 gold.
* also the nav menu is broken now


Undertale fake button
Undertale fake button
Undertale fake button
Undertale fake button

================================================ FILE: Documentation CYF 1.0/pages/cyf-inventory.html ================================================ CYF Documentation - The Inventory Object Undertale background


The Inventory object [E/M/W] It was hard to customize items and such in Unitale, right? Plus, items wouldn't go away when you used them, because they are the only ones that will ever love you. But now, nobody loves you at all, because items can be deleted and the Inventory System has been simplified! Here are the functions that are created to help you with this hellish mechanism that added items.

Note: All of Undertale's consumable items, weapons and armors are already implemented in CYF!
You can use them in your mod if you want to, all you need to do is:

  • Add an item using its long name (you have to add an item with the name "Butterscotch Pie" if you want the Player to have one, not "ButtsPie"),
  • Avoid running the BattleDialog function in HandleCustomCommand for these items.
This system extends to any item added to Create Your Frisk's internals.


Some of these functions can only be used in HandleItem. Examples are included at the bottom of this page.



Inventory.AddItem( name, index = 8) Attempts to add the item name to the player's inventory.

  • name = The name of the item to add. Must have been set with Inventory.AddCustomItems.
  • index = The position to place the item in, starting from 1.
    Will "push away" items if placed in the same position as one.
    If > the number of items in the inventory, the item will just be added to the end.


Can not make a player's inventory exceed 8 items.

Returns true if the item was successfully added, false otherwise.


Inventory.RemoveItem( index) Removes the item in position index from the player's inventory.
index = Index to remove the item from. The first item is position 1.



Inventory.GetItem( index) Returns the name of the item in the inventory at the given index.
index = Index of the chosen item. The first item is number 1.



Inventory.GetType( index) Returns the type of the item in the inventory at the given index.
index = Index of the chosen item. The first item is number 1.

Types:

0 = Consumable. Will be deleted upon use.
1 = Weapon. You will be able to equip this item as a weapon.
2 = Armor. You will be able to equip this item as armor.
3 = Special. This item will not be deleted upon use.


Inventory.SetItem( index, name) Sets the inventory item at index to the item Name.
index = Index to put the item in. The first item is position 1.
name = Name of the item to put in the inventory.


Inventory.UseItem( index, silent) Uses the inventory item at index index. Will throw an error if you have no item at the given index, so check if it exists before using this function.
index = Index of the item to use, starting from 1.
silent = Whether or not using the item will result in writing battle text.


Inventory.AddCustomItems( names, types) If you want to add custom items, this has to be used before SetInventory. This adds all items in names to the inventory, where each item matches up with a type in types. If you don't do this, the engine will not recognise your newly created items.

Usage: Inventory.AddCustomItems({"item1", "item2"}, {1, 0})

names = The names of your custom items.
types = The item types of your custom items. This array must be same size as names.
Types:

0 = Consumable. Will be deleted upon use.
1 = Weapon. You will be able to equip this item as a weapon.
2 = Armor. You will be able to equip this item as armor.
3 = Special. This item will not be deleted upon use.


Inventory.SetInventory( names) Sets the player's inventory. To use custom items, this must be used after AddCustomItems.
This function is used like this: Inventory.SetInventory({"item1", "item2"});
names = The names of the items.

To empty the player's inventory, use Inventory.SetInventory({}).


Inventory.ItemCount Returns the number of items the player has in their inventory. Read-only.


Inventory.NoDelete In the encounter function HandleItem only, setting this to true will make the last used item stay in the inventory.


Inventory.SetAmount( amount) Used with Weapon and Armor items. If the item is a Weapon, this sets its ATK. If the item is armor, this sets its DEF.
amount: the amount of ATK/DEF the item will have.



Examples:


Example of a healing item:
function EncounterStarting()
    Inventory.AddCustomItems({"Starfait"}, {0})
    Inventory.SetInventory({"Starfait"})
end

function HandleItem(ItemID)
    if ItemID == "STARFAIT" then
        Player.Heal(14)
        BattleDialog({"You eat the Starfait.[w:10]\nYou recovered 14 HP!"})
    end
end
            

Example of a weapon:
function EncounterStarting()
    Inventory.AddCustomItems({"Shotgun"}, {1})
    Inventory.SetInventory({"Shotgun"})
end

function HandleItem(ItemID)
    if ItemID == "SHOTGUN" then
        Inventory.SetAmount(16777215)
        BattleDialog({"You equipped the Shotgun."})
    end
end
            

Example of armor:
function EncounterStarting()
    Inventory.AddCustomItems({"Shield"}, {2})
    Inventory.SetInventory({"Shield"})
end

function HandleItem(ItemID)
    if ItemID == "SHIELD" then
        Inventory.SetAmount(8)
        BattleDialog({"You equipped the rusty shield."})
    end
end
            

Example of a special item:
function EncounterStarting()
    Inventory.AddCustomItems({"Music Box"}, {3})
    Inventory.SetInventory({"Music Box"})
end

function HandleItem(ItemID)
    if ItemID == "MUSIC BOX" then
        BattleDialog({"[noskip]You wind up the music box.[w:10]\nA haunting melody fills the room.", "The enemy's DEF drops!"})
        enemies[1].SetVar("def", enemies[1].GetVar("def") / 2)
    end
end
            

Example of a persistent item:
function EncounterStarting()
    Inventory.AddCustomItems({"Test"}, {0})
    Inventory.SetInventory({"Test"})
end

function HandleItem(ItemID)
    if ItemID == "TEST" then
        Inventory.NoDelete = true
        BattleDialog({"This item won't be\rdeleted!"})
    end
end
            

Many items:
function EncounterStarting()
    Inventory.AddCustomItems({"Test", "Test2", "Shotgun", "Shield", "PsnPotion", "Life Roll", "Nothing"}, {0, 0, 1, 2, 0, 0, 3})
    Inventory.SetInventory({"Test", "Test2", "Shotgun", "Shield", "PsnPotion", "Life Roll", "Nothing"})
end

function HandleItem(ItemID)
    if (ItemID == "TEST") then
        Inventory.NoDelete = true
        BattleDialog({"This is a persistent item.[w:5]\nThe item will be in the\rinventory in the next turn!"})
    elseif (ItemID == "TEST2") then
        BattleDialog({"This is a normal item.[w:10]\nThe item will be gone\rby the next turn!"})
    elseif (ItemID == "SHOTGUN") then
        Inventory.SetAmount(16777215)
        BattleDialog({"You equipped the Shotgun."})
    elseif (ItemID == "SHIELD") then
        Inventory.SetAmount(30)
        AllowPlayerDef(true)
        BattleDialog({"You equipped the shield."})
    elseif (ItemID == "PSNPOTION") then
        BattleDialog({"You drank the Poison Potion.","[noskip][waitall:10]...[waitall:1][w:20]\rThat was a bad idea.[w:20][health:kill]"})
    elseif (ItemID == "LIFE ROLL") then
        BattleDialog({"Your HP goes to 1[waitall:10]...[waitall:1][health:1,set]now.[w:20]\nNow, byebye![w:20][health:-1, killable]"})
    elseif (ItemID == "NOTHING") then
        BattleDialog({"You use Nothing. [w:10]Did you really\rthink that something would\rhappen?"})
    end
end
            

* YOU WON!
* You earned 0 EXP and 0 gold.
* also the nav menu is broken now


Undertale fake button
Undertale fake button
Undertale fake button
Undertale fake button

================================================ FILE: Documentation CYF 1.0/pages/cyf-ppcollision.html ================================================ CYF Documentation - The Pixel-Perfect Collision System Undertale background

The Pixel-Perfect Collision System



Have you had enough of Unitale's default rectangular collisions and having to use thousands of lines of if statements in OnHit just to get precise collisions? Then the Pixel-Perfect Collision System is for YOU!

You can use this system for your entire encounter with SetPPCollision(bool), or you can apply it just to a bullet with bullet.ppcollision. The bullet's ppcollision value will override the encounter's ppcollision value.

The Pixel-Perfect Collision System now supports bullets with scale! You can rotate and move bullets like always and collision will still work! (this is why it took me one week to make this feature)

One last tip: The Pixel-Perfect Collision System is more resource-intensive than the Normal Collision System. Don't use Pixel-Perfect for bullets that won't damage you, as that will just waste resources!




Note: PPCollision does NOT affect the hitboxes shown when pressing H with the debugger open.



SetPPCollision( bool) [E/M/W] Call this to set the encounter's default collision system.

Enter false for the regular "Unitale" system, or true for PPCollision.

* Calling this will force all bullets with Bullet.ppchanged as false to use the collision system you enter here (see above).

Bullet.ppchanged will remain false.


The initial value is false.


From Projectile management:


Bullet.ppcollision If this is true, the bullet will use the Pixel-Perfect Collision system.

By default, this is the encounter's default collision system.

* Manually setting this will set Bullet.ppchanged to true.


Bullet.ppchanged (read-only) Tells you if the bullet's collision system has been changed by manually changing Bullet.ppcollision.

* Bullets with Bullet.ppchanged set to true will NOT be affected by future calls of
SetPPCollision.


Will be false after you call Bullet.ResetCollisionSystem(), or if you haven't changed Bullet.ppcollision.


Bullet.ResetCollisionSystem() Resets the collision system of the bullet to the encounter's default collision system.

The default collision system is set by SetPPCollision.

* YOU WON!
* You earned 0 EXP and 0 gold.
* also the nav menu is broken now


Undertale fake button
Undertale fake button
Undertale fake button
Undertale fake button

================================================ FILE: Documentation CYF 1.0/pages/cyf-text.html ================================================ CYF Documentation - The Text Object Undertale background

The Text Object



A lot of people were waiting for this: I'm proud to present to you the Text Object! With it, you can create text wherever you want, with or without a bubble, with a tail or without a tail... It's 100% your choice!

Plus, if you choose to make a bubble, the height of the bubble is automatically computed, but you can still choose the bubble's height if you want to.

By default, a Text Object has a bubble with an automatically-set height, with no tail/speech thing. Plus, the object is hidden when you enter or come out of ENEMYDIALOGUE. If you want to change this, there are a lot of functions to do so. Look down to see them!
As this object exists in CYF's hierarchy, it's possible to manipulate its parent. See the General Objects page for more information.


CreateText( / text, , position, width, layer = "BelowPlayer", bubbleHeight = -1) returns textObject [E/M/W] This function creates a Text Object and returns it. However, as you can see, a lot of parameters are needed.
Here is what you need to set:

  • text - The text to display.
    Used the same way as in BattleDialog: {"Text 1", "Text 2"}
    Can also just be a single line of text.

  • position - Two numbers: The x and y positions of the center of the object. Sorry if it may be hard to place it, but you'll be able to use MoveTo to adjust it afterwards.
    You only need two numbers, like this: {320, 240}

  • width - You'll always need this, as it's the maximum width of the text! The bubble's width will be 20px larger than the text's width. Also, bubbles have a minimum width of 40.
    Example: 150

  • layer - The sprite layer of the Text Object. If it doesn't exist, it returns an error. This argument is optional. If it's not provided, the Text Object will be in the layer BelowPlayer (or Default in the Overworld).
    Example: "BelowPlayer"

  • bubbleHeight - You can enter a static bubble height here if you want to. By default, this will be -1, which will auto compute the height of the bubble. However, bubbles have a minimum height of 40.
    Example: 150

NOTE: To allow for using properties such as Text.SetFont and Text.color on the same frame as creating the text object, a one-frame delay is implemented by default: The text object will not create its letters or start typing until one frame after you call CreateText. As a consequence, expect a few properties such as Text.color and Text.GetLetters to run into issues if you run them on the same frame you use CreateText.

If you need to disable the one-frame delay, start your first line of text with the Text Command [instant]. And if you need to disable that too, follow it up with [instant:stop].


Text.Remove() Shortcut to Text.DestroyText.


Text.DestroyText() This function destroys a text object, similar to .Remove() for bullets and sprites.

Trying to get, set or call almost anything besides Text.isactive on a destroyed text object will error.

Note that this happens automatically if a text object closes itself, either by having the player close it or by closing automatically if progressmode is "auto".


Text.text Returns all lines of text the text object is holding. The texts might be different to how you added them to the text object because of how CYF handles text.

For example, if your text is too long to be held within one line, the text object will replace spaces with newline characters when needed. This change will be visible on the current line of text and all previous ones, but not on the lines of text which have yet to be displayed.


Text.isactive Read-only.
Tells you if a text object is active.

A text object will become inactive when it finishes its text and tries to continue, or if you call Text.DestroyText().


Text.progressmode This value is used to set the progression mode of the text to one of the following values.

  • "auto": Makes the text start a new line after a given number of frames set in Text.SetAutoWaitTimeBetweenTexts().
  • "manual": Makes the text require the player to press the Confirm button at the end of each line.
  • "none": With this option, you will need to manually display the next line in-code using Text.NextLine().


Text.deleteWhenFinished This value is used to check whether the text object should be removed or not after the text is finished. Its default value is true, meaning the text object will be automatically removed after the end of the text. You can set it to false to automatically hide the text object once its text is complete, which allows you to reuse it later.


Text.x The local x position of the object, measured from the position of the text object's parent. This value depends on the object's pivot.


Text.y The local y position of the object, measured from the position of the text object's parent. This value depends on the object's pivot.


Text.absx The absolute x position of the object, measured from the bottom left corner of the screen. This value depends on the object's pivot.


Text.absy The absolute y position of the object, measured from the bottom left corner of the screen. This value depends on the object's pivot.


Text.textMaxWidth or Text.width Get or set the maximum width of the text. If the value is lower than 16, it'll be set back to 16.


Text.bubbleHeight Get or set the height of the bubble. If the value is lower than 40, it'll be set back to 40.


Text.layer The sprite layer of the Text Object. If it doesn't exist, it returns an error. This is "BelowPlayer" by default.


, , , = 1 Text.color Get or set the color of the text, as a table of 3 or 4 values from 0 to 1.
For example, text.color = {1.0, 0.0, 0.0} makes the text red.
Black areas are not affected by coloration.
The 4th value is the alpha (transparency) value of the text.


, , , = 255 Text.color32 Get or set the color of the text, as a table of 3 or 4 integer values from 0 to 255.
For example, text.color = {250, 0, 0} makes it red.
Black areas are not affected by coloration.
The 4th value is the alpha (transparency) value of the text.


Text.ResetColor( resetAlpha = false) Resets any previous set of the variable Text.color or Text.color32, resetting the text's default color to the font's default color.
This function will not reset the color's alpha if it was set in any way unless resetAlpha is set to true.


Text.alpha Get or set the text's transparency, as a value between 0 and 1.


Text.alpha32 Get or set the text's transparency, as an integer between 0 and 255.


Text.ResetAlpha() Resets the text object's alpha value, whether it was set through Text.alpha, Text.color or Text.color32, resetting the text's default alpha to the font's default alpha.


Text.currentCharacter Returns a number representing the total number of characters currently shown in the text object's text.
It also works the same if your text is slowed down or sped up.

Text commands are also taken in account using this variable. You can easily check where the text is currently at using this value and Text.text's output.


Text.currentReferenceCharacter Returns a number representing the total number of visible characters currently shown in the text object's text.
It also works the same if your text is slowed down or sped up.

Any text commands that you have in your active line of text will be ignored by this number, as it only counts the visible characters, and not the length of the string you put into the text object.


Text.rotation Gets or sets a text object's rotation, in degrees. Will also rotate the text object's bubble if it has any.

The text object will rotate around the bottom left corner of the first letter of the text object.

It's clamped between 0 and 360, so if you set it to 365, it will become 5.


Text.adjustTextDisplay False by default. If set to true, CYF will try to adjust the text's position and scale to prevent jagged lines to appear if the text's scale or position is slightly off.

Only taken in account if set, otherwise the global value set through the adjusttextdisplay Encounter variable is used.


Text.currentLine Returns the number of the line (page) that the text is currently on, starting from 0.

So, if your text object's text table is {"Text 1", "Text 2"}, then "Text 1" is line 0, and "Text 2" is line 1.


Text.linePrefix This variable will be added at the beginning of each line of text the text object will display.

Useful for adding various text commands you want to apply to all lines of text displayed by a given text object.


Text.columnNumber Represents the number of columns used by some texts in CYF, such as the ITEM and ACT menu.
If this is value is set, you should also consider changing Text.columnShift.

This value is only ever used by the engine, so setting it to a specific value doesn't prevent you from using the character \t as much as you like.
Refer to the entry on Text.columnShift for more informations on the character \t.


Text.columnShift Amount of horizontal pixels the letters moves by from its last column (or first character) whenever the character \t is used.

The \t character is used in-engine for aligning columns of text. It affects the current line of the text and can be used several times on the same line to support more than two columns.

For example, the following text will result with the following image:

* Check \t * Act 1 \t * Act 2 \n
* Act 3 \t * Act 4 \t * Act 5 \n
\t \t * Act 6


sprite Text.GetLetters() Returns a table containing sprite objects representing every letter to be displayed in the text object's current line of text. Note that even if a text object has not finished typing yet, all characters it will type are still accessible this way.

Letter sprite objects can not have their layer changed, can not run sprite.Mask, and can only be parented to other letter sprites. They cannot be deleted or dusted (using sprite.Dust()) as well.


NOTE: Accessing this table generates the table anew every time. To save on resources, store this table to a local variable before doing any operations on it. Even code such as for i = 1, #text.GetLetters() do is a bad idea.

It is recommended to use this property in coordination with the Game Event OnTextAdvance. You may also not be able to use this on the same frame as creating the text - read the note under CreateText for more information.


Here is an example of using Text.GetLetters to apply offset and rotation to every letter.
local t = CreateText({"Some example text for testing!"}, {40, 400}, 560, "Top")
t.HideBubble()
t.progressmode = "none"

function OnTextAdvance(text, final)
    if text == t and final == false then -- optional if you only have one text object
        local letters = t.GetLetters()

        for i = 1, #letters do
            letters[i].y = math.sin(i) * 3
            letters[i].rotation = math.sin(i * 1.5) * 6
        end
    end
end
            
Alternatively, if you want it all done on the first frame, it's much more compact:
local t = CreateText({"[instant]Some example text for testing!"}, {40, 400}, 560, "Top")
t.HideBubble()
t.progressmode = "none"

local letters = t.GetLetters()

for i = 1, #letters do
    letters[i].y = math.sin(i) * 3
    letters[i].rotation = math.sin(i * 1.5) * 6
end
            


function Text.OnTextDisplay(text text) Every time this text object's letters are created, this function gets called. This function is the best place to manipulate the text object's letters using Text.GetLetters.

The argument text is the text object itself.

If this value isn't set and the function OnTextDisplay() exists in the Encounter script, it will call it with the text object as its argument.


Text.SkipLine() This function skips to the end of the text object's current text, as if using the text command [instant].
If playerskipdocommand is true, this function will behave the same as a player skip. See Special Variables for an explanation on playerskipdocommand.


Text.lineComplete Read-only.
Returns true if the current line (page) of text is fully displayed, false otherwise.


Text.allLinesComplete Read-only.
Returns true if the current line of text is fully displayed and if this is the last line the test object will show, false otherwise.


Text.lineCount() This function returns the total number of lines/pages of text set to the text object, regardless of whether they've been shown yet.


Text.NextLine() Shows the next line (dialogue) of the text instantly, regardless of if the current one is finished or what progress mode the object has.
If you run this function while this is this text object's last line, it will delete the text object if its Text.deleteWhenFinished variable is set to true, othrwise it will deactive it until further use.


Text.SetWaitTime( time) Shortcut to Text.SetAutoWaitTimeBetweenTexts.


Text.SetAutoWaitTimeBetweenTexts( time) Sets the number of frames to wait before automatically going to the next line of text.
Only applies to the "auto" progress mode.


Text.SetAnchor( x, y) If this text object has a parent set via Text.SetParent, this will control its anchor point (the relative point on the parent sprite that the text object will follow if the parent sprite gets scaled).

x and y should usually both be between 0 and 1. However, you are free to use numbers outside of this range as well.

Works exactly the same as sprite.SetAnchor (see Sprites & Animation).


Text.xscale,
Text.yscale
Allows you to stretch and squish text objects, similarly to sprite objects.

This works at any point: while the text has not yet started to type, is in the middle of typing, is paused, between lines, even if it's done typing.


Text.Scale( xscale, yscale) Same as setting Text.xscale and Text.yscale at the same time.


Text.MoveBelow(text otherTextObject) Moves a text object below another text object.
They must both be on the same layer.


Text.MoveAbove(text otherTextObject) Moves a text object above another text object.
They must both be on the same layer.


Text.SendToTop() Sends this text object to the top of its layer's hierarchy. If a sprite has 5 children, for instance, you can use this to rearrange this text object's position internally. However, child text objects will always appear on top of their parents, regardless of this function being called.


Text.SendToBottom() Sends this text objct to the bottom of its layer's hierarchy. Similar rules apply as with SendToTop().


Text.AddText( text (OR) text) Adds the given text to the object's text table. Acts like Text.SetText() if all the text is already done.


Text.SetText( text (OR) text) Sets the text in the Text Object.
If the text object is inactive when this is called, the object will reactive itself.


Text.SetPause( pause) Pauses the text object's typing, in the same way as [waitfor:key], except that it doesn't resume until you use this function again.

However, while paused, text can still be skipped, unless [noskip] is applied to the text first.


Text.isPaused() This function will return a boolean, telling you whether text has been paused with SetPaused.
It does not count if the text object was paused by other means, such as [waitfor:key].


Text.SetVoice( voiceName) Sets the voice of the text object. It's the same as the text command [voice], but whatever.


Text.SetFont( fontName) Sets the font of the text. It's the same as the text command [font], but whatever.
Returns an error if the font doesn't exist.


Text.SetEffect( effect, intensity = -1) Sets the effect of the text. Can be easily replaced with the text command [effect], but whatever.
Can only take none, twitch, shake or rotate as the effect.

If you want to use the default intensity value, enter -1.


Text.ShowBubble( side = nil, / position = nil) Use this function to add a bubble to the text. You can also set the side and the position of the tail (a.k.a. speech thing) if you want to.
Look at Text.SetSpeechThingPositionAndSide to see how to use this.


Text.SetTail( side, / position = "50%") Shorter (and better) alias of Text.SetSpeechThingPositionAndSide.


Text.SetSpeechThingPositionAndSide( side, / position = "50%") Sets the size and position of the dialogue bubble's tail (a.k.a speech thing). The side can only take "left", "right", "up", "down" or "none".
"none" is used to hide the speech thing, while the other directions control the side of the bubble where the speech thing is.

position can be set to one of two things:

  • A number. If the side is "left" or "right", this will determine its distance from the bottom of the bubble. If the side is "up" or "down", then this will determine its distance from the right side of the bubble.
    If on the bottom or top of the bubble, this value can only be between 0 and the bubble's width. If on the left or right sides of the bubble, this value can only be between 0 and the bubble's height.

  • A string. It must be formatted like "0%", where you can replace the "0" with any percentage. If on the top or bottom of the bubble, "0%" will be the right side of the bubble and "100%" will be the left side of the bubble. If on the left or right side, "0%" will be the bottom of the bubble and "100%" will be the top of the bubble. The value can only be between "0%" and "100%".


Text.HideBubble() A function that hides the bubble.


Text.Move( x, y) Moves the text object by x pixels horizontally and y pixels vertically from its current position.


Text.MoveTo( x, y) Moves the text to a new position, relative to the text object's parent's position.


Text.MoveToAbs( x, y) Moves the text to a new position, relative to the bottom left corner of the window.


Text.GetTextWidth( firstLetter = 0, lastLetter = 999999) Returns the width of the currently set text in pixels. Useful if you want to center your text.
Will give the same result even if the text isn't finished typing.

Also ignores Text.xscale.

firstLetter chooses the index of the first letter from which the text's width should be computed, while lastLetter chooses the index of the last letter, and both start with 0 as the index for the first letter.

The values of these arguments can be negative, in which case it will start from the end, pointing at the xth last letter of the text. For example, using Text.GetTextHeight(-4) on the text I want some text will start counting the text's width from the first t of "text", or the 4th letter from the end of the text.


Text.GetTextHeight( firstLetter = 0, lastLetter = 999999) Returns the height of the curently set text in pixels.
Will give the same result even if the text isn't finished typing.

Also ignores Text.yscale.

firstLetter chooses the index of the first letter from which the text's height should be computed, while lastLetter chooses the index of the last letter, and both start with 0 as the index for the first letter.

The values of these arguments can be negative, in which case it will start from the end, pointing at the xth last letter of the text. For example, using Text.GetTextHeight(-4) on the text I want some text will start counting the text's height from the first t of "text", or the 4th letter from the end of the text.


Text.SetVar( yourVariableName, value)
or Text[ yourVariableName] = value Sets a variable in a text object that you can retrieve with Text.GetVar.
Identical to SetVar in projectiles.


Text.GetVar( yourVariableName)
or Text[ yourVariableName] Gets a variable in a text object that you previously set with Text.SetVar.
Identical to GetVar in projectiles.

* YOU WON!
* You earned 0 EXP and 0 gold.
* also the nav menu is broken now


Undertale fake button
Undertale fake button
Undertale fake button
Undertale fake button

================================================ FILE: Documentation CYF 1.0/pages/howtoread.html ================================================ CYF Documentation - How to read this documentation Undertale background

How to read this documentation




Reading Function Examples



After people had some problems reading the documentation correctly, I decided to create this little tutorial.

Let's say you see something in the documentation that looks like this:


Screen.DispImg( path, ID, posX, posY, toneR = 255, toneG = 255, toneB = 255, toneA = 255)



There are several things to know here. First of all, the arguments have a type and a name. The name really is here just to help you to know what the variable is, you don't really have to care about it. However, the type is important, it determines what kind of variable you'll need to send.

In this example, is a character chain (i.e. "hello"), and is any number (i.e. 4).


One last thing with functions: some of these arguments have a value after them - this is the variable's default value. So, you can use the function without including that argument.

In our example, that means that you can just call Screen.DispImg("poseur", 1, 320, 240) - but you can add the other values if you want to add them.

However, if you need to set toneB in our example, you need to set toneR and toneG before it, as well. If you want to keep the default values, just enter the ones the documentation says :P

So if we want to fully call this function and set toneA to 128, we have to call it like this:

Screen.DispImg("poseur", 1, 320, 240, 255, 255, 255, 128)


E, M and W


All over this documentation, you will find...
isCYF [E/M/W] [E], [M], [W], or a mix of the three.

These simply mean that the relevant variable, function or object is accessible from:

  • [E]: Encounter scripts.
  • [M]: Monster scripts.
  • [W]: Wave scripts.


Finally, if you're a fan of Unitale and want to use it instead of CYF, but still want to use this documentation, note this: all the variables or functions with this tag: are only usable in CYF.
Additionally, this symbol indicates new or changed content in the most recent major version of Create Your Frisk, and its sub-versions.

Now that you know how to read the documentation, you should keep reading! It'd be too bad if you stopped now :P

* YOU WON!
* You earned 0 EXP and 0 gold.
* also the nav menu is broken now


Undertale fake button
Undertale fake button
Undertale fake button
Undertale fake button

================================================ FILE: Documentation CYF 1.0/pages/item-list.html ================================================ CYF Documentation - Item List Undertale background

Item List



This page lists all items added in CYF, as well as their effect.


Consumable items:

Item Name Effect Price Notes
Bandage Restores 10 HP 5 G Equipped by the Player as their armor by default
Monster Candy Restores 10 HP 5 G
Spider Donut Restores 12 HP 7 G
Spider Cider Restores 24 HP 18 G
Butterscotch Pie Restores all HP 900 G
Snail Pie Restores all HP but one 899 G
Snowman Piece Restores 45 HP 300 G
Nice Cream Restores 15 HP 15 G Part of the item's text is randomized upon use
Bisicle Restores 11 HP 15 G
Unisicle Restores 11 HP 8 G
Cinnamon Bunny Restores 22 HP 25 G
Astronaut Food Restores 21 HP 25 G
Crab Apple Restores 18 HP 25 G
Sea Tea Restores 18 HP 18 G This item doesn't increase the Player's speed in CYF
Abandoned Quiche Restores 34 HP 200 G
Temmie Flakes Restores 2 HP 6 G
Dog Salad Randomly restores between 2, 10, 30 and all HP 10 G
Instant Noodles Restores 15 HP outside of battle, 4 HP in battle 30 G This item's use description is excruciatingly long
Hot Dog...? Restores 20 HP 30 G
Hot Cat Restores 21 HP 30 G
Junk Food Restores 17 HP 25 G
Hush Puppy Restores 65 HP 600 G
Starfait Restores 14 HP 60 G
Glamburger Restores 27 HP 120 G
Legendary Hero Restores 40 HP 300 G This item doesn't increase the Player's ATK in CYF
Steak in the Shape of Mettaton's Face Restores 60 HP 500 G
Potato Chisps Restores 13 HP 25 G
Bad Memory Restores all HP if HP is 3 or lower, otherwise reduces HP by 1 10 G
Last Dream Restores 17 HP 25 G


NOTE: Weapons do not modify the usual ATTACKING state.

Weapons:

Item Name Effect Price Notes
Toy Knife 3 ATK 30 G
Tough Glove 5 ATK 50 G
Ballet Shoes 7 ATK 100 G
Torn Notebook 2 ATK 55 G This item doesn't increase the Player's INV in CYF
Burnt Pan 10 ATK 200 G This item doesn't increase the efficiency of consumable items in CYF
Empty Gun 12 ATK 350 G
Worn Dagger 15 ATK 500 G
Real Knife 99 ATK 99999 G


Armors:

Item Name Effect Price Notes
Faded Ribbon 3 DEF 30 G
Manly Bandanna 7 DEF 50 G
Old Tutu 10 DEF 100 G
Cloudy Glasses 6 DEF 35 G This item doesn't increase the Player's INV in CYF
Stained Apron 11 DEF 200 G This item doesn't increase the efficiency of consumable items in CYF
Cowboy Hat 12 DEF 350 G
Heart Locket 15 DEF 500 G
The Locket 99 DEF 99999 G
Temmie Armor 20 DEF 99999 G All of this item's secondary effects aren't applied in CYF (ATK +, HP Regen, INV +)


Miscellaneous:

Item Name Effect Price Notes
Stick Displays a message 50 G Equipped by the Player as their weapon by default
Testing Dog Displays a message 0 G

* YOU WON!
* You earned 0 EXP and 0 gold.
* also the nav menu is broken now


Undertale fake button
Undertale fake button
Undertale fake button
Undertale fake button

================================================ FILE: Documentation CYF 1.0/pages/overworld-howto-animevent.html ================================================ CYF Documentation - How to add an animation to an event Undertale background

The Overworld: How to add an animation to an event



Tired of all these static events? Do you want them to be animated, to bring more life to your map? You're in the right place!
Animating events is (again) something very easy, but it may be time-consuming. This animator is used like sprite.SetAnimation(), only the ways you fill in data are different.


  • All the animations are driven by a component named CYFAnimator. Click on the event you want to add this component in, go at the very bottom of the Inspector tab, then click on the button "Add component".
  • Enter "CYFAnimator" and you should be able to find it. Click and it'll be added.

  • CYFAnimator screenshot

    This is a working example of the CYFAnimator object. The 8 animations pictured here are the minimum ones required to make the component run correctly.


    You should be able to see some variables. Here is a description of each of them:

  • Movement Direction: The direction that the event goes. Normally, you don't need to modify this, as the component will calculate this by itself.
  • Begin Anim: The name of the animation that the event will start with.
  • Special Header: This variable is used to modify the event's animation scheme.
    Normally, the event will start the animations StopDown, StopUp, MovingDown, MovingUp and all the others in the screenshot.
    But if you set this variable, it'll act as a prefix for the animations.
    So, if this variable is set to "Frisk", the CYFAnimator component will use FriskMovingDown, FriskMovingUp, ... instead of the others.

    There is one exception to this scheme. If the special header is equal to an animation's name, said animation will be the only one used while the special header has this value.
  • Anims: Your list of animations. Check the screenshot above to see how you should fill it.

    NOTE: While any mix of the above animations is fine, such as only having vertical animations if your event will only move up and down, an animation named "StopDown" is required for every event with a CYFAnimator component. It is the default animation, and the absolute bare minimum to include if you wish to have a CYFAnimator component.

  • And that's it for animated events! As I said, the biggest part here is to fill in the Anims list, so it's not much of a deal!

    If you had any problems with this tutorial, please tell me what went wrong.
    If you see any ways that this tutorial can be improved, please tell me that as well.
    You'll have more chances to contact me on Unitale's Discord server - the response will be way faster and it will be much smoother than using messages on reddit.
    Here is the link to the Discord server.

    * YOU WON!
    * You earned 0 EXP and 0 gold.
    * also the nav menu is broken now


    Undertale fake button
    Undertale fake button
    Undertale fake button
    Undertale fake button

    ================================================ FILE: Documentation CYF 1.0/pages/overworld-howto-event.html ================================================ CYF Documentation - How to create an event in Unity Undertale background

    The Overworld: How to create an event in Unity



    If you want to make a good map, creating events is something that you might want to get used to.
    Making events is not complicated, though, you just need to know what to tweak.


  • The first thing that you'll have to do is, of course, to open the map you want to add the event in.
  • As you may have seen in the previous tutorial, Unity uses "prefabs". These are generic objects that can be used in different scenes across the project.

    Here, you'll want to go to the Project tab and go to Assets/Resources/prefabs to see them.
    The one that interests us here is the Event1 prefab. Click and drag it to the GameObject list to create an instance of this prefab.

  • Now, as you can see, there are two different objects, both named "Event1".
    You absolutely need to rename the parent GameObject to "SpritePivot" in order for the event to be correctly layered.

    This is a workaround I use to correctly layer the sprites.
    The position (transform data) of the event must be held by the parent GameObject in order for its layer to be correctly set. You can modify the position of the child GameObjct if you want to, and it'll move the layer point accordingly.
    For more infomation about this workaround and how it works, go here.


    Now the event is ready! Simple, isn't it? However, you'll want to modify it now. Keeping the object like this is not recommended.
    What follows is a list of things that you can modify.


    • GameObject:
      • Name: All events must have a different name, so find one that fits this event!
    • RectTransform:
      • PosX, PosY: The position of the event.
      • Anchors: The anchors of the event. Must have the same value!
      • Pivot: Pivot of the event. It changes the object's position!
    • SpriteRenderer:
      • Sprite: This is not what will be used to display the sprite.
        But, you can still use this to see if the event's sprite looks good and to modify its hitbox.

      • NOTE: In order to make your Event appear in the same place in-game as in the editor, use Unity to change the "Pivot" property of the imported sprite image to "Bottom" instead of "Center". Otherwise, in the editor, you'll only be able to tell an Event's actual position by its hitbox and not its visual location.
    • BoxCollider:
      • Edit Collider: Lets you modify the event's hitbox.
      • Is Trigger: Must be activated to allow Touch events.
      • Offset, Size: Same as the Edit Collider Button.
    • EventOW:
      • Script to Load: Name of the event script to load when triggering this event. The event must be in the directory MAPMOD/Lua/Events/.
      • Actual Page: The first page of the event (and in-game, the current page of the event).
      • Event Triggers: This part MUST NOT be forgotten. It is the most important part of the event.

        In your event's Lua code, you will need to create EventPage0, followed by one function for each event page you want, following the pattern "EventPage" + Page number, starting at 0.

        For instance: EventPage0, followed by EventPage1, EventPage2 ...until you have all the functions you want.

        EventPage0 is a special event that is always automatically called as soon as the map loads.
        So any custom events that you want to use the Event Trigger system below should be in EventPage1 and after.


        Back in Unity, for each X value in the Event Trigger table, you need to give the Page number, and for each matching Y value, you'll need to input the trigger type of the event:

        • 0: Confirm Button. Activates when the player presses Z on this event.

        • 1: Touch. Activates when the player collides with this event's hitbox.

          NOTE: In order to have a Touch event, you must check Is Trigger in the event's BoxCollider component, and also use Event.IgnoreCollision in EventPage0. See The Event Object.

        • 2: Automatic. Activates instantly, as soon as the map loads.

        • 3: Parallel Process. Also called a coroutine. Activates on every frame, identical to Update in Mods.

      • Move Speed: The speed of the event in px/frame, if you want to move the event.
    • AutoloadResourcesFromRegistry:
        Used to select a "default" sprite for this Event. Think of it the same as how a sprite path is necessary to use CreateSprite.
      • Sprite Path: Path of the sprite from MAPMOD/Sprites.


    Now you'll need to create your event's script. It needs to be located at MAPMOD/Lua/Events.


    If you want to permanently disable an event in-game, set its event page to -1. It'll be automatically deleted when you enter the map.


    All other values must not be changed, unless you know what you're doing
    (except for some self-explanatory values like SpriteRenderer's FlipX/ FlipY)


    If you had any problems with this tutorial, please tell me what went wrong.
    If you see any ways that this tutorial can be improved, please tell me that as well.
    You'll have more chances to contact me on Unitale's Discord server - the response will be way faster and it will be much smoother than using messages on reddit.
    Here is the link to the Discord server.


    I hope that you enjoyed the tutorial!

    * YOU WON!
    * You earned 0 EXP and 0 gold.
    * also the nav menu is broken now


    Undertale fake button
    Undertale fake button
    Undertale fake button
    Undertale fake button

    ================================================ FILE: Documentation CYF 1.0/pages/overworld-howto-map.html ================================================ CYF Documentation - How to create a map in Unity with Tiled2Unity Undertale background

    The Overworld: How to create a map in Unity with Tiled2Unity



    Creating a map for CYF is not that difficult. All that you need to do is follow the rules. There are a lot of them, but as long as you stick to them, you'll be fine.

    The very first step is to create the map in Tiled, and save it.
    Tip: Undertale's tiles are 20x20 pixels, with a scale factor of 2: I suggest for you to make a tileset of 40x40px tiles so you will not have to worry about scaling.


    Tiled2Unity screenshot

  • Open Tiled2Unity.exe
  • File --> Choose your .tmx file
  • Export To --> PathToCYF\Assets\Tiled2Unity\Tiled2Unity.export.txt
  • Click the Big Ass Export Button
  • Close Tiled2Unity and open Unity

  • Now that you're in Unity, you should create a scene, then delete the Main Camera object, save and then name the map (the name will be important!)
  • Open the scene Assets\Scenes\test4.unity, copy all its contents and paste them into your newly created scene.
  • In the Project tab, go to Assets\Tiled2Unity\Prefabs and you should see your map. Drag and drop it over the scene. (Put it in the root, not in a directory)
  • Go to Assets\Resources\Prefabs and include Main Camera OW like you did in the previous line. Now you should be able to see something in the Game tab!

  • Remove the map in Background, disable the objects Foreground and Bottom by clicking on each object, going to the Inspector and unchecking the box right next to the object's name.
  • Move your map so that the bottom-left corners of the map and the camera are at the same coordinates.
  • Delete everything that is in the GameObject Background, except for the TPs. You'll see that your map object is composed of every layer that you've added in your map.
  • Now, inside of Background, you'll have to insert the main object component of your map and its colliders (in your object layers).
    If Unity asks you if you want to break the prefab, say "Yes".
  • If there are other layers, just put them in the root.
  • Delete the object which contained all the map elements.

  • Adjust so that Background's RectTransform fits in the map. It's very important, as the RectTransform bounds are used for map scrolling.
    Tips:
    • Put all of Background's children in the root or as the children of another object, so that their position isn't changed while the background moves.
    • Then, Background's RectTransform size will be equal to (the bounds of the map / 100) - so, if your map is 640x480, the size will be 6.4 by 4.8.
    • Now, center the main map object to make it fit inside of Background's RectTransform.
    • Don't forget that Background's RectTransform's bottom-left corner must be at the same coordinates as the Main Camera OW's RectTransform's bottom-left corner!
    • Now, when everything is all done, put Background's old children back to their original places as Background's children.

  • NOTE: The absolute minimum size for a map for the camera to function properly is 640x480.


  • For each map component, go to the component Sorting Layer Exposed and set the value Order in Layer to 0.
  • For each map component, you'll need to set the Z value of the map. The Z value works like this: the greater it is, the further into the background a component will be.
    Set Background's Z value to 140, then play around this value to set the Z value of other background layers (between 139 and 141; you can use decimal numbers, of course).
    For foreground layers' Z values, you should use values between -1.5 and -0.5.
    Warning: The maps' Z value must be set to 0 after setting the layers' Z values!

  • Edit, add and/or remove the TP objects. You'll have to set some values for the TP: see the component TP Handler.
    • Scene Name = Name of the destination scene of the TP.
    • Position = Position of the player in the destination map, from the bottom-left corner of the map.
    • Direction = Direction the player will be facing after the TP. 2 = Down, 4 = Left, 6 = Right, 8 = Up.
      (I used the NumPad for this, yeah ^^)
    • Activated = Boolean used when the TP is activated. Don't activate it manually!

  • Change the layer of all of the colliders. Give them the layer BlockingLayer.
    Tip: Select the first one, then shift-click on the last one. Then, you can change the layer of all objects simultaneously!
  • Finally, modify the data in the object Background, in the Map Info Component.
    • Music = Name of the BGM played on the map. The BGM must be in the Audio folder of the mod or the Default folder.
    • Mod To Load = Name of the mod loaded by the map.
    • Is Music Kept Between Battles = Makes the Overworld music keep playing during battles (like the CORE in Undertale). If unsure, leave unchecked.
    • No Random Encounter = Check to disable random encounters on your map. If left unchecked, random encounters will occur, by randomly choosing an encounter .lua file from the mod set in Mod To Load. Will exclude any encounters whose names start with #.
  • When everything is ready, remove the Main Camera OW object and save the map.

  • Now, it's time to test it!



    Your map is now ready! But it isn't playable yet...Before testing it, we'll need to add it to the Build.

    When you're on your newly created map, open File --> Build Settings...
    Click on the button Add Open Scenes while you're on your map. It should now be in the list of Scenes in the Build. It'll be built with the project and it can now be used!


  • Open the scene Assets\Scenes\TransitionOverworld.unity and search for the GameObject Main Camera OW.
  • Go to the component Transition Overworld and change the values.
    • First Level To Load: Name of the first scene to load.
    • Beginning Position = Position of the player in the first map, from the bottom-left corner of the map.
  • Load the scene Disclaimer.unity and launch the game.
    Start a new game if you've already saved.

    You should now be in your map!

  • Run some tests on the map if there are problems.
    If there are no problems, you can now move on to adding events!


    If you had any problems with this tutorial, please tell me what went wrong.
    If you see any ways that this tutorial can be improved, please tell me that as well.
    You'll have more chances to contact me on Unitale's Discord server - the response will be way faster and it will be much smoother than using messages on reddit.
    Here is the link to the Discord server.


    I hope that you enjoyed the tutorial! If you're ready to add an event, go to the next tutorial!

    * YOU WON!
    * You earned 0 EXP and 0 gold.
    * also the nav menu is broken now


    Undertale fake button
    Undertale fake button
    Undertale fake button
    Undertale fake button

    ================================================ FILE: Documentation CYF 1.0/pages/overworld-howto-shop.html ================================================ CYF Documentation - How to create a shop Undertale background

    The Overworld: How to create a shop



    You may know what a shop is in Undertale. Well, here you'll learn how to make one in Create Your Frisk!

    Shop scripts contain some of the same functions and objects that are in all scripts, such as the Audio object, the NewAudio object, the Inventory object, the Input object, the Misc object, and the Time object, as well as RealGlobals and AlMightyGlobals.
    The variables isCYF, safe, windows and CYFversion are also accessible (see Overworld - Basics).

    Finally, the functions CreateSprite, CreateLayer and CreateText are all accessible (see Overworld - Basics for differences in functionality), as well as the Game Event OnTextAdvance.

    CAUTION! You will need to code in C# for some aspects of this feature!

    In the future, Items will be defined in a Lua file, along with the rest of the Overworld. Until then, if you wish to use this feature in your CYF fangame, you will need to read Overworld - Basics to learn how to open this project in Unity, edit its source code, and build it.


    Shop scripts have their own State system. You can't directly access them, but here is a list of the shop's states:

    • MENU - The main menu of the Shop script.
    • BUY - The Buy menu of the Shop script.
    • BUYCONFIRM - State for confirming a purchase when buying an item.
    • SELL -The Sell menu of the Shop script.
    • SELLCONFIRM - State for confirming a sale when selling an item.
    • TALK - The Talk menu of the Shop script.
    • TALKINPROGRESS - Entered when a Talk option is chosen and its assigned text is displayed.
    • EXIT - Entered while showing the exit text of the shop, just before leaving.
    • INTERRUPT - Entered when interrupting the action of any other state. See the function Interrupt() for more details.

    If you don't know what to do or where to start, I suggest you look at the file Examples 2/Lua/Shops/Dummy.lua to visualize how it's done.

    Other than that, other functions and variables are available, to personalize your shop. The following is a detailed list of those.


    Setting up your shop for use in the overworld

    CYF's shops are different from what you've seen so far.
    Your shop scripts are to be put in the directory YOURMOD/Lua/Shops/.

    A shop can be loaded with this function: General.EnterShop( scriptName) Enters a shop scene from the overworld.
    scriptName should be the name of your shop's lua file, without the extension.
    So, if you have want to load YOURMOD/Lua/Shops/shop.lua, you would use General.EnterShop("shop").


    Shop variables


    • sprite background - A sprite object used as the background of the shop. Optimally, this sprite should be 640x240 pixels.

    • returnscene - The name of the scene the Player will go back to when exiting the shop.

    • , returnpos - A table containing the position the Player will appear at in the map when leaving the shop.

    • returndir - Direction the Player will face when returned to the overworld.
      Possible values:
      • 2: Down
      • 4: Left
      • 6: Right
      • 8: Up

    • music - Name of the music file the shop will use. The music file must be .ogg or .wav and must be in YOURMOD/Audio.

    • , , buylist - A table defining which items the shop will have in store.
      This table is composed of 3 other tables:
      • The first table contains the names of the items to be sold.
        The items must be in the item database (CYF/Scripts/Inventory/Inventory.cs).

      • The second table contains the descriptions for each item.

      • The third table contains the prices of each item.
        Use -1 to use the price set in the database (CYF/Scripts/Inventory/Inventory.cs).
        Use 0 to make the item display as "--- SOLD OUT ---" like in Undertale. The player will not be able to buy it.

    • , or talklist - A table containing the list of all the talk options in the shop. This table is composed of 2 other tables:
      • The first table contains the name of each TALK option the Player can pick.
      • The second table contains the text associated with these TALK actions. These can each be a single string or a table of strings.

      Example setup:
      talklist = {
          { "Job", "Hobbies", "Threaten", "Sell?" },
          {
              { "Me?", "I'm just a shopkeeper." },
              "Just a shopkeeper.",
              { "Threats? I'm not impressed, I'm just a shopkeeper." },
              { "So you have items to sell?",
                "I guess some of them could be useful to me...",
                "Alright, I'll see what you have next time you want to sell something to me!" }
          }
      }
                              

    • maintalk - The text displayed in the main Shop menu.

    • buytalk - The text displayed when entering the Buy menu.

    • talktalk - The text displayed when entering the Talk menu.

    • exittalk - The text displayed when entering the Exit menu.

    • playerskipdocommand - False by default. If this value is set to true, text commands will be called even if the player skips the text - except for [w] and [letters] commands, and commands with the tag "skipover".


    Shop events


    These events work the same way as events work in-battle. See Game events.


    Start() This event is called when entering the shop.
    It is advised to set the background's image here.


    Update() Every well-functioning script needs an Update() function.
    This function is called once per frame.


    EnterMenu() Entered when entering the main Shop menu.


    EnterBuy() Entered when entering the Buy menu.


    SuccessBuy( itemName) Entered when an item is successfully purchased.
    itemName is the name of the item bought.


    FailBuy( error) Entered when the Player tries to buy an item, but can't.
    error has two possible values:

    • "gold" - If the Player doesn't have enough Gold.
    • "full" - If the Player's inventory is full.
    • "soldout" - If the shop is sold out of this item.
      See buylist for how to accomplish this.


    ReturnBuy() Entered when the player selects an item to buy, then chooses "No" or presses the Cancel button.


    EnterSell() Entered when entering the Sell menu.
    To prevent the player from selling, use the function Interrupt() here (see below).


    SuccessSell( itemName) Entered when an item is successfully sold.
    itemName is the name of the item sold.


    FailSell( error) Entered when failing to enter or use the Sell menu.
    error has two possible values:

    • "empty" - If the Player's inventory is empty.
    • "cantsell" - If the Player tries to sell an item, but it is unsellable.
      In order to accomplish this, set the item's sell price to 0 in the database (CYF/Scripts/Inventory/Inventory.cs).


    ReturnSell() Entered when the player selects an item to sell, then chooses "No" or presses the Cancel button.


    EnterTalk() Entered when entering the Talk menu.


    SuccessTalk( talkOption) Entered when a Talk option is successfully selected.
    talkOption is the name of the option selected.


    EnterExit() Entered when choosing the Exit option.


    Interrupt( text, newState = "MENU") Interrupts any current state (except the INTERRUPT state) to display the message given in text.
    At the end of the message, the state newState will be entered.

    I advise for you to not use this to enter the states BUYCONFIRM, SELLCONFIRM or TALKINPROGRESS.


    OnInterrupt( newState) This function is called when entering the Interrupt state.
    newState is the name of the state the Player will enter when the Interrupt state finishes its text.


    Additional info


    The layers in the Shop scene aren't the same as everywhere else.
    This is the Shop script's layering system:

    • "Bottom": Under everything, even the background.

    • "BelowUI": Above the background.

    • "BelowPlayer": Above the background and the UI.

    • "Top": Above everything.

    * YOU WON!
    * You earned 0 EXP and 0 gold.
    * also the nav menu is broken now


    Undertale fake button
    Undertale fake button
    Undertale fake button
    Undertale fake button

    ================================================ FILE: Documentation CYF 1.0/pages/overworld-object-event.html ================================================ CYF Documentation - The Event Object Undertale background

    The Overworld: The Event Object



    NOTE: You can provide "Player" as the name argument for any of these functions to instead apply them to the actual Player.


    Event.Exists( name) returns Returns true if an event with this name exists, false otherwise.

    Note that this refers to the name given to the GameObject in the Unity scene, rather than the name of the script attached to it.


    Event.Teleport( name, dirX, dirY) Teleports the given event to a given point in space. The position (dirX and dirY) is computed based off of the bottom left corner of the map.


    Event.MoveToPoint( name, dirX, dirY, wallPass = false, waitEnd = true) Moves an event to a given point in space. The event's speed will be the speed variable of its EventOW component, so choose that wisely, or use Event.SetSpeed().
    Set wallPass to true to ignore any obstacles that the event may encounter while moving.

    By default, the script will pause until the event has stopped moving. Set waitEnd to false to bypass this and continue the script instead.

    By calling this function on an Event that is already moving, the event's current movement will be cancelled, and will start over moving towards the newly provided target destination. This also means you can provide the Event's current position when interrupting movement to force the Event to stop moving instantly.


    Event.isMoving( name) Returns true if an event is currently moving by means of Event.MoveToPoint, false otherwise.

    Note: this will also return true if being used with the Player, given the Player is walking around manually with the arrow keys or WASD.


    Event.SetAnimHeader( name, anim) If the event given has a CYFAnimator component, this will set its Special Header property to anim.

    Set anim to "" to reset to the default animation, StopDown.

    Read about how the Special Header works in How to animate an event.


    Event.GetAnimHeader( name) returns If the event given has a CYFAnimator component, this will return its Special Header value.


    Event.GetDirection( name) returns If the event has a CYFAnimator component, this returns the direction the event is facing.
    Possible values:

    • 2: Down
    • 4: Left
    • 6: Right
    • 8: Up


    Event.SetDirection( name, dir) If the event has a CYFAnimator component, this sets the direction the event is facing.
    Possible values:

    • 2: Down
    • 4: Left
    • 6: Right
    • 8: Up


    Event.Rotate( name, rotateX, rotateY, rotateZ, anim = true, waitEnd = true) This function rotates the event. The Z rotation is the rotation normally applied in battles, while the X and Y rotations are 3D rotations.
    Set anim to false to make the rotation instantaneous.

    By default, the script will pause until the event has stopped rotating. Set waitEnd to false to bypass this and continue the script instead.

    By calling this function on an Event that is already rotating, the event's current rotation will be cancelled, and will start over moving towards the newly provided target angles.


    Event.isRotating( name) Returns true if an event is currently being rotated by means of Event.Rotate, false otherwise.


    Event.Stop() If this function is called in a normal event, it stops the event instantly.
    If called in a coroutine event, this will call Event.StopCoroutine() instead.
    If you want to stop the coroutine instantly, just add return after this function.


    Event.StopCoroutine( eventName = "thisevent") Stops the coroutine of the given event.
    Use the string thisevent to stop the coroutine of the calling event.


    Event.Remove( name) Removes the given event from the scene.
    Then, it won't be accessible until the player re-enters the room!

    To permanently remove an event, set its page to -1.


    Event.SetPage( name, page) Sets the page of a given event.
    Set it to -1 to totally remove the event.


    Event.GetPage( name) returns Returns the current page of the given event.


    Event.GetSprite( name) returns sprite Returns the sprite object of the given event.


    Event.CenterOnCamera( name, speed = 5, straightLine = false, waitEnd = true) Centers the camera on the given event.
    The camera's speed will be speed pixels per second in each direction, unless you set straightLine to true.
    In that case, the camera will follow a line to the center of the event.

    By default, the script will halt execution until the camera has stopped moving.
    Set waitEnd to false to bypass this and continue the script instead.


    Event.GetName() returns Returns the name of the calling event.


    Event.GetPosition( name) returns , Returns a table of two values containing the position of the given event.


    Event.IgnoreCollision( name, ignore) Sets the collision mode of the event.
    If ignore is set to true, all other events may pass through it normally.

    Events activated when the player touches them (touch-enabled events, see How to create an event) need their collision to be ignored in order to function properly.


    Event.SetSpeed( name, speed) Sets the set movement speed of an event.


    Event.GetSpeed( name) returns Gets the set movement speed of an event.

    * YOU WON!
    * You earned 0 EXP and 0 gold.
    * also the nav menu is broken now


    Undertale fake button
    Undertale fake button
    Undertale fake button
    Undertale fake button

    ================================================ FILE: Documentation CYF 1.0/pages/overworld-object-general.html ================================================ CYF Documentation - The General Object Undertale background

    The Overworld: The General Object



    General.SetDialog( texts, formatted = true, mugshots = nil, forcePosition = nil) Displays text.

    • texts = The different lines of text displayed.

    • formatted = Adds asterisks to your text.
      (if true: \n for asterisks, \r for no asterisks)
      True by default.

    • mugshots = A sequence of mugshots (dialogue faces) to display - one per line of text.
      All images are loaded from YourMod/Sprites/Mugshots/!

      Each mugshot can either be:
      • A single string, for one face for the whole line of text (or null to hide the face for this line)
        Examples: "Punder/normal", "null"

      • Another table, containing multiple strings (representing what faces to animate between for this line) and, optionally, a number (the amount of time between faces - 0.2 by default)
        Examples: {"Booster/normalT", "Booster/normal"}, {"Asriel/happyT", "Asriel/happy", 0.3}

      See mugshot in Text Commands if you like, as it works the same way as this.

    • forcePosition = true to place the text box at the top of the screen, false to place it at the bottom of the screen, or nil to decide automatically.
      WARNING: If you want to use this argument, mugshots must not be nil!! Set it to {} instead.


    General.SetChoice( choices, question = null, forcePosition = nil) Displays a choice screen.

    The response will be returned to a variable named lastChoice as either 0 for the first option or 1 for the second option.
    For now, there are a lot of constraints, but I hope that I'll find a better way to do this easily.

    Each choice must have no more than 3 lines. If you want there to be a question (a prompt to appear above the options), it must be no more than one line long.

    * As with General.SetDialog, set forcePosition to true to place the text box at the top of the screen, false to place it at the bottom of the screen, or nil to decide automatically.
    WARNING: If you want to use this argument, question must not be nil!! Set it to "" instead.


    General.EndDialog() Forcefully closes the Overworld text box and continues the event that opened the textbox if applicable.
    Applies to General.SetDialog, General.SetChoice, and text sequences started from the pause menu, such as dropping an item or using the cell phone).

    Can only be run from a Parallel Process event page (also called a coroutine).

    If used with General.SetChoice, lastChoice will NOT be set, so be careful.

    If the Overworld text box is not open, does nothing.


    General.Wait( frames) Pauses code execution for a given amount of frames.


    General.WaitForInput() Waits for the player to press the Confirm input (Enter or Z) to continue.


    General.GameOver( deathText = nil, deathMusic = nil) Starts the Game Over cutscene, putting the player back at their save point afterwards.
    You can choose the text and the music if you want to. Otherwise, it'll play the normal music and show a default message.


    General.PlayBGM( bgm, volume) Plays music on the main music channel with a volume between 0 and 1.
    Watch out, NewAudio["src"] ISN'T the main music channel when music is kept between battles!


    General.StopBGM( fadeFrames = 0, waitEnd = false) Stops the music currently being played in the main music channel.
    If fadeFrames is greater than 0, the music will fade out over that many frames.
    If waitEnd is set to true, the script will wait until the BGM has stopped before continuing.


    General.PlaySound( sound, volume = 0.65) Plays a sound in a temporary sound channel with a volume between 0 and 1.


    General.Save( forced = false) Opens the Save UI that allows the player to save their progress.

    Note that the "save point name" (text displayed in the Save UI after saving, and on the Undertale continue/load game screen) uses a set string for the map you are in.
    You can change these values by changing the function AddKeysToMapCorrespondanceList in the file Assets/Scripts/Util/UnitaleUtil.cs.

    Set forced to true to instantly save the game without asking the player's permission.


    General.TitleScreen() Exits the current game and sends the player back to the title screen.


    General.SetBattle( encounterName = "", anim = "normal", ForceNoFlee = false) Initiates a battle with a chosen encounter (leave out the .lua in encounterName).
    Set encounterName to "" to choose a random encounter from the current map's set mod folder (except for ones that have # in their name - if you want to load an encounter with # at the beginning of its name, make SURE to include the # character as well).

    If you want the battle's intro to be quick like Undyne's battle, set anim to "fast".
    You can also set it to "instant" to enter the battle immediately on the next frame.

    Finally, ForceNoFlee removes the flee option from the encounter - unless your encounter sets flee to true.


    VERY IMPORTANT:

    Calling General.SetBattle will STOP the current Event sequence.
    This means that code you place AFTER General.SetBattle will NOT activate!


    However, all events' EventPage0() functions will automatically be called when the battle ends.
    Use this, and possibly Real Globals, to your advantage to detect when a battle ends.


    General.EnterShop( scriptName, instant = false) Enters a Shop scene, using the shop .lua script given in scriptName.
    The Shop script must be in YOURMOD/Lua/Shops/.
    Check the How to create a shop section for more informations.

    Set instant to true to instantly warp to the shop. Otherwise, a short fade animation will play.

    * NOTE: Just like with General.SetBattle, using this function will halt the rest of your event script.

    * YOU WON!
    * You earned 0 EXP and 0 gold.
    * also the nav menu is broken now


    Undertale fake button
    Undertale fake button
    Undertale fake button
    Undertale fake button

    ================================================ FILE: Documentation CYF 1.0/pages/overworld-object-inventory.html ================================================ CYF Documentation - The Inventory Object Undertale background

    The Overworld: The Inventory Object



    NOTE: This Inventory object is not the same as the one used in battle!
    This one is specific to the overworld!



    Inventory.SetWeapon( weapon) This function is an alias of Player.SetWeapon.
    Makes the player equip the given weapon, but only if it's in their inventory.


    Inventory.SetArmor( armor) This function is an alias of Player.SetArmor.
    Makes the player equip the given armor, but only if it's in their inventory.


    Inventory.AddItem( name) Adds the given item to the player's inventory.


    Inventory.RemoveItem( id) Removes the item number id from the inventory.


    Inventory.IsItemInTheInventory( name) returns If the inventory contains this item, this will be true. It will be false otherwise.


    Inventory.ItemExists( name) returns If this item exists in the engine's item list (if you created/defined it already), this will be true. It will be false otherwise.


    Inventory.GetItemID( name) returns Gets the id of the first item with the same name as name
    If the item couldn't be found, this returns -1 instead.


    Inventory.GetItemCount() returns Returns the number of items the player has in their inventory.


    Inventory.SpawnBoxMenu() This function opens Undertale's "box" menu (the chest that appears throughout the game with 10 slots).
    All items within this box are saved to CYF's save file upon using General.Save.

    * YOU WON!
    * You earned 0 EXP and 0 gold.
    * also the nav menu is broken now


    Undertale fake button
    Undertale fake button
    Undertale fake button
    Undertale fake button

    ================================================ FILE: Documentation CYF 1.0/pages/overworld-object-map.html ================================================ CYF Documentation - The Map Object Undertale background

    The Overworld: The Map Object


    Each map has its own settings, which are determined by the mod it loads, the music it plays, and a bunch of other stuff.
    Listed below are functions mainly used to access these variables.


    Map.GetName() returns Returns a string representing the name of the active scene. This is a valid name you may pass to the other functions here.


    Map.GetSaveName( mapName) returns Returns a string representing the text displayed in the save screen when the player has saved on the scene mapName.
    If there is no scene named mapName, or mapName does not have save point text set, this function will return nil.

    You can change these values by changing the function AddKeysToMapCorrespondanceList in the file Assets/Scripts/Util/UnitaleUtil.cs.


    Map.HasPlayerBeenInMap( mapName) returns Returns a boolean specifying whether the player has been in the map mapName before or not.
    If they have, the function will return true, false otherwise.


    Map.GetMusic() returns Returns the name of the music the map plays when loaded.


    Map.SetMusic(value) Sets the name of the music the map plays when loaded.


    Map.GetModToLoad() returns Returns the name of the mod the map uses.


    Map.SetModToLoad( value) Sets the name of the mod the map uses. The player needs to enter the map again for this new mod to be loaded.


    Map.GetNoRandomEncounter() returns Returns whether random encounters can occur on this map.

    IMPORTANT: Encounters with names starting with # will be ignored!!

    Add # to the names of Encounters you DON'T want to be chosen as random encounters.
    This way, you can have both random encounters AND a unique encounter in the same map.


    Map.SetNoRandomEncounter( value) Sets whether random encounters can occur on this map.


    Map.GetMusicKept() returns Returns whether music will persist between the Overworld and battles, like in The Core.


    Map.SetMusicKept( value) Sets whether music will persist between the Overworld and battles, like in The Core.
    The main Audio channel used for the map's bgm will be StaticKeptAudio if true, and src otherwise.


    Map.GetMusicMap( mapName) returns Returns the name of the music that the map mapName plays when loaded.
    If mapName is the current map's name, this will return Map.GetMusic() instead.

    NOTE: ONLY WORKS IF THE PLAYER HAS ENTERED THE MAP BEFORE!
    Use Map.HasPlayerBeenInMap() to check if they have.


    Map.SetMusicMap( mapName, value) Sets the name of the music that the map mapName plays when loaded.
    Works with maps the player hasn't been in yet.
    If mapName is the current map's name, this will call Map.SetMusic() instead.


    Map.GetModToLoadMap( mapName) returns Returns the name of the mod that the map mapName uses.
    If mapName is the current map's name, this will return Map.GetModToLoad() instead.

    NOTE: ONLY WORKS IF THE PLAYER HAS ENTERED THE MAP BEFORE!
    Use Map.HasPlayerBeenInMap() to check if they have.


    Map.SetModToLoadMap( mapName, value) Sets the name of the mod that the map mapName uses.
    Works with maps the player hasn't been in yet.
    If mapName is the current map's name, this will call Map.SetModToLoad() instead.


    Map.GetNoRandomEncounterMap( mapName) returns Returns whether random encounters can occur on the map mapName.
    If mapName is the current map's name, this will return Map.GetNoRandomEncounter() instead.

    NOTE: ONLY WORKS IF THE PLAYER HAS ENTERED THE MAP BEFORE!
    Use Map.HasPlayerBeenInMap() to check if they have.


    Map.SetNoRandomEncounterMap( mapName, value) Sets whether random encounters can occur on the map mapName.
    Works on maps the player hasn't been in yet.
    If mapName is the current map's name, this will call Map.SetNoRandomEncounter() instead.


    Map.GetMusicKeptMap( mapName) Returns whether music will persist between the Overworld and battles, like in The Core, for the map mapName.
    If mapName is the current map's name, this will return Map.GetMusicKept() instead.

    NOTE: ONLY WORKS IF THE PLAYER HAS ENTERED THE MAP BEFORE!
    Use Map.HasPlayerBeenInMap() to check if they have.


    Map.SetMusicKeptMap( mapName, value) Sets whether music will persist between the Overworld and battles, like in The Core, for the map mapName.
    Works on maps the player hasn't been in yet.
    If mapName is the current map's name, this will call Map.SetMusicKept() instead.

    * YOU WON!
    * You earned 0 EXP and 0 gold.
    * also the nav menu is broken now


    Undertale fake button
    Undertale fake button
    Undertale fake button
    Undertale fake button

    ================================================ FILE: Documentation CYF 1.0/pages/overworld-object-player.html ================================================ CYF Documentation - The Player Object Undertale background

    The Overworld: The Player Object



    NOTE: This Player object is not the same as the one used in battle!
    This one is specific to the overworld!



    Player.GetLevel() returns Returns the player's level (LV).


    Player.SetLevel( value) Sets the player's level (LV).


    Player.GetHP() returns Returns the player's HP.


    Player.SetHP( value) Sets the player's HP.


    Player.GetMaxHP() returns Returns the player's max HP.


    Player.SetMaxHP( value) Sets the player's max HP.


    Player.ResetMaxHP() Resets the player's max HP to the value it would have based on their level (LV).


    Player.GetName() returns Returns the player's name.


    Player.SetName( value) Sets the player's name.


    Player.GetWeaponATK() returns Returns the player's weapon's ATK.


    Player.GetArmorDEF() returns Returns the player's armor's DEF.


    Player.GetATK() returns Returns the player's total ATK.


    Player.GetDEF() returns Returns the player's total DEF.


    Player.GetGold() returns Returns the player's amount of gold.


    Player.SetGold( value) Sets the player's amount of gold.


    Player.GetWeapon() returns Returns the name of the player's weapon.


    Player.SetWeapon( value) Makes the player equip the weapon given in value, but only if a weapon with that name is in their inventory.


    Player.GetArmor() returns Returns the player's armor's name.


    Player.SetArmor( value) Makes the player equip the armor given in value, but only if any armor with that name is in their inventory.


    Player.GetEXP() returns Returns the player's EXP (XP).


    Player.SetEXP( value) Sets the player's EXP (XP) to value.


    Player.ForceHP( value) Sets the player's hp.
    You can set it up to 1.5 times the player's max HP.


    Player.Hurt( value) Removes value HP from the player's current HP. The Player can't be killed by use of this function.


    Player.Heal( value) Adds value HP to the player's current HP, but can not exceed the player's maximum HP.


    Player.CanMove( canMove) This function determines whether the player can move or not.
    However, if canMove is set to true and the function is called while a main event is running, then you can't trigger any other main events, teleport to other maps or open the menu until the main event is stopped.


    Player.Teleport( mapName, posX, posY, direction = 0, noFadeIn = false, noFadeOut = false) Teleports the player to the map named mapName.
    You can set the player's direction using direction.
    noFadeIn and noFadeOut determine whether there will be fades before and after the teleport, respectively.

    * YOU WON!
    * You earned 0 EXP and 0 gold.
    * also the nav menu is broken now


    Undertale fake button
    Undertale fake button
    Undertale fake button
    Undertale fake button

    ================================================ FILE: Documentation CYF 1.0/pages/overworld-object-screen.html ================================================ CYF Documentation - The Screen Object Undertale background

    The Overworld: The Screen Object



    Screen.DispImg( path, id, posX, posY, toneR = 255, toneG = 255, toneB = 255, toneA = 255) This function displays an image on a given point on the map. This image will take the form of an event, and this event will be named "Image" + id.
    Also, you'll have to give the position of your image using posX and posY.
    You can add a color to the image with the 4 last values, if you want to. If you do, these values must be between 0 and 255.


    Screen.SupprImg( id) Deletes an image previously created with a Screen.DispImg() function.
    In application, it's basically the same as Event.Remove("Image" .. id).


    Screen.SetTone( anim, waitEnd, r = 255, g = 255, b = 255, a = 128) Creates a solid color image over the whole screen with a given color (for instance, you can use this for a sepia tone).
    Set anim to true to gradually transition to the tone.
    If anim is set to true, you can also set waitEnd to true to make the event's code pause until the transition is done. For the other values, they must be between 0 and 255.

    128 is the recommended value for a.
    The a value can go up to 255, which means fully opaque, but at that point the screen will be fully obscured.


    * NOTE: To undo the efffects of this function, call SetTone again but with the argument a as 0.
    You can remove it instantly as well if you set anim to false!


    Screen.Flash( frames, colorR = 255, colorG = 255, colorB = 255, colorA = 255, waitEnd = true) Flashes the screen for a given number of frames. A flash is an image that is displayed on top of the entire screen and fades afterwards.
    Change the color of the flash by changing the values of the 4 other variables. Each one must be between 0 and 255.

    By default, the script will halt execution until the flash has stopped. Set waitEnd to false to bypass this and continue the script instead.


    Screen.CenterEventOnCamera( name, speed = 5, straightLine = false, waitEnd = true) This function is an alias of Event.CenterOnScreen().

    Centers the camera on the given event.
    The camera will move at speed pixels per second in each direction, unless you set straightLine to true. In that case, the camera will follow a line to the center of the event.

    By default, the script will halt execution until the camera has stopped moving. Set waitEnd to false to bypass this and continue the script instead.


    Screen.MoveCamera( pixX, pixY, speed = 5, straightLine = false, waitEnd = true) Moves the camera to a given position from the bottom left center of the screen.
    The camera's speed will be speed pixels per second in each direction, unless you set straightLine to true. In that case, the camera will follow a line to reach the destination you entered.

    By default, the script will halt execution until the camera has stopped moving. Set waitEnd to false to bypass this and continue the script instead.


    Screen.ResetCameraPosition( speed = 5, straightLine = false, waitEnd = true) Centers the camera on the player.
    The camera's speed will be speed pixels per second in each direction, unless you set straightLine to true. In that case, the camera will follow a line to the player's center.

    By default, the script will halt execution until the camera has stopped moving. Set waitEnd to false to bypass this and continue the script instead.

    * YOU WON!
    * You earned 0 EXP and 0 gold.
    * also the nav menu is broken now


    Undertale fake button
    Undertale fake button
    Undertale fake button
    Undertale fake button

    ================================================ FILE: Documentation CYF 1.0/pages/overworld.html ================================================ CYF Documentation - RhenaudTheLukark's Overworld Basics Undertale background

    Create Your Frisk: RhenaudTheLukark's Overworld basics



    Presentation

    Create Your Frisk is different from Unitale because of its numerous new features...but the overworld is the key feature that everyone was waiting to use for a long time.

    So I'm finally able and proud to give access to the overworld feature, which includes an efficient event handler with a lot of functions that you'll be able to use to create your own Undertale-like fangame!

    However, to be able to use the overworld part of CYF, you will need to have at least some experience with Unity and you'll need to know at least some of the Game Objects' mechanics.


    Get Started

    To get started, you'll need to, first of all, download the current version of Unity that CYF uses, and, of course, download the project via Github.

    The full instructions for setting up Unity for Create Your Frisk are in Unity Setup (Optional). Please read and follow them before you continue.

    Once you've completed the setup mentioned above, you're ready!! You can launch CYF and you'll be ready to start fiddling with the engine! If you followed these instructions and for some reason CYF won't launch, you may want to contact me directly via Discord or Reddit. In this case, please get TeamViewer, a software that allows you to share your screen with other users. With this, I'll be able to see what's wrong and help you.


    How does it work?

    Some software will have to be used to create an overworld in CYF. First of all, you can use a software called Tiled that allows you to create maps out of tilesets - images that contain tiles used to fill in maps. This tiling system is absent from Unity, though - but it's easier to use to create a map, so being able to translate a Tiled map to a Unity scene thanks to Tiled2Unity would be a great idea.

    Well, now we're going to go deep into the details. If you still haven't learned Unity's basics, you should research those beforehand, as some technical language may be used here.

    There are mostly two things to look at when making a map: the map itself (how the map will be made) and the events (how the map will work). Let's delve into the more complex stuff now.

    As I said above, each map is converted into a scene with Tiled2Unity. This scene will have to contain at least one element, which is the map object called Background. To see more about how to create a map, I suggest for you to look at the tutorial on How to create a map.

    Now, the events. These are universal and used the same way, with the exception of one "add-on" that is a CYFAnimator component. The events have different function-calling conditions, such as pressing the confirm button to call it, colliding with it, it being called automatically, or the function being called as a parallel process. The functions themselves have to be created in Lua scripts, like battles. To see more about how to use the events, you should check out How to create an event.

    Of course, there are other things to see, but these are the two main parts of CYF's overworld coding. Now, let's look at the functions that will let you do whatever you want to with the overworld!


    The event code

    For a long time, events' code was accessible and could only be modified by going into YOURMOD/Lua/Events/. Maybe you already fiddled with them, maybe not. Now that the system is stable and easier to use, event programming may be as easy as creating a battle: all that you have to do is to follow the documentation and know what you're doing.


    The overworld has a debugger like battles' (and it's used the same way): DEBUG( value) Prints one string value to the Overworld debugger.

    EnableDebugger( bool) [E/M/W] Forcefully disables or re-enables the debugger. See this function in Misc. Functions for more information and specifics.


    The Audio, NewAudio, Inventory, Input, Misc and Time objects from battles are usable in the overworld too, as well as RealGlobals and AlMightyGlobals.


    CreateSprite and CreateText all work exactly the same, except that the default value for the "layer" argument is "Default" instead of "BelowArena" or "BelowPlayer".
    CreateLayer also works exactly the same as before.

    Along with text objects being accessible, their Game Event OnTextAdvance is usable here too. When a text object advances in the Overworld, it will call this function in the event script that created it.



    Finally, these variables are also accessible:

    isCYF A value that indicates if you are using CYF. Because the Overworld is a feature exclusive to CYF, this will always be true. safe Indicates whether CYF's "safe mode" has been enabled from the modDev screen. windows This value indicates whether the user is playing on Windows.
    CYFversion [E/M/W] Returns a different string based on the version of CYF you are using.

    • Versions before v0.6: Previous version's number.
      For example, in CYF v0.5.5, this will be "0.5.4".

    • Versions between v0.6 and v0.6.1.2: always "1.0".

    • Versions after v0.6.1.2: Current version's number.
      For example, in CYF v0.6.2, this will be "0.6.2".

    TIP: Lua has a very useful built-in string comparing function.

    You can very easily check for if CYFversion < "0.6.2.2" then, if CYFversion >= "0.6.1.2" then and other combinations. playerskipdocommand False by default. If this value is set to true, text commands will be called even if the player skips the text - except for [w] and [letters] commands, and commands with the tag "skipover".

    * YOU WON!
    * You earned 0 EXP and 0 gold.
    * also the nav menu is broken now


    Undertale fake button
    Undertale fake button
    Undertale fake button
    Undertale fake button

    ================================================ FILE: Documentation CYF 1.0/pages/shaders-coding.html ================================================ CYF Documentation - Coding a Shader Undertale background

    Coding a Shader

    The purpose of this page is to go over everything necessary to know about actually coding the .shader files that can be made into shader AssetBundles for Create Your Frisk v0.6.5 and higher. You will need to code at least a little in Unity ShaderLabs, so some helpful links are provided right at the top for you to look at.

    Please read Shaders - Introduction before continuing.


    Getting Started with Shaders

    The first thing you should know about shaders is that most of the process is not related to Create Your Frisk. It almost solely depends on your own ability to code in Unity's ShaderLabs format. There are some sample shaders provided that you may look at for reference (see Shaders - Introduction), but ultimately the deciding factor is your own skill and knowledge.
    The helpful links below definitely will come in handy, especially as reference material - but it is not guaranteed you will be able to code your own shader as easily as you can code in CYF.

    The Basics

    Bit more advanced (but still recommended) Other Links


    Properties of CYF Shaders

    Name

    The shader's name is defined at the very top of the script. You will see something like this:

    Shader "CYF/ScreenTest"
    {
    The name is what is between quotation marks here. This is also the same name you will provide if you are using shader.Test within the editor. This name must be unique if you want to use shader.Test with no issues. For that reason, it is good practice to start your shader's name with CYF/, or some other identifier.


    Keywords

    Because of Create Your Frisk's Unity version (2018.4), the concept of global and local keywords does not exist, as they were only added in a future Unity version. Make sure you read this page, which applies to our version of Unity.
    Keywords can be enabled and disabled from the Lua side using shader.EnableKeyword and shader.DisableKeyword. The proper syntax for defining a shader from the shader script side is:

    #pragma compile_mode KEYWORD_DISABLED KEYWORD_ENABLED

    but this would require you to type shader.EnableKeyword("KEYWORD_ENABLED") and shader.DisableKeyword("KEYWORD_DISABLED"). To remove the confusion, try something like this:

    #pragma multi_compile __ NO_WRAP

    which would use shader.EnableKeyword("NO_WRAP") and shader.DisableKeyword("NO_WRAP").

    You may also check out the source code for the sample shaders included with CYF if you would like more examples.


    Check if shader is on the camera or a sprite

    Shaders can be applied to both the screen camera (using Misc.ScreenShader) and sprite objects (using sprite.shader). It is not unusual to want your shader to function differently depending on which one of these it is applied to.

    The keyword CYF_SHADER_IS_CAMERA is automatically applied whenever a shader object is applied to the camera rather than a script. You may check for this within your shader script like so:

    #ifdef CYF_SHADER_IS_CAMERA
    to run code specifically if it is on the camera.

    Note that you do not have to define it using #pragma first.


    Sprite Masking

    Sprite masking is the CYF feature controlled by sprite.Mask. The default mode is "off", but depending on its other 5 values, it behaves differently. Here is how to make your shader compatible with sprite masking.

    First thing to note: When in "box" mode, the keyword UNITY_UI_CLIP_RECT will be enabled - it is disabled otherwise.
    And when in the "sprite", "stencil", "invertedsprite" or "invertedstencil" modes, the keyword UNITY_UI_ALPHACLIP will be enabled.
    Within the shader template, both of these keywords are defined through #pragma, and have their own code in the fragment shader at the bottom of the script.
    Finally, all of the code related to "stencils" and the "color mask" variable are also needed for sprite masking compatibility (the properties are defined at about two places each).

    By including all of this code in your shader, you will maintain compatibility with CYF sprite shaders.

    Additionally - When in the mask modes "invertedsprite" and "invertedstencil", the keyword CYF_INVERTED_MASK will be enabled on children of the inverted parent. In these modes, the child's stencil properties are exactly the same as they would be in "sprite" and "stencil", except that the stencil comparison (_StencilComp) is set to 6 (not equal).


    Little Warning on the Properties Block

    This is something standard to Unity shaders, but it still very much warrants a mention here. See the "Properties" block at the top of the example shaders? One might assume it's useless, because it defines properties for the shader to be edited in the Unity editor. But it actually serves another purpose: It's a list of "important" variables to store in the shader. In other words, every property you want to persist in the shader should be set here. Any variables that are not set up here are likely to be lost when the window refreshes!

    In addition, here is something else to consider. There are a certain list of shader object properties - listed under "non-persistent data" on The Shader Object page - that actually can not be defined in the shader's Properties block. All examples in the Unity documentation that use them show them being applied on every frame, i.e. in Update. So, if you use any of the properties

    • shader.SetColorArray
    • shader.SetFloatArray
    • shader.SetVectorArray
    • shader.SetMatrix
    • shader.SetMatrixArray
    ...be sure you are applying them every frame within Update on the Lua side, or their values may be lost suddenly!


    Recommended Enhancements

    Pixel Snap

    Create Your Frisk is designed with the intent to output its screen image in a pixelated format, obviously comparable to Undertale itself. However, shaders are not guaranteed to be precise, and can often result in non-integer coordinates of pixels. As a result, you may see "blurriness" output to the screen with some shaders, and you may wish to avoid that.

    Assuming that the float2 offset is your coordinates AFTER modification, and that you have added a _MainTex_TexelSize property alongside your _MainTex property, simply use

    offset.x = (floor(offset.x * _MainTex_TexelSize.z) + 0.5) / _MainTex_TexelSize.z;
    offset.y = (floor(offset.y * _MainTex_TexelSize.w) + 0.5) / _MainTex_TexelSize.w;
    
    to snap the coordinates to pixels, to avoid the texture being smoothed out.


    Controlling Texture Wrapping

    Let's say you have a fragment shader that is changing UVs (moving pixels on screen). Something like the "Wave" sample shader, for instance. Whenever you move the whole source texture out of its normal boundaries, a void is left. Depending on the value of shader.SetWrapMode, it will look different - most commonly "stretching" the last pixel of the texture very long.

    But what if you don't want that? Well, you can put some code in your fragment shader to force pixels to not be drawn if they are outside of the original texture that you moved.

    The float2 offset here represents the coordinates of a pixel AFTER modification in your fragment shader IN.uv (compare to IN.uv in the template shader below):

    (offset.x < 0 || offset.x > 1) || (offset.y < 0 || offset.y > 1) ? 0 : col.a;
    You can find examples in the sample shaders "Displacement", "Rotation", "ScreenScale", or "Wave". As a side note, in the "Wave" shader, pixels are only ever moved horizontally and not vertically, so the check for y is omitted there.


    Template Shader

    Here is a template shader for you to edit to make your own. It provides compatibility with sprite masking (see above), but does not necessarily make use of anything special, it being a template to build off of. It is based on the Unity default shader, UI/Default.

    // Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt)
    
    Shader "CYF/Template"
    {
        Properties
        {
            _MainTex("Sprite Texture", 2D) = "white" {}
    
            _StencilComp("Stencil Comparison", Float) = 8
            _Stencil("Stencil ID", Float) = 0
            _StencilOp("Stencil Operation", Float) = 0
            _StencilWriteMask("Stencil Write Mask", Float) = 255
            _StencilReadMask("Stencil Read Mask", Float) = 255
    
            _ColorMask("Color Mask", Float) = 15
    
            [Toggle(UNITY_UI_ALPHACLIP)] _UseUIAlphaClip("Use Alpha Clip", Float) = 0
        }
    
        SubShader
        {
            Tags
            {
                "Queue" = "Transparent"
                "IgnoreProjector" = "True"
                "RenderType" = "Transparent"
                "PreviewType" = "Plane"
                "CanUseSpriteAtlas" = "True"
            }
    
            Stencil
            {
                Ref[_Stencil]
                Comp[_StencilComp]
                Pass[_StencilOp]
                ReadMask[_StencilReadMask]
                WriteMask[_StencilWriteMask]
            }
    
            Cull Off
            Lighting Off
            ZWrite Off
            ZTest[unity_GUIZTestMode]
            Blend SrcAlpha OneMinusSrcAlpha
            ColorMask[_ColorMask]
    
            Pass
            {
                Name "Default"
            CGPROGRAM
                #pragma vertex vert
                #pragma fragment frag
                #pragma target 2.0
    
                #include "UnityCG.cginc"
                #include "UnityUI.cginc"
    
                #pragma multi_compile __ UNITY_UI_CLIP_RECT
                #pragma multi_compile __ UNITY_UI_ALPHACLIP
    
                struct appdata_t
                {
                    float4 vertex   : POSITION;
                    float4 color    : COLOR;
                    float2 texcoord : TEXCOORD0;
                    UNITY_VERTEX_INPUT_INSTANCE_ID
                };
    
                struct v2f
                {
                    float4 vertex   : SV_POSITION;
                    fixed4 color    : COLOR;
                    float2 uv : TEXCOORD0;
                    float4 worldPosition : TEXCOORD1;
                    UNITY_VERTEX_OUTPUT_STEREO
                };
    
                sampler2D _MainTex;
                fixed4 _TextureSampleAdd;
                float4 _ClipRect;
                float4 _MainTex_ST;
    
                v2f vert(appdata_t v)
                {
                    v2f OUT;
                    UNITY_SETUP_INSTANCE_ID(v);
                    UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(OUT);
                    OUT.worldPosition = v.vertex;
                    OUT.vertex = UnityObjectToClipPos(OUT.worldPosition);
    
                    OUT.uv = TRANSFORM_TEX(v.texcoord, _MainTex);
    
                    OUT.color = v.color;
                    return OUT;
                }
    
                fixed4 frag(v2f IN) : SV_Target
                {
                    half4 color = (tex2D(_MainTex, IN.uv) + _TextureSampleAdd) * IN.color;
    
                    #ifdef UNITY_UI_CLIP_RECT
                    color.a *= UnityGet2DClipping(IN.worldPosition.xy, _ClipRect);
                    #endif
    
                    #ifdef UNITY_UI_ALPHACLIP
                    clip(color.a - 0.001);
                    #endif
    
                    return color;
                }
            ENDCG
            }
        }
    }

    * YOU WON!
    * You earned 0 EXP and 0 gold.
    * also the nav menu is broken now


    Undertale fake button
    Undertale fake button
    Undertale fake button
    Undertale fake button

    ================================================ FILE: Documentation CYF 1.0/pages/shaders-object.html ================================================ CYF Documentation - The Shader Object Undertale background

    The Shader Object [E/M/W]

    The shader object is a Lua side object that can force a sprite object to display using a certain shader, and manipulate said shader.


    A new shader object is created whenever a sprite object is created - this also includes bullets.
    In addition, there is a shader object created for the camera itself, to apply a shader to the whole screen!

    You can access the shader objects by using shader sprite.shader and shader Misc.ScreenShader


    Main functions and variables


    shader.Set( bundleName, shaderName) Loads shaderName from the AssetBundle named bundleName in the Shaders folder.
    The bundle is either CYF's default shaders bundle, a bundle you got from someone or somewhere else, or a bundle you built using Unity.
    To clarify, shaderName is the name of the .shader file within the bundle, not the name defined within the shader itself. No extension should be provided.

    NOTE: If the shader is unsupported on the user's graphics card (or the shader compiled with an error), you will see an error message when loading your shader in game.
    It is your responsibility as a modder to account for this. You should use the Lua function pcall to safely load your shader:

    -- Load "shaderName.shader" from the bundle "bundleName"
    pcall(sprite.shader.Set, "bundleName", "shaderName")
    
    if sprite.shader.isActive == true then
        -- Shader was successfully loaded
    end
    
    Alternatively:
    -- Load "shaderName.shader" from the bundle "bundleName"
    if pcall(sprite.shader.Set, "bundleName", "shaderName") then
        -- Shader was successfully loaded
    else
        -- Shader was NOT successfully loaded
    end
    
    If the shader failed to load using this method, your sprite will still be using the default shader, as if you called shader.Revert().

    See Shaders - Introduction for setup instructions.


    shader.Test( shaderName) Unity Editor only.

    Loads the shader with the name shaderName and applies it to the sprite or screen.
    Highly recommended to use while testing shaders before packaging them into AssetBundles.

    This function will work the same as shader.Set otherwise, including the potential use of pcall if you see fit. Just remember to replace this function with shader.Set when you're done creating your mod.

    You don't need to involve yourself with AssetBundles or directories this time - the name you enter here is just the name of a shader, as defined in its first line, such as Shader "UI/Default" becoming "UI/Default" for the argument shaderName.


    shader.Revert() Reverts the sprite's shader to what it was originally. If no shader has been applied yet, this function simply does nothing.


    shader.isactive (readonly) Returns true if a shader was successfully loaded through shader.Set or shader.Test, and false if no shader has been applied yet, or the shader was reverted using shader.Revert.


    shader.SetWrapMode( wrapMode, sides = 0) Sets the wrap mode of this sprite's texture, or the screen. Only usable if a shader has been applied.

    This affects what happens when a shader manipulates the position of pixels, such as with "wavey" effects. It has to do with what should be drawn in the holes outside the boundaries of the original image.

    wrapMode can be:

    • "clamp": The default wrap mode. When a shader manipulates the positions of pixels, the texture will be clamped to the last row or column of pixels of the source image.

    • "repeat": The source image is tiled infinitely.

    • "mirror": Similar to "repeat", except all the repeated images will alternatingly be flipped horizontally/vertically.

    • "mirroronce": Similar to "mirror", except only one mirror image gets created, and then the behavior of "clamp" is followed for all other areas.

    sides can be:
    • 0: The new wrap mode is applied to both the horizontal and vertical edges of the image.

    • 1: The new wrap mode is applied to the horizontal edges of the image.

    • 2: The new wrap mode is applied to the vertical edges of the image.

    You can have a different wrap mode for both the vertical and horizontal edges of the image this way.

    NOTE: You may find all three wrap modes, especially the default "clamp" mode unappealing, and wish for something else. This is indeed possible, but it is handled on the shader side. Some of the example shaders in Shaders - Introduction use keywords to show transparency instead of clamping the texture to the last pixels.

    See the paragraph on texture wrapping in Coding a Shader for more information.


    Shader property functions and variables

    These all have to do with getting and setting properties within the shader file. It's pretty much based on your knowledge of ShaderLab. See Coding a Shader for some helpful links and information on writing shaders.

    For all "Set" functions listed below, if a variable with the given name does not exist on the shader side, it will be created with the value you gave.


    shader.HasProperty( name) Returns true if the active shader has a property with the name name, false otherwise.
    Properties must be defined within the shader's Properties block to be persistent.

    For all "Get" functions listed below, the function will either return the data it found, or throw an error if the property does not exist on the shader side. Check if the property exists first using this funciton.

    NOTE: The non-persistent data types (see the section below) can not be defined in the Properties block at the top of a shader file. They can be defined in the shader's CPROGRAM code, but their data is likely to be lost whenever the window refreshes. Before that happens, HasProperty will return true, and after that happens, HasProperty will return false.


    shader.EnableKeyword( name) shader.DisableKeyword( name) Enables or disables a keyword named name within the shader script.

    See the "keywords" section in Coding a Shader for more information.


    , , , shader.GetColor( name) shader.SetColor( name, , , , = 1 color) Gets or sets a color in the active shader, in the property named name.

    Here, a color is a table of either 3 or 4 number values, each from 0.0 to 1.0, following the RGBA format. If no fourth argument is provided, 1.0 is given as the fourth argument instead.


    shader.GetFloat( name) shader.SetFloat( name, float) Gets or sets a float in the active shader, in the property named name.


    shader.GetInt( name) shader.SetInt( name, int) Gets or sets an integer (a "whole number", i.e. no decimal point) in the active shader, in the property named name.

    shader.SetTexture( name, texture) Sets a texture in the active shader, in the property named name.
    This function loads an image in the same way as CreateProjectile or CreateSprite - it searches for an image named texture in your mod's "Sprites" folder first, then the Default folder's "Sprites" folder last.

    Note that there is no shader.GetTexture.


    , , , shader.GetVector( name) shader.SetVector( name, , , , vector) Gets or sets a vector (Vector4) in the active shader, in the property named name.

    Here, a vector is a table of 4 number values, with any range.

    NOTE: The two functions don't use the same kind of vectors. shader.GetVector() uses (w, x, y, z) vectors, where shader.SetVector() uses (x, y, z, w) vectors. This behavior will be corrected to only use (x, y, z, w) vectors in a later version.


    Non-persistent data

    All of the data types presented below can not be initialized in a shader's Properties block, which means that Unity will not treat them as persistent data, and they are likely to be lost if the window gets re-loaded or re-drawn. Unity expects these data types to be set in the shader on every frame, such as through Update. Use with caution.


    , , , shader.GetColorArray( name) shader.SetColorArray( name, , , , = 1 colorArray) Gets or sets a color array in the active shader, in the property named name.

    Just like with shader.SetColor, a color is a table of either 3 or 4 number values.
    However, keep in mind that this is an array of colors. So, a table with multiple smaller tables inside, each with 3 or 4 numbers.


    shader.GetFloatArray( name) shader.SetFloatArray( name, floatArray) Gets or sets a float array in the active shader, in the property named name.


    , , , shader.GetVectorArray( name) shader.SetVectorArray( name, , , , vectorArray) Gets or sets a vector array in the active shader, in the property named name.

    Just like with shader.SetVector, a vector (Vector4) is a table of 4 number values.
    However, keep in mind that this is an array of vectors. So, a table with multiple smaller tables inside, each with 4 numbers.

    NOTE: The two functions don't use the same kind of vectors. shader.GetVectorArray() uses (w, x, y, z) vectors, where shader.SetVectorArray() uses (x, y, z, w) vectors. This behavior will be corrected to only use (x, y, z, w) vectors in a later version.



    The Matrix object

    There is a Unity property called the Matrix4x4, which can be used as a property within shaders.
    The Matrix object is a way to manipulate a Matrix4x4 on the Lua side.

    A Matrix object represents a 4x4 matrix filled with numbers. You'll create it by supplying 4 rows of 4 numbers, and after that, you can modify each individual number one at a time.

    NOTE: The Matrix object is also a non-persistent data type (can not be defined in the shader's Properties block). See the previous section for more information.


    matrix shader.Matrix( , , , row1, , , , row2, , , , row3, , , , row4) Creates a new matrix object with its rows set to row1, row2, row3, and row4, in that order, from top to bottom.

    An easy way to visualize it while creating it is like this:

    -- Create a simple numbered matrix
    matrix = shader.Matrix( {  1,  2,  3,  4 },
                            {  5,  6,  7,  8 },
                            {  9, 10, 11, 12 },
                            { 13, 14, 15, 16 } )
    
    After creation, you can get and set any values within the 4x4 range by using multi-indexing, like so:
    -- Check what number is in row 1, column 2
    DEBUG(matrix[1, 2])
    -- Set the number in row 3, column 4
    matrix[3, 4] = 4.2
    
    The matrix object is involved in the functions shader.SetMatrix, shader.SetMatrixArray, shader.GetMatrix, and shader.GetMatrixArray.


    matrix shader.GetMatrix( name) shader.SetMatrix( name, matrix matrix) Gets or sets a Matrix4x4 in the active shader, in the property named name. shader.GetMatrix will return a matrix object (see above), while shader.SetMatrix requires one to be created and passed as the argument matrix.

    NOTE: manipulating a matrix this way does not create a "link" between it and the shader side. If you change values of the matrix object after retrieving it with shader.GetMatrix, you will need to call shader.SetMatrix to update its values on the shader side. Likewise, if you continue to change values of the matrix object passed to shader.SetMatrix after calling the function, you will need to call it once again to update its values on the shader side.


    matrix shader.GetMatrixArray( name) shader.SetMatrixArray( name, matrix matrixArray) Gets or sets a Matrix4x4 array in the active shader, in the property named name.

    Just like with shader.SetMatrix, matrix objects are used (see above).
    This is an array of them, so basically a table containing as many matrix objects as you like.

    * YOU WON!
    * You earned 0 EXP and 0 gold.
    * also the nav menu is broken now


    Undertale fake button
    Undertale fake button
    Undertale fake button
    Undertale fake button

    ================================================ FILE: Documentation CYF 1.0/pages/shaders.html ================================================ CYF Documentation - Shaders - Introduction Undertale background

    Shaders - Introduction

    As of Create Your Frisk v0.6.5, you may now use Unity shaders in your encounters (and the overworld)!
    Be warned that this is a very advanced feature and not everyone will be able to create their own shaders. However, any shaders people make and release can be added into a mod very easily. This page is intended to serve as a basic outline and interface into how the system works.


    Basic Overview

    Here's how shaders are set up in CYF:

    • First of all: Shaders are stored as Unity AssetBundles.
      You might expect them to be .shader files, but they aren't. Keep that in mind.

    • Every bundle can contain multiple shaders. When loading a shader in your mod, you will have to provide the name of a bundle, as well as the name of a shader in the bundle.

    • The actual file setup consists of a folder (the bundle) within the Shaders folder, with files inside named windows, mac, and linux. Keep all of these files if you want your mod to be cross-compatible between operating systems.

    • These files are created by Unity, so if you want to create your own shaders, you MUST set up Unity on your machine.
      Read Unity Setup (Optional) for a guide.

    • There are some default shaders included with CYF, present in the CYF/Default/Shaders folder. They are treated just like sprites and audio, in that shaders will be read from the mod's Shaders folder first, and the Default shaders folder second.

    And on the topic of creating shaders:

    • All shaders are coded using Unity ShaderLabs. See Coding a Shader for links and help.
      They will be created as .shader files on the Unity side before they're exported to bundles.
      Note that the majority of the work and involvement in creating a shader is knowing how to write the shader, and has nothing to do with CYF.

    • Not all errors and issues with shaders will explicitly show an error screen in game, instead resulting in a pink "error" shader being applied.
      When creating your shader in Unity, you will be able to see syntax errors and such before compiling your shader.

    • If the shader (and all of its fallbacks) are found to be unsupported, you'll see an error screen when loading the shader.
      You will need to use the Lua function pcall to account for this (an example is provided in The Shader Object).

    • While actually creating a shader in Unity, there's a shortcut function available (shader.Test) that does not require you to build your shaders to AssetBundles repeatedly.

    • Depending on the setup of the shader, it may or may not cause issues with Create Your Frisk features such as sprite layers and sprite masking. This is why it is recommended that all shaders used be based off of the template located at Coding a Shader and Assets/Editor/Shaders/CYFShaderTemplate.shader.


    Creating Shaders

    The first step involved with creating shaders is to set up Create Your Frisk in Unity on your machine. Read through Unity Setup (Optional) for a guide on doing this.

    After that, locate the path Assets/Editor/Shaders. This is where you will create and edit your shaders as .shader files. You can also find here all of the default shaders Create Your Frisk comes with, which are in Default/Shaders when Create Your Frisk gets built.

    Create a new .shader file here, with whatever name you like. This name is the name you will eventually pass to shader.Set from the Lua side. Follow the instructions in Coding a Shader to write the contents of your shader file. You may use shader.Test from mods within the Unity editor (found at Assets/Mods to test shaders before you compile them.

    Once you're done editing and testing your shader, it's time to compile it to an AssetBundle. Using the Unity project files viewer (normally at the bottom of the screen), browse to the path Assets/Editor/Shaders. Click on your shader. Look for the "Asset Windows" label (normally at the bottom-right of the screen, under the Inspector).

    Shader bundler screenshot

    Click on the button to the right of "AssetBundle" (says "none" in this image), and enter the name of a bundle. This will be the name of the folder that gets exported, that you will be able to drop in your mod's Shaders folder later. You can have multiple shaders contained in one bundle, and as many bundles as you like. As an example, all of the shaders listed below are part of the cyfshaders bundle.

    Finally, to compile all shaders into AssetBundles, click on Create Your Frisk at the top of the Unity window, and click on Build Shader AssetBundles... in the list. A new window will appear.

    Shader bundler screenshot

    You may either click Build all AssetBundles to build every AssetBundle you defined earlier, or you may enter a single name in the box and click Build one AssetBundle to only build one AssetBundle of your choosing (for instance, cyfshaders).

    You will have to wait for a moment while the shaders get built into bundles. You will see an alert box whenever the shaders are done being bundled. Once finished, your bundles will appear in Assets/Editor/Output! They will be present as folders, with the same names as the AssetBundles you set up in the editor. Each one of these folders is a shader bundle that you may now move to your mod's Shaders folder.


    Sample Shaders

    Create Your Frisk v0.6.5 comes with an AssetBundle named "cyfshaders", containing several sample shaders for you to toy with, be it in the Lua side or as a means to create your own shaders.
    Remember that you can find the source code for these shaders by downloading CYF's source code - see Unity Setup (Optional).
    You may set all of the properties listed in the "usage" column by using the functions within The Shader Object on the Lua side. All the keywords are disabled by default, that's just how the shader language functions.

    Shader Name Description Usage
    CYFShaderTemplate
    (not in the bundle)
    A template base shader to build all your own shaders from. Same as the sample shader in Coding a Shader. No unique properties or variables.
    Displacement A shader that allows for the use of displacement maps, by means of images in your mod's Sprites folder.

    Colors greater than 50% will move the rendered space forward, while colors less than 50% will move it backwards.
    For reference, the color #808080 represents zero displacement.
    • DispMap - Texture - The displacement map in question. See left.
    • Intensity - Float - Controls the magnitude of the displacement. 1 by default.
    • NO_PIXEL_SNAP - Keyword - If enabled, disables pixel snapping on the newly rendered image (blurry).
    • NO_WRAP - Keyword - If enabled, does not render pixels that were outside of the original image/screen boundaries.
    FitScreen This shader is intended for use alongside Misc.SetWideFullscreen(true), and should be applied to the camera through Misc.ScreenShader.

    It forcefully takes the 640x480, 4:3 normal display area of CYF and stretches it across the user's monitor, when in fullscreen. In other words, it uses a "stretch" display method instead of keeping letterboxing, even if it is controllable.
    • Width - Float - Controls the new size of the display area.
      Should be set to 640 normally, or
      math.ceil(math.max(Misc.MonitorWidth / 3, 640)) in fullscreen.
    • NO_PIXEL_SNAP - Keyword - If enabled, disables pixel snapping on the newly sized screen render (blurry).
    Gradient A simple shader that takes 4 colors (all white by default), applies them to the 4 corners of an image (or the screen), and generates a color gradient connecting them. The colorization is done similarly to sprite.color, so the effect may be most visible with white images.
    • TopLeft - Color - Color for the top left corner.
    • TopRight - Color - Color for the top right corner.
    • BottomLeft - Color - Color for the bottom left corner.
    • BottomRight - Color - Color for the bottom right corner.
    Invert A simple shader that inverts the colors of every displayed pixel. No unique properties or variables.
    Rotation This shader is intended to be applied to the camera through Misc.ScreenShader.

    The purpose of this shader is to allow the entire screen to be rotated all around. It has customizeable pivot points, as well.
    • Rotation - Float - Rotation of the screen. 0 by default. This value takes degrees.
    • xPivot - Float - X pivot to rotate around. 0.5 (center) by default.
    • yPivot - Float - X pivot to rotate around. 0.5 (center) by default.
    • WRAP - Keyword - If enabled, renders pixels that were outside of the original screen boundaries.
    • NO_PIXEL_SNAP - Keyword - If enabled, disables pixel snapping on the newly rendered image (blurry).
    ScreenScale This shader is intended to be applied to the camera through Misc.ScreenShader.

    This shader scales the screen horizontally and vertically, similarly to sprite.Scale. Values can be both positive and negative, which can also result in flipping the screen.
    • HorMult - Float - Horizontal Scale. 1 by default.
    • VerMult - Float - Vertical Scale. 1 by default.
    • WRAP - Keyword - If enabled, renders pixels that were outside of the original screen boundaries.
    • NO_PIXEL_SNAP - Keyword - If enabled, disables pixel snapping on the newly sized screen render (blurry).
    Wave A nifty effect that makes an image appear to wave and sway back and forth. Its size and distance can be customized.
    • Width - Float - Controls the width of the wave motion. Larger numbers mean more distance travelled horizontally. 1 by default.
    • Rate - Float - Controls the rate of waves in the image. Larger numbers mean less space between waves. 1 by default.
    • NO_WRAP - Keyword - If enabled, does not render pixels that were outside of the original image boundaries.
    • NO_PIXEL_SNAP - Keyword - If enabled, disables pixel snapping on the newly rendered image (blurry).

    * YOU WON!
    * You earned 0 EXP and 0 gold.
    * also the nav menu is broken now


    Undertale fake button
    Undertale fake button
    Undertale fake button
    Undertale fake button

    ================================================ FILE: Documentation CYF 1.0/pages/terms.html ================================================ CYF Documentation - Terminology Undertale background

    Terminology



    arena - The inside of the white box in which the player is allowed to move.

    bullet - Everything in a wave that can collide with you. Flowey's pellets would be referred to as bullets, but so would Papyrus' bones, anything Woshua can shoot (of any colour), even the dancing Migosp.

    encounter text - The text that shows up before you've selected FIGHT/ACT/ITEM/MERCY.

    monster dialogue - Text from monsters in an encounter, often seen before attacking. Can also be multiple dialogue boxes for special encounters.

    dialog - A user interface component that contains text. For example, the battle dialog window. The distinction between "dialog" and "dialogue" is that "dialog" refers to interface windows containing text, and "dialogue" refers to the speech content of monsters.

    wave - A single attack behaviour (or attack "wave", to say), measured from when you start defending until when it stops. Vegetoid's bouncing vegetables attack would count as a wave. Papyrus' special Cool Dude attack would also count as a wave. Unitale works with "wave scripts" for attacks; you can use multiple wave scripts at the same time for when you have various monsters.

    overworld - A CYF feature that is external to battles. It allows the user to explore maps, like in Undertale. The overworld can contain event objects, too.
    You can find a tutorial on maps in How to create a map and a tutorial on events is in How to create an event.

    modDev - This is a feature exclusive to CYF. In CYF, you can access some extra options from the Mod Selection screen. These mainly include the options to wipe RealGlobals and AlMightyGlobals, as well as toggle safe mode and retrocompatibilty mode.

    * In CYF v0.6.2.1 and beyond, the modDev screen is located in an "options menu" accessible by clicking "Options" from within the Mod Selection screen.

    retrocompatibilty mode - This CYF feature is designed in such a way where, if it's enabled, functions from 0.2.1a that were changed in CYF will function exactly as they did in 0.2.1a.

    safe mode - This is a CYF-mode that removes swear words found in CYF. Mod authors can also use this to do the same in their mods, maybe even also using this to remove blood or mature content.

    * YOU WON!
    * You earned 0 EXP and 0 gold.
    * also the nav menu is broken now


    Undertale fake button
    Undertale fake button
    Undertale fake button
    Undertale fake button

    ================================================ FILE: Documentation CYF 1.0/pages/unity.html ================================================ CYF Documentation - Unity Setup (Optional) Undertale background

    Unity Setup (Optional)



    This page will cover how to set up Create Your Frisk in the Unity editor, which is necessary for utilizing Create Your Frisk's Overworld feature, as well as for setting up shaders. It is also helpful for seeing the way encounters work from the Unity side, and in particular how sprite layers work.


    Get Started

    To get started, you'll need to, first of all, download the current version of Unity that CYF uses, and, of course, download the project via Github.

    To do this, go to the Releases section, find the latest version of Create Your Frisk, scroll down to its downloads section, and download Source Code (zip). You will need to extract it (you should have a means to extract it already on your computer).

    Once the folder is extracted, you will need to open it as a project in Unity. Download the version of Unity used to build the version of Create Your Frisk.

    Create Your Frisk v0.6.6 was built using Unity Personal 2018.4.36f1, also known as Unity 2018's Long Term Support version, which you can find here.


    Unity may take a lot of time to install and to load the project for the first time, due to a lot of resources being registered by Unity - but you won't have to do it again in the future.


    Once you're in

    Once you're in, you'll have to load the scene Assets/Scenes/Disclaimer.unity using the command File => Open Scene at the top left corner of Unity's window. You should always start play mode from this scene when using Create Your Frisk in Unity.

    In order to set up the viewport properly, first switch to the "Game" tab (Window => General => Game, or click it in the editor). Within the Game tab, find the button labelled Display 1. Next to it should be another button, most likely labelled Free Aspect. Click on it, click the "plus" sign at the bottom of the list that appears, and add an option with a fixed resolution of 640 x 480.

    This is Create Your Frisk's native resolution, and viewing it like this ensures that everything you see in the Unity editor will look exactly the same in the built version of Create Your Frisk.


    Where is everything?

    Look in the folder Assets within the folder you extracted earlier. In here, the folder named Default is the same as the folder named Default in the built executable versions of Create Your Frisk. Likewise, Mods is the same as the Mods folder in the built versions of CYF. Load all of your mods here if you want them playable in the editor.

    Another folder here is Scenes. If you are using Create Your Frisk's Overworld feature, this is where all overworld scenes will go. See the Overworld section of the documentation for more information.

    Also within Assets the folder Editor is used for shaders. It contains a folder Shaders, which is where all of your original shader files go, and another folder Output, which is where your shaders will be compiled into AssetBundles. Read Shaders - Introduction for more information.


    Building CYF

    This is an optional step, for if you want or need to export Create Your Frisk to a built executable. Within your Create Your Frisk installation is a python script, named Build.py. It uses Python v3.7.4. This is the script used to build CYF into executables. You can optionally install 7-zip as well, if you want the script to automatically package your builds into archives.

    You should first peek inside the script and edit it as needed - you only need change one or two lines. You can change the variable CYFversion to dictate the names of the created folders (or edit them yourself in buildTargets and macTarget). Next, check the variable unityPath - you need to set it to the path of your machine's Unity installation, if it is not already set to it.

    Make sure Create Your Frisk is the last project opened in Unity. Then, CLOSE UNITY before running the script.

    Actually running the script also has some documentation at the top of the file itself. You can either run the script directly (double click it) or run it from the command line (varies depending on your operating system). If you do the former option, or do the second option with no extra setup, the script will attempt to create all 5 builds, and archive them if possible.

    If running from the command line, you may provide two arguments to specify the build process:

    • --nozip: Does not attempt to package the resulting builds into archives with 7-zip.

    • --single [id]: Only creates one of the possible builds. id should be from 1 to 5:
      1. Windows 32-bit
      2. Windows 64-bit
      3. Linux 32-bit
      4. Linux 64-bit
      5. Mac
    Your build(s) of Create Your Frisk will appear in a folder named bin within your CYF installation!

    * YOU WON!
    * You earned 0 EXP and 0 gold.
    * also the nav menu is broken now


    Undertale fake button
    Undertale fake button
    Undertale fake button
    Undertale fake button

    ================================================ FILE: Documentation CYF 1.0/pages/variables.html ================================================ CYF Documentation - Special Variables Undertale background

    Special variables



    It's time to set up the basics of an encounter! The fastest way to get started is to copy the 'Encounter Skeleton' mod and play with the values in it, then either copying over existing examples' code, or writing your own. This section serves to explain the variables you see.


    All-script variables


    isCYF [E/M/W] A value - true by default - that indicates that if you're on CYF. nil if not on CYF. Test it with if not isCYF then or if isCYF then.


    isRetro [E/M/W] A value which is true whenever CYF's retrocompatibility mode is active and false when it isn't. Test it with if not isRetro then or if isRetro then.


    safe [E/M/W] True if CYF's safe mode is enabled, false otherwise.


    windows [E/M/W] Returns true if the user is on Windows, false otherwise.


    CYFversion [E/M/W] Returns a different string based on the version of CYF you are using.

    • Versions before v0.6: Previous version's number.
      For example, in CYF v0.5.5, this will be "0.5.4".

    • Versions between v0.6 and v0.6.1.2: always "1.0".

    • Versions after v0.6.1.2: Current version's number.
      For example, in CYF v0.6.2, this will be "0.6.2".

    TIP: Lua has a very useful built-in string comparing function.

    You can very easily check for if CYFversion < "0.6.2.2" then, if CYFversion >= "0.6.1.2" then and other combinations.


    LTSversion [E/M/W] Returns a different number based on the LTS version of CYF you are using.

    You can compare this number to your own values to make sure the right version of CYF is used to play your mod, if needed.

    You may also want to check if this value exists at all in case older versions of CYF are used to play your mod.


    Encounter script variables

    music = "yourmusicname_without_extension"
    encountertext = "Vegetoid came out of\rthe earth!"
    nextwaves = {"bullettest_wavy", "bullettest_homing"}
    wavetimer = 4.0
    arenasize = {155, 130}
    
    enemies = { "vegetoid" }
    
    enemypositions = {
    {0, 50},
    {-70, 30},
    {70, 30}
    }
    
    deathtext = {
    "[voice:v_fluffybuns][waitall:2]You cannot give up\njust yet...",
    "[voice:v_fluffybuns][waitall:2]Frisk!\n[w:15]Stay determined..."
    }
    

    music - Name of your encounter's starting music, without the file extension. If this variable isn't present, it'll play Undertale's default battle theme. If you don't want any music, call Audio.Stop() in the EncounterStarting() function. For more information see API - Game events.


    encountertext - Set the initial text of your encounter here. After that, you can modify it at any time in preparation for the next turn. encountertext gets read out at the start of every new turn (i.e. you going back to the FIGHT/ACT/ITEM/MERCY selection).

    * You can use \n to create a new line with a star (*), and \r to create a new line without a star.

    As of CYF v0.6.4, if you end up with 4 or more lines of encounter text displayed at once, the text will move up (9 pixels, one time) to compensate and try to fit your text inside the box.


    nextwaves - A list of all simultaneous attack waves you want when the monsters start their attacks. You can modify this at any time, and it'll get read out before the enemies start their attack. For most boss-type encounters, you'll likely only want one wave simultaneously - but you can get creative here.


    wavetimer - How long it takes for the defending step to end. If this isn't set anywhere, it'll be the default 4.0 seconds.


    arenasize - The inner size of the box the player's constrained to. {155, 130} is the default size for a lot of basic Undertale encounters. Papyrus' battle, for instance, has this at {245, 130} most of the time. You may modify this at any time - it'll only get read out before the enemies start their attack.
    Note: lowest possible setting is {16, 16} - this is the size of the player's soul. Anything lower will be set to 16 anyway.


    enemies - Defines the names of your enemy scripts that will be used in your encounter. In this example, vegetoid.lua will be used from the Monsters folder. After initialization, the names will be replaced by Script controller objects you can use to control your monster scripts.
    Refer to API - Functions & Objects for more information.


    , enemypositions - Defines where the enemies are on the screen. {0, 0} means they're centered just above the arena, with 1 pixel of space inbetween. {-30, 0} means above the arena to the left; {50, 80} means 50 pixels to the right and 80 pixels above that center.
    You will always need at least as many enemy positions as enemies in your encounter. In this example we have 3 enemy positions set to show you how you can define more than one, but since this example only contains Vegetoid you only really need one position.


    autolinebreak - False by default. If this value is set to true, the auto linebreak system will automatically add line breaks (\r) to the text. No need to use \r or \n anymore!


    playerskipdocommand - False by default. If this value is set to true, text commands will be called even if the player skips the text - except for [w] and [letters] commands, and commands with the tag "skipover".


    unescape - False by default. If this value is set to true, you can't exit the battle with the ESC key anymore.


    flee - True by default. If this value is set to false, the Flee option will not appear in the Mercy menu.


    fleesuccess - nil by default. Set this to true or false to force the Flee option to succeed or fail, respectively. Otherwise, Undertale's formula is used, which starts at a 50% chance to flee on the first turn, and increases by 10% every turn after that (regardless of if those turns were spent trying to flee as well).


    fleetexts - If you set this to a table filled with strings, a random one of your strings will be displayed whenever the player flees the battle (if that's enabled).


    revive - If this variable is set to true, the player will be revived when they hit 0 HP.
    By default, there will be no special text for the player being revived; however, if you set deathtext, that will be used.


    deathtext - Text displayed when the player dies, in the Game Over screen. By default, it'll use the normal death text.
    This text is also used if the player gets revived while revive is true. Otherwise, there is no revive text.


    deathmusic - Sets the death music. The music is played if revive is not set.


    script Wave - A table returning the current wave scripts used. Returns a table with a length of 0 if not in the state DEFENDING.


    noscalerotationbug - If this variable is set to true, the rotation of any child sprite with a rotated parent will no longer be reset after either changing its sprite in any way or scaling it.


    adjusttextdisplay - False if not set. If set to true, CYF will try to adjust the text's position and scale to prevent jagged lines to appear if the text's scale or position is slightly off.
    Can be overridden for each text object by setting their adjustTextDisplay value.


    , , , = 1 sparecolor - Changes the RGBA color of the Spare option in the Mercy menu if one or several enemies are spareable. Each given number will be clamped between 0 and 1.
    If neither this or sparecolor32 are set, the default color is { 1, 1, 0 }, or yellow.

    , , , = 255 sparecolor32 - Changes the RGBA color of the Spare option in the Mercy menu if one or several enemies are spareable. Each given number will be clamped between 0 and 255.
    This value is ignored if sparecolor is set.


    Monster script variables

    comments = {"Vegetoid cackles softly.", "Vegetoid's here for your health."}
    commands = {"Talk", "Devour", "Dinner"}
    randomdialogue = {"Fresh\nMorning\nTaste", "Farmed\nLocally,\nVery\nLocally"}
    currentdialogue = {'Eat\nYour\nGreens'}
    cancheck = true
    canspare = false
    
    sprite = "vegetoid_sprite"
    dialogbubble = "rightshort"
    name = "Vegetoid"
    hp = 20
    atk = 6
    def = 6
    xp = 6
    gold = 1
    check = "Serving Size: 1 Monster\nNot monitored by the USDA"

    comments - A list of random comments attached to this monster. You can retrieve one at random using the RandomEncounterText() function in your Encounter script. See API - Functions & Objects for details.

    commands - A list of ACT commands you can do. Listed in the ACT menu and used in HandleCustomCommand(). See API - Game events for details. Note that the behaviour for Check is built-in, and shows you the monster's name followed by the ATK and DEF, and then the check variable you'll see all the way down.

    randomdialogue - A list of random dialogue the monster can have. One of these is selected at random if currentdialogue is nil (i.e. has no value).

    NOTE: The dialogue bubble will not be shown so long as it has no displayable letters. Set randomdialogue to a line with only text commands, such as "[noskip][next]", to use this to your advantage.

    currentdialogue - The next dialogue for this monster. This overrides the random dialogue and is meant for special actions (e.g. you hit Vegetoid's green carrots after selecting Dinner from the ACT menu). This variable gets cleared every time after it's read out in the monster dialogue phase. This is done so you don't have to take care of managing it manually.

    NOTE: The dialogue bubble will not be shown so long as it has no displayable letters. Set currentdialogue to a line with only text commands, such as "[noskip][next]", to use this to your advantage.

    defensemisstext - The text which will be displayed if the Player's attack is successful but deals 0 damage. "MISS" by default.

    noattackmisstext - The text which will be displayed if the Player doesn't press Z when attacking. "MISS" by default.

    cancheck - Either true or false. You can leave this line out; it will be true by default. If set to false, it will disable the default Check action that shows up in your ACT menu. If you want a custom Check action, you can add it back into your commands table, and handle it like any other custom command. See API - Game events for details.

    canspare - Either true or false. If you leave this line out, it'll be set to false by default. If you change this to true, your monster's name will turn yellow and it will be spareable.

    isactive - Tells you whether this enemy is active.
    Will be false if they have been manually de-activated, killed or spared.
    Setting this will do nothing! You must call SetActive (see Misc. Functions).


    sprite - Name of the sprite in your Sprites folder, without the .PNG extension. This is the initial sprite for your monster. It can be changed using SetSprite(name); see API - Functions & Objects for details.

    sprite monstersprite - Sprite handler of the monster.

    dialogbubble - What dialogue bubble will be used for the monster's dialogue. You can change this at any time, but this must be initially set to something. For a list of all possible options, check the dialog bubble names chart; it's also in the sidebar. Positioning of the bubbles is done automatically.
    This value can also be nil, which means the monster's text will use an automatically sized bubble much like text objects do. In which case, you need to set the value of the variables bubbleside and bubblewidth. See their entries below for details.

    bubbleside - Only useful when dialogbubble is nil. Determines which side the bubble and its tail are on. Can only accept the values RIGHT, LEFT, UP, DOWN and NONE.
    The NONE value places the bubble on the right side of the monster with no tail, while the other values place the bubble on their corresponding side.

    bubblewidth - Only useful when dialogbubble is nil. Determines the width of the automatic bubble in pixels. This value cannot be under 16.

    sprite bubblesprite - Only useful when dialogbubble is not nil. This is the sprite object used for the bubble sprite used for monster dialogues. This object has textobject as child, so moving it will also move that object.

    text textobject - Text object used to display the monster's dialogue. Moving it also moves the dialog bubble if dialogbubble is nil.

    dialogueprefix - A string, appended to the beginning of every monster's dialogue. The default is "[effect:rotate]"

    name - Monster name. Fairly self-explanatory; shows up in the FIGHT/ACT menus. Can also be changed at any time.

    hp - Your monster's max HP, initially. After the fight has started, this value will always accurately reflect your monster's current HP. You can then modify this value to change your monster's current HP.

    maxhp - Your monster's max HP. After the fight has started this value will be always the same, unless you change it. It is mainly used for lifebars and such. You better not set it as 0 or as a negative number, though.

    atk - Your monster's ATK. Only used in the default Check handler; bullet damage is set through wave scripts. If you're not using the default Check you can leave this out.

    def - Your monster's DEF.

    xp - Your monster's XP upon actually defeating them. You only get this by killing the monster.

    gold - Gold you get from either killing or sparing this monster. Since the gold can change based on whether you kill or spare the monster, you can modify this at any time up until the fight ends.

    check - When checking with the default Check option, this is what's listed under the monster's name, ATK and DEF.

    unkillable - Set it to true and the monster will not be killed if it has less than 1 HP. However, it can still be killed with Kill().

    canmove - Deprecated, always returns true.
    Old behavior: Returns true if you are able to move or unbind monstersprite, false otherwise.

    posx - The x position of the enemy's sprite.

    posy - The y position of the enemy's sprite.

    font - The default font used by the monster. Set it to nil if you want to use the normal monster font.

    voice - The default voice used by the monster. Set it to nil if you want to use the default voice.


    , , , = 1 sparecolor - Changes the RGBA color of the enemy's name in the enemy choice menu if they are spareable. Each given number will be clamped between 0 and 1.
    If neither this or sparecolor32 are set, the default color is { 1, 1, 0 }, or yellow.

    , , , = 255 sparecolor32 - Changes the RGBA color of the enemy's name in the enemy choice menu if they are spareable. Each given number will be clamped between 0 and 255.
    This value is ignored if sparecolor is set.


    Wave script variables


    wavename [W] Returns the name of the wave file, without the extension, from the Waves folder.



    Other than the above, wave scripts don't have any variables that are read out from the start, but you can define your own. An instance of a wave script is made when you start defending, and is destroyed when the defending step ends. As such, you can't store variables in a wave script for reusing later. Use the Encounter script to keep track of things.

    * YOU WON!
    * You earned 0 EXP and 0 gold.
    * also the nav menu is broken now


    Undertale fake button
    Undertale fake button
    Undertale fake button
    Undertale fake button

    ================================================ FILE: How to use CYF and add mods (Mac).txt ================================================ ===================== HOW TO RUN CYF ON MAC ===================== 1: Open a command prompt in the folder containing CYF's application file. 2: Run the command sudo chmod +x "" "" is the name of the CYF app in the CreateYourFrisk folder. Here's an example of a potentially valid full command: sudo chmod +x "CreateYourFrisk-macos64.app", if the CYF app is named "CreateYourFrisk-macos64.app". If the command does not work because of administrator right issues, remove the "sudo" word and try again. 3: Run the command sudo chmod +x "/Contents/MacOS/" "" is the name of the CYF app in the CreateYourFrisk folder. "" is the name of the executable nested within the application file. To access it, right click on CYF's aplication file and click the option "Show Package Contents". Once you do, navigate to the folder "Contents/MacOS", the file in that folder is the one you want to copy the name of and replace that part with in the path above. Here's an example of a potentially valid full command: sudo chmod +x "CreateYourFrisk-macos64.app/Contents/MacOS/CreateYourFrisk-macos64", if the CYF app is named "CreateYourFrisk-macos64.app" and its internal executable is named "CreateYourFrisk-macos64". If the command does not work because of administrator right issues, remove the "sudo" word and try again. 4: Now the app should be able to run! ============================= HOW TO ADD MODS TO CYF ON MAC ============================= 1: Click on Create Your Frisk's application file 2: Click on the Gear icon in Finder OR Right click on Create Your Frisk's application file 3: Click on "Show package contents" 4: Open "Mods" 5: Place all downloaded mods here! ================================================ FILE: LICENSE ================================================ GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 Copyright (C) 2007 Free Software Foundation, Inc. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The GNU General Public License is a free, copyleft license for software and other kinds of works. The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it. For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users. Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free. The precise terms and conditions for copying, distribution and modification follow. TERMS AND CONDITIONS 0. Definitions. "This License" refers to version 3 of the GNU General Public License. "Copyright" also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. "The Program" refers to any copyrightable work licensed under this License. Each licensee is addressed as "you". "Licensees" and "recipients" may be individuals or organizations. To "modify" a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a "modified version" of the earlier work or a work "based on" the earlier work. A "covered work" means either the unmodified Program or a work based on the Program. To "propagate" a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. To "convey" a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. An interactive user interface displays "Appropriate Legal Notices" to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. 1. Source Code. The "source code" for a work means the preferred form of the work for making modifications to it. "Object code" means any non-source form of a work. A "Standard Interface" means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. The "System Libraries" of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A "Major Component", in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. The "Corresponding Source" for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. The Corresponding Source for a work in source code form is that same work. 2. Basic Permissions. All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. 3. Protecting Users' Legal Rights From Anti-Circumvention Law. No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. 4. Conveying Verbatim Copies. You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. 5. Conveying Modified Source Versions. You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: a) The work must carry prominent notices stating that you modified it, and giving a relevant date. b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to "keep intact all notices". c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an "aggregate" if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. 6. Conveying Non-Source Forms. You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. A "User Product" is either (1) a "consumer product", which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, "normally used" refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. "Installation Information" for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. 7. Additional Terms. "Additional permissions" are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or d) Limiting the use for publicity purposes of names of licensors or authors of the material; or e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. All other non-permissive additional terms are considered "further restrictions" within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. 8. Termination. You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. 9. Acceptance Not Required for Having Copies. You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. 10. Automatic Licensing of Downstream Recipients. Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. An "entity transaction" is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. 11. Patents. A "contributor" is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's "contributor version". A contributor's "essential patent claims" are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, "control" includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. In the following three paragraphs, a "patent license" is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To "grant" such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. "Knowingly relying" means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. A patent license is "discriminatory" if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. 12. No Surrender of Others' Freedom. If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. 13. Use with the GNU Affero General Public License. Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such. 14. Revised Versions of this License. The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License "or any later version" applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation. If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. 15. Disclaimer of Warranty. THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. Limitation of Liability. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. 17. Interpretation of Sections 15 and 16. If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. {one line to give the program's name and a brief idea of what it does.} Copyright (C) {year} {name of author} This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . Also add information on how to contact you by electronic and paper mail. If the program does terminal interaction, make it output a short notice like this when it starts in an interactive mode: {project} Copyright (C) {year} {fullname} This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, your program's commands might be different; for a GUI interface, you would use an "about box". You should also get your employer (if you work as a programmer) or school, if any, to sign a "copyright disclaimer" for the program, if necessary. For more information on this, and how to apply and follow the GNU GPL, see . The GNU General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . ================================================ FILE: MOONSHARP_LICENSE ================================================ Copyright (c) 2014, Marco Mastropaolo All rights reserved. Parts of the string library are based on the KopiLua project (https://github.com/NLua/KopiLua) Copyright (c) 2012 LoDC Debugger icons are from the Eclipse project (https://www.eclipse.org/). Copyright of The Eclipse Foundation The MoonSharp icon is (c) Isaac, 2014-2015 Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of the {organization} nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ================================================ FILE: Packages/Config/manifest.json ================================================ { "dependencies": { } } ================================================ FILE: Packages/Config/manifest.json.meta ================================================ fileFormatVersion: 2 guid: e00f2908e0d81c748ad39283adac5f89 timeCreated: 1503421097 licenseType: Free TextScriptImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Packages/Config.meta ================================================ fileFormatVersion: 2 guid: 91d6bde419053834cb9705733acf6e03 folderAsset: yes timeCreated: 1503656327 licenseType: Free DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Packages/manifest.json ================================================ { "dependencies": { "com.unity.collab-proxy": "1.2.15", "com.unity.memoryprofiler": "0.2.10-preview.1", "com.unity.package-manager-ui": "2.0.13", "com.unity.textmeshpro": "1.4.1", "com.unity.modules.ai": "1.0.0", "com.unity.modules.animation": "1.0.0", "com.unity.modules.assetbundle": "1.0.0", "com.unity.modules.audio": "1.0.0", "com.unity.modules.cloth": "1.0.0", "com.unity.modules.director": "1.0.0", "com.unity.modules.imageconversion": "1.0.0", "com.unity.modules.imgui": "1.0.0", "com.unity.modules.jsonserialize": "1.0.0", "com.unity.modules.particlesystem": "1.0.0", "com.unity.modules.physics": "1.0.0", "com.unity.modules.physics2d": "1.0.0", "com.unity.modules.screencapture": "1.0.0", "com.unity.modules.terrain": "1.0.0", "com.unity.modules.terrainphysics": "1.0.0", "com.unity.modules.tilemap": "1.0.0", "com.unity.modules.ui": "1.0.0", "com.unity.modules.uielements": "1.0.0", "com.unity.modules.umbra": "1.0.0", "com.unity.modules.unityanalytics": "1.0.0", "com.unity.modules.unitywebrequest": "1.0.0", "com.unity.modules.unitywebrequestassetbundle": "1.0.0", "com.unity.modules.unitywebrequestaudio": "1.0.0", "com.unity.modules.unitywebrequesttexture": "1.0.0", "com.unity.modules.unitywebrequestwww": "1.0.0", "com.unity.modules.vehicles": "1.0.0", "com.unity.modules.video": "1.0.0", "com.unity.modules.vr": "1.0.0", "com.unity.modules.wind": "1.0.0", "com.unity.modules.xr": "1.0.0" } } ================================================ FILE: Packages/manifest.json.meta ================================================ fileFormatVersion: 2 guid: 1b3d1a005689a3744bfe67b6e86101f6 timeCreated: 1503656349 licenseType: Free TextScriptImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: ProjectSettings/AudioManager.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!11 &1 AudioManager: m_ObjectHideFlags: 0 m_Volume: 1 Rolloff Scale: 1 Doppler Factor: 1 Default Speaker Mode: 2 m_SampleRate: 0 m_DSPBufferSize: 0 m_VirtualVoiceCount: 512 m_RealVoiceCount: 32 m_SpatializerPlugin: m_DisableAudio: 0 ================================================ FILE: ProjectSettings/ClusterInputManager.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!236 &1 ClusterInputManager: m_ObjectHideFlags: 0 m_Inputs: [] ================================================ FILE: ProjectSettings/DynamicsManager.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!55 &1 PhysicsManager: m_ObjectHideFlags: 0 serializedVersion: 3 m_Gravity: {x: 0, y: -9.81, z: 0} m_DefaultMaterial: {fileID: 0} m_BounceThreshold: 2 m_SleepThreshold: 0.005 m_DefaultContactOffset: 0.01 m_DefaultSolverIterations: 6 m_DefaultSolverVelocityIterations: 1 m_QueriesHitBackfaces: 0 m_QueriesHitTriggers: 1 m_EnableAdaptiveForce: 0 m_EnablePCM: 1 m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff m_AutoSimulation: 1 m_AutoSyncTransforms: 1 ================================================ FILE: ProjectSettings/EditorBuildSettings.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1045 &1 EditorBuildSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_Scenes: - enabled: 1 path: Assets/Scenes/Disclaimer.unity guid: 0795b548afc102e4d820e5d2e6696939 - enabled: 1 path: Assets/Scenes/Intro.unity guid: 0e4b915e2e8b37e40b67eb305cb3b9df - enabled: 1 path: Assets/Scenes/TitleScreen.unity guid: 02f3ab2d62766e944aa9da3b343ad0c8 - enabled: 1 path: Assets/Scenes/TransitionOverworld.unity guid: 2b6255523adf4cb44b2e70e054ad1894 - enabled: 1 path: Assets/Scenes/test.unity guid: b409eeea8aa246847b09eebcd266ef18 - enabled: 1 path: Assets/Scenes/test2.unity guid: c103ad422a1e2b844899434ccbb60e2a - enabled: 1 path: Assets/Scenes/test4.unity guid: 3b343858ba50a2246ac6163b00a8384a - enabled: 1 path: Assets/Scenes/test5.unity guid: a8499d3c1b60c944bb407ff4c58dff87 - enabled: 1 path: Assets/Scenes/test-1.unity guid: 2771e7a1bf8bd234abdb4e55f2b156d8 - enabled: 1 path: Assets/Scenes/ModSelect.unity guid: 07ece637afd80c14ab6c725c0c20242f - enabled: 1 path: Assets/Scenes/Options.unity guid: a67f45e3d89aa5743b3a5c9fe7ee5a1a - enabled: 1 path: Assets/Scenes/Battle.unity guid: 6087b29e19bd5d64b84b0108a19a9536 - enabled: 1 path: Assets/Scenes/Error.unity guid: a7d68a9279560f449b7139c815237bd7 - enabled: 1 path: Assets/Scenes/EnterName.unity guid: 9bdbfca8d1f425843ae466352228e423 - enabled: 1 path: Assets/Scenes/Secret.unity guid: 74c9ad964ce5f0a4f927d3e206d1804f - enabled: 1 path: Assets/Scenes/newhome1.unity guid: 3aab454a770252846ae6eeaae96a96a9 - enabled: 1 path: Assets/Scenes/newhome2.unity guid: 7664dfad80480374f8018ed47dba88d0 - enabled: 1 path: Assets/Scenes/newhome3.unity guid: 0cad95f36cca48e4ca140c57732d39c2 - enabled: 1 path: Assets/Scenes/Void.unity guid: 596e0ee3d3ed69d4096eea1844c02b39 - enabled: 1 path: Assets/Scenes/Shop.unity guid: f4bbae101a4c667429ad4c726c7bf820 - enabled: 1 path: Assets/Scenes/SpecialAnnouncement.unity guid: f9d2349a99292a24c91eaee50a95a87e - enabled: 1 path: Assets/Scenes/KeybindSettings.unity guid: c7340ada0080ba74ebc7e5bf2a43e8b5 m_configObjects: {} ================================================ FILE: ProjectSettings/EditorSettings.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!159 &1 EditorSettings: m_ObjectHideFlags: 0 serializedVersion: 3 m_ExternalVersionControlSupport: Hidden Meta Files m_SerializationMode: 2 m_WebSecurityEmulationEnabled: 0 m_WebSecurityEmulationHostUrl: http://www.mydomain.com/mygame.unity3d m_DefaultBehaviorMode: 1 m_SpritePackerMode: 2 m_SpritePackerPaddingPower: 1 m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd m_ProjectGenerationRootNamespace: ================================================ FILE: ProjectSettings/GraphicsSettings.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!30 &1 GraphicsSettings: m_ObjectHideFlags: 0 serializedVersion: 12 m_Deferred: m_Mode: 1 m_Shader: {fileID: 69, guid: 0000000000000000f000000000000000, type: 0} m_DeferredReflections: m_Mode: 1 m_Shader: {fileID: 74, guid: 0000000000000000f000000000000000, type: 0} m_ScreenSpaceShadows: m_Mode: 1 m_Shader: {fileID: 64, guid: 0000000000000000f000000000000000, type: 0} m_LegacyDeferred: m_Mode: 1 m_Shader: {fileID: 63, guid: 0000000000000000f000000000000000, type: 0} m_DepthNormals: m_Mode: 1 m_Shader: {fileID: 62, guid: 0000000000000000f000000000000000, type: 0} m_MotionVectors: m_Mode: 1 m_Shader: {fileID: 75, guid: 0000000000000000f000000000000000, type: 0} m_LightHalo: m_Mode: 1 m_Shader: {fileID: 105, guid: 0000000000000000f000000000000000, type: 0} m_LensFlare: m_Mode: 1 m_Shader: {fileID: 102, guid: 0000000000000000f000000000000000, type: 0} m_AlwaysIncludedShaders: - {fileID: 7, guid: 0000000000000000f000000000000000, type: 0} - {fileID: 15104, guid: 0000000000000000f000000000000000, type: 0} - {fileID: 15105, guid: 0000000000000000f000000000000000, type: 0} - {fileID: 15106, guid: 0000000000000000f000000000000000, type: 0} - {fileID: 10770, guid: 0000000000000000f000000000000000, type: 0} - {fileID: 10782, guid: 0000000000000000f000000000000000, type: 0} - {fileID: 16000, guid: 0000000000000000f000000000000000, type: 0} - {fileID: 17000, guid: 0000000000000000f000000000000000, type: 0} - {fileID: 16001, guid: 0000000000000000f000000000000000, type: 0} m_PreloadedShaders: [] m_SpritesDefaultMaterial: {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} m_CustomRenderPipeline: {fileID: 0} m_TransparencySortMode: 0 m_TransparencySortAxis: {x: 0, y: 0, z: 1} m_DefaultRenderingPath: 1 m_DefaultMobileRenderingPath: 1 m_TierSettings: [] m_LightmapStripping: 0 m_FogStripping: 0 m_InstancingStripping: 0 m_LightmapKeepPlain: 1 m_LightmapKeepDirCombined: 1 m_LightmapKeepDynamicPlain: 1 m_LightmapKeepDynamicDirCombined: 1 m_LightmapKeepShadowMask: 1 m_LightmapKeepSubtractive: 1 m_FogKeepLinear: 1 m_FogKeepExp: 1 m_FogKeepExp2: 1 m_AlbedoSwatchInfos: [] m_LightsUseLinearIntensity: 0 m_LightsUseColorTemperature: 0 m_LogWhenShaderIsCompiled: 0 ================================================ FILE: ProjectSettings/InputManager.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!13 &1 InputManager: m_ObjectHideFlags: 0 serializedVersion: 2 m_Axes: - serializedVersion: 3 m_Name: Horizontal descriptiveName: descriptiveNegativeName: negativeButton: a positiveButton: d altNegativeButton: left altPositiveButton: right gravity: 3 dead: 0 sensitivity: 3 snap: 1 invert: 0 type: 0 axis: 0 joyNum: 0 - serializedVersion: 3 m_Name: Vertical descriptiveName: descriptiveNegativeName: negativeButton: s positiveButton: w altNegativeButton: down altPositiveButton: up gravity: 3 dead: 0 sensitivity: 3 snap: 1 invert: 0 type: 0 axis: 1 joyNum: 0 - serializedVersion: 3 m_Name: Z descriptiveName: Z/Enter/Confirm descriptiveNegativeName: negativeButton: positiveButton: z altNegativeButton: altPositiveButton: enter gravity: 1000 dead: 0.001 sensitivity: 1000 snap: 0 invert: 0 type: 0 axis: 0 joyNum: 0 - serializedVersion: 3 m_Name: X descriptiveName: X/Shift/Cancel descriptiveNegativeName: negativeButton: positiveButton: x altNegativeButton: altPositiveButton: gravity: 1000 dead: 0.001 sensitivity: 1000 snap: 0 invert: 0 type: 0 axis: 0 joyNum: 0 - serializedVersion: 3 m_Name: C descriptiveName: C/Ctrl/Menu descriptiveNegativeName: negativeButton: positiveButton: c altNegativeButton: altPositiveButton: left ctrl gravity: 1000 dead: 0.001 sensitivity: 1000 snap: 0 invert: 0 type: 0 axis: 0 joyNum: 0 - serializedVersion: 3 m_Name: F4 descriptiveName: Fullscreen descriptiveNegativeName: negativeButton: positiveButton: f4 altNegativeButton: altPositiveButton: gravity: 1000 dead: 0.001 sensitivity: 1000 snap: 0 invert: 0 type: 0 axis: 0 joyNum: 0 - serializedVersion: 3 m_Name: DebugConsole descriptiveName: Debug Console descriptiveNegativeName: negativeButton: positiveButton: f9 altNegativeButton: altPositiveButton: gravity: 1000 dead: 0.001 sensitivity: 1000 snap: 0 invert: 0 type: 0 axis: 0 joyNum: 0 - serializedVersion: 3 m_Name: Submit descriptiveName: InputSubmit descriptiveNegativeName: negativeButton: positiveButton: mouse 2 altNegativeButton: altPositiveButton: z gravity: 1000 dead: 0.001 sensitivity: 1000 snap: 0 invert: 0 type: 0 axis: 0 joyNum: 0 - serializedVersion: 3 m_Name: Cancel descriptiveName: InputCancel descriptiveNegativeName: negativeButton: positiveButton: x altNegativeButton: altPositiveButton: mouse 1 gravity: 1000 dead: 0.001 sensitivity: 1000 snap: 0 invert: 0 type: 0 axis: 0 joyNum: 0 - serializedVersion: 3 m_Name: Horizontal1 descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: altNegativeButton: altPositiveButton: gravity: 0 dead: 0.1 sensitivity: 2 snap: 1 invert: 0 type: 2 axis: 0 joyNum: 1 - serializedVersion: 3 m_Name: Vertical1 descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: altNegativeButton: altPositiveButton: gravity: 0 dead: 0.1 sensitivity: 2 snap: 1 invert: 1 type: 2 axis: 1 joyNum: 1 - serializedVersion: 3 m_Name: Axis3-1 descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: altNegativeButton: altPositiveButton: gravity: 0 dead: 0.1 sensitivity: 2 snap: 1 invert: 0 type: 2 axis: 2 joyNum: 1 - serializedVersion: 3 m_Name: Axis4-1 descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: altNegativeButton: altPositiveButton: gravity: 0 dead: 0.1 sensitivity: 2 snap: 1 invert: 1 type: 2 axis: 3 joyNum: 1 - serializedVersion: 3 m_Name: Axis5-1 descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: altNegativeButton: altPositiveButton: gravity: 0 dead: 0.1 sensitivity: 2 snap: 1 invert: 1 type: 2 axis: 4 joyNum: 1 - serializedVersion: 3 m_Name: Axis6-1 descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: altNegativeButton: altPositiveButton: gravity: 0 dead: 0.1 sensitivity: 2 snap: 1 invert: 1 type: 2 axis: 5 joyNum: 1 - serializedVersion: 3 m_Name: Axis7-1 descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: altNegativeButton: altPositiveButton: gravity: 0 dead: 0.1 sensitivity: 2 snap: 1 invert: 1 type: 2 axis: 6 joyNum: 1 - serializedVersion: 3 m_Name: Axis8-1 descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: altNegativeButton: altPositiveButton: gravity: 0 dead: 0.1 sensitivity: 2 snap: 1 invert: 1 type: 2 axis: 7 joyNum: 1 - serializedVersion: 3 m_Name: Axis9-1 descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: altNegativeButton: altPositiveButton: gravity: 0 dead: 0.1 sensitivity: 2 snap: 1 invert: 1 type: 2 axis: 8 joyNum: 1 - serializedVersion: 3 m_Name: Axis10-1 descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: altNegativeButton: altPositiveButton: gravity: 0 dead: 0.1 sensitivity: 2 snap: 1 invert: 1 type: 2 axis: 9 joyNum: 1 - serializedVersion: 3 m_Name: Horizontal2 descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: altNegativeButton: altPositiveButton: gravity: 0 dead: 0.1 sensitivity: 2 snap: 1 invert: 1 type: 2 axis: 0 joyNum: 2 - serializedVersion: 3 m_Name: Vertical2 descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: altNegativeButton: altPositiveButton: gravity: 0 dead: 0.1 sensitivity: 2 snap: 1 invert: 1 type: 2 axis: 1 joyNum: 2 - serializedVersion: 3 m_Name: Axis3-2 descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: altNegativeButton: altPositiveButton: gravity: 0 dead: 0.1 sensitivity: 2 snap: 1 invert: 1 type: 2 axis: 2 joyNum: 2 - serializedVersion: 3 m_Name: Axis4-2 descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: altNegativeButton: altPositiveButton: gravity: 0 dead: 0.1 sensitivity: 2 snap: 1 invert: 1 type: 2 axis: 3 joyNum: 2 - serializedVersion: 3 m_Name: Axis5-2 descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: altNegativeButton: altPositiveButton: gravity: 0 dead: 0.1 sensitivity: 2 snap: 1 invert: 1 type: 2 axis: 4 joyNum: 2 - serializedVersion: 3 m_Name: Axis6-2 descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: altNegativeButton: altPositiveButton: gravity: 0 dead: 0.1 sensitivity: 2 snap: 1 invert: 1 type: 2 axis: 5 joyNum: 2 - serializedVersion: 3 m_Name: Axis7-2 descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: altNegativeButton: altPositiveButton: gravity: 0 dead: 0.1 sensitivity: 2 snap: 1 invert: 1 type: 2 axis: 6 joyNum: 2 - serializedVersion: 3 m_Name: Axis8-2 descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: altNegativeButton: altPositiveButton: gravity: 0 dead: 0.1 sensitivity: 2 snap: 1 invert: 1 type: 2 axis: 7 joyNum: 2 - serializedVersion: 3 m_Name: Axis9-2 descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: altNegativeButton: altPositiveButton: gravity: 0 dead: 0.1 sensitivity: 2 snap: 1 invert: 1 type: 2 axis: 8 joyNum: 2 - serializedVersion: 3 m_Name: Axis10-2 descriptiveName: descriptiveNegativeName: negativeButton: positiveButton: altNegativeButton: altPositiveButton: gravity: 0 dead: 0.1 sensitivity: 2 snap: 1 invert: 1 type: 2 axis: 9 joyNum: 2 ================================================ FILE: ProjectSettings/NavMeshAreas.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!126 &1 NavMeshAreas: m_ObjectHideFlags: 0 serializedVersion: 2 areas: - name: Walkable cost: 1 - name: Not Walkable cost: 1 - name: Jump cost: 2 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 - name: cost: 1 ================================================ FILE: ProjectSettings/NetworkManager.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!149 &1 NetworkManager: m_ObjectHideFlags: 0 m_DebugLevel: 0 m_Sendrate: 15 m_AssetToPrefab: {} ================================================ FILE: ProjectSettings/Physics2DSettings.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!19 &1 Physics2DSettings: m_ObjectHideFlags: 0 serializedVersion: 3 m_Gravity: {x: 0, y: -9.81} m_DefaultMaterial: {fileID: 0} m_VelocityIterations: 8 m_PositionIterations: 3 m_VelocityThreshold: 1 m_MaxLinearCorrection: 0.2 m_MaxAngularCorrection: 8 m_MaxTranslationSpeed: 100 m_MaxRotationSpeed: 360 m_BaumgarteScale: 0.2 m_BaumgarteTimeOfImpactScale: 0.75 m_TimeToSleep: 0.5 m_LinearSleepTolerance: 0.01 m_AngularSleepTolerance: 2 m_DefaultContactOffset: 0.01 m_AutoSimulation: 1 m_QueriesHitTriggers: 1 m_QueriesStartInColliders: 1 m_ChangeStopsCallbacks: 0 m_CallbacksOnDisable: 1 m_AutoSyncTransforms: 1 m_AlwaysShowColliders: 0 m_ShowColliderSleep: 1 m_ShowColliderContacts: 0 m_ShowColliderAABB: 0 m_ContactArrowScale: 0.2 m_ColliderAwakeColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.7529412} m_ColliderAsleepColor: {r: 0.5686275, g: 0.95686275, b: 0.54509807, a: 0.36078432} m_ColliderContactColor: {r: 1, g: 0, b: 1, a: 0.6862745} m_ColliderAABBColor: {r: 1, g: 1, b: 0, a: 0.2509804} m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff ================================================ FILE: ProjectSettings/PresetManager.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1386491679 &1 PresetManager: m_ObjectHideFlags: 0 m_DefaultList: [] ================================================ FILE: ProjectSettings/ProjectSettings.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!129 &1 PlayerSettings: m_ObjectHideFlags: 0 serializedVersion: 18 productGUID: 83115c396144adf4a80d37b36701163b AndroidProfiler: 0 AndroidFilterTouchesWhenObscured: 0 AndroidEnableSustainedPerformanceMode: 0 defaultScreenOrientation: 4 targetDevice: 2 useOnDemandResources: 0 accelerometerFrequency: 60 companyName: Nobody's Getting Paid Here productName: Create Your Frisk defaultCursor: {fileID: 0} cursorHotspot: {x: 0, y: 0} m_SplashScreenBackgroundColor: {r: 0.13725491, g: 0.12156863, b: 0.1254902, a: 1} m_ShowUnitySplashScreen: 1 m_ShowUnitySplashLogo: 1 m_SplashScreenOverlayOpacity: 1 m_SplashScreenAnimation: 1 m_SplashScreenLogoStyle: 1 m_SplashScreenDrawMode: 0 m_SplashScreenBackgroundAnimationZoom: 1 m_SplashScreenLogoAnimationZoom: 1 m_SplashScreenBackgroundLandscapeAspect: 1 m_SplashScreenBackgroundPortraitAspect: 1 m_SplashScreenBackgroundLandscapeUvs: serializedVersion: 2 x: 0 y: 0 width: 1 height: 1 m_SplashScreenBackgroundPortraitUvs: serializedVersion: 2 x: 0 y: 0 width: 1 height: 1 m_SplashScreenLogos: [] m_VirtualRealitySplashScreen: {fileID: 0} m_HolographicTrackingLossScreen: {fileID: 0} defaultScreenWidth: 640 defaultScreenHeight: 480 defaultScreenWidthWeb: 960 defaultScreenHeightWeb: 600 m_StereoRenderingPath: 0 m_ActiveColorSpace: 0 m_MTRendering: 1 m_StackTraceTypes: 010000000100000001000000010000000100000001000000 iosShowActivityIndicatorOnLoading: -1 androidShowActivityIndicatorOnLoading: -1 displayResolutionDialog: 0 iosUseCustomAppBackgroundBehavior: 0 iosAllowHTTPDownload: 1 allowedAutorotateToPortrait: 1 allowedAutorotateToPortraitUpsideDown: 1 allowedAutorotateToLandscapeRight: 1 allowedAutorotateToLandscapeLeft: 1 useOSAutorotation: 1 use32BitDisplayBuffer: 1 preserveFramebufferAlpha: 0 disableDepthAndStencilBuffers: 0 androidStartInFullscreen: 1 androidRenderOutsideSafeArea: 0 androidBlitType: 0 defaultIsNativeResolution: 1 macRetinaSupport: 0 runInBackground: 1 captureSingleScreen: 0 muteOtherAudioSources: 0 Prepare IOS For Recording: 0 Force IOS Speakers When Recording: 0 deferSystemGesturesMode: 0 hideHomeButton: 0 submitAnalytics: 1 usePlayerLog: 1 bakeCollisionMeshes: 0 forceSingleInstance: 1 resizableWindow: 0 useMacAppStoreValidation: 0 macAppStoreCategory: public.app-category.games gpuSkinning: 0 graphicsJobs: 0 xboxPIXTextureCapture: 0 xboxEnableAvatar: 0 xboxEnableKinect: 0 xboxEnableKinectAutoTracking: 0 xboxEnableFitness: 0 visibleInBackground: 1 allowFullscreenSwitch: 0 graphicsJobMode: 0 fullscreenMode: 1 xboxSpeechDB: 0 xboxEnableHeadOrientation: 0 xboxEnableGuest: 0 xboxEnablePIXSampling: 0 metalFramebufferOnly: 0 xboxOneResolution: 0 xboxOneSResolution: 0 xboxOneXResolution: 3 xboxOneMonoLoggingLevel: 0 xboxOneLoggingLevel: 1 xboxOneDisableEsram: 0 xboxOneEnableTypeOptimization: 0 xboxOnePresentImmediateThreshold: 0 switchQueueCommandMemory: 0 switchQueueControlMemory: 16384 switchQueueComputeMemory: 262144 switchNVNShaderPoolsGranularity: 33554432 switchNVNDefaultPoolsGranularity: 16777216 switchNVNOtherPoolsGranularity: 16777216 switchNVNMaxPublicTextureIDCount: 0 switchNVNMaxPublicSamplerIDCount: 0 vulkanEnableSetSRGBWrite: 0 m_SupportedAspectRatios: 4:3: 1 5:4: 0 16:10: 0 16:9: 0 Others: 0 bundleVersion: 1.0 preloadedAssets: [] metroInputSource: 0 wsaTransparentSwapchain: 0 m_HolographicPauseOnTrackingLoss: 1 xboxOneDisableKinectGpuReservation: 0 xboxOneEnable7thCore: 0 isWsaHolographicRemotingEnabled: 0 vrSettings: cardboard: depthFormat: 0 enableTransitionView: 0 daydream: depthFormat: 0 useSustainedPerformanceMode: 0 enableVideoLayer: 0 useProtectedVideoMemory: 0 minimumSupportedHeadTracking: 0 maximumSupportedHeadTracking: 1 hololens: depthFormat: 1 depthBufferSharingEnabled: 0 oculus: sharedDepthBuffer: 0 dashSupport: 0 lowOverheadMode: 0 protectedContext: 0 v2Signing: 0 enable360StereoCapture: 0 protectGraphicsMemory: 0 enableFrameTimingStats: 0 useHDRDisplay: 0 m_ColorGamuts: 00000000 targetPixelDensity: 30 resolutionScalingMode: 0 androidSupportedAspectRatio: 1 androidMaxAspectRatio: 2.1 applicationIdentifier: Android: com.Company.ProductName Standalone: unity.Nobody's Getting Paid Here.Create Your Frisk Tizen: com.Company.ProductName iOS: com.Company.ProductName tvOS: com.Company.ProductName buildNumber: iOS: 0 AndroidBundleVersionCode: 1 AndroidMinSdkVersion: 16 AndroidTargetSdkVersion: 0 AndroidPreferredInstallLocation: 1 aotOptions: stripEngineCode: 1 iPhoneStrippingLevel: 0 iPhoneScriptCallOptimization: 0 ForceInternetPermission: 0 ForceSDCardPermission: 0 CreateWallpaper: 0 APKExpansionFiles: 0 keepLoadedShadersAlive: 0 StripUnusedMeshComponents: 0 VertexChannelCompressionMask: 214 iPhoneSdkVersion: 988 iOSTargetOSVersionString: 9.0 tvOSSdkVersion: 0 tvOSRequireExtendedGameController: 0 tvOSTargetOSVersionString: 9.0 uIPrerenderedIcon: 0 uIRequiresPersistentWiFi: 0 uIRequiresFullScreen: 1 uIStatusBarHidden: 1 uIExitOnSuspend: 0 uIStatusBarStyle: 0 iPhoneSplashScreen: {fileID: 0} iPhoneHighResSplashScreen: {fileID: 0} iPhoneTallHighResSplashScreen: {fileID: 0} iPhone47inSplashScreen: {fileID: 0} iPhone55inPortraitSplashScreen: {fileID: 0} iPhone55inLandscapeSplashScreen: {fileID: 0} iPhone58inPortraitSplashScreen: {fileID: 0} iPhone58inLandscapeSplashScreen: {fileID: 0} iPadPortraitSplashScreen: {fileID: 0} iPadHighResPortraitSplashScreen: {fileID: 0} iPadLandscapeSplashScreen: {fileID: 0} iPadHighResLandscapeSplashScreen: {fileID: 0} appleTVSplashScreen: {fileID: 0} appleTVSplashScreen2x: {fileID: 0} tvOSSmallIconLayers: [] tvOSSmallIconLayers2x: [] tvOSLargeIconLayers: [] tvOSLargeIconLayers2x: [] tvOSTopShelfImageLayers: [] tvOSTopShelfImageLayers2x: [] tvOSTopShelfImageWideLayers: [] tvOSTopShelfImageWideLayers2x: [] iOSLaunchScreenType: 0 iOSLaunchScreenPortrait: {fileID: 0} iOSLaunchScreenLandscape: {fileID: 0} iOSLaunchScreenBackgroundColor: serializedVersion: 2 rgba: 0 iOSLaunchScreenFillPct: 100 iOSLaunchScreenSize: 100 iOSLaunchScreenCustomXibPath: iOSLaunchScreeniPadType: 0 iOSLaunchScreeniPadImage: {fileID: 0} iOSLaunchScreeniPadBackgroundColor: serializedVersion: 2 rgba: 0 iOSLaunchScreeniPadFillPct: 100 iOSLaunchScreeniPadSize: 100 iOSLaunchScreeniPadCustomXibPath: iOSUseLaunchScreenStoryboard: 0 iOSLaunchScreenCustomStoryboardPath: iOSDeviceRequirements: [] iOSURLSchemes: [] iOSBackgroundModes: 0 iOSMetalForceHardShadows: 0 metalEditorSupport: 1 metalAPIValidation: 1 iOSRenderExtraFrameOnPause: 1 iosCopyPluginsCodeInsteadOfSymlink: 0 appleDeveloperTeamID: iOSManualSigningProvisioningProfileID: tvOSManualSigningProvisioningProfileID: iOSManualSigningProvisioningProfileType: 0 tvOSManualSigningProvisioningProfileType: 0 appleEnableAutomaticSigning: 0 iOSRequireARKit: 0 iOSAutomaticallyDetectAndAddCapabilities: 1 appleEnableProMotion: 0 clonedFromGUID: 00000000000000000000000000000000 templatePackageId: templateDefaultScene: AndroidTargetArchitectures: 5 AndroidSplashScreenScale: 0 androidSplashScreen: {fileID: 0} AndroidKeystoreName: AndroidKeyaliasName: AndroidBuildApkPerCpuArchitecture: 0 AndroidTVCompatibility: 1 AndroidIsGame: 1 AndroidEnableTango: 0 androidEnableBanner: 1 androidUseLowAccuracyLocation: 0 m_AndroidBanners: - width: 320 height: 180 banner: {fileID: 0} androidGamepadSupportLevel: 0 resolutionDialogBanner: {fileID: 0} m_BuildTargetIcons: - m_BuildTarget: m_Icons: - serializedVersion: 2 m_Icon: {fileID: 2800000, guid: 7bae9fb73f53de94ca276879e10ab461, type: 3} m_Width: 128 m_Height: 128 m_Kind: 0 m_BuildTargetPlatformIcons: [] m_BuildTargetBatching: [] m_BuildTargetGraphicsAPIs: [] m_BuildTargetVRSettings: [] m_BuildTargetEnableVuforiaSettings: [] openGLRequireES31: 0 openGLRequireES31AEP: 0 m_TemplateCustomTags: {} mobileMTRendering: Android: 1 iPhone: 1 tvOS: 1 m_BuildTargetGroupLightmapEncodingQuality: - m_BuildTarget: Standalone m_EncodingQuality: 1 - m_BuildTarget: XboxOne m_EncodingQuality: 1 - m_BuildTarget: PS4 m_EncodingQuality: 1 m_BuildTargetGroupLightmapSettings: [] playModeTestRunnerEnabled: 0 runPlayModeTestAsEditModeTest: 0 actionOnDotNetUnhandledException: 1 enableInternalProfiler: 0 logObjCUncaughtExceptions: 1 enableCrashReportAPI: 0 cameraUsageDescription: locationUsageDescription: microphoneUsageDescription: switchNetLibKey: switchSocketMemoryPoolSize: 6144 switchSocketAllocatorPoolSize: 128 switchSocketConcurrencyLimit: 14 switchScreenResolutionBehavior: 2 switchUseCPUProfiler: 0 switchApplicationID: 0x0005000C10000001 switchNSODependencies: switchTitleNames_0: switchTitleNames_1: switchTitleNames_2: switchTitleNames_3: switchTitleNames_4: switchTitleNames_5: switchTitleNames_6: switchTitleNames_7: switchTitleNames_8: switchTitleNames_9: switchTitleNames_10: switchTitleNames_11: switchTitleNames_12: switchTitleNames_13: switchTitleNames_14: switchTitleNames_15: switchPublisherNames_0: switchPublisherNames_1: switchPublisherNames_2: switchPublisherNames_3: switchPublisherNames_4: switchPublisherNames_5: switchPublisherNames_6: switchPublisherNames_7: switchPublisherNames_8: switchPublisherNames_9: switchPublisherNames_10: switchPublisherNames_11: switchPublisherNames_12: switchPublisherNames_13: switchPublisherNames_14: switchPublisherNames_15: switchIcons_0: {fileID: 0} switchIcons_1: {fileID: 0} switchIcons_2: {fileID: 0} switchIcons_3: {fileID: 0} switchIcons_4: {fileID: 0} switchIcons_5: {fileID: 0} switchIcons_6: {fileID: 0} switchIcons_7: {fileID: 0} switchIcons_8: {fileID: 0} switchIcons_9: {fileID: 0} switchIcons_10: {fileID: 0} switchIcons_11: {fileID: 0} switchIcons_12: {fileID: 0} switchIcons_13: {fileID: 0} switchIcons_14: {fileID: 0} switchIcons_15: {fileID: 0} switchSmallIcons_0: {fileID: 0} switchSmallIcons_1: {fileID: 0} switchSmallIcons_2: {fileID: 0} switchSmallIcons_3: {fileID: 0} switchSmallIcons_4: {fileID: 0} switchSmallIcons_5: {fileID: 0} switchSmallIcons_6: {fileID: 0} switchSmallIcons_7: {fileID: 0} switchSmallIcons_8: {fileID: 0} switchSmallIcons_9: {fileID: 0} switchSmallIcons_10: {fileID: 0} switchSmallIcons_11: {fileID: 0} switchSmallIcons_12: {fileID: 0} switchSmallIcons_13: {fileID: 0} switchSmallIcons_14: {fileID: 0} switchSmallIcons_15: {fileID: 0} switchManualHTML: switchAccessibleURLs: switchLegalInformation: switchMainThreadStackSize: 1048576 switchPresenceGroupId: 0x0005000C10000001 switchLogoHandling: 0 switchReleaseVersion: 0 switchDisplayVersion: 1.0.0 switchStartupUserAccount: 0 switchTouchScreenUsage: 0 switchSupportedLanguagesMask: 0 switchLogoType: 0 switchApplicationErrorCodeCategory: switchUserAccountSaveDataSize: 0 switchUserAccountSaveDataJournalSize: 0 switchApplicationAttribute: 0 switchCardSpecSize: 4 switchCardSpecClock: 25 switchRatingsMask: 0 switchRatingsInt_0: 0 switchRatingsInt_1: 0 switchRatingsInt_2: 0 switchRatingsInt_3: 0 switchRatingsInt_4: 0 switchRatingsInt_5: 0 switchRatingsInt_6: 0 switchRatingsInt_7: 0 switchRatingsInt_8: 0 switchRatingsInt_9: 0 switchRatingsInt_10: 0 switchRatingsInt_11: 0 switchRatingsInt_12: 0 switchLocalCommunicationIds_0: 0x0005000C10000001 switchLocalCommunicationIds_1: switchLocalCommunicationIds_2: switchLocalCommunicationIds_3: switchLocalCommunicationIds_4: switchLocalCommunicationIds_5: switchLocalCommunicationIds_6: switchLocalCommunicationIds_7: switchParentalControl: 0 switchAllowsScreenshot: 1 switchAllowsVideoCapturing: 1 switchAllowsRuntimeAddOnContentInstall: 0 switchDataLossConfirmation: 0 switchUserAccountLockEnabled: 0 switchSystemResourceMemory: 16777216 switchSupportedNpadStyles: 3 switchNativeFsCacheSize: 32 switchIsHoldTypeHorizontal: 0 switchSupportedNpadCount: 8 switchSocketConfigEnabled: 0 switchTcpInitialSendBufferSize: 32 switchTcpInitialReceiveBufferSize: 64 switchTcpAutoSendBufferSizeMax: 256 switchTcpAutoReceiveBufferSizeMax: 256 switchUdpSendBufferSize: 9 switchUdpReceiveBufferSize: 42 switchSocketBufferEfficiency: 4 switchSocketInitializeEnabled: 1 switchNetworkInterfaceManagerInitializeEnabled: 1 switchPlayerConnectionEnabled: 1 ps4NPAgeRating: 12 ps4NPTitleSecret: ps4NPTrophyPackPath: ps4ParentalLevel: 1 ps4ContentID: ED1633-NPXX51362_00-0000000000000000 ps4Category: 0 ps4MasterVersion: 01.00 ps4AppVersion: 01.00 ps4AppType: 0 ps4ParamSfxPath: ps4VideoOutPixelFormat: 0 ps4VideoOutInitialWidth: 1920 ps4VideoOutBaseModeInitialWidth: 1920 ps4VideoOutReprojectionRate: 120 ps4PronunciationXMLPath: ps4PronunciationSIGPath: ps4BackgroundImagePath: ps4StartupImagePath: ps4StartupImagesFolder: ps4IconImagesFolder: ps4SaveDataImagePath: ps4SdkOverride: ps4BGMPath: ps4ShareFilePath: ps4ShareOverlayImagePath: ps4PrivacyGuardImagePath: ps4ExtraSceSysFile: ps4NPtitleDatPath: ps4RemotePlayKeyAssignment: -1 ps4RemotePlayKeyMappingDir: ps4PlayTogetherPlayerCount: 0 ps4EnterButtonAssignment: 1 ps4ApplicationParam1: 0 ps4ApplicationParam2: 0 ps4ApplicationParam3: 0 ps4ApplicationParam4: 0 ps4DownloadDataSize: 0 ps4GarlicHeapSize: 2048 ps4ProGarlicHeapSize: 2560 ps4Passcode: frAQBc8Wsa1xVPfvJcrgRYwTiizs2trQ ps4pnSessions: 1 ps4pnPresence: 1 ps4pnFriends: 1 ps4pnGameCustomData: 1 playerPrefsSupport: 0 enableApplicationExit: 0 resetTempFolder: 1 restrictedAudioUsageRights: 0 ps4UseResolutionFallback: 0 ps4ReprojectionSupport: 0 ps4UseAudio3dBackend: 0 ps4SocialScreenEnabled: 0 ps4ScriptOptimizationLevel: 3 ps4Audio3dVirtualSpeakerCount: 14 ps4attribCpuUsage: 0 ps4PatchPkgPath: ps4PatchLatestPkgPath: ps4PatchChangeinfoPath: ps4PatchDayOne: 0 ps4attribUserManagement: 0 ps4attribMoveSupport: 0 ps4attrib3DSupport: 0 ps4attribShareSupport: 0 ps4attribExclusiveVR: 0 ps4disableAutoHideSplash: 0 ps4videoRecordingFeaturesUsed: 0 ps4contentSearchFeaturesUsed: 0 ps4CompatibilityPS5: 0 ps4AllowPS5Detection: 0 ps4GPU800MHz: 1 ps4attribEyeToEyeDistanceSettingVR: 0 ps4IncludedModules: [] monoEnv: splashScreenBackgroundSourceLandscape: {fileID: 0} splashScreenBackgroundSourcePortrait: {fileID: 0} spritePackerPolicy: webGLMemorySize: 256 webGLExceptionSupport: 1 webGLNameFilesAsHashes: 0 webGLDataCaching: 0 webGLDebugSymbols: 0 webGLEmscriptenArgs: webGLModulesDirectory: webGLTemplate: APPLICATION:Default webGLAnalyzeBuildSize: 0 webGLUseEmbeddedResources: 0 webGLCompressionFormat: 1 webGLLinkerTarget: 0 webGLThreadsSupport: 0 scriptingDefineSymbols: {} platformArchitecture: iOS: 2 scriptingBackend: Android: 0 Metro: 2 Standalone: 0 WP8: 2 WebGL: 1 iOS: 1 il2cppCompilerConfiguration: {} managedStrippingLevel: {} incrementalIl2cppBuild: iOS: 0 allowUnsafeCode: 0 additionalIl2CppArgs: scriptingRuntimeVersion: 0 apiCompatibilityLevelPerPlatform: {} m_RenderingPath: 1 m_MobileRenderingPath: 1 metroPackageName: UDT metroPackageVersion: metroCertificatePath: metroCertificatePassword: metroCertificateSubject: metroCertificateIssuer: metroCertificateNotAfter: 0000000000000000 metroApplicationDescription: UDT wsaImages: {} metroTileShortName: metroTileShowName: 0 metroMediumTileShowName: 0 metroLargeTileShowName: 0 metroWideTileShowName: 0 metroSupportStreamingInstall: 0 metroLastRequiredScene: 0 metroDefaultTileSize: 1 metroTileForegroundText: 1 metroTileBackgroundColor: {r: 0, g: 0, b: 0, a: 1} metroSplashScreenBackgroundColor: {r: 0, g: 0, b: 0, a: 1} metroSplashScreenUseBackgroundColor: 0 platformCapabilities: {} metroTargetDeviceFamilies: {} metroFTAName: metroFTAFileTypes: [] metroProtocolName: metroCompilationOverrides: 1 XboxOneProductId: XboxOneUpdateKey: XboxOneSandboxId: XboxOneContentId: XboxOneTitleId: XboxOneSCId: XboxOneGameOsOverridePath: XboxOnePackagingOverridePath: XboxOneAppManifestOverridePath: XboxOneVersion: 1.0.0.0 XboxOnePackageEncryption: 0 XboxOnePackageUpdateGranularity: 2 XboxOneDescription: XboxOneLanguage: - enus XboxOneCapability: [] XboxOneGameRating: {} XboxOneIsContentPackage: 0 XboxOneEnableGPUVariability: 0 XboxOneSockets: {} XboxOneSplashScreen: {fileID: 0} XboxOneAllowedProductIds: [] XboxOnePersistentLocalStorageSize: 0 XboxOneXTitleMemory: 8 xboxOneScriptCompiler: 0 XboxOneOverrideIdentityName: vrEditorSettings: daydream: daydreamIconForeground: {fileID: 0} daydreamIconBackground: {fileID: 0} cloudServicesEnabled: {} luminIcon: m_Name: m_ModelFolderPath: m_PortalFolderPath: luminCert: m_CertPath: m_PrivateKeyPath: luminIsChannelApp: 0 luminVersion: m_VersionCode: 1 m_VersionName: facebookSdkVersion: 7.9.1 facebookAppId: facebookCookies: 1 facebookLogging: 1 facebookStatus: 1 facebookXfbml: 0 facebookFrictionlessRequests: 1 apiCompatibilityLevel: 2 cloudProjectId: framebufferDepthMemorylessMode: 0 projectName: organizationId: cloudEnabled: 0 enableNativePlatformBackendsForNewInputSystem: 0 disableOldInputManagerSupport: 0 legacyClampBlendShapeWeights: 1 ================================================ FILE: ProjectSettings/ProjectVersion.txt ================================================ m_EditorVersion: 2018.4.36f1 ================================================ FILE: ProjectSettings/QualitySettings.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!47 &1 QualitySettings: m_ObjectHideFlags: 0 serializedVersion: 5 m_CurrentQuality: 0 m_QualitySettings: - serializedVersion: 2 name: Unitale pixelLightCount: 1 shadows: 0 shadowResolution: 2 shadowProjection: 1 shadowCascades: 4 shadowDistance: 150 shadowNearPlaneOffset: 2 shadowCascade2Split: 0.33333334 shadowCascade4Split: {x: 0.06666667, y: 0.19999999, z: 0.46666664} shadowmaskMode: 0 blendWeights: 4 textureQuality: 0 anisotropicTextures: 0 antiAliasing: 0 softParticles: 0 softVegetation: 1 realtimeReflectionProbes: 1 billboardsFaceCameraPosition: 1 vSyncCount: 1 lodBias: 2 maximumLODLevel: 0 particleRaycastBudget: 4096 asyncUploadTimeSlice: 2 asyncUploadBufferSize: 4 resolutionScalingFixedDPIFactor: 1 excludedTargetPlatforms: [] m_PerPlatformDefaultQuality: Standalone: 0 WebGL: 0 iPhone: 0 ================================================ FILE: ProjectSettings/TagManager.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!78 &1 TagManager: serializedVersion: 2 tags: - Unpassible - Event layers: - Default - TransparentFX - Ignore Raycast - - Water - UI - - - Duster - - - - - - - - - BGLayer - - BlockingLayer - - EventLayer - - - UpperBGLayer - - - - EffectsLayer - - - SupremeLayer m_SortingLayers: - name: Default uniqueID: 0 locked: 0 - name: Foreground uniqueID: 1513848731 locked: 0 ================================================ FILE: ProjectSettings/TimeManager.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!5 &1 TimeManager: m_ObjectHideFlags: 0 Fixed Timestep: .0199999996 Maximum Allowed Timestep: .333333343 m_TimeScale: 1 ================================================ FILE: ProjectSettings/UnityConnectSettings.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!310 &1 UnityConnectSettings: m_ObjectHideFlags: 0 serializedVersion: 1 m_Enabled: 0 m_TestMode: 0 m_EventOldUrl: https://api.uca.cloud.unity3d.com/v1/events m_EventUrl: https://cdp.cloud.unity3d.com/v1/events m_ConfigUrl: https://config.uca.cloud.unity3d.com m_TestInitMode: 0 CrashReportingSettings: m_EventUrl: https://perf-events.cloud.unity3d.com m_Enabled: 0 m_LogBufferSize: 10 m_CaptureEditorExceptions: 1 UnityPurchasingSettings: m_Enabled: 0 m_TestMode: 0 UnityAnalyticsSettings: m_Enabled: 0 m_TestMode: 0 m_InitializeOnStartup: 1 UnityAdsSettings: m_Enabled: 0 m_InitializeOnStartup: 1 m_TestMode: 0 m_IosGameId: m_AndroidGameId: m_GameIds: {} m_GameId: PerformanceReportingSettings: m_Enabled: 0 ================================================ FILE: ProjectSettings/VFXManager.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!937362698 &1 VFXManager: m_ObjectHideFlags: 0 m_IndirectShader: {fileID: 0} m_CopyBufferShader: {fileID: 0} m_SortShader: {fileID: 0} m_RenderPipeSettingsPath: m_FixedTimeStep: 0.016666668 m_MaxDeltaTime: 0.05 ================================================ FILE: README.md ================================================ # Create Your Frisk - Lua moddable Undertale engine Welcome to the Git repository for **Create Your Frisk**, a fork of [**Unitale**](https://github.com/lvk/Unitale/) by lvk! When testing, you'll want to load the Disclaimer scene from the Scenes folder. Editing the Overworld requires **Unity** (see **Unity Version** below). We also have a [**Discord server**](https://discord.gg/GFJ5277)! Feel free to check it out if you want to be in touch with Unitale and Create Your Frisk's community! *** ## Download To download the engine, go to [**the releases page**](https://github.com/RhenaudTheLukark/CreateYourFrisk/releases). *** ## Unity Version CYF's latest version is **v0.6.6**. It was built using **Unity Personal 2018.4.36f1**, or Unity 2018's **Long Term Support** version. To get this version of Unity, either: * [**Download the Unity Hub**](https://unity3d.com/get-unity/download) or * [**Find it in the Unity Version Archive**](https://unity3d.com/get-unity/download/archive) (remember, it's **2018.4.36**). *** ## Required files Please keep the mods and the resources which are in the Mods and Default folders, unless you know what you're doing. ~~The only mods you can remove safely are Mionn and Donald Trump.~~ *(Removed as of CYF v0.6.2)* *** ## Licenses Create Your Frisk is released under the GNU General Public License 3.0. We are using MoonSharp as our Lua interpreter, written by Marco Mastropaolo. The binary is included in `/Assets/Plugins`. License details in `MOONSHARP_LICENSE`.