Code edit (1 edits merged)
Please save this source code
User prompt
in handleHit, fix the scope problem for members in the settimeout
Code edit (1 edits merged)
Please save this source code
User prompt
in handleHit, also use members array for the restoration of the positions
User prompt
in handleHit, move the members back in the setTimout function
User prompt
in handleHit, use members array to determine which members to move back and forth
Code edit (9 edits merged)
Please save this source code
User prompt
Please fix the bug: 'ReferenceError: guardLevel is not defined' in or related to this line: 'if (guardLevel > 25) {' Line Number: 360
Code edit (1 edits merged)
Please save this source code
Code edit (14 edits merged)
Please save this source code
User prompt
add the opponent health bar at the top of the screen
Code edit (1 edits merged)
Please save this source code
Code edit (12 edits merged)
Please save this source code
User prompt
in handleHitImpact when KO call game over
Code edit (1 edits merged)
Please save this source code
Code edit (6 edits merged)
Please save this source code
User prompt
add a new class HealthBar
Code edit (1 edits merged)
Please save this source code
User prompt
in punch function, increase self.currentPunchEnergy when punchCount is high, restore it to self.basePunchEnergy when its low
Code edit (2 edits merged)
Please save this source code
User prompt
in punch, count the number of punches per second
Code edit (18 edits merged)
Please save this source code
User prompt
when Athlete punched, reduce his energy by 2
Code edit (1 edits merged)
Please save this source code
Code edit (1 edits merged)
Please save this source code
===================================================================
--- original.js
+++ change.js
@@ -94,9 +94,11 @@
// Player movement speed
self.speed = 5;
// Punch function to handle punching action
self.punch = function (isLeft) {
- log("self.punch: " + isLeft);
+ if (!self.isPlayer) {
+ log("AI PUNCH : isLeft=" + isLeft);
+ }
if (self.isPunching) {
return;
}
if (self.energy <= 0) {
@@ -116,9 +118,9 @@
self.lastPunchTime = currentTime;
// Adjust currentPunchEnergy based on punchCount
self.currentPunchEnergy = self.basePunchEnergy * self.punchCount;
self.energy = Math.max(0, self.energy - self.currentPunchEnergy);
- log("self.punchCount => " + self.punchCount, "self.currentPunchEnergy => " + self.currentPunchEnergy);
+ //log("self.punchCount => " + self.punchCount, "self.currentPunchEnergy => " + self.currentPunchEnergy);
if (self.isPlayer) {
playerEnergyBar.updateEnergy(self.energy);
}
var arm = isLeft ? self.leftArm : self.rightArm;
@@ -153,16 +155,22 @@
};
// Apply deltas for punch animation
(function (arm, forearm, hand, head) {
LK.setTimeout(function () {
+ if (!self.isPlayer) {
+ log("AI PUNCH : applyDeltas...");
+ }
applyDeltas(arm, deltas.arm);
applyDeltas(forearm, deltas.forearm);
applyDeltas(hand, deltas.hand);
applyDeltas(head, deltas.head);
}, 10);
})(arm, forearm, hand, self.head);
(function (arm, forearm, hand, head) {
LK.setTimeout(function () {
+ if (!self.isPlayer) {
+ log("AI PUNCH : applyDeltas Reverse...");
+ }
applyDeltas(arm, reverseDeltas(deltas.arm));
applyDeltas(forearm, reverseDeltas(deltas.forearm));
applyDeltas(hand, reverseDeltas(deltas.hand));
applyDeltas(head, reverseDeltas(deltas.head));
@@ -183,9 +191,11 @@
}
};
// Guard function to handle guarding action
self.guard = function (setGuard) {
- log("self.guard: " + setGuard);
+ if (!self.isPlayer) {
+ log("AI GUARD : setGuard=" + setGuard);
+ }
if (!self.isGuarding && !setGuard) {
return;
}
if (setGuard && self.guardLevel <= 0) {
@@ -232,8 +242,11 @@
deltaH: 0,
deltaR: 0.4
}];
adjustments.forEach(function (adj, index) {
+ if (!self.isPlayer) {
+ log("AI GUARD : adjustPositions...");
+ }
return adjustPosition(elementPairs[index], adj.deltaX, adj.deltaY, adj.deltaW, adj.deltaH, adj.deltaR, setGuard);
});
if (!setGuard) {
self.setPosture(idlePosture);
@@ -259,9 +272,9 @@
}
if (LK.ticks % 60 == 0) {
log("===================== TICK =====================");
if (self.isGuarding) {
- log("self.isGuarding : self.guardLevel=" + self.guardLevel);
+ //log("self.isGuarding : self.guardLevel=" + self.guardLevel);
self.guardLevel = Math.max(0, self.guardLevel - 4);
if (self.guardLevel <= 0) {
self.guard(false);
}
@@ -367,9 +380,11 @@
self.setPosture = function (targetPosture) {
if (targetPosture == null) {
return;
}
- //log("self.setPosture: " + targetPosture.name);
+ if (!self.isPlayer) {
+ log("AI setPosture: " + targetPosture.name);
+ }
// Torso
self.torso.x = targetPosture.torso.x;
self.torso.y = targetPosture.torso.y;
self.torso.width = targetPosture.torso.w;
clear
basic light gray convex round button with a red boxing glove icon. UI
Un gant de boxe bleu vu de dessus. video game
basic light round convex gray button with a raised blue shield icon.. UI
un éclair. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
remove
a basic white heart.. game icon
A boxer has lost the match..
man boxer with red gloves is KO on the ring..