mirror of
https://github.com/2009scape/2009scape.github.io.git
synced 2024-11-05 02:22:30 +01:00
401 lines
15 KiB
JavaScript
401 lines
15 KiB
JavaScript
|
var buttons = {
|
||
|
|
||
|
// Variables
|
||
|
|
||
|
homeButtonsDisabled : false, // Block any enabling home button process when true
|
||
|
|
||
|
// Functions
|
||
|
|
||
|
enableHomeButtons : function(){
|
||
|
if(this.homeButtonsDisabled == true){
|
||
|
this.homeButtonsDisabled = false;
|
||
|
htmlInteraction.enableButtonClass("home_button");
|
||
|
this.checkHomeEnabled();
|
||
|
}
|
||
|
},
|
||
|
|
||
|
enableButton : function(name){
|
||
|
// If the home buttons are enabled or our button isn't a home button
|
||
|
if(this.homeButtonsDisabled == false || htmlInteraction.getElement(name).className != "home_button"){
|
||
|
htmlInteraction.enableButton(name);
|
||
|
}
|
||
|
},
|
||
|
|
||
|
checkEatAndThrowButtons : function(){
|
||
|
// Show the eat button
|
||
|
if(candies.nbrOwned >= 1){
|
||
|
htmlInteraction.showButton("eat");
|
||
|
this.enableButton("eat");
|
||
|
}
|
||
|
else htmlInteraction.disableButton("eat");
|
||
|
|
||
|
// Show the throw button
|
||
|
if(candies.nbrOwned >= 10){
|
||
|
htmlInteraction.showButton("throw_10");
|
||
|
this.enableButton("throw_10");
|
||
|
}
|
||
|
else htmlInteraction.disableButton("throw_10");
|
||
|
},
|
||
|
|
||
|
checkHomeEnabled : function(){
|
||
|
this.checkEatAndThrowButtons();
|
||
|
this.checkQuestBuyingButtons();
|
||
|
this.checkEncrustSwordButton();
|
||
|
this.checkPolishSwordButton();
|
||
|
this.checkCoatSwordButton();
|
||
|
this.checkLollipopsStockShortage();
|
||
|
this.checkObjects();
|
||
|
this.checkLollipopsPlantingButtons();
|
||
|
this.checkQuestTiredTime();
|
||
|
},
|
||
|
|
||
|
checkCandies : function(){
|
||
|
this.checkEatAndThrowButtons();
|
||
|
this.checkQuestBuyingButtons();
|
||
|
this.checkEncrustSwordButton();
|
||
|
this.checkLollipopsStockShortage();
|
||
|
this.checkWishingWell();
|
||
|
},
|
||
|
|
||
|
checkSword : function(){
|
||
|
this.checkQuestBuyingButtons();
|
||
|
this.checkEncrustSwordButton();
|
||
|
this.checkPolishSwordButton();
|
||
|
this.checkCoatSwordButton();
|
||
|
this.checkTabPanel();
|
||
|
},
|
||
|
|
||
|
checkTabPanel : function(){
|
||
|
// If we have a sword
|
||
|
if(sword.name != "none"){
|
||
|
// We enable the tab bar
|
||
|
htmlInteraction.setElementDisplay("tabBar", "");
|
||
|
// And we enable some tabs
|
||
|
tabs.enable(0);
|
||
|
tabs.enable(1);
|
||
|
tabs.enable(2);
|
||
|
// And we show the switch tabs button
|
||
|
htmlInteraction.showButtonClass("toggle");
|
||
|
}
|
||
|
},
|
||
|
|
||
|
checkQuestBuyingButtons : function(){
|
||
|
// Enable/disable quest buying buttons (show/hide is handle by sword&shop algorithms)
|
||
|
|
||
|
// Swords
|
||
|
if(shop.currentSwordButtonId != "none"){ // If the merchant is selling a sword right now
|
||
|
if(candies.nbrOwned >= shop.currentSwordPrice) this.enableButton(shop.currentSwordButtonId);
|
||
|
else htmlInteraction.disableButton(shop.currentSwordButtonId);
|
||
|
}
|
||
|
|
||
|
// Potions & scrolls
|
||
|
if(candies.nbrOwned >= 600) this.enableButton("buy_health_potion");
|
||
|
else htmlInteraction.disableButton("buy_health_potion");
|
||
|
|
||
|
if(candies.nbrOwned >= 150) this.enableButton("buy_escape_potion");
|
||
|
else htmlInteraction.disableButton("buy_escape_potion");
|
||
|
|
||
|
if(candies.nbrOwned >= 400) this.enableButton("buy_scroll");
|
||
|
else htmlInteraction.disableButton("buy_scroll");
|
||
|
},
|
||
|
|
||
|
checkEncrustSwordButton : function(){
|
||
|
// Show the encrust the diamond sword button
|
||
|
if(candies.nbrOwned >= 101 && sword.name == "diamond sword"){
|
||
|
htmlInteraction.showButton("encrust");
|
||
|
this.enableButton("encrust");
|
||
|
htmlInteraction.setElementDisplay("encrust", "inline");
|
||
|
htmlInteraction.setElementDisplay("polish", "none");
|
||
|
htmlInteraction.setElementDisplay("coat", "none");
|
||
|
}
|
||
|
else htmlInteraction.disableButton("encrust");
|
||
|
},
|
||
|
|
||
|
checkPolishSwordButton : function(){
|
||
|
// Show the polish the diamond sword button
|
||
|
if(lollipops.nbrOwned >= 30 && sword.name == "candy diamond sword"){
|
||
|
htmlInteraction.showButton("polish");
|
||
|
this.enableButton("polish");
|
||
|
htmlInteraction.setElementDisplay("encrust", "none");
|
||
|
htmlInteraction.setElementDisplay("polish", "inline");
|
||
|
htmlInteraction.setElementDisplay("coat", "none");
|
||
|
}
|
||
|
else htmlInteraction.disableButton("polish");
|
||
|
},
|
||
|
|
||
|
checkLollipops : function(){
|
||
|
this.checkPolishSwordButton();
|
||
|
this.checkLollipopsPlantingButtons();
|
||
|
this.checkHut();
|
||
|
this.checkLollipopsStockShortage();
|
||
|
this.checkComputer();
|
||
|
},
|
||
|
|
||
|
checkComputer : function(){
|
||
|
if(lollipops.nbrOwned >= 1000000){
|
||
|
htmlInteraction.showButton("computer_bug_1");
|
||
|
htmlInteraction.showButton("computer_comment_1");
|
||
|
}
|
||
|
else{
|
||
|
htmlInteraction.hideButton("computer_bug_1");
|
||
|
}
|
||
|
|
||
|
if(lollipops.nbrOwned >= 10000000){
|
||
|
htmlInteraction.showButton("computer_bug_2");
|
||
|
htmlInteraction.showButton("computer_comment_2");
|
||
|
}
|
||
|
else{
|
||
|
htmlInteraction.hideButton("computer_bug_2");
|
||
|
}
|
||
|
|
||
|
if(lollipops.nbrOwned >= 100000000){
|
||
|
htmlInteraction.showButton("computer_bug_3");
|
||
|
htmlInteraction.showButton("computer_comment_3");
|
||
|
}
|
||
|
else{
|
||
|
htmlInteraction.hideButton("computer_bug_3");
|
||
|
}
|
||
|
|
||
|
if(lollipops.nbrOwned >= 1000000000){
|
||
|
htmlInteraction.showButton("computer_bug_4");
|
||
|
htmlInteraction.showButton("computer_comment_4");
|
||
|
}
|
||
|
else{
|
||
|
htmlInteraction.hideButton("computer_bug_4");
|
||
|
}
|
||
|
|
||
|
if(lollipops.nbrOwned >= 10000000000){
|
||
|
htmlInteraction.showButton("computer_bug_5");
|
||
|
htmlInteraction.showButton("computer_comment_5");
|
||
|
htmlInteraction.showButton("computer_note");
|
||
|
}
|
||
|
else{
|
||
|
htmlInteraction.hideButton("computer_bug_5");
|
||
|
}
|
||
|
|
||
|
if(lollipops.nbrOwned >= 100000000000) htmlInteraction.showButton("computer_bug_6");
|
||
|
else htmlInteraction.hideButton("computer_bug_6");
|
||
|
|
||
|
if(lollipops.nbrOwned >= 1000000000000) htmlInteraction.showButton("computer_bug_7");
|
||
|
else htmlInteraction.hideButton("computer_bug_7");
|
||
|
|
||
|
if(lollipops.nbrOwned >= 10000000000000) htmlInteraction.showButton("computer_bug_8");
|
||
|
else htmlInteraction.hideButton("computer_bug_8");
|
||
|
},
|
||
|
|
||
|
checkCoatSwordButton : function(){
|
||
|
// Show the coat the diamond blbl sword button
|
||
|
if(chocolateBars.nbrOwned >= 1 && sword.name == "polished candy diamond sword"){
|
||
|
htmlInteraction.showButton("coat");
|
||
|
this.enableButton("coat");
|
||
|
htmlInteraction.setElementDisplay("encrust", "none");
|
||
|
htmlInteraction.setElementDisplay("polish", "none");
|
||
|
htmlInteraction.setElementDisplay("coat", "inline");
|
||
|
}
|
||
|
else htmlInteraction.disableButton("coat");
|
||
|
},
|
||
|
|
||
|
checkChocolateBars : function(){
|
||
|
this.checkCoatSwordButton();
|
||
|
},
|
||
|
|
||
|
checkLollipopsStockShortage : function(){
|
||
|
// If the shop is shown
|
||
|
if(shop.shown){
|
||
|
// If there's a lollipops stock shortage
|
||
|
if(lollipops.stockShortage == true){
|
||
|
// We show the stock shortage and hide the buttons used to buy lollipops
|
||
|
htmlInteraction.setElementVisibility("lollipops_stock_shortage", true);
|
||
|
htmlInteraction.hideButton("buy_1_lollipop");
|
||
|
htmlInteraction.hideButton("buy_10_lollipops");
|
||
|
}
|
||
|
// Else, no lollipops stock shortage
|
||
|
else{
|
||
|
// We don't show the stock shortage
|
||
|
htmlInteraction.setElementVisibility("lollipops_stock_shortage", false);
|
||
|
// We show and maybe enable the button to buy one lollipop
|
||
|
htmlInteraction.showButton("buy_1_lollipop");
|
||
|
if(candies.nbrOwned >= shop.oneLollipopPrice) this.enableButton("buy_1_lollipop");
|
||
|
else htmlInteraction.disableButton("buy_1_lollipop");
|
||
|
// We maybe show and maybe enable the button to buy 500 lollipops
|
||
|
if(candies.nbrOwned >= shop.tenLollipopsPrice || shop.buy10LollipopsButtonShown){
|
||
|
shop.setBuy10LollipopsButtonShown(true);
|
||
|
if(htmlInteraction.isElementVisible("buy_10_lollipops") == false){ // If it wasn't shown yet
|
||
|
htmlInteraction.showButton("buy_10_lollipops");
|
||
|
shop.setMerchantSpeech("There's now a discount for 10 lollipops! Buy them please.. I need candiiiies!");
|
||
|
}
|
||
|
this.enableButton("buy_10_lollipops");
|
||
|
}
|
||
|
if(candies.nbrOwned < shop.tenLollipopsPrice) htmlInteraction.disableButton("buy_10_lollipops");
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
|
||
|
checkObjects : function(){
|
||
|
// Show the button to go to the swamp map
|
||
|
if(objects.list.swampMap.have){
|
||
|
htmlInteraction.setElementDisplay("go_to_swamp", "block");
|
||
|
htmlInteraction.showButton("go_to_swamp");
|
||
|
this.enableButton("go_to_swamp");
|
||
|
}
|
||
|
// Show the button to go to the hut
|
||
|
if(objects.list.hutMap.have){
|
||
|
htmlInteraction.setElementDisplay("go_to_hut", "block");
|
||
|
htmlInteraction.showButton("go_to_hut");
|
||
|
this.enableButton("go_to_hut");
|
||
|
}
|
||
|
// Show the button to go to the wishing well
|
||
|
if(objects.list.wellMap.have){
|
||
|
htmlInteraction.setElementDisplay("go_to_well", "block");
|
||
|
htmlInteraction.showButton("go_to_well");
|
||
|
this.enableButton("go_to_well");
|
||
|
}
|
||
|
// Show the button to go to the forge
|
||
|
if(objects.list.forgeMap.have){
|
||
|
htmlInteraction.setElementDisplay("go_to_forge", "block");
|
||
|
htmlInteraction.showButton("go_to_forge");
|
||
|
this.enableButton("go_to_forge");
|
||
|
}
|
||
|
|
||
|
// Check the farm visibility
|
||
|
farm.checkVisibility();
|
||
|
|
||
|
// Check some farm's buttons
|
||
|
this.checkLollipopsPlantingButtons();
|
||
|
|
||
|
// Check the candies converter visibility
|
||
|
candiesConverter.checkVisibility();
|
||
|
|
||
|
// Check the cauldron visibility
|
||
|
cauldron.checkVisibility();
|
||
|
},
|
||
|
|
||
|
checkLollipopsPlantingButtons : function(){
|
||
|
// If we have the key of the lollipop farm
|
||
|
if(objects.list.key.have){
|
||
|
// innerHtml of the lp_buttons span
|
||
|
|
||
|
// Plant 1000 button
|
||
|
if(lollipops.nbrOwned >= 1000 && farm.plantingButtonsStep < 4){
|
||
|
farm.setPlantingButtonsStep(4);
|
||
|
}
|
||
|
// Plant 100 button
|
||
|
else if(lollipops.nbrOwned >= 100 && farm.plantingButtonsStep < 3){
|
||
|
farm.setPlantingButtonsStep(3);
|
||
|
}
|
||
|
// Plant 10 button
|
||
|
else if(lollipops.nbrOwned >= 10 && farm.plantingButtonsStep < 2){
|
||
|
farm.setPlantingButtonsStep(2);
|
||
|
}
|
||
|
// Plant 1 button
|
||
|
else if(farm.plantingButtonsStep < 1){
|
||
|
farm.setPlantingButtonsStep(1);
|
||
|
}
|
||
|
|
||
|
// Buttons activation
|
||
|
|
||
|
// Plant 1000 button
|
||
|
if(farm.plantingButtonsStep >= 4){
|
||
|
htmlInteraction.showButton("plant_1000_lp");
|
||
|
if(lollipops.nbrOwned >= 1000){
|
||
|
this.enableButton("plant_1000_lp");
|
||
|
}
|
||
|
else htmlInteraction.disableButton("plant_1000_lp");
|
||
|
}
|
||
|
// Plant 100 button
|
||
|
if(farm.plantingButtonsStep >= 3){
|
||
|
htmlInteraction.showButton("plant_100_lp");
|
||
|
if(lollipops.nbrOwned >= 100){
|
||
|
this.enableButton("plant_100_lp");
|
||
|
}
|
||
|
else htmlInteraction.disableButton("plant_100_lp");
|
||
|
}
|
||
|
// Plant 10 button
|
||
|
if(farm.plantingButtonsStep >= 2){
|
||
|
htmlInteraction.showButton("plant_10_lp");
|
||
|
if(lollipops.nbrOwned >= 10){
|
||
|
this.enableButton("plant_10_lp");
|
||
|
}
|
||
|
else htmlInteraction.disableButton("plant_10_lp");
|
||
|
}
|
||
|
// Plant 1 button
|
||
|
if(farm.plantingButtonsStep >= 1){
|
||
|
htmlInteraction.showButton("plant_1_lp");
|
||
|
if(lollipops.nbrOwned >= 1){
|
||
|
this.enableButton("plant_1_lp");
|
||
|
}
|
||
|
else htmlInteraction.disableButton("plant_1_lp");
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
|
||
|
checkQuestTiredTime : function(){
|
||
|
// Buttons related to the quest tired time
|
||
|
if(quest.tiredTime == 0 && quest.weAreQuestingRightNow == false) this.enableButton("quest_button");
|
||
|
else htmlInteraction.disableButton("quest_button");
|
||
|
},
|
||
|
|
||
|
checkHut : function(){
|
||
|
if(hut.shown){
|
||
|
switch(hut.step){
|
||
|
case 0:
|
||
|
htmlInteraction.showButton("hut_throw_lollipops");
|
||
|
if(lollipops.nbrOwned >= 10){
|
||
|
this.enableButton("hut_throw_lollipops");
|
||
|
}
|
||
|
else htmlInteraction.disableButton("hut_throw_lollipops");
|
||
|
break;
|
||
|
case 2:
|
||
|
for(var i = 0; i < spells.list.length; i++){
|
||
|
if(hut.canThisSpellBeUsed(i)){
|
||
|
this.enableButton("hut_spell_" + i);
|
||
|
}
|
||
|
else htmlInteraction.disableButton("hut_spell_" + i);
|
||
|
}
|
||
|
// Special surpass button
|
||
|
if(quest.maxLandOrder == 7 && yourself.canSurpass == false){
|
||
|
if(lollipops.nbrOwned >= 1000000) this.enableButton("hut_surpass");
|
||
|
else htmlInteraction.disableButton("hut_surpass");
|
||
|
}
|
||
|
break;
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
|
||
|
checkWishingWell : function(){
|
||
|
if(wishingWell.shown){
|
||
|
switch(wishingWell.step){
|
||
|
case 0:
|
||
|
if(candies.nbrOwned >= 1){
|
||
|
this.enableButton("wishingWell_throw_candy");
|
||
|
}
|
||
|
else htmlInteraction.disableButton("wishingWell_throw_candy");
|
||
|
break;
|
||
|
}
|
||
|
}
|
||
|
},
|
||
|
|
||
|
checkForge : function(){
|
||
|
if(forge.shown && forge.step == 1){
|
||
|
// Health
|
||
|
if(potions.list.health.shown && potions.list.health.nbrOwned >= 1){
|
||
|
this.enableButton("enchant_health");
|
||
|
}
|
||
|
else htmlInteraction.disableButton("enchant_health");
|
||
|
|
||
|
// Fire
|
||
|
if(potions.list.fireScroll.shown && potions.list.fireScroll.nbrOwned >= 1){
|
||
|
this.enableButton("enchant_fire");
|
||
|
}
|
||
|
else htmlInteraction.disableButton("enchant_fire");
|
||
|
|
||
|
// Imp invocation
|
||
|
if(potions.list.impInvocationScroll.shown && potions.list.impInvocationScroll.nbrOwned >= 1){
|
||
|
this.enableButton("enchant_imp_invocation");
|
||
|
}
|
||
|
else htmlInteraction.disableButton("enchant_imp_invocation");
|
||
|
}
|
||
|
}
|
||
|
|
||
|
};
|