/**** * Plugins ****/ var tween = LK.import("@upit/tween.v1"); /**** * Classes ****/ // Default revenue value var Ant = Container.expand(function () { var self = Container.call(this); var randomAntName = antNames[Math.floor(Math.random() * antNames.length)]; var antGraphics = self.attachAsset(randomAntName, { anchorX: 0.5, anchorY: 0.5 }); self.speed = speed; self.power = power; //self.wait = wait; self.returning = false; // State variable to track whether the ant is returning to the hole or not self.soundPlayed = false; // Flag to track if the bite sound has been played self.revenue = revenue; self.update = function () { var targetX, targetY; // If the ant is returning, set the target to the hole if (self.returning) { targetX = hole.x; targetY = hole.y + 250; } else { // Otherwise, set the target to the food targetX = food.x; targetY = food.y; } // Calculate the direction vector towards the target var directionX = targetX - self.x; var directionY = targetY - self.y; var magnitude = Math.sqrt(directionX * directionX + directionY * directionY); directionX /= magnitude; directionY /= magnitude; // Move the ant towards the target self.x += directionX * self.speed; self.y += directionY * self.speed; // Animate the ant to grow and shrink every half second if (LK.ticks % 20 === 0 && !self.returning) { // 30 ticks is approximately half a second at 60 FPS if (antGraphics.scale.x === 1) { antGraphics.scale.set(1.1); // Grow } else { antGraphics.scale.set(1); // Shrink back to normal } } // If the ant intersects with the food and is not returning, stop the ant and start waiting if (self.intersects(food) && !self.returning) { self.speed = 0; // Animate the ant to grow and shrink every half second if (LK.ticks % 20 === 0) { // 30 ticks is approximately half a second at 60 FPS if (antGraphics.scale.x === 1) { antGraphics.scale.set(1.1); // Grow } else { antGraphics.scale.set(1); // Shrink back to normal } } // Play the bite sound only if it hasn't been played for this ant if (!self.soundPlayed) { LK.getSound('bitesound').play(); self.soundPlayed = true; // Set the flag to true after playing the sound } // Attach bait to the ant if (!self.bait) { self.bait = self.addChild(new Bait()); self.bait.x = 0; // Center the bait on the ant self.bait.y = 0; } // Decrease the size of the food object by 5px food.scale.x -= self.power; food.scale.y -= self.power; LK.setTimeout(function () { // After waiting, start returning to the hole self.returning = true; self.speed = speed; // Set the speed to its default value // Animate the ant to grow and shrink every half second if (LK.ticks % 20 === 0) { // 30 ticks is approximately half a second at 60 FPS if (antGraphics.scale.x === 1) { antGraphics.scale.set(1.1); // Grow } else { antGraphics.scale.set(1); // Shrink back to normal } } // Flip the ant image vertically antGraphics.scale.y = -1; }, spawn * 1000); } // If the ant is returning and intersects with the hole, destroy the ant and increase the 'money' value if (self.returning && self.intersects(hole)) { if (self.bait) { tween(self.bait, { alpha: 0 }, { duration: 2500 / speed, onFinish: function onFinish() { self.bait.destroy(); } }); // Fade out bait } tween(self, { alpha: 0 }, { duration: 2500 / speed, onFinish: function onFinish() { self.destroy(); } }); // Fade out ant if (!self.revenueAdded) { money += self.revenue; LK.setScore(LK.getScore() + self.revenue); self.revenueAdded = true; // Set the flag to true after adding revenue LK.getSound('moneysound').play(); // Play moneysound once when the ant is destroyed } } }; }); var Bait = Container.expand(function () { var self = Container.call(this); var baitGraphics = self.attachAsset('bait', { anchorX: 0.5, anchorY: 0.5 }); }); var Food = Container.expand(function () { var self = Container.call(this); var foodGraphics = self.attachAsset('food', { anchorX: 0.5, anchorY: 0.5 }); }); var Hole = Container.expand(function () { var self = Container.call(this); var holeGraphics = self.attachAsset('hole', { anchorX: 0.5, anchorY: 0.5 }); }); /**** * Initialize Game ****/ var game = new LK.Game({ backgroundColor: 0x87CEFA }); /**** * Game Code ****/ var antNames = ["ant1", "ant2", "ant3", "ant4"]; // Play background music in a continuous loop LK.playMusic('bgmusic', { loop: true }); var workerText = new Text2('+Worker', { size: 40, fill: 0x000000, font: "'GillSans-Bold',Impact,'Arial Black',Tahoma" }); var speed = 5; // Default speed value var power = 0.0001; // Default power value var wait = 5; // Default wait value var revenue = 1; var money = 0; var speedcost = 5; var powercost = 10; var workercost = 15; var level = 1; var spawn = Math.floor(Math.random() * 3) + 1; var backgroundColors = [0xc4ecac, 0xC0C4B6, 0xEADFDB, 0xD8C2B5, 0xF2CFB3, 0x87CEFA, 0xc4ecac, 0xC0C4B6, 0xEADFDB, 0xD8C2B5, 0xF2CFB3]; var moneyText = new Text2('$' + money, { size: 140, fill: 0x008000, font: "'GillSans-Bold',Impact,'Arial Black',Tahoma" }); workerText.anchor.set(0.5, 0); workerText.x = 350; workerText.y = 1440; LK.gui.top.addChild(workerText); var powerText = new Text2('Power', { size: 40, fill: 0x000000, // Black color font: "'GillSans-Bold',Impact,'Arial Black',Tahoma" }); powerText.anchor.set(0.5, 0); powerText.x = 0; powerText.y = 1440; LK.gui.top.addChild(powerText); var speedText = new Text2('Speed', { size: 40, fill: 0x000000, font: "'GillSans-Bold',Impact,'Arial Black',Tahoma" }); speedText.anchor.set(0.5, 0); speedText.x = -350; speedText.y = 1440; LK.gui.top.addChild(speedText); var workerText = new Text2('+Worker', { size: 40, fill: 0x000000, font: "'GillSans-Bold',Impact,'Arial Black',Tahoma" }); moneyText.anchor.set(0.5, 0); moneyText.y += 100; LK.gui.top.addChild(moneyText); //<Write imports for supported plugins here> ; var food = game.addChild(new Food()); food.x = 2048 / 2; food.y = 2732 / 4; var hole = game.addChild(new Hole()); hole.x = food.x; hole.y = food.y + 1100; var sb = game.addChild(LK.getAsset('sb', { anchorX: 0.5, anchorY: 0.5 })); sb.x = 2048 / 4; sb.y = 2732 - sb.height / 2 - 200; sb.down = function (x, y, obj) { if (money >= speedcost) { LK.getSound('upgradesound').play(); speed += 3; money -= speedcost; speedcost += Math.ceil(speedcost / 100 * 130); tween(sb.scale, { x: 1.1, y: 1.1 }, { duration: 200, easing: tween.easeOut, onFinish: function onFinish() { tween(sb.scale, { x: 1, y: 1 }, { duration: 200, easing: tween.easeIn }); } }); } }; var pb = game.addChild(LK.getAsset('pb', { anchorX: 0.5, anchorY: 0.5 })); pb.x = 2048 / 2; pb.y = 2732 - pb.height / 2 - 200; pb.down = function (x, y, obj) { if (money >= powercost) { LK.getSound('upgradesound').play(); power += 0.0001; money -= powercost; powercost += Math.ceil(powercost / 100 * 160); revenue += 1; tween(pb.scale, { x: 1.1, y: 1.1 }, { duration: 200, easing: tween.easeOut, onFinish: function onFinish() { tween(pb.scale, { x: 1, y: 1 }, { duration: 200, easing: tween.easeIn }); } }); } }; var ab = game.addChild(LK.getAsset('ab', { anchorX: 0.5, anchorY: 0.5 })); ab.x = 1550; ab.y = 2732 - ab.height / 2 - 200; ab.down = function (x, y, obj) { if (money >= workercost) { LK.getSound('upgradesound').play(); money -= workercost; workercost += Math.ceil(workercost / 100 * 190); if (wait != 1) { wait -= 1; } tween(ab.scale, { x: 1.1, y: 1.1 }, { duration: 200, easing: tween.easeOut, onFinish: function onFinish() { tween(ab.scale, { x: 1, y: 1 }, { duration: 200, easing: tween.easeIn }); } }); LK.setInterval(function () { var ant = game.addChild(new Ant()); // Randomize the x position of the ant within the width of the hole ant.x = hole.x + Math.random() * hole.width - hole.width / 2; ant.y = hole.y; }, wait * 1000); } }; LK.setInterval(function () { var ant = game.addChild(new Ant()); // Randomize the x position of the ant within the width of the hole ant.x = hole.x + Math.random() * hole.width - hole.width / 2; ant.y = hole.y; }, wait * 1000); var speedcostText = new Text2('$' + speedcost, { size: 80, fill: 0x008000, font: "'GillSans-Bold',Impact,'Arial Black',Tahoma" }); speedcostText.anchor.set(0.5, 0); speedcostText.x = -350; speedcostText.y = 1780; LK.gui.top.addChild(speedcostText); var powercostText = new Text2('$' + powercost, { size: 80, fill: 0x008000, font: "'GillSans-Bold',Impact,'Arial Black',Tahoma" }); powercostText.anchor.set(0.5, 0); powercostText.x = 0; powercostText.y = 1780; LK.gui.top.addChild(powercostText); var levelText = new Text2('Level-' + level, { size: 70, fill: 0x5861a0, // Green font: "'GillSans-Bold',Impact,'Arial Black',Tahoma" }); var workercostText = new Text2('$' + workercost, { size: 80, fill: 0x008000, font: "'GillSans-Bold',Impact,'Arial Black',Tahoma" }); workercostText.anchor.set(0.5, 0); workercostText.x = 350; workercostText.y = 1780; LK.gui.top.addChild(workercostText); levelText.anchor.set(0.5, 0); levelText.x += 550; levelText.y += 50; LK.gui.top.addChild(levelText); game.update = function () { moneyText.setText('$' + money); if (moneyText.lastMoney === undefined) { moneyText.lastMoney = money; } if (money > moneyText.lastMoney) { tween(moneyText.scale, { x: 1.2, y: 1.2 }, { duration: 200, easing: tween.easeOut, onFinish: function onFinish() { tween(moneyText.scale, { x: 1, y: 1 }, { duration: 200, easing: tween.easeIn }); } }); } moneyText.lastMoney = money; speedcostText.setText('$' + speedcost); powercostText.setText('$' + powercost); workercostText.setText('$' + workercost); if (money < speedcost) { sb.tint = 0x808080; // Dark gray sb.soundPlayed = false; } else { sb.tint = 0xFFFFFF; // Reset to original color if (!sb.soundPlayed) { LK.getSound('activesound').play(); sb.soundPlayed = true; } } if (money < powercost) { pb.tint = 0x808080; // Dark gray pb.soundPlayed = false; } else { pb.tint = 0xFFFFFF; // Reset to original color if (!pb.soundPlayed) { LK.getSound('activesound').play(); pb.soundPlayed = true; } } if (money < workercost) { ab.tint = 0x808080; // Dark gray ab.soundPlayed = false; } else { ab.tint = 0xFFFFFF; // Reset to original color if (!ab.soundPlayed) { LK.getSound('activesound').play(); ab.soundPlayed = true; } } if (food.scale.x <= 0 || food.scale.y <= 0) { level += 1; LK.getSound('nextlevelsound').play(); // Play nextlevelsound once when the level increases if (level === 11) { //LK.showYouWin(); LK.showYouWin("Total Money $".concat(LK.getScore(), "!")); return; } levelText.setText('Level-' + level); game.setBackgroundColor(backgroundColors[(level - 1) % backgroundColors.length]); food.destroy(); food = game.addChild(LK.getAsset('food' + level, { anchorX: 0.5, anchorY: 0.5 })); food.x = 2048 / 2; food.y = 2732 / 4; // Destroy all ant instances game.children.forEach(function (child) { if (child instanceof Ant) { child.destroy(); } }); } }; ;
/****
* Plugins
****/
var tween = LK.import("@upit/tween.v1");
/****
* Classes
****/
// Default revenue value
var Ant = Container.expand(function () {
var self = Container.call(this);
var randomAntName = antNames[Math.floor(Math.random() * antNames.length)];
var antGraphics = self.attachAsset(randomAntName, {
anchorX: 0.5,
anchorY: 0.5
});
self.speed = speed;
self.power = power;
//self.wait = wait;
self.returning = false; // State variable to track whether the ant is returning to the hole or not
self.soundPlayed = false; // Flag to track if the bite sound has been played
self.revenue = revenue;
self.update = function () {
var targetX, targetY;
// If the ant is returning, set the target to the hole
if (self.returning) {
targetX = hole.x;
targetY = hole.y + 250;
} else {
// Otherwise, set the target to the food
targetX = food.x;
targetY = food.y;
}
// Calculate the direction vector towards the target
var directionX = targetX - self.x;
var directionY = targetY - self.y;
var magnitude = Math.sqrt(directionX * directionX + directionY * directionY);
directionX /= magnitude;
directionY /= magnitude;
// Move the ant towards the target
self.x += directionX * self.speed;
self.y += directionY * self.speed;
// Animate the ant to grow and shrink every half second
if (LK.ticks % 20 === 0 && !self.returning) {
// 30 ticks is approximately half a second at 60 FPS
if (antGraphics.scale.x === 1) {
antGraphics.scale.set(1.1); // Grow
} else {
antGraphics.scale.set(1); // Shrink back to normal
}
}
// If the ant intersects with the food and is not returning, stop the ant and start waiting
if (self.intersects(food) && !self.returning) {
self.speed = 0;
// Animate the ant to grow and shrink every half second
if (LK.ticks % 20 === 0) {
// 30 ticks is approximately half a second at 60 FPS
if (antGraphics.scale.x === 1) {
antGraphics.scale.set(1.1); // Grow
} else {
antGraphics.scale.set(1); // Shrink back to normal
}
}
// Play the bite sound only if it hasn't been played for this ant
if (!self.soundPlayed) {
LK.getSound('bitesound').play();
self.soundPlayed = true; // Set the flag to true after playing the sound
}
// Attach bait to the ant
if (!self.bait) {
self.bait = self.addChild(new Bait());
self.bait.x = 0; // Center the bait on the ant
self.bait.y = 0;
}
// Decrease the size of the food object by 5px
food.scale.x -= self.power;
food.scale.y -= self.power;
LK.setTimeout(function () {
// After waiting, start returning to the hole
self.returning = true;
self.speed = speed; // Set the speed to its default value
// Animate the ant to grow and shrink every half second
if (LK.ticks % 20 === 0) {
// 30 ticks is approximately half a second at 60 FPS
if (antGraphics.scale.x === 1) {
antGraphics.scale.set(1.1); // Grow
} else {
antGraphics.scale.set(1); // Shrink back to normal
}
}
// Flip the ant image vertically
antGraphics.scale.y = -1;
}, spawn * 1000);
}
// If the ant is returning and intersects with the hole, destroy the ant and increase the 'money' value
if (self.returning && self.intersects(hole)) {
if (self.bait) {
tween(self.bait, {
alpha: 0
}, {
duration: 2500 / speed,
onFinish: function onFinish() {
self.bait.destroy();
}
}); // Fade out bait
}
tween(self, {
alpha: 0
}, {
duration: 2500 / speed,
onFinish: function onFinish() {
self.destroy();
}
}); // Fade out ant
if (!self.revenueAdded) {
money += self.revenue;
LK.setScore(LK.getScore() + self.revenue);
self.revenueAdded = true; // Set the flag to true after adding revenue
LK.getSound('moneysound').play(); // Play moneysound once when the ant is destroyed
}
}
};
});
var Bait = Container.expand(function () {
var self = Container.call(this);
var baitGraphics = self.attachAsset('bait', {
anchorX: 0.5,
anchorY: 0.5
});
});
var Food = Container.expand(function () {
var self = Container.call(this);
var foodGraphics = self.attachAsset('food', {
anchorX: 0.5,
anchorY: 0.5
});
});
var Hole = Container.expand(function () {
var self = Container.call(this);
var holeGraphics = self.attachAsset('hole', {
anchorX: 0.5,
anchorY: 0.5
});
});
/****
* Initialize Game
****/
var game = new LK.Game({
backgroundColor: 0x87CEFA
});
/****
* Game Code
****/
var antNames = ["ant1", "ant2", "ant3", "ant4"];
// Play background music in a continuous loop
LK.playMusic('bgmusic', {
loop: true
});
var workerText = new Text2('+Worker', {
size: 40,
fill: 0x000000,
font: "'GillSans-Bold',Impact,'Arial Black',Tahoma"
});
var speed = 5; // Default speed value
var power = 0.0001; // Default power value
var wait = 5; // Default wait value
var revenue = 1;
var money = 0;
var speedcost = 5;
var powercost = 10;
var workercost = 15;
var level = 1;
var spawn = Math.floor(Math.random() * 3) + 1;
var backgroundColors = [0xc4ecac, 0xC0C4B6, 0xEADFDB, 0xD8C2B5, 0xF2CFB3, 0x87CEFA, 0xc4ecac, 0xC0C4B6, 0xEADFDB, 0xD8C2B5, 0xF2CFB3];
var moneyText = new Text2('$' + money, {
size: 140,
fill: 0x008000,
font: "'GillSans-Bold',Impact,'Arial Black',Tahoma"
});
workerText.anchor.set(0.5, 0);
workerText.x = 350;
workerText.y = 1440;
LK.gui.top.addChild(workerText);
var powerText = new Text2('Power', {
size: 40,
fill: 0x000000,
// Black color
font: "'GillSans-Bold',Impact,'Arial Black',Tahoma"
});
powerText.anchor.set(0.5, 0);
powerText.x = 0;
powerText.y = 1440;
LK.gui.top.addChild(powerText);
var speedText = new Text2('Speed', {
size: 40,
fill: 0x000000,
font: "'GillSans-Bold',Impact,'Arial Black',Tahoma"
});
speedText.anchor.set(0.5, 0);
speedText.x = -350;
speedText.y = 1440;
LK.gui.top.addChild(speedText);
var workerText = new Text2('+Worker', {
size: 40,
fill: 0x000000,
font: "'GillSans-Bold',Impact,'Arial Black',Tahoma"
});
moneyText.anchor.set(0.5, 0);
moneyText.y += 100;
LK.gui.top.addChild(moneyText);
//<Write imports for supported plugins here>
;
var food = game.addChild(new Food());
food.x = 2048 / 2;
food.y = 2732 / 4;
var hole = game.addChild(new Hole());
hole.x = food.x;
hole.y = food.y + 1100;
var sb = game.addChild(LK.getAsset('sb', {
anchorX: 0.5,
anchorY: 0.5
}));
sb.x = 2048 / 4;
sb.y = 2732 - sb.height / 2 - 200;
sb.down = function (x, y, obj) {
if (money >= speedcost) {
LK.getSound('upgradesound').play();
speed += 3;
money -= speedcost;
speedcost += Math.ceil(speedcost / 100 * 130);
tween(sb.scale, {
x: 1.1,
y: 1.1
}, {
duration: 200,
easing: tween.easeOut,
onFinish: function onFinish() {
tween(sb.scale, {
x: 1,
y: 1
}, {
duration: 200,
easing: tween.easeIn
});
}
});
}
};
var pb = game.addChild(LK.getAsset('pb', {
anchorX: 0.5,
anchorY: 0.5
}));
pb.x = 2048 / 2;
pb.y = 2732 - pb.height / 2 - 200;
pb.down = function (x, y, obj) {
if (money >= powercost) {
LK.getSound('upgradesound').play();
power += 0.0001;
money -= powercost;
powercost += Math.ceil(powercost / 100 * 160);
revenue += 1;
tween(pb.scale, {
x: 1.1,
y: 1.1
}, {
duration: 200,
easing: tween.easeOut,
onFinish: function onFinish() {
tween(pb.scale, {
x: 1,
y: 1
}, {
duration: 200,
easing: tween.easeIn
});
}
});
}
};
var ab = game.addChild(LK.getAsset('ab', {
anchorX: 0.5,
anchorY: 0.5
}));
ab.x = 1550;
ab.y = 2732 - ab.height / 2 - 200;
ab.down = function (x, y, obj) {
if (money >= workercost) {
LK.getSound('upgradesound').play();
money -= workercost;
workercost += Math.ceil(workercost / 100 * 190);
if (wait != 1) {
wait -= 1;
}
tween(ab.scale, {
x: 1.1,
y: 1.1
}, {
duration: 200,
easing: tween.easeOut,
onFinish: function onFinish() {
tween(ab.scale, {
x: 1,
y: 1
}, {
duration: 200,
easing: tween.easeIn
});
}
});
LK.setInterval(function () {
var ant = game.addChild(new Ant());
// Randomize the x position of the ant within the width of the hole
ant.x = hole.x + Math.random() * hole.width - hole.width / 2;
ant.y = hole.y;
}, wait * 1000);
}
};
LK.setInterval(function () {
var ant = game.addChild(new Ant());
// Randomize the x position of the ant within the width of the hole
ant.x = hole.x + Math.random() * hole.width - hole.width / 2;
ant.y = hole.y;
}, wait * 1000);
var speedcostText = new Text2('$' + speedcost, {
size: 80,
fill: 0x008000,
font: "'GillSans-Bold',Impact,'Arial Black',Tahoma"
});
speedcostText.anchor.set(0.5, 0);
speedcostText.x = -350;
speedcostText.y = 1780;
LK.gui.top.addChild(speedcostText);
var powercostText = new Text2('$' + powercost, {
size: 80,
fill: 0x008000,
font: "'GillSans-Bold',Impact,'Arial Black',Tahoma"
});
powercostText.anchor.set(0.5, 0);
powercostText.x = 0;
powercostText.y = 1780;
LK.gui.top.addChild(powercostText);
var levelText = new Text2('Level-' + level, {
size: 70,
fill: 0x5861a0,
// Green
font: "'GillSans-Bold',Impact,'Arial Black',Tahoma"
});
var workercostText = new Text2('$' + workercost, {
size: 80,
fill: 0x008000,
font: "'GillSans-Bold',Impact,'Arial Black',Tahoma"
});
workercostText.anchor.set(0.5, 0);
workercostText.x = 350;
workercostText.y = 1780;
LK.gui.top.addChild(workercostText);
levelText.anchor.set(0.5, 0);
levelText.x += 550;
levelText.y += 50;
LK.gui.top.addChild(levelText);
game.update = function () {
moneyText.setText('$' + money);
if (moneyText.lastMoney === undefined) {
moneyText.lastMoney = money;
}
if (money > moneyText.lastMoney) {
tween(moneyText.scale, {
x: 1.2,
y: 1.2
}, {
duration: 200,
easing: tween.easeOut,
onFinish: function onFinish() {
tween(moneyText.scale, {
x: 1,
y: 1
}, {
duration: 200,
easing: tween.easeIn
});
}
});
}
moneyText.lastMoney = money;
speedcostText.setText('$' + speedcost);
powercostText.setText('$' + powercost);
workercostText.setText('$' + workercost);
if (money < speedcost) {
sb.tint = 0x808080; // Dark gray
sb.soundPlayed = false;
} else {
sb.tint = 0xFFFFFF; // Reset to original color
if (!sb.soundPlayed) {
LK.getSound('activesound').play();
sb.soundPlayed = true;
}
}
if (money < powercost) {
pb.tint = 0x808080; // Dark gray
pb.soundPlayed = false;
} else {
pb.tint = 0xFFFFFF; // Reset to original color
if (!pb.soundPlayed) {
LK.getSound('activesound').play();
pb.soundPlayed = true;
}
}
if (money < workercost) {
ab.tint = 0x808080; // Dark gray
ab.soundPlayed = false;
} else {
ab.tint = 0xFFFFFF; // Reset to original color
if (!ab.soundPlayed) {
LK.getSound('activesound').play();
ab.soundPlayed = true;
}
}
if (food.scale.x <= 0 || food.scale.y <= 0) {
level += 1;
LK.getSound('nextlevelsound').play(); // Play nextlevelsound once when the level increases
if (level === 11) {
//LK.showYouWin();
LK.showYouWin("Total Money $".concat(LK.getScore(), "!"));
return;
}
levelText.setText('Level-' + level);
game.setBackgroundColor(backgroundColors[(level - 1) % backgroundColors.length]);
food.destroy();
food = game.addChild(LK.getAsset('food' + level, {
anchorX: 0.5,
anchorY: 0.5
}));
food.x = 2048 / 2;
food.y = 2732 / 4;
// Destroy all ant instances
game.children.forEach(function (child) {
if (child instanceof Ant) {
child.destroy();
}
});
}
};
;
donut cartoon 2d, blank background. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
hole cartoon 2d, blank background. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
Cartoon Pizza, 2d, blank background. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
strong button, cartoon, blank background, 2d. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
speed button, 2d, cartoon, blank background. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
hamburger,2d,cartoon,blank background. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
topdown 2d ant, blank background, no shadows. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
red apple,cartoon,2d,blank background. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
dollar,cartoon,2d,blank background. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
watermelon,cartoon,2d,blank background. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
candy,cartoon,2d,blank background. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
strawberry,cartoon,2d,blank background. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
honey,cartoon,2d,blank background. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
bread,cartoon,2d,blank background. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows
hafif taşlı zemin. üstten görünüm. cartoon