/**** * Classes ****/ // Define the Food class var Food = Container.expand(function () { var self = Container.call(this); var foodGraphics = self.attachAsset('food', { anchorX: 0.5, anchorY: 0.5 }); self.update = function () { // Food update logic }; }); //<Assets used in the game will automatically appear here> // Define the Seaman class var Seaman = Container.expand(function () { var self = Container.call(this); var seamanGraphics = self.attachAsset('seaman', { anchorX: 0.5, anchorY: 0.5 }); self.update = function () { // Seaman update logic }; self.down = function (x, y, obj) { // Handle touch down event }; self.up = function (x, y, obj) { // Handle touch up event }; }); // Define the AI for the Seaman class var SeamanAI = Container.expand(function () { var self = Container.call(this); var seamanGraphics = self.attachAsset('seaman', { anchorX: 0.5, anchorY: 0.5 }); // Set initial direction and speed self.direction = Math.random() * Math.PI * 2; self.speed = 2; // Update function for the AI movement self.update = function () { // Calculate the new position var newX = self.x + Math.cos(self.direction) * self.speed; var newY = self.y + Math.sin(self.direction) * self.speed; // Check if the new position is inside the screen bounds if (newX < 0 || newX > 2048 || newY < 0 || newY > 2732) { // If not, change the direction self.direction += Math.PI; // And move the seaman back inside the screen bounds if (newX < 0) { newX = 0; } else if (newX > 2048) { newX = 2048; } if (newY < 0) { newY = 0; } else if (newY > 2732) { newY = 2732; } } // Update the position self.x = newX; self.y = newY; }; }); // Define the SpeechBubble class var SpeechBubble = Container.expand(function () { var self = Container.call(this); var text = new Text2('J\'adore one piece avec Sangoku lol', { size: 50, fill: "#000000", align: "center" }); text.anchor.set(0.5, 0.5); var bubbleGraphics = self.attachAsset('speechBubble', { anchorX: 0.5, anchorY: 0.5, scaleX: 2, scaleY: 2 }); self.addChild(text); text.x = bubbleGraphics.width / 2 - 150; text.y = bubbleGraphics.height / 2 - text.height / 2 - 20; }); /**** * Initialize Game ****/ var game = new LK.Game({ backgroundColor: 0x000000 //Init game with black background }); /**** * Game Code ****/ // Initialize game variables var seaman; // Initialize game elements function initGame() { // Create and position the Seaman with AI seaman = game.addChild(new SeamanAI()); seaman.x = 2048 / 2; seaman.y = 2732 / 2; // Move the seaman sprite to the front seaman.zIndex = 1; // Add a speech bubble to the seaman var speechBubble = seaman.addChild(new SpeechBubble()); speechBubble.x = 300; speechBubble.y = -150; // Make the seaman talk every 2 seconds var phrases = ['Je vais dissoudre lassemblé', 'Traverse la rue', 'Je suis pas le pére noel', 'Brigite je peux avoir mon argent de poche ?']; var phraseIndex = 0; LK.setInterval(function () { speechBubble.children[1].setText(phrases[phraseIndex]); phraseIndex = (phraseIndex + 1) % phrases.length; // Play burp sound LK.getSound('burp').play(); }, 5000); // Create and position the Water var water = game.addChild(LK.getAsset('Water', { anchorX: 0.5, anchorY: 0.5 })); water.x = 2048 / 2; water.y = 2732 / 2; water.alpha = 0.1; // Make the water sprite 90 percent transparent } // Handle game update game.update = function () { // Update Seaman seaman.update(); }; // Remove touch down event handler game.down = function (x, y, obj) {}; // Handle touch up event game.up = function (x, y, obj) { // No action needed on touch up }; // Initialize the game initGame(); // Play water sound and loop it LK.getSound('Water').play({ loop: true }); // Play water sound and loop it LK.getSound('Water').play({ loop: true });
/****
* Classes
****/
// Define the Food class
var Food = Container.expand(function () {
var self = Container.call(this);
var foodGraphics = self.attachAsset('food', {
anchorX: 0.5,
anchorY: 0.5
});
self.update = function () {
// Food update logic
};
});
//<Assets used in the game will automatically appear here>
// Define the Seaman class
var Seaman = Container.expand(function () {
var self = Container.call(this);
var seamanGraphics = self.attachAsset('seaman', {
anchorX: 0.5,
anchorY: 0.5
});
self.update = function () {
// Seaman update logic
};
self.down = function (x, y, obj) {
// Handle touch down event
};
self.up = function (x, y, obj) {
// Handle touch up event
};
});
// Define the AI for the Seaman class
var SeamanAI = Container.expand(function () {
var self = Container.call(this);
var seamanGraphics = self.attachAsset('seaman', {
anchorX: 0.5,
anchorY: 0.5
});
// Set initial direction and speed
self.direction = Math.random() * Math.PI * 2;
self.speed = 2;
// Update function for the AI movement
self.update = function () {
// Calculate the new position
var newX = self.x + Math.cos(self.direction) * self.speed;
var newY = self.y + Math.sin(self.direction) * self.speed;
// Check if the new position is inside the screen bounds
if (newX < 0 || newX > 2048 || newY < 0 || newY > 2732) {
// If not, change the direction
self.direction += Math.PI;
// And move the seaman back inside the screen bounds
if (newX < 0) {
newX = 0;
} else if (newX > 2048) {
newX = 2048;
}
if (newY < 0) {
newY = 0;
} else if (newY > 2732) {
newY = 2732;
}
}
// Update the position
self.x = newX;
self.y = newY;
};
});
// Define the SpeechBubble class
var SpeechBubble = Container.expand(function () {
var self = Container.call(this);
var text = new Text2('J\'adore one piece avec Sangoku lol', {
size: 50,
fill: "#000000",
align: "center"
});
text.anchor.set(0.5, 0.5);
var bubbleGraphics = self.attachAsset('speechBubble', {
anchorX: 0.5,
anchorY: 0.5,
scaleX: 2,
scaleY: 2
});
self.addChild(text);
text.x = bubbleGraphics.width / 2 - 150;
text.y = bubbleGraphics.height / 2 - text.height / 2 - 20;
});
/****
* Initialize Game
****/
var game = new LK.Game({
backgroundColor: 0x000000 //Init game with black background
});
/****
* Game Code
****/
// Initialize game variables
var seaman;
// Initialize game elements
function initGame() {
// Create and position the Seaman with AI
seaman = game.addChild(new SeamanAI());
seaman.x = 2048 / 2;
seaman.y = 2732 / 2;
// Move the seaman sprite to the front
seaman.zIndex = 1;
// Add a speech bubble to the seaman
var speechBubble = seaman.addChild(new SpeechBubble());
speechBubble.x = 300;
speechBubble.y = -150;
// Make the seaman talk every 2 seconds
var phrases = ['Je vais dissoudre lassemblé', 'Traverse la rue', 'Je suis pas le pére noel', 'Brigite je peux avoir mon argent de poche ?'];
var phraseIndex = 0;
LK.setInterval(function () {
speechBubble.children[1].setText(phrases[phraseIndex]);
phraseIndex = (phraseIndex + 1) % phrases.length;
// Play burp sound
LK.getSound('burp').play();
}, 5000);
// Create and position the Water
var water = game.addChild(LK.getAsset('Water', {
anchorX: 0.5,
anchorY: 0.5
}));
water.x = 2048 / 2;
water.y = 2732 / 2;
water.alpha = 0.1; // Make the water sprite 90 percent transparent
}
// Handle game update
game.update = function () {
// Update Seaman
seaman.update();
};
// Remove touch down event handler
game.down = function (x, y, obj) {};
// Handle touch up event
game.up = function (x, y, obj) {
// No action needed on touch up
};
// Initialize the game
initGame();
// Play water sound and loop it
LK.getSound('Water').play({
loop: true
});
// Play water sound and loop it
LK.getSound('Water').play({
loop: true
});
fish food. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
A fish with an Human male weird head in color in a realistic style. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
Realistic Water of an aquarium. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.