unity3d - Issue using .Contains with application.loadedlevel/loadlevel -



unity3d - Issue using .Contains with application.loadedlevel/loadlevel -

i'm working on script returns right scene when pressing escape. in dataupgrade, level select, transferdata(x) should homecoming startmenu, in startmenu should close game , in level(x) should homecoming transferdata(x). next script has been made help functionr.

#pragma strict import system; function update () { if (input.getkey ("escape")) { var level : string = application.loadedlevel.tostring(); //var transferdata = "transferdata"; if(level == "startmenu"){ application.quit(); } else if(level == "dataupgrade"){ application.loadlevel("startmenu"); } else if(level == "level select"){ application.loadlevel("startmenu"); } else if(level.contains("transferdata")) application.loadlevel("startmenu"); else if(level.contains("level")) application.loadlevel (application.loadedlevel - 1); //trying out isn't working either /*else if( transferdata in level) application.loadlevel("startmenu"); else if("level" in level) application.loadlevel (application.loadedlevel - 1);*/ } }

i'm not sure why it's not working, scenes have right names , have been added build settings. in advance

quick fix

this how prepare it, , don't need for loop. utilize contains() hard work.

import system; function update () { if (input.getkey ("escape")) { var level : string = application.loadedlevel.tostring(); if(level == "startmenu") application.quit(); else if(level == "dataupgrade") application.loadlevel("startmenu"); else if(level == "level select") application.loadlevel("startmenu"); else if(level.contains("transferdata") application.loadlevel("startmenu"); } } smart fix

you can smart , take advantage of or operator cut down related if statements.

else if(level == "dataupgrade" || level == "level select" || level.contains("transferdata") application.loadlevel("startmenu"); sneaky fix

you can sneaky since other cases, except one, takes startmenu. can have else guarantees homecoming startmenu.

if(application.loadedlevel == "startmenu") application.quit(); else application.loadlevel("startmenu");

unity3d unityscript

Comments

Popular posts from this blog

xslt - DocBook 5 to PDF transform failing with error: "fo:flow" is missing child elements. Required content model: marker* -

mediawiki - How do I insert tables inside infoboxes on Wikia pages? -

Local Service User Logged into Windows -