diff --git a/info.txt b/info.txt
index 87694cc..a19f6eb 100644
--- a/info.txt
+++ b/info.txt
@@ -1,12 +1,15 @@
{
- "Name": "Cookie Assistant",
+ "Name": "Cookie Assistant Remastered",
"ID": "cookieassistant",
- "Author": "Hitsub",
- "Description": "Assist tools for CookieClicker Steam edition.",
- "ModVersion": 0.7,
- "GameVersion": 2.04,
- "Date": "08/09/2021",
- "Dependencies": [],
+ "Author": "tempodat",
+ "Description": "Remaster of Hitsub's mod, provides assist tools for CookieClicker Steam edition.",
+ "ModVersion": 0.0.1,
+ "GameVersion": 2.052,
+ "Date": "20/06/2023",
+ "Dependencies": ["CCSE"],
+ "LanguagePacks": [
+ "lang/ja.js"
+ ],
"Disabled": 1,
"AllowSteamAchievs": 1
}
\ No newline at end of file
diff --git a/lang/ja.js b/lang/ja.js
new file mode 100644
index 0000000..04fcdb8
--- /dev/null
+++ b/lang/ja.js
@@ -0,0 +1,47 @@
+ModLanguage('JA', {
+ "MP is minimum to cast": "最低限のMP",
+ "MP is full": "MPがフル",
+ "Have one buff": "バフが1つ",
+ "Have two or more buffs": "バフが2つ以上",
+ "All Upgrades (includes Researches)": "全てのアップグレード(研究を含む)",
+ "All Upgrades except Researches": "研究を除く全てのアップグレード",
+ "All Upgrades that don't cause \"Grandmapocalypse\"": "ババアポカリプスが起きない全てのアップグレード",
+ "Buy every 10 pieces": "10個単位で購入する",
+ "Buy every 50 pieces": "50個単位で購入する",
+ "Buy every 100 pieces": "100個単位で購入する",
+ "Golden Cookie including Wrath Cookie": "怒りのクッキーもクリックする",
+ "Ignore Wrath Cookie": "怒りのクッキーは無視する",
+ "Have click buff": "クリック系のバフ",
+ "Have two or more buffs including click buff": "クリック系を含めて2つ以上のバフ",
+ "After auto-spellcast": "自動詠唱の後",
+ "Always": "常に",
+ "Have three or more buffs": "バフが3つ以上",
+ "Buy back the amount sold": "売った分だけ買い戻す",
+ "Spellcast if can, and buy back": "詠唱してから買い戻す",
+ "Do nothing": "何もしない",
+ "All Type": "全てのタイプ",
+ "Except Shiny Wrinkler": "ピカピカのシワシワ虫を除く",
+ "Have any click buff": "クリック系バフ中",
+ "No buffs": "バフがない",
+ "No click buffs": "クリックバフが無いとき",
+ "None": "なし",
+ "Christmas": "クリスマス",
+ "Easter": "イースター",
+ "Halloween": "ハロウィン",
+ "Valentines": "バレンタイン",
+ "You have not unlocked the Grimoire yet, so failed to spellcast.": "グリモア解放前のため、呪文の発動に失敗しました。",
+ "You do not have enough cookies to buy back": "クッキーが足りず建物を買い戻せませんでした。",
+ "Could not sell buildings due to not enough.": "建物が少ないため売却に失敗しました。",
+ "Failed to buy Chocolate Egg.": "チョコの卵の購入に失敗しました。",
+ "This feature will also automatically purchase \"Sacrificial rolling pins\".": "※この機能はアップグレードの生贄用めん棒も自動で購入するようになります。",
+ "Switch to after complete": "完了後の切り替え先",
+ "Automatically switch to seasons in which the upgrade is still remained.": "アップグレードが残っているシーズンに自動的に切り替えます。",
+ "⚠️You have not unlocked the Pantheon yet. This feature will not be available until it is unlocked.": "⚠️パンテオンがロックされています。アンロックするまでこの機能は使えません。",
+ "Do After Activated": "発動後にやること",
+ "⚠️Godzamok is not set, so there may be no benefit from enabling this.": "⚠️ゴジャモックがセットされていないため、有効化しても恩恵が無い可能性があります。",
+ "This is the latest version": "最新版です",
+ "There will be an update.": "アップデートがあります。",
+ "Download Here.": "ここからダウンロードしてください。",
+ "It's been updated.": "アップデートされました。",
+ "You can check the patch notes from here.": "ここから更新内容が確認できます。"
+});
\ No newline at end of file
diff --git a/main.js b/main.js
index d3817c0..d9c449e 100644
--- a/main.js
+++ b/main.js
@@ -7,9 +7,10 @@ if(typeof CCSE == 'undefined')
Game.LoadMod('https://klattmose.github.io/CookieClicker/SteamMods/CCSE/main.js');
}
-CookieAssistant.name = 'Cookie Assistant';
-CookieAssistant.version = '0.7.0';
-CookieAssistant.GameVersion = '2.042';
+CookieAssistant.name = 'Cookie Assistant Remastered';
+CookieAssistant.version = '0.0.1';
+CookieAssistant.GameVersion = '2.052';
+CookieAssistant.EarlyDevelopment = true;
CookieAssistant.launch = function()
@@ -18,7 +19,7 @@ CookieAssistant.launch = function()
{
var conf =
{
- //各機能の有効/無効のフラグ
+ //Verable/invalid flags for each function
flags:
{
autoClickBigCookie: 0,
@@ -39,7 +40,7 @@ CookieAssistant.launch = function()
autoChocolateEgg : 0,
autoHireBrokers : 0,
},
- //各機能の実行間隔
+ //Execution interval of each function
intervals:
{
autoClickBigCookie: 1,
@@ -59,7 +60,7 @@ CookieAssistant.launch = function()
autoToggleGoldenSwitch : 500,
autoHireBrokers : 1000,
},
- //各機能の特殊設定 CheckConfigでの限界があるのでこれ以上深くしない
+ //Special settings for each function are limited to Checkconfig, so do not deepen anymore
particular:
{
dragon:
@@ -96,7 +97,7 @@ CookieAssistant.launch = function()
},
sell:
{
- isAfterSell: [], //売却後かどうかのフラグ保持(作動中にゲームを落としても動作するように)
+ isAfterSell: [], //Whether it is after the sale (so that it works even if the game is dropped during the operation)
target: [],
amount: [],
activate_mode: [],
@@ -117,7 +118,7 @@ CookieAssistant.launch = function()
},
season:
{
- afterComplete: 0, //シーズン全部終わった後どうするか
+ afterComplete: 0, //What to do after the whole season is over
},
}
};
@@ -131,14 +132,14 @@ CookieAssistant.launch = function()
CookieAssistant.restoreDefaultConfig(1);
CookieAssistant.ReplaceGameMenu();
- //大クッキーのSEミュート
+ //Large cookie SE Mute
CCSE.SpliceCodeIntoFunction(
"Game.playCookieClickSound",
2,
"if (CookieAssistant.config.particular.bigCookie.isMute) { return; }"
);
- //建物売買のSEミュート
+ //SE mute of building buying and selling
for (const objectName of Object.keys(Game.Objects)) {
CCSE.ReplaceCodeIntoFunction(
"Game.Objects['" + objectName + "'].sell",
@@ -154,7 +155,7 @@ CookieAssistant.launch = function()
);
}
- //ChocolateEgg自動購入
+ //Chocolategg Automatic purchase
CCSE.SpliceCodeIntoFunction(
"Game.Ascend",
5,
@@ -190,11 +191,11 @@ CookieAssistant.launch = function()
{
0:
{
- desc: "MP is minimum to cast / 最低限のMP",
+ desc: loc("MP is minimum to cast"),
},
1:
{
- desc: "MP is full / MPがフル",
+ desc: loc("MP is full"),
}
},
spell_buff:
@@ -202,27 +203,27 @@ CookieAssistant.launch = function()
0:
{
count: 1,
- desc: "Have one buff / バフが1つ",
+ desc: loc("Have one buff"),
},
1:
{
count: 2,
- desc: "Have two or more buffs / バフが2つ以上",
+ desc: loc("Have two or more buffs"),
}
},
upgrades:
{
0:
{
- desc: "All Upgrades (includes Researches) / 全てのアップグレード(研究を含む)",
+ desc: loc("All Upgrades (includes Researches)"),
},
1:
{
- desc: "All Upgrades except Researches / 研究を除く全てのアップグレード",
+ desc: loc("All Upgrades except Researches"),
},
2:
{
- desc: `All Upgrades that don't cause "Grandmapocalypse" / ババアポカリプスが起きない全てのアップグレード`,
+ desc: loc(`All Upgrades that don't cause "Grandmapocalypse"`),
},
},
buildings:
@@ -230,161 +231,161 @@ CookieAssistant.launch = function()
0:
{
amount: 10,
- desc: "Buy every 10 pieces / 10個単位で購入する",
+ desc: loc("Buy every 10 pieces"),
},
1:
{
amount: 50,
- desc: "Buy every 50 pieces / 50個単位で購入する",
+ desc: loc("Buy every 50 pieces"),
},
2:
{
amount: 100,
- desc: "Buy every 100 pieces / 100個単位で購入する",
+ desc: loc("Buy every 100 pieces"),
},
},
golden:
{
0:
{
- desc: "Golden Cookie including Wrath Cookie / 怒りのクッキーもクリックする"
+ desc: loc("Golden Cookie including Wrath Cookie")
},
1:
{
- desc: "Ignore Wrath Cookie / 怒りのクッキーは無視する"
+ desc: loc("Ignore Wrath Cookie")
}
},
- sell_buildings: //建物自動売却の発動条件
+ sell_buildings: //Conditions of activation of building automatic sales
{
0:
{
- desc: "Have one buff / バフが1つ",
+ desc: loc("Have one buff"),
},
1:
{
- desc: "Have two or more buffs / バフが2つ以上",
+ desc: loc("Have two or more buffs"),
},
2:
{
- desc: "Have click buff / クリック系のバフ",
+ desc: loc("Have click buff"),
},
3:
{
- desc: "Have two or more buffs including click buff / クリック系を含めて2つ以上のバフ",
+ desc: loc("Have two or more buffs including click buff"),
},
4:
{
- desc: "After auto-spellcast / 自動詠唱の後",
+ desc: loc("After auto-spellcast"),
},
5:
{
- desc: "Always / 常に"
+ desc: loc("Always")
},
6:
{
- desc: "Have three or more buffs / バフが3つ以上",
+ desc: loc("Have three or more buffs"),
},
},
- sell_buildings_after: //建物自動売却を行った後の動作
+ sell_buildings_after: //Operation after the building automatic
{
0:
{
- desc: "Buy back the amount sold / 売った分だけ買い戻す",
+ desc: loc("Buy back the amount sold"),
},
1:
{
- desc: "Spellcast if can, and buy back / 詠唱してから買い戻す",
+ desc: loc("Spellcast if can, and buy back"),
},
2:
{
- desc: "Do nothing / 何もしない",
+ desc: loc("Do nothing"),
},
},
wrinkler:
{
0:
{
- desc: "All Type / 全てのタイプ",
+ desc: loc("All Type"),
},
1:
{
- desc: "Except Shiny Wrinkler / ピカピカのシワシワ虫を除く"
+ desc: loc("Except Shiny Wrinkler")
},
},
bigCookie:
{
0:
{
- desc: "Always / 常に",
+ desc: loc("Always"),
},
1:
{
- desc: "Have any click buff / クリック系バフ中"
+ desc: loc("Have any click buff")
},
2:
{
- desc: "Have one buff / バフが1つ"
+ desc: loc("Have one buff")
},
3:
{
- desc: "Have two or more buffs / バフが2つ以上"
+ desc: loc("Have two or more buffs")
}
},
goldenSwitch_enable:
{
0:
{
- desc: "Have one buff / バフが1つ"
+ desc: loc("Have one buff")
},
1:
{
- desc: "Have two or more buffs / バフが2つ以上"
+ desc: loc("Have two or more buffs")
},
2:
{
- desc: "Have click buff / クリック系のバフ",
+ desc: loc("Have click buff"),
},
3:
{
- desc: "Have two or more buffs including click buff / クリック系を含めて2つ以上のバフ",
+ desc: loc("Have two or more buffs including click buff"),
},
},
goldenSwitch_disable:
{
0:
{
- desc: "No buffs / バフがない"
+ desc: loc("No buffs")
},
1:
{
- desc: "No click buffs / クリックバフが無いとき"
+ desc: loc("No click buffs")
},
},
season:
{
0:
{
- desc: "None / なし",
+ desc: loc("None"),
season: "",
},
1:
{
- desc: "Christmas / クリスマス",
+ desc: loc("Christmas"),
season: "christmas",
},
2:
{
- desc: "Easter / イースター",
+ desc: loc("Easter"),
season: "easter",
},
3:
{
- desc: "Halloween / ハロウィン",
+ desc: loc("Halloween"),
season: "halloween",
},
4:
{
- desc: "Valentines / バレンタイン",
+ desc: loc("Valentines"),
season: "valentines",
},
},
@@ -397,12 +398,12 @@ CookieAssistant.launch = function()
CookieAssistant.intervalHandles.autoClickBigCookie = setInterval(
() =>
{
- //BGMがおかしくなるので最初の1秒は実行しない
+ //Do not execute the first second because the BGM goes wrong
if (Game.T < Game.fps)
{
return;
}
- //転生中は動作を止める
+ //Stop the operation during reincarnation
if (Game.OnAscend)
{
return;
@@ -503,8 +504,8 @@ CookieAssistant.launch = function()
case "building buff":
buffCount++;
break;
- case "cursed finger": //ポジティブなバフだが、バフ同士によって相性が悪いため無視する
- case "devastation": //DevastationはMOD側で起こしたいのでユーザーが自発的に起こしたものについては無視する
+ case "cursed finger": //It is a positive buff, but it is ignored because the buffs are incompatible
+ case "devastation": //Devastation wants to happen on the mod side, so ignore what user voluntarily occurs
default:
break;
}
@@ -514,10 +515,10 @@ CookieAssistant.launch = function()
var cost = 0;
switch(CookieAssistant.config.particular.spell.mode)
{
- case 0: //必要最低限のMP
+ case 0: //Minimum MP required
cost = Math.floor(spell.costMin + grimoire.magicM * spell.costPercent);
break;
- case 1: //MP完全回復
+ case 1: //Mp completely reply
default:
cost = grimoire.magicM;
break;
@@ -567,7 +568,7 @@ CookieAssistant.launch = function()
{
Game.Upgrades["Elder Pledge"].buy();
}
- //ElderPledgeを自動購入してるんだったら生贄用めん棒も買ってほしいはずなのでこっちでも見る
+ //If you are automatically purchasing ElderPLEDGE, you should buy a sacrifice bun, so I will see it here.
if (Game.UpgradesInStore.indexOf(Game.Upgrades["Sacrificial rolling pins"]) != -1)
{
Game.Upgrades["Sacrificial rolling pins"].buy(1);
@@ -584,26 +585,26 @@ CookieAssistant.launch = function()
for (var i in Game.UpgradesInStore)
{
var upgrade = Game.UpgradesInStore[i];
- //保管庫に入っているアップグレードは無視する
+ //Ignore the upgrade in the storage
if (upgrade.isVaulted())
{
continue;
}
- //スイッチ類を除いて購入(ElderPledgeもToggle扱いなので考えなくてよい)
- //生贄用めん棒はこっちでも勝手に買われる
+ //Purchase except for switches (you don't have to think of ElderPledge because it is also treated as TOGGLE)
+ //Sacrificed noodles are bought here without permission
if (upgrade.pool != "toggle")
{
- //研究を除くモードの時
+ //At the time of mode excluding research
if (CookieAssistant.config.particular.upgrades.mode == 1 && upgrade.pool == "tech")
{
continue;
}
- //ババアポカリプスに入りたくないモードの時
+ //When you don't want to enter Baba Pocaripus
if (CookieAssistant.config.particular.upgrades.mode == 2 && upgrade.name == "One mind")
{
continue;
}
- //チョコの卵モードがONの時
+ //When the chocolate egg mode is ON
if (CookieAssistant.config.flags.autoChocolateEgg && upgrade.name == "Chocolate egg")
{
continue;
@@ -660,26 +661,26 @@ CookieAssistant.launch = function()
}
else if (Game.season == "halloween")
{
- //エルダー宣誓の自動購入がONのときは強制OFFにする
+ //Forced to turn off when the automatic purchase of Elder oath is ON
if (CookieAssistant.config.flags.autoBuyElderPledge == 1)
{
CookieAssistant.config.flags.autoBuyElderPledge = 0;
clearInterval(CookieAssistant.intervalHandles.autoBuyElderPledge);
CookieAssistant.intervalHandles.autoBuyElderPledge = null;
}
- //エルダー宣誓の時間が残っている場合はエルダー誓約を発動する(エルダー宣誓の時間リセットのため)
+ //If you have time for Elder oath, activate the Elder pledge(For the time reset of Elder Oath)
if (Game.pledgeT >= 1 && Game.UpgradesInStore.indexOf(Game.Upgrades["Elder Covenant"]) != -1)
{
Game.Upgrades["Elder Covenant"].buy();
}
- //エルダー誓約の撤回が出来る場合はする(Wrinklerをスポーンさせる必要があるため)
+ //If you can withdraw the Elder pledge (because it needs to spawn Wrinkler)
if (Game.UpgradesInStore.indexOf(Game.Upgrades["Revoke Elder Covenant"]) != -1)
{
Game.Upgrades["Revoke Elder Covenant"].buy();
}
if (halloweenRate >= 1)
{
- //エルダー誓約を購入してババアポカリプスを終了させてから次に行く
+ //Purchase Elder pledge and finish Baba Pokalipus and then go to the next
Game.Upgrades["Elder Covenant"].buy(1);
CookieAssistant.SwitchNextSeason();
}
@@ -702,7 +703,7 @@ CookieAssistant.launch = function()
{
var amount = Game.Objects[objectName].amount % amountPerPurchase == 0 ? amountPerPurchase : amountPerPurchase - Game.Objects[objectName].amount % amountPerPurchase;
var isMaxDragon = Game.dragonLevel >= Game.dragonLevels.length - 1;
- //ドラゴンの自動育成がONの場合は建物の自動購入を制限する
+ //If the dragon automatic development is ON, restrict automatic buying of the building
if (!isMaxDragon && CookieAssistant.config.flags.autoTrainDragon && Game.Objects[objectName].amount >= 350 - amountPerPurchase)
{
amount = 350 - Game.Objects[objectName].amount;
@@ -713,7 +714,7 @@ CookieAssistant.launch = function()
}
if (Game.cookies >= Game.Objects[objectName].getSumPrice(amount))
{
- //売却モードだったら強制的に購入モードにする
+ //If it is in sale mode, make the purchase mode forcibly
if (Game.buyMode < 0)
{
Game.buyMode = 1;
@@ -743,7 +744,7 @@ CookieAssistant.launch = function()
{
Game.specialTab = "dragon";
Game.ToggleSpecialMenu(true);
- //育成
+ //Training
if (canTrain)
{
Game.UpgradeDragon();
@@ -755,7 +756,7 @@ CookieAssistant.launch = function()
Game.ConfirmPrompt();
}
}
- //なでる
+ //Strike
if (canPet)
{
Game.ClickSpecialPic();
@@ -806,7 +807,7 @@ CookieAssistant.launch = function()
CookieAssistant.intervalHandles.autoHarvestSugarlump = setInterval(
() =>
{
- //砂糖玉がアンロックされているかチェック
+ //Check if the sugar ball is unlocked
if (!Game.canLumps())
{
return;
@@ -870,7 +871,7 @@ CookieAssistant.launch = function()
break;
}
}
- //スイッチがOFFのとき
+ //When the switch is off
if (off != undefined)
{
let isMode0 = enableMode == 0 && buffCount >= 1;
@@ -883,7 +884,7 @@ CookieAssistant.launch = function()
off.buy();
}
}
- //スイッチがONのとき
+ //When the switch is ON
if (on != undefined)
{
let isMode0 = disableMode == 0 && buffCount == 0;
@@ -949,7 +950,7 @@ CookieAssistant.launch = function()
var grimoire = Game.ObjectsById[7].minigame;
if (grimoire == undefined)
{
- Game.Notify(CookieAssistant.name, "You have not unlocked the Grimoire yet, so failed to spellcast.
グリモア解放前のため、呪文の発動に失敗しました。", "", 3);
+ Game.Notify(CookieAssistant.name, loc("You have not unlocked the Grimoire yet, so failed to spellcast."), "", 3);
CookieAssistant.config.particular.sell.isAfterSell[index] = 0;
return false;
}
@@ -970,7 +971,7 @@ CookieAssistant.launch = function()
}
else
{
- Game.Notify(CookieAssistant.name, "クッキーが足りず建物を買い戻せませんでした。
Not have enough cookies to buy back");
+ Game.Notify(CookieAssistant.name, loc("You do not have enough cookies to buy back"));
}
CookieAssistant.config.particular.sell.isAfterSell[index] = 0;
return false;
@@ -1013,7 +1014,7 @@ CookieAssistant.launch = function()
{
if (Game.Objects[objectName].amount < amount)
{
- Game.Notify(CookieAssistant.name, "建物が少ないため売却に失敗しました。
Could not sell buildings due to not enough.");
+ Game.Notify(CookieAssistant.name, loc("Could not sell buildings due to not enough."));
return false;
}
Game.Objects[objectName].sell(amount);
@@ -1064,10 +1065,10 @@ CookieAssistant.launch = function()
{
targetSeason = afterCompleteSeason;
}
- //全シーズンのアップグレードが完了していて現在どこかのシーズンになっている
+ //The upgrade of all seasons is completed and it is now somewhere.
if (Game.season != "" && targetSeason == "")
{
- //シーズン終了
+ //Season end
Game.seasonT = -1;
}
if (targetSeason != "" && targetSeason != Game.season)
@@ -1092,7 +1093,7 @@ CookieAssistant.launch = function()
let egg = Game.UpgradesInStore.find(x => x.name == "Chocolate egg");
if (egg == undefined)
{
- Game.Notify(CookieAssistant.name, "チョコの卵の購入に失敗しました。
Failed to buy Chocolate Egg.");
+ Game.Notify(CookieAssistant.name, loc("Failed to buy Chocolate Egg."));
return;
}
if (Game.dragonLevel >= 8 && !Game.hasAura("Earth Shatterer"))
@@ -1110,8 +1111,8 @@ CookieAssistant.launch = function()
egg.buy();
}
- //コンフィグのチェック
- //アプデ時に新規項目がundefinedになって1ms周期の実行になってしまうのを防止
+ //Config
+ //Prevents the new item from becoming undefined at the time of Apde and execution of a 1ms cycle
CookieAssistant.CheckConfig = function()
{
var defaultConfig = CookieAssistant.defaultConfig();
@@ -1151,7 +1152,7 @@ CookieAssistant.launch = function()
}
- //オプション&統計の追加
+ //Addition & statistical addition
CookieAssistant.ReplaceGameMenu = function()
{
Game.customOptionsMenu.push(function()
@@ -1168,8 +1169,19 @@ CookieAssistant.launch = function()
CookieAssistant.getMenuString = function()
{
let m = CCSE.MenuHelper;
- str = m.Header('Basic Assists');
- //大クッキークリック
+ let str = "";
+ //Warn about addon in development
+ if (CookieAssistant.EarlyDevelopment)
+ {
+ str += '