124 lines
3.6 KiB
JavaScript
124 lines
3.6 KiB
JavaScript
|
|
function present(navn,ID,image) {
|
|
this.navn = navn;
|
|
this.ID = ID;
|
|
this.image = image;
|
|
this.enabled = true;
|
|
}
|
|
|
|
var yourPresents = [];
|
|
|
|
function newPresent(navn,image) {
|
|
var hits = 0;
|
|
for (var i = 0; i < yourPresents.length; i++) {
|
|
if (yourPresents[i].navn == navn) {
|
|
hits++;
|
|
}
|
|
}
|
|
var newPresent = new present(navn,navn + hits,image);
|
|
yourPresents.push(newPresent);
|
|
}
|
|
|
|
//newPresent("small soft present","smallSoftPresent");
|
|
//newPresent("medium hard present","mediumHardPresent");
|
|
//newPresent("big massive present","bigMassivePresent");
|
|
|
|
function goOpenPresent(arrayNr) {
|
|
yourPresents[arrayNr].enabled = false;
|
|
var giftDelays = [];
|
|
if (state.impatientMode) {
|
|
giftDelays = [50,100];
|
|
} else {
|
|
giftDelays = [1500,2000];
|
|
}
|
|
changeScene("Let's open this bad boy",yourPresents[arrayNr].image);
|
|
setTimeout(function() {
|
|
playSound(soundEffect.explosion);
|
|
changeScene("GIFT EXPLOSION!!!","explosion");
|
|
},giftDelays[0]);
|
|
setTimeout(function() {
|
|
var prize = pickPrize(yourPresents[arrayNr]);
|
|
changeScene("You get " + prize.navn + "!! Yay",prize.img);
|
|
if (place == "newPresent") {
|
|
createButton("Well well",slotMachine);
|
|
} else if (place == "dungeonSummary") {
|
|
createGoButton("Well well","talk",backFromPresent,true);
|
|
} else {
|
|
createButton("Well well","talk",backFromGift);
|
|
}
|
|
|
|
},giftDelays[1]);
|
|
}
|
|
|
|
var prizes = [];
|
|
|
|
function prize(navn,image,availability,rarity,resource,amount) {
|
|
this.navn = navn;
|
|
this.img = image;
|
|
this.availability = availability;
|
|
this.rarity = rarity;
|
|
this.resource = resource;
|
|
this.amount = amount;
|
|
}
|
|
|
|
function newPrize(navn,image,availability,rarity,resource,amount) {
|
|
var newPrize = new prize(navn,image,availability,rarity,resource,amount);
|
|
prizes.push(newPrize);
|
|
}
|
|
|
|
function pickPrize(present) {
|
|
var presentAvailability = 0;
|
|
if (present.navn == "small soft present") {
|
|
availability = 3;
|
|
} else if (present.navn == "medium hard present") {
|
|
availability = 2;
|
|
} else if (present.navn == "big massive present") {
|
|
availability = 1;
|
|
}
|
|
var presentScores = [];
|
|
for (var i = 0; i < prizes.length; i++) {
|
|
if (prizes[i].availability <= availability) {
|
|
var score = prizes[i].rarity * Math.random();
|
|
presentScores.push(score);
|
|
} else {
|
|
presentScores.push(0);
|
|
}
|
|
}
|
|
var highscore = 0;
|
|
var magicNumber = 0;
|
|
for (var i = 0; i < prizes.length; i++) {
|
|
if (presentScores[i] > highscore) {
|
|
highscore = presentScores[i];
|
|
magicNumber = i;
|
|
}
|
|
}
|
|
|
|
if (prizes[magicNumber].resource == "wood") {
|
|
updateState('wood', state.wood + prizes[magicNumber].amount);
|
|
} else if (prizes[magicNumber].resource == "coco") {
|
|
updateState('coco', state.coco + prizes[magicNumber].amount);
|
|
} else if (prizes[magicNumber].resource == "gold") {
|
|
updateState('gold', state.gold + prizes[magicNumber].amount);
|
|
} else if (prizes[magicNumber].resource == "stardust") {
|
|
updateState('stardust', state.stardust + prizes[magicNumber].amount);
|
|
}
|
|
|
|
return prizes[magicNumber];
|
|
|
|
}
|
|
|
|
newPrize("150 wood","wood",3,10,"wood",150);
|
|
newPrize("300 wood","wood",3,8,"wood",300);
|
|
newPrize("1000 wood","wood",2,6,"wood",1000);
|
|
newPrize("150 coco","coco",3,10,"coco",150);
|
|
newPrize("300 coco","coco",3,8,"coco",300);
|
|
newPrize("1000 coco","coco",2,6,"coco",1000);
|
|
newPrize("50 gold","gold",3,8,"gold",50);
|
|
newPrize("100 gold","gold",2,6,"gold",100);
|
|
newPrize("500 gold","gold",1,3,"gold",500);
|
|
newPrize("1000 gold","gold",1,1,"gold",1000);
|
|
newPrize("1 stardust","stardust",3,8,"stardust",1);
|
|
newPrize("1 stardust","stardust",3,8,"stardust",1);
|
|
newPrize("3 stardust","stardust",2,5,"stardust",3);
|
|
newPrize("10 stardust","stardust",1,3,"stardust",10);
|
|
newPrize("30 stardust","stardust",1,1,"stardust",30); |