This commit is contained in:
33333-33333 2026-07-11 21:13:39 +09:00
commit d14550dad6
78 changed files with 2827 additions and 563 deletions

View file

@ -41,9 +41,10 @@
Object.defineProperties(Tarinai.prototype, Object.getOwnPropertyDescriptors({
ensureItemEffectState() {
if (!this.itemEffectTimers || typeof this.itemEffectTimers !== "object") this.itemEffectTimers = { laxative: 0, ammo: 0 };
if (!this.itemEffectTimers || typeof this.itemEffectTimers !== "object") this.itemEffectTimers = { laxative: 0, ammo: 0, sedative: 0 };
if (!Number.isFinite(this.itemEffectTimers.laxative)) this.itemEffectTimers.laxative = 0;
if (!Number.isFinite(this.itemEffectTimers.ammo)) this.itemEffectTimers.ammo = 0;
if (!Number.isFinite(this.itemEffectTimers.sedative)) this.itemEffectTimers.sedative = 0;
if (!Number.isFinite(this.laxativePoopTimer)) this.laxativePoopTimer = 3;
if (!Number.isFinite(this.ammoBumpCooldown)) this.ammoBumpCooldown = 0;
if (this.powerItemMode !== "protein" && this.powerItemMode !== "niteropu") this.powerItemMode = "";
@ -223,6 +224,7 @@
let value = this.hasItemEffect("ammo") ? (EFFECT_REGISTRY?.modifier?.("ammo", "speedMultiplier", 10) ?? 10) : 1;
if (this.sizeItemMode === "giant_drug") value *= EFFECT_REGISTRY?.modifier?.("giant_drug", "speedMultiplier", 1.5) ?? 1.5;
if (this.sizeItemMode === "dwarf_drug") value *= EFFECT_REGISTRY?.modifier?.("dwarf_drug", "speedMultiplier", 0.5) ?? 0.5;
if (this.hasItemEffect("sedative")) value *= EFFECT_REGISTRY?.modifier?.("sedative", "speedMultiplier", 0.72) ?? 0.72;
return value;
},
@ -278,6 +280,7 @@
if (Math.random() < step * 0.72) this.spawnPowerItemEffect(this.powerItemMode, this.powerItemMode === "protein" ? 0.32 : 0.28);
}
if (this.hasItemEffect("ammo") && Math.random() < step * 3.0) this.spawnPowerItemEffect("ammo", 0.32);
if (this.hasItemEffect("sedative") && Math.random() < step * 0.9) this.spawnPowerItemEffect("sedative", 0.22);
if ((this.sizeItemMode === "giant_drug" || this.sizeItemMode === "dwarf_drug") && Math.random() < step * 1.4) this.spawnPowerItemEffect(this.sizeItemMode, 0.24);
},
@ -291,8 +294,8 @@
const side = this.facingDir ? this.facingDir() : (this.facing || 1);
const x = this.x - side * this.radius * rand(0.72, 0.96);
const y = this.y + this.radius * rand(0.25, 0.48);
this.world.spawnZunchi?.(x, y);
this.poopCount = (this.poopCount || 0) + 1;
this.world.spawnZunchi?.(x, y);
this.digest = Math.max(0, (this.digest || 0) - 3.0);
const now = this.world?.time || 0;
this.bubble("\u3076\u308a\u3085\u3063", 1.2, effectColor("laxative"), { force: true });