Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Dungeon Beta fixes by Eearslya and Debugbro
- // Adapted from code by Orteil
- // User guide:
- // - Arrow Keys, Space and A button are used for dungeons as soon as you click Enter Dungeon
- // - Clicking "Exit" gives you back normal control over these keys
- // - Arrow keys for movement, Space for standing still a turn, "A" key for turning autopilot
- // on/off
- // Bugfixes:
- // - Girlscout doesn't revert to Chip anymore
- // - Game shouldn't be frozen between two levels anymore
- // Changes:
- // - Dungeons display at the bottom of your screen, this is to make it display correctly
- // for people with small resolutions. Use http://pastebin.com/8unmeqvM if you don't want
- // this.
- TheDungeon = Game.Objects['Factory'].dungeon;
- Game.handleButton = function(event)
- {
- hero = TheDungeon.hero;
- if(Game.Objects['Factory'].onSpecial==1)
- {
- switch(event.keyCode) {
- case 38:hero.Move(0,-1);
- break;
- case 40:hero.Move(0,1);
- break;
- case 37:hero.Move(-1,0);
- break;
- case 39:hero.Move(1,0);
- break;
- case 32:hero.Move(0,0);
- break;
- case 65:changeAutopilot();
- break;
- }
- event.preventDefault();
- }
- }
- TheDungeon.CompleteLevel=function()
- {
- TheDungeon.hero.Say('completion');
- TheDungeon.level++;
- TheDungeon.Generate();
- Game.HeroesById[TheDungeon.hero.id].EnterDungeon(TheDungeon,TheDungeon.map.entrance[0],TheDungeon.map.entrance[1]);
- TheDungeon.Draw();
- TheDungeon.Refresh();
- l('monsterSlot'+TheDungeon.id).style.visibility='hidden';
- l('hpMonster'+TheDungeon.id).style.width='100%';
- l('picHero'+TheDungeon.id).style.backgroundImage='url(img/'+TheDungeon.hero.portrait+'.png)';
- TheDungeon.UpdateLog()
- }
- TheDungeon.FailLevel=function()
- {
- TheDungeon.Log('Cookies made this run : '+Beautify(TheDungeon.cookiesMadeThisRun)+' | Monsters defeated this run : '+Beautify(TheDungeon.monstersKilledThisRun));
- TheDungeon.cookiesMadeThisRun=0;
- TheDungeon.monstersKilledThisRun=0;
- TheDungeon.level=0;
- TheDungeon.Generate();
- newhero=choose(Game.HeroesById);
- newhero.EnterDungeon(TheDungeon,TheDungeon.map.entrance[0],TheDungeon.map.entrance[1]);
- TheDungeon.Draw();
- TheDungeon.Refresh();
- l('monsterSlot'+TheDungeon.id).style.visibility='hidden';
- l('hpMonster'+TheDungeon.id).style.width='100%';
- l('picHero'+TheDungeon.id).style.backgroundImage='url(img/'+TheDungeon.hero.portrait+'.png)';
- TheDungeon.UpdateLog()
- }
- function changeAutopilot()
- {
- if(TheDungeon.auto)
- {
- TheDungeon.auto=0;
- TheDungeon.timerWarmup=-1;
- Game.Popup("Autopilot disengaged");
- }
- else
- {
- TheDungeon.auto=1;
- TheDungeon.timer=0;
- TheDungeon.timerWarmup=0;
- Game.Popup("Autopilot engaged");
- }
- }
- Game.Objects['Factory'].setSpecial=function(what)
- {
- if (what==1) Game.Objects['Factory'].onSpecial=1;
- else Game.Objects['Factory'].onSpecial=0;
- if (Game.Objects['Factory'].id!=0)
- {
- if (Game.Objects['Factory'].onSpecial)
- {
- l('rowSpecial'+Game.Objects['Factory'].id).style.display='block';
- l('dunpopup').style.visibility='visible';
- if (Game.Objects['Factory'].specialDrawFunction) Game.Objects['Factory'].specialDrawFunction();
- }
- else
- {
- l('rowSpecial'+Game.Objects['Factory'].id).style.display='none';
- l('dunpopup').style.visibility='hidden';
- }
- }
- }
- document.addEventListener('keydown', function(event) { Game.handleButton(event); });
- dunpopup = document.createElement('div');
- dunpopup.id="dunpopup";
- document.body.appendChild(dunpopup);
- l('dunpopup').appendChild(l('rowSpecial'+Game.Objects['Factory'].id));
- style = document.createElement('style');
- style.type = 'text/css';
- style.innerHTML = '.dungeonName {position:relative;z-index:100000001;} #dunpopup {vertical-align:middle;position:absolute;border:1px solid #FFF;background:#000 url(img/mapBG.jpg) fixed;visibility:hidden;height:144px;width:798px;overflow:hidden;text-align:left;z-index:100000000;bottom:0;} .particle {z-index:100000002;}';
- document.head.appendChild(style);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement