["051",-20, "固形の薬品", "キケンな感じ。中身は白い粉…"],
["052", -3, "枯れ葉", "命を繋ぐ大切な自然の形。"],
];
-
+/*
var IngredientCombinationList = [
[["024", "046"],"ナメクジは塩をかけて消すことができた!"],
[["003", "015"],"生肉と油でこんがり肉をつくった!"],
];
-
+*/
var IngredientImageList = new Array();
for(var i = 0, i_max = IngredientAttributeList.length; i < i_max; i++){
this.size.y = 96;
this.isPhantom = true;
this.isSelecting = false;
+ this.basePoint = 0;
+ this.bakingTickCount = 0;
+ this.bakingCount = 0;
+ this.isBaking = false;
}.extend(BlockClass, {
tick : function()
{
if(this.ownerStage.manager.UIManager.keyState.select && !this.isSelecting){
var that = this;
var thatManager = that.ownerStage.manager;
- if(thatManager.userManager.ingredientList.length <= 0){
- thatManager.addWidget(new MessageWidgetClass(thatManager, ["手持ちの材料がありません!\n"]));
- that.isSelecting = false;
- } else{
- this.isSelecting = true;
- thatManager.addWidget(
- new SelectWidgetClass(thatManager, [thatManager.userManager.ingredientList, function(retv){
- if(retv){
- if(retv.length > 0){
- thatManager.addWidget(new MessageWidgetClass(thatManager, [retv.length + "個の材料が選択されました。\n"]));
+ if(!this.isBaking){
+ //焼き始め
+ if(thatManager.userManager.ingredientList.length <= 0){
+ thatManager.addWidget(new MessageWidgetClass(thatManager, ["手持ちの材料がありません!\n"]));
+ that.isSelecting = false;
+ } else{
+ this.isSelecting = true;
+ thatManager.addWidget(
+ new SelectWidgetClass(thatManager, [thatManager.userManager.ingredientList, function(retv){
+ if(retv){
+ if(retv.length > 0){
+ that.basePoint = that.calculateBreadBasePoint(retv);
+ if(that.basePoint < 0){
+ thatManager.addWidget(new MessageWidgetClass(thatManager, ["見るからにまずそう…焼くのはやめておこう。\n"]));
+ } else{
+ thatManager.addWidget(new MessageWidgetClass(thatManager, ["焼き始めました!もう一度窯を選択すると取り出します。\n"]));
+ that.bakingTickCount = 0;
+ that.bakingCount = 0;
+ that.isBaking = true;
+ }
+ } else{
+ thatManager.addWidget(new MessageWidgetClass(thatManager, ["一つも材料が選択されていないので、パンを焼くことができません!\n"]));
+ }
} else{
- thatManager.addWidget(new MessageWidgetClass(thatManager, ["一つも材料が選択されていないので、パンを焼くことができません!\n"]));
+ thatManager.addWidget(new MessageWidgetClass(thatManager, ["キャンセルされました。\n"]));
}
- } else{
- thatManager.addWidget(new MessageWidgetClass(thatManager, ["キャンセルされました。\n"]));
- }
- that.isSelecting = false;
- },true, 0, true])
- );
+ that.isSelecting = false;
+ },true, 0, true])
+ );
+ }
+ } else{
+ //焼き終わり
+ this.isSelecting = true;
+ var s = null;
+ var p = 1;
+ var c = this.bakingCount;
+ if(c < 30){
+ s = "まだ生だった…。";
+ p = 0.25;
+ } else if(c < 60){
+ s = "生焼けだった…。";
+ p = 0.50;
+ } else if(c < 80){
+ s = "火通りが甘い…。";
+ p = 0.75;
+ } else if(c < 95){
+ s = "いい焼け具合だ!";
+ p = 1.00;
+ } else if(c < 100){
+ s = "最高の焼き具合だ!";
+ p = 1.25;
+ } else if(c < 101){
+ s = "完璧な焼き具合だ!";
+ p = 1.50;
+ } else if(c < 110){
+ s = "いい焦げ方だ!";
+ p = 1.00;
+ } else if(c < 116){
+ s = "焦げ過ぎだった…。";
+ p = 0.50;
+ } else if(c < 121){
+ s = "炭になってる…。";
+ p = 0.25;
+ } else{
+ s = "もはや灰しか残らなかった…。";
+ p = 0.00;
+ }
+ that.basePoint = Math.floor(p * that.basePoint);
+ thatManager.addWidget(new MessageWidgetClass(thatManager, [s + that.basePoint + "ポイントのパンをゲットした。\n"]));
+ that.isSelecting = false;
+ that.isBaking = false;
+ this.image = this.imgs[0];
}
}
}
+ if(this.isBaking){
+ //焼き途中
+ this.bakingTickCount++;
+ if(this.bakingTickCount >= 6){
+ this.bakingTickCount = 0;
+ this.bakingCount++;
+ this.image = this.imgs[(this.bakingCount & 1) + 1];
+ }
+ }
+ },
+ calculateBreadBasePoint: function(ingr){
+ var p = 0;
+ for(var i = 0, m = ingr.length; i < m; i++){
+ p += IngredientAttributeList[ingr[i].index][1];
+ }
+ return p;
},
-
});
\ No newline at end of file