User prompt
Şimdi oradaki kovanı tam ekranın ortasına koy
User prompt
Bak şimdi bence şu ateş etme tuşunu kaldıralım ve kendimize ateş etmek için oradak kovana tıklamamız gereksin
User prompt
Please fix the bug: 'ReferenceError: itemDescriptions is not defined' in or related to this line: 'var descText = new Text2(itemDescriptions[itemId] || "", {' Line Number: 501
User prompt
Hayır şimdi ben oyuna girdim ya orada eşyam normal eskisi gibi duruyor tamam çantaya basıp çantayı kapayınca düzeliyor ama yinede oradaki baş yerde eşyamız eskisi gibi gözükmesi
User prompt
Ve çantaya tıklamadan önce eşyalarımız gözüküyor o hatayı düzelt
User prompt
Tamam o zaman eşyaların altındaki yazıları siyah yap
User prompt
Arkadaki beyaz yuvarlağı hani o çantaya basınca gelen işte oradaki şeyi siyah yap
User prompt
Ve arkada açılan beyaz şeyi siyah yap ve saydam bile olmasın
User prompt
Çantaya basınca arkadaki herşeyi görmeyelim sadece bir yerde eşyaalrımız olsun
User prompt
Bak şimdi çanta tuşuna bastığımızda arkadan hiçbirşey görmeyelim ve orada açılan yerde eşyalarımız görünsün
User prompt
O zaman eşyaları şöyle yap bir tul olsun o tuşa "çanta" adını ver bu tuşa basınca çıkan eşyalarımız olsun ve oradan kullanalım böyle yap
User prompt
Düzen : bütün sayıdaki eşyaları (1-2-3-4-5-6-7-8) normal buckshot roulette deki düzen gibi yap hepsini aynı düzende olsun
User prompt
Bak şimdi düzeni şöyle yap hani buckshot roulette de 2. Yerdeki düzen olsun ama 5 mermi geldiginde yine oradaki gibi olsunlar
User prompt
Düzen dogru ve her bir dolu mermi olsunca mermiyi rastgele yere koy çünkü bazen 0 dolu mermi oluyo yani hiç kimsenin canı gitmiyor bunu düzelt
User prompt
Hayır az o buckshot roulettenin 2. Seviyesi gibi düzen olsun ama biraz daha iki dörtlünün arası açılaın yani köşelere yaklaştırılsın
User prompt
Güzel ama karşıdaki kişinin eşyalarını göreniyorum yani onun dörtlülerini biraz daha köşeye koy
User prompt
Ve birde mesela eşya sayısı 4 ya karşı takıma da 4 eşya ver
User prompt
Şimdi denemeliğine bana 8 eşya ver
User prompt
Birde eger 8 eşya gelirse düzen şöyle 4 eşya saf tarafa 4 eşya sol tarafa 2 yan yana üstte altında da 2 yan yana olmak üzere bir düzen
User prompt
Neredeyse dogru ama şu tıkladığımızda arkada beliren beyaz yuvarlak varya ona gerek yok onu kaldır
User prompt
Şöyle olsun eşyalar 1-8 arasında rastgele sayıda verilsin ve eşyanın ne işe yaradığını yazan yeri sil onun yerine kullanmak istediğimiz eşyaya tıklayınca bize o eşyanın ne işe yaradığını ve kullanıp kullanmak istemediğimiz yazsın yaz kodu
User prompt
Neredeyse dogru ama canı giderse ateş edilirse degil
User prompt
Pardon birinin canı biterse degil giderse
User prompt
Şimdi eşyalar en başta verilecek bu eşyalar kullanılırsa (mesela adrenalin kullandım) o kullanılan eşya silinecek geriye kalan eşyalar olacak ve onları kullanabileceğiz kullandıklarını kullanamayız ve birinin canı gittiyse herkesin eşyası yenilenir yaz kodu
User prompt
Eşya kullanıldığında silinecek ve kullanılmayacak geriye kalanlarla devam edilecek bunun kodunu yaz
/**** * Plugins ****/ var tween = LK.import("@upit/tween.v1"); /**** * Classes ****/ // Revolver Chamber Slot var ChamberSlot = Container.expand(function () { var self = Container.call(this); // Each slot can be: 'blank', 'live', or a special item (e.g., 'buckshot', 'xray', etc.) self.type = 'blank'; // default // Visual representation var slotAsset = self.attachAsset('chamberSlot', { anchorX: 0.5, anchorY: 0.5 }); // Set type and update color self.setType = function (type) { self.type = type; // Color code: blank=gray, live=red, buckshot=orange, xray=blue, etc. var color = 0x888888; if (type === 'live') color = 0xd83318;else if (type === 'buckshot') color = 0xffa500;else if (type === 'xray') color = 0x3399ff; // ...add more as needed slotAsset.color = color; }; // Animate highlight (e.g., when firing) self.flash = function () { tween(slotAsset, { alpha: 0.2 }, { duration: 100, easing: tween.easeOut, onFinish: function onFinish() { tween(slotAsset, { alpha: 1 }, { duration: 200 }); } }); }; return self; }); // Health Bar var HealthBar = Container.expand(function () { var self = Container.call(this); self.maxHealth = 6; self.health = 6; // Visual: 6 rectangles self.segments = []; var segW = 60, segH = 30, gap = 10; for (var i = 0; i < self.maxHealth; i++) { var seg = self.attachAsset('healthSeg', { anchorX: 0.5, anchorY: 0.5, x: i * (segW + gap), color: 0x83de44 }); self.segments.push(seg); } // Set health (0 to maxHealth) self.setHealth = function (val) { self.health = val; for (var i = 0; i < self.maxHealth; i++) { self.segments[i].alpha = i < val ? 1 : 0.2; } }; // Animate damage self.flashDamage = function () { for (var i = 0; i < self.maxHealth; i++) { if (i === self.health) { tween(self.segments[i], { alpha: 0.2 }, { duration: 200 }); } } }; // Animate heal self.flashHeal = function () { for (var i = 0; i < self.maxHealth; i++) { if (i === self.health - 1) { tween(self.segments[i], { alpha: 1 }, { duration: 200 }); } } }; return self; }); // Item Button var ItemButton = Container.expand(function () { var self = Container.call(this); self.itemId = null; self.onUse = null; // Visual: icon var icon = self.attachAsset('itemIcon', { anchorX: 0.5, anchorY: 0.5, scaleX: 1, scaleY: 1 }); // Label var label = new Text2('', { size: 40, fill: "#fff" }); label.anchor.set(0.5, 0); label.y = 50; self.addChild(label); // Set item self.setItem = function (itemId, labelText) { self.itemId = itemId; label.setText(labelText); // Color code or icon change by itemId if desired }; // Touch event self.down = function (x, y, obj) { if (self.onUse) self.onUse(self.itemId); }; return self; }); // Revolver var Revolver = Container.expand(function () { var self = Container.call(this); // 6 chambers, arranged in a circle self.chambers = []; self.currentChamber = 0; // index of chamber to fire // Visual: revolver body var body = self.attachAsset('revolverBody', { anchorX: 0.5, anchorY: 0.5, scaleX: 1.2, scaleY: 1.2 }); // Place chambers in a circle var centerX = 0, centerY = 0, radius = 120; for (var i = 0; i < 6; i++) { var angle = Math.PI * 2 / 6 * i - Math.PI / 2; var slot = new ChamberSlot(); slot.x = centerX + Math.cos(angle) * radius; slot.y = centerY + Math.sin(angle) * radius; slot.setType('blank'); self.addChild(slot); self.chambers.push(slot); } // Set chamber types (array of 6: 'blank', 'live', etc.) self.setChambers = function (types) { for (var i = 0; i < 6; i++) { self.chambers[i].setType(types[i]); } }; // Spin the chamber (randomize currentChamber) self.spin = function () { self.currentChamber = Math.floor(Math.random() * 6); }; // Advance to next chamber self.advance = function () { self.currentChamber = (self.currentChamber + 1) % 6; }; // Get type of current chamber self.getCurrentType = function () { return self.chambers[self.currentChamber].type; }; // Animate firing (flash current chamber) self.flashCurrent = function () { self.chambers[self.currentChamber].flash(); }; // Reveal all chambers (for xray, etc.) self.revealAll = function () { for (var i = 0; i < 6; i++) { this.chambers[i].alpha = 1; } }; // Hide all chambers (normal state) self.hideAll = function () { for (var i = 0; i < 6; i++) { this.chambers[i].alpha = 0.5; } }; return self; }); /**** * Initialize Game ****/ var game = new LK.Game({ backgroundColor: 0x181818 }); /**** * Game Code ****/ // --- Game State --- /* We will use simple shapes for the revolver, shells, health bars, and item icons. Assets will be initialized automatically by LK based on usage. */ // We'll use tween for simple animations (e.g., health bar changes, shell movement) function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; } function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } var playerHealth = 6; var enemyHealth = 6; var maxHealth = 6; // Oyuncu ve düşman eşyaları en başta verilecek, kullanınca silinecek, biri ölürse yenilenecek var initialItemPool = ['xray', 'cigarette', 'adrenaline', 'magnifier', 'buckshot', 'whiskey', 'painkillers', 'mirror', 'tape', 'shellPuller', 'blankBullets']; function getInitialItems() { // 1-8 arası rastgele sayıda eşya, tekrar yok var pool = initialItemPool.slice(); var result = []; var count = 1 + Math.floor(Math.random() * 8); // 1-8 arası if (count > pool.length) count = pool.length; for (var i = 0; i < count; i++) { if (pool.length === 0) break; var idx = Math.floor(Math.random() * pool.length); result.push(pool[idx]); pool.splice(idx, 1); } return result; } // Oyuncu ve düşman eşyaları aynı sayıda olacak şekilde ayarlanır var playerItems = getInitialItems(); var enemyItems = playerItems.slice(); var revolverChambers = ['blank', 'live', 'blank', 'blank', 'blank', 'blank']; // Will be randomized var currentTurn = 'player'; // 'player' or 'enemy' var gamePhase = 'action'; // 'action', 'item', 'shop', etc. var shopItems = ['xray', 'cigarette', 'adrenaline', 'magnifier', 'buckshot', 'whiskey', 'painkillers', 'mirror', 'tape', 'shellPuller', 'blankBullets', 'scope', 'handcuffs', 'deflector', 'lighter', 'coin', 'cigarettePack', 'cigaretteCase', 'cigaretteLighter', 'cigaretteFilter', 'cigarettePaper', 'cigaretteTobacco', 'cigaretteButt', 'cigaretteAsh', 'cigaretteBurn', 'cigaretteSmoke', 'cigaretteEmber', 'cigaretteTip', 'cigaretteRoll', 'cigaretteBox', 'cigaretteCarton', 'cigaretteBrand', 'cigaretteLogo', 'cigaretteSticker', 'cigaretteFoil', 'cigaretteCellophane', 'cigaretteTaxStamp', 'cigaretteWarning', 'cigaretteBarcode', 'cigaretteSerial', 'cigaretteBatch', 'cigaretteDate', 'cigaretteFactory', 'cigaretteCountry', 'cigaretteImport', 'cigaretteExport', 'cigaretteDuty', 'cigaretteTar', 'cigaretteNicotine', 'cigaretteCarbonMonoxide', 'cigaretteAdditive', 'cigaretteFlavor', 'cigaretteMenthol', 'cigaretteClove', 'cigaretteHerbal', 'cigaretteOrganic', 'cigaretteLight', 'cigaretteUltraLight', 'cigaretteSlim', 'cigaretteSuperSlim', 'cigaretteMini', 'cigaretteKingSize', 'cigarette100s', 'cigarette120s', 'cigaretteLong', 'cigaretteShort', 'cigaretteRegular', 'cigaretteSpecial', 'cigaretteLimited', 'cigaretteEdition', 'cigaretteVintage', 'cigaretteClassic', 'cigarettePremium', 'cigaretteGold', 'cigaretteSilver', 'cigarettePlatinum', 'cigaretteDiamond', 'cigaretteRuby', 'cigaretteSapphire', 'cigaretteEmerald', 'cigarettePearl', 'cigaretteCrystal', 'cigaretteOpal', 'cigaretteJade', 'cigaretteAmber', 'cigaretteTopaz', 'cigaretteGarnet', 'cigaretteTurquoise', 'cigaretteOnyx', 'cigaretteObsidian', 'cigaretteQuartz', 'cigaretteAgate', 'cigaretteJasper', 'cigaretteLapis', 'cigaretteMalachite', 'cigaretteMoonstone', 'cigaretteSunstone', 'cigaretteTigerEye', 'cigaretteZircon', 'cigaretteSpinel', 'cigaretteTourmaline', 'cigarettePeridot', 'cigaretteAlexandrite', 'cigaretteTanzanite', 'cigaretteMorganite', 'cigaretteAquamarine', 'cigaretteCitrine', 'cigaretteHeliodor', 'cigaretteKunzite', 'cigaretteLepidolite', 'cigaretteRhodonite', 'cigaretteSodalite', 'cigaretteSugilite', 'cigaretteTopazolite', 'cigaretteTsavorite', 'cigaretteVariscite', 'cigaretteZoisite', 'cigaretteAndalusite', 'cigaretteApatite', 'cigaretteAxinite', 'cigaretteBenitoite', 'cigaretteBeryl', 'cigaretteCassiterite', 'cigaretteChalcedony', 'cigaretteChrysoberyl', 'cigaretteDanburite', 'cigaretteDiopside', 'cigaretteDumortierite', 'cigaretteEnstatite', 'cigaretteEpidote', 'cigaretteFluorite', 'cigaretteGoshenite', 'cigaretteHackmanite', 'cigaretteHiddenite', 'cigaretteIolite', 'cigaretteKyanite', 'cigaretteLabradorite', 'cigaretteLarimar', 'cigaretteNephrite', 'cigarettePetalite', 'cigarettePrehnite', 'cigaretteScapolite', 'cigaretteSerpentine', 'cigaretteSmithsonite', 'cigaretteSpessartite', 'cigaretteSphene', 'cigaretteStaurolite', 'cigaretteSunstone', 'cigaretteTektite', 'cigaretteThulite', 'cigaretteUvarovite', 'cigaretteVesuvianite', 'cigaretteWulfenite', 'cigaretteZircon', 'cigaretteZoisite']; // Placeholder, will use a subset for MVP var playerMoney = 0; var enemyMoney = 0; // --- UI Elements --- var revolver = new Revolver(); revolver.x = 2048 / 2; revolver.y = 900; game.addChild(revolver); var playerHealthBar = new HealthBar(); playerHealthBar.x = 2048 / 2 - 200; playerHealthBar.y = 1800; game.addChild(playerHealthBar); var enemyHealthBar = new HealthBar(); enemyHealthBar.x = 2048 / 2 - 200; enemyHealthBar.y = 300; game.addChild(enemyHealthBar); // Player/Enemy labels var playerLabel = new Text2('YOU', { size: 80, fill: "#fff" }); playerLabel.anchor.set(0.5, 0); playerLabel.x = 2048 / 2; playerLabel.y = 1700; game.addChild(playerLabel); var enemyLabel = new Text2('ENEMY', { size: 80, fill: "#fff" }); enemyLabel.anchor.set(0.5, 0); enemyLabel.x = 2048 / 2; enemyLabel.y = 200; game.addChild(enemyLabel); // Turn indicator var turnLabel = new Text2('', { size: 70, fill: 0xFFE066 }); turnLabel.anchor.set(0.5, 0); turnLabel.x = 2048 / 2; turnLabel.y = 1200; game.addChild(turnLabel); // Item buttons (max 8 but dynamic) var itemButtons = []; for (var i = 0; i < 8; i++) { var btn = new ItemButton(); // Default invisible, position will be set in updateItems btn.visible = false; game.addChild(btn); itemButtons.push(btn); } // Enemy item buttons (max 8 but dynamic) var enemyItemButtons = []; for (var i = 0; i < 8; i++) { var ebtn = new ItemButton(); ebtn.visible = false; // Disable interaction for enemy item buttons ebtn.down = function () {}; game.addChild(ebtn); enemyItemButtons.push(ebtn); } // Fire button var fireBtn = LK.getAsset('fireBtn', { anchorX: 0.5, anchorY: 0.5, x: 2048 / 2, y: 1400, scaleX: 1.2, scaleY: 1.2 }); game.addChild(fireBtn); // --- Helper Functions --- function shuffle(array) { // Fisher-Yates shuffle for (var i = array.length - 1; i > 0; i--) { var j = Math.floor(Math.random() * (i + 1)); var t = array[i]; array[i] = array[j]; array[j] = t; } return array; } function resetGame() { playerHealth = maxHealth; enemyHealth = maxHealth; playerItems = getInitialItems(); enemyItems = playerItems.slice(); playerMoney = 0; enemyMoney = 0; // For MVP: 1 live, 5 blanks revolverChambers = ['live', 'blank', 'blank', 'blank', 'blank', 'blank']; shuffle(revolverChambers); revolver.setChambers(revolverChambers); revolver.spin(); playerHealthBar.setHealth(playerHealth); enemyHealthBar.setHealth(enemyHealth); updateItems(); currentTurn = 'player'; gamePhase = 'action'; updateUI(); } function updateUI() { // Eşyalar sadece oyun başında ve biri ölünce yenilenir, burada tekrar dağıtma! // Update turn label if (currentTurn === 'player') { turnLabel.setText("YOUR TURN"); fireBtn.visible = true; for (var i = 0; i < itemButtons.length; i++) { itemButtons[i].visible = !!playerItems[i]; } } else { turnLabel.setText("ENEMY'S TURN"); fireBtn.visible = false; for (var i = 0; i < itemButtons.length; i++) { itemButtons[i].visible = false; } } // Health bars playerHealthBar.setHealth(playerHealth); enemyHealthBar.setHealth(enemyHealth); updateItems(); } function updateItems() { // Eşyalar başta ve ölümde veriliyor, burada tekrar verme! // Item descriptions for all items that can appear var itemDescriptions = _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({ xray: "Tüm mermileri 2 saniye boyunca gösterir.", cigarette: "1 can yeniler.", adrenaline: "Bir sonraki atıştan hasar almazsın.", magnifier: "Bir sonraki merminin tipini 2 saniye boyunca gösterir.", buckshot: "Bir sonraki canlı mermi 2 kat hasar verir.", whiskey: "2 can yeniler.", painkillers: "Bir sonraki ölümcül atışta 1 canla hayatta kalırsın.", mirror: "Bir sonraki canlı mermiyi rakibe yansıtırsın.", tape: "Rakibin bir sonraki turunu atlar.", shellPuller: "Rastgele bir canlı mermiyi çıkarır.", blankBullets: "Rastgele bir boş mermiyi canlıya çevirir.", scope: "Bir sonraki mermiyi garanti boş yapar.", handcuffs: "Rakip bir sonraki turunu atlar.", deflector: "Bir sonraki atış kimseye zarar vermez.", lighter: "Hemen ateş etmeni sağlar.", coin: "Yazı tura: 1 can kazan veya kaybet.", cigarettePack: "Canını tamamen doldurur.", cigaretteCase: "Sonraki 2 mermiyi boş yapar.", cigaretteLighter: "Bir sonraki mermiyi garanti canlı yapar.", cigaretteFilter: "Bir sonraki atıştan hasar almazsın.", cigarettePaper: "Rastgele bir canlı mermiyi boşa çevirir.", cigaretteTobacco: "Bir sonraki atış rakibe 2 kat hasar verir.", cigaretteButt: "1 can ver, 2 para al.", cigaretteAsh: "Bir sonraki mermiyi boş yapar.", cigaretteBurn: "Bir sonraki atış fazladan 1 hasar verir.", cigaretteSmoke: "Her iki oyuncu 1 can kaybeder.", cigaretteEmber: "Bir sonraki atış atlanır.", cigaretteTip: "1 can ve 1 para kazan.", cigaretteRoll: "Tüm mermileri karıştırır.", cigaretteBox: "Rastgele bir boş mermiyi canlıya çevirir.", cigaretteCarton: "Her iki oyuncunun canı tamamen dolar.", cigaretteBrand: "Rakibin bir sonraki mermisini boş yapar.", cigaretteLogo: "Kendi bir sonraki mermini boş yapar.", cigaretteSticker: "Bir sonraki mermiyi canlı yapar.", cigaretteFoil: "Her iki oyuncu bir sonraki turu atlar.", cigaretteCellophane: "Her iki oyuncu 2 can kaybeder.", cigaretteTaxStamp: "Her iki oyuncu 2 para kazanır.", cigaretteWarning: "Bir sonraki atıştan kimse hasar almaz.", cigaretteBarcode: "Tüm mermileri rastgele boş/canlı yapar.", cigaretteSerial: "Bir sonraki mermiyi boş yapar.", cigaretteBatch: "Bir sonraki mermiyi canlı yapar.", cigaretteDate: "Her iki oyuncu bir sonraki turu atlar.", cigaretteFactory: "Her iki oyuncunun canı tamamen dolar.", cigaretteCountry: "Her iki oyuncu 1 can kaybeder.", cigaretteImport: "Oyuncu 2 para kazanır.", cigaretteExport: "Rakip 2 para kazanır.", cigaretteDuty: "Her iki oyuncu 1 para kaybeder.", cigaretteTar: "Bir sonraki atış 2 kat hasar verir.", cigaretteNicotine: "Bir sonraki atıştan kimse hasar almaz.", cigaretteCarbonMonoxide: "Her iki oyuncu 1 can kaybeder.", cigaretteAdditive: "Bir sonraki mermiyi boş yapar.", cigaretteFlavor: "Bir sonraki mermiyi canlı yapar.", cigaretteMenthol: "Her iki oyuncu 1 can yeniler.", cigaretteClove: "Her iki oyuncu bir sonraki turu atlar.", cigaretteHerbal: "Her iki oyuncu 2 can yeniler.", cigaretteOrganic: "Her iki oyuncu 1 can yeniler.", cigaretteLight: "Bir sonraki atış yarım hasar verir.", cigaretteUltraLight: "Bir sonraki atıştan kimse hasar almaz.", cigaretteSlim: "Bir sonraki mermiyi boş yapar.", cigaretteSuperSlim: "Bir sonraki mermiyi boş yapar.", cigaretteMini: "Bir sonraki mermiyi boş yapar.", cigaretteKingSize: "Bir sonraki mermiyi canlı yapar.", cigarette100s: "Bir sonraki mermiyi canlı yapar.", cigarette120s: "Bir sonraki mermiyi canlı yapar.", cigaretteLong: "Bir sonraki mermiyi canlı yapar.", cigaretteShort: "Bir sonraki mermiyi boş yapar.", cigaretteRegular: "Hiçbir etkisi yok.", cigaretteSpecial: "Bir sonraki mermiyi canlı yapar.", cigaretteLimited: "Bir sonraki mermiyi boş yapar.", cigaretteEdition: "Tüm mermileri karıştırır.", cigaretteVintage: "Her iki oyuncu 1 can yeniler.", cigaretteClassic: "Her iki oyuncu 1 can yeniler.", cigarettePremium: "Her iki oyuncu 2 can yeniler.", cigaretteGold: "Her iki oyuncu 5 para kazanır.", cigaretteSilver: "Her iki oyuncu 3 para kazanır.", cigarettePlatinum: "Her iki oyuncu 10 para kazanır.", cigaretteDiamond: "Her iki oyuncu tam can ve 10 para kazanır.", cigaretteRuby: "Her iki oyuncu 2 can kaybeder.", cigaretteSapphire: "Her iki oyuncu 2 can yeniler.", cigaretteEmerald: "Her iki oyuncu 3 can yeniler.", cigarettePearl: "Her iki oyuncu 1 can yeniler.", cigaretteCrystal: "Her iki oyuncu 2 can yeniler.", cigaretteOpal: "Her iki oyuncu 1 can yeniler.", cigaretteJade: "Her iki oyuncu 2 can yeniler.", cigaretteAmber: "Her iki oyuncu 1 can yeniler.", cigaretteTopaz: "Her iki oyuncu 2 can yeniler.", cigaretteGarnet: "Her iki oyuncu 1 can kaybeder.", cigaretteTurquoise: "Her iki oyuncu 1 can yeniler.", cigaretteOnyx: "Her iki oyuncu 2 can kaybeder.", cigaretteObsidian: "Her iki oyuncu 1 can kaybeder.", cigaretteQuartz: "Her iki oyuncu 1 can yeniler.", cigaretteAgate: "Her iki oyuncu 2 can yeniler.", cigaretteJasper: "Her iki oyuncu 1 can yeniler.", cigaretteLapis: "Her iki oyuncu 2 can yeniler.", cigaretteMalachite: "Her iki oyuncu 1 can yeniler.", cigaretteMoonstone: "Her iki oyuncu 2 can yeniler.", cigaretteSunstone: "Her iki oyuncu 1 can yeniler.", cigaretteTigerEye: "Her iki oyuncu 2 can yeniler.", cigaretteZircon: "Her iki oyuncu 1 can yeniler.", cigaretteSpinel: "Her iki oyuncu 2 can yeniler.", cigaretteTourmaline: "Her iki oyuncu 1 can yeniler.", cigarettePeridot: "Her iki oyuncu 2 can yeniler.", cigaretteAlexandrite: "Her iki oyuncu 1 can yeniler.", cigaretteTanzanite: "Her iki oyuncu 2 can yeniler.", cigaretteMorganite: "Her iki oyuncu 1 can yeniler.", cigaretteAquamarine: "Her iki oyuncu 2 can yeniler.", cigaretteCitrine: "Her iki oyuncu 1 can yeniler.", cigaretteHeliodor: "Her iki oyuncu 2 can yeniler.", cigaretteKunzite: "Her iki oyuncu 1 can yeniler.", cigaretteLepidolite: "Her iki oyuncu 2 can yeniler.", cigaretteRhodonite: "Her iki oyuncu 1 can yeniler.", cigaretteSodalite: "Her iki oyuncu 2 can yeniler.", cigaretteSugilite: "Her iki oyuncu 1 can yeniler.", cigaretteTopazolite: "Her iki oyuncu 2 can yeniler.", cigaretteTsavorite: "Her iki oyuncu 1 can yeniler.", cigaretteVariscite: "Her iki oyuncu 2 can yeniler.", cigaretteZoisite: "Her iki oyuncu 1 can yeniler.", cigaretteAndalusite: "Her iki oyuncu 2 can yeniler.", cigaretteApatite: "Her iki oyuncu 1 can yeniler.", cigaretteAxinite: "Her iki oyuncu 2 can yeniler.", cigaretteBenitoite: "Her iki oyuncu 1 can yeniler.", cigaretteBeryl: "Her iki oyuncu 2 can yeniler.", cigaretteCassiterite: "Her iki oyuncu 1 can yeniler.", cigaretteChalcedony: "Her iki oyuncu 2 can yeniler.", cigaretteChrysoberyl: "Her iki oyuncu 1 can yeniler.", cigaretteDanburite: "Her iki oyuncu 2 can yeniler.", cigaretteDiopside: "Her iki oyuncu 1 can yeniler.", cigaretteDumortierite: "Her iki oyuncu 2 can yeniler.", cigaretteEnstatite: "Her iki oyuncu 1 can yeniler.", cigaretteEpidote: "Her iki oyuncu 2 can yeniler.", cigaretteFluorite: "Her iki oyuncu 1 can yeniler.", cigaretteGoshenite: "Her iki oyuncu 2 can yeniler.", cigaretteHackmanite: "Her iki oyuncu 1 can yeniler.", cigaretteHiddenite: "Her iki oyuncu 2 can yeniler.", cigaretteIolite: "Her iki oyuncu 1 can yeniler.", cigaretteKyanite: "Her iki oyuncu 2 can yeniler.", cigaretteLabradorite: "Her iki oyuncu 1 can yeniler.", cigaretteLarimar: "Her iki oyuncu 2 can yeniler.", cigaretteNephrite: "Her iki oyuncu 1 can yeniler.", cigarettePetalite: "Her iki oyuncu 2 can yeniler.", cigarettePrehnite: "Her iki oyuncu 1 can yeniler.", cigaretteScapolite: "Her iki oyuncu 2 can yeniler.", cigaretteSerpentine: "Her iki oyuncu 1 can yeniler.", cigaretteSmithsonite: "Her iki oyuncu 2 can yeniler.", cigaretteSpessartite: "Her iki oyuncu 1 can yeniler.", cigaretteSphene: "Her iki oyuncu 2 can yeniler.", cigaretteStaurolite: "Her iki oyuncu 1 can yeniler." }, "cigaretteSunstone", "Her iki oyuncu 2 can yeniler."), "cigaretteTektite", "Her iki oyuncu 1 can yeniler."), "cigaretteThulite", "Her iki oyuncu 2 can yeniler."), "cigaretteUvarovite", "Her iki oyuncu 1 can yeniler."), "cigaretteVesuvianite", "Her iki oyuncu 2 can yeniler."), "cigaretteWulfenite", "Her iki oyuncu 1 can yeniler."), "cigaretteZircon", "Her iki oyuncu 2 can yeniler."), "cigaretteZoisite", "Her iki oyuncu 1 can yeniler."); // Oyuncu item butonlarını konumlandır var playerItemCount = playerItems.length; for (var i = 0; i < itemButtons.length; i++) { if (playerItems[i]) { var itemId = playerItems[i]; var labelText = itemId.toUpperCase(); var desc = itemDescriptions[itemId] || ""; itemButtons[i].setItem(itemId, labelText); itemButtons[i].visible = true; // 8 eşya ise: 4 sağa 4 sola, 2 üstte yan yana, 2 altta yan yana if (playerItemCount === 8) { // 0-1 üstte solda, 2-3 üstte sağda, 4-5 altta solda, 6-7 altta sağda // Üstteki 4: 2 sol (0,1), 2 sağ (2,3) // Alttaki 4: 2 sol (4,5), 2 sağ (6,7) // Yükseklikler: // üst sıra: y=2150, alt sıra: y=2450 // soldakiler: x=2048/2-350, x=2048/2-150 // sağdakiler: x=2048/2+150, x=2048/2+350 var xArr = [2048 / 2 - 350, 2048 / 2 - 150, 2048 / 2 + 150, 2048 / 2 + 350]; var yArr = [2150, 2150, 2150, 2150, 2450, 2450, 2450, 2450]; if (i < 4) { itemButtons[i].x = xArr[i]; itemButtons[i].y = 2150; } else { itemButtons[i].x = xArr[i - 4]; itemButtons[i].y = 2450; } } else if (playerItemCount === 7) { // 3 üstte, 4 altta var xArrTop = [2048 / 2 - 250, 2048 / 2, 2048 / 2 + 250]; var xArrBot = [2048 / 2 - 350, 2048 / 2 - 150, 2048 / 2 + 150, 2048 / 2 + 350]; for (var j = 0; j < 7; j++) { if (i === j) { if (j < 3) { itemButtons[i].x = xArrTop[j]; itemButtons[i].y = 2150; } else { itemButtons[i].x = xArrBot[j - 3]; itemButtons[i].y = 2450; } } } } else if (playerItemCount === 6) { // 3 üstte, 3 altta var xArr = [2048 / 2 - 250, 2048 / 2, 2048 / 2 + 250]; if (i < 3) { itemButtons[i].x = xArr[i]; itemButtons[i].y = 2150; } else { itemButtons[i].x = xArr[i - 3]; itemButtons[i].y = 2450; } } else if (playerItemCount === 5) { // 3 üstte, 2 altta var xArrTop = [2048 / 2 - 250, 2048 / 2, 2048 / 2 + 250]; var xArrBot = [2048 / 2 - 150, 2048 / 2 + 150]; for (var j = 0; j < 5; j++) { if (i === j) { if (j < 3) { itemButtons[i].x = xArrTop[j]; itemButtons[i].y = 2150; } else { itemButtons[i].x = xArrBot[j - 3]; itemButtons[i].y = 2450; } } } } else if (playerItemCount === 4) { // 2 üstte, 2 altta var xArr = [2048 / 2 - 150, 2048 / 2 + 150]; if (i < 2) { itemButtons[i].x = xArr[i]; itemButtons[i].y = 2150; } else { itemButtons[i].x = xArr[i - 2]; itemButtons[i].y = 2450; } } else if (playerItemCount === 3) { // 3 buton ortalanmış var xArr = [2048 / 2 - 250, 2048 / 2, 2048 / 2 + 250]; itemButtons[i].x = xArr[i]; itemButtons[i].y = 2300; } else if (playerItemCount === 2) { var xArr = [2048 / 2 - 150, 2048 / 2 + 150]; itemButtons[i].x = xArr[i]; itemButtons[i].y = 2300; } else if (playerItemCount === 1) { itemButtons[i].x = 2048 / 2; itemButtons[i].y = 2300; } // Butona tıklayınca popup aç itemButtons[i].onUse = function (itemId, desc, btnIdx) { return function () { // Önce eski popup varsa kaldır if (game._itemPopup) { game.removeChild(game._itemPopup); game._itemPopup = null; } // Popup container var popup = new Container(); // Açıklama var txt = new Text2(desc, { size: 60, fill: "#fff" }); txt.anchor.set(0.5, 0.5); txt.x = 2048 / 2; txt.y = 1450; popup.addChild(txt); // Soru var q = new Text2("Kullanmak istiyor musun?", { size: 50, fill: 0xFFE066 }); q.anchor.set(0.5, 0.5); q.x = 2048 / 2; q.y = 1600; popup.addChild(q); // Evet butonu var yesBtn = LK.getAsset('itemIcon', { anchorX: 0.5, anchorY: 0.5, scaleX: 1.2, scaleY: 1.2, x: 2048 / 2 - 180, y: 1700 }); popup.addChild(yesBtn); var yesTxt = new Text2("Kullan", { size: 44, fill: 0x83DE44 }); yesTxt.anchor.set(0.5, 0.5); yesTxt.x = yesBtn.x; yesTxt.y = yesBtn.y + 90; popup.addChild(yesTxt); // Hayır butonu var noBtn = LK.getAsset('itemIcon', { anchorX: 0.5, anchorY: 0.5, scaleX: 1.2, scaleY: 1.2, x: 2048 / 2 + 180, y: 1700 }); popup.addChild(noBtn); var noTxt = new Text2("Vazgeç", { size: 44, fill: 0xD83318 }); noTxt.anchor.set(0.5, 0.5); noTxt.x = noBtn.x; noTxt.y = noBtn.y + 90; popup.addChild(noTxt); // Evet: item kullan yesBtn.down = function () { useItem(itemId); if (game._itemPopup) { game.removeChild(game._itemPopup); game._itemPopup = null; } }; // Hayır: popup kapat noBtn.down = function () { if (game._itemPopup) { game.removeChild(game._itemPopup); game._itemPopup = null; } }; // Popup'u ekle game.addChild(popup); game._itemPopup = popup; }; }(itemId, desc, i); // Buton altı açıklama kaldırıldı if (itemButtons[i].descText) { itemButtons[i].descText.visible = false; } } else { itemButtons[i].visible = false; if (itemButtons[i].descText) { itemButtons[i].descText.visible = false; } } } // Enemy item butonlarını konumlandır var enemyItemCount = enemyItems.length; for (var i = 0; i < enemyItemButtons.length; i++) { if (enemyItems[i]) { var itemId = enemyItems[i]; var labelText = itemId.toUpperCase(); enemyItemButtons[i].setItem(itemId, labelText); enemyItemButtons[i].visible = true; // 8 eşya ise: 4 sağa 4 sola, 2 üstte yan yana, 2 altta yan yana if (enemyItemCount === 8) { // Move enemy items further to the corners for better visibility // Corners: x = 2048/2-600, -400 (sol), +400, +600 (sağ) // Y: üst sıra 550, alt sıra 850 var xArr = [2048 / 2 - 600, 2048 / 2 - 400, 2048 / 2 + 400, 2048 / 2 + 600]; if (i < 4) { enemyItemButtons[i].x = xArr[i]; enemyItemButtons[i].y = 550; } else { enemyItemButtons[i].x = xArr[i - 4]; enemyItemButtons[i].y = 850; } } else if (enemyItemCount === 7) { var xArrTop = [2048 / 2 - 250, 2048 / 2, 2048 / 2 + 250]; var xArrBot = [2048 / 2 - 350, 2048 / 2 - 150, 2048 / 2 + 150, 2048 / 2 + 350]; for (var j = 0; j < 7; j++) { if (i === j) { if (j < 3) { enemyItemButtons[i].x = xArrTop[j]; enemyItemButtons[i].y = 650; } else { enemyItemButtons[i].x = xArrBot[j - 3]; enemyItemButtons[i].y = 850; } } } } else if (enemyItemCount === 6) { var xArr = [2048 / 2 - 250, 2048 / 2, 2048 / 2 + 250]; if (i < 3) { enemyItemButtons[i].x = xArr[i]; enemyItemButtons[i].y = 650; } else { enemyItemButtons[i].x = xArr[i - 3]; enemyItemButtons[i].y = 850; } } else if (enemyItemCount === 5) { var xArrTop = [2048 / 2 - 250, 2048 / 2, 2048 / 2 + 250]; var xArrBot = [2048 / 2 - 150, 2048 / 2 + 150]; for (var j = 0; j < 5; j++) { if (i === j) { if (j < 3) { enemyItemButtons[i].x = xArrTop[j]; enemyItemButtons[i].y = 650; } else { enemyItemButtons[i].x = xArrBot[j - 3]; enemyItemButtons[i].y = 850; } } } } else if (enemyItemCount === 4) { var xArr = [2048 / 2 - 150, 2048 / 2 + 150]; if (i < 2) { enemyItemButtons[i].x = xArr[i]; enemyItemButtons[i].y = 650; } else { enemyItemButtons[i].x = xArr[i - 2]; enemyItemButtons[i].y = 850; } } else if (enemyItemCount === 3) { var xArr = [2048 / 2 - 250, 2048 / 2, 2048 / 2 + 250]; enemyItemButtons[i].x = xArr[i]; enemyItemButtons[i].y = 750; } else if (enemyItemCount === 2) { var xArr = [2048 / 2 - 150, 2048 / 2 + 150]; enemyItemButtons[i].x = xArr[i]; enemyItemButtons[i].y = 750; } else if (enemyItemCount === 1) { enemyItemButtons[i].x = 2048 / 2; enemyItemButtons[i].y = 750; } // Açıklama gösterme if (enemyItemButtons[i].descText) { enemyItemButtons[i].descText.visible = false; } } else { enemyItemButtons[i].visible = false; if (enemyItemButtons[i].descText) { enemyItemButtons[i].descText.visible = false; } } } } // --- Game Logic --- function fireRevolver() { // Animate chamber revolver.flashCurrent(); var type = revolver.getCurrentType(); // Tape: skip turn logic if (currentTurn === 'player' && game.skipPlayerTurn) { game.skipPlayerTurn = false; currentTurn = 'enemy'; updateUI(); LK.setTimeout(enemyTurn, 1200); return; } if (currentTurn === 'enemy' && game.skipEnemyTurn) { game.skipEnemyTurn = false; currentTurn = 'player'; updateUI(); return; } if (currentTurn === 'player') { // Mirror: reflect shot to enemy if (game.mirrorActive && type === 'live') { game.mirrorActive = false; enemyHealth--; enemyHealthBar.flashDamage(); LK.effects.flashObject(enemyHealthBar, 0xff0000, 500); } // Adrenaline: immune to this shot else if (game.adrenalineImmune && type === 'live') { game.adrenalineImmune = false; LK.effects.flashScreen(0x00ffff, 500); } // Painkillers: survive at 1 HP else if (game.painkillersActive && type === 'live' && playerHealth === 1) { game.painkillersActive = false; LK.effects.flashScreen(0xffff00, 500); } // Buckshot: double damage else if (game.buckshotActive && type === 'live') { game.buckshotActive = false; playerHealth -= 2; playerHealthBar.flashDamage(); LK.effects.flashScreen(0xffa500, 500); } // Normal shot else if (type === 'live') { playerHealth--; playerHealthBar.flashDamage(); LK.effects.flashScreen(0xff0000, 500); } // For MVP: only live/blank revolver.chambers[revolver.currentChamber].setType('fired'); revolver.advance(); checkGameOver(); if (gamePhase !== 'gameover') { currentTurn = 'enemy'; updateUI(); LK.setTimeout(enemyTurn, 1200); } } else { // Mirror: reflect shot to player if (game.enemyMirrorActive && type === 'live') { game.enemyMirrorActive = false; playerHealth--; playerHealthBar.flashDamage(); LK.effects.flashObject(playerHealthBar, 0xff0000, 500); } // Adrenaline: immune to this shot else if (game.enemyAdrenalineImmune && type === 'live') { game.enemyAdrenalineImmune = false; LK.effects.flashScreen(0x00ffff, 500); } // Painkillers: survive at 1 HP else if (game.enemyPainkillersActive && type === 'live' && enemyHealth === 1) { game.enemyPainkillersActive = false; LK.effects.flashScreen(0xffff00, 500); } // Buckshot: double damage else if (game.enemyBuckshotActive && type === 'live') { game.enemyBuckshotActive = false; enemyHealth -= 2; enemyHealthBar.flashDamage(); LK.effects.flashScreen(0xffa500, 500); } // Normal shot else if (type === 'live') { enemyHealth--; enemyHealthBar.flashDamage(); LK.effects.flashObject(enemyHealthBar, 0xff0000, 500); } revolver.chambers[revolver.currentChamber].setType('fired'); revolver.advance(); checkGameOver(); if (gamePhase !== 'gameover') { currentTurn = 'player'; updateUI(); } } } function useItem(itemId, isEnemy) { // isEnemy: true if AI is using, false/undefined if player var itemsArr = isEnemy ? enemyItems : playerItems; var healthBar = isEnemy ? enemyHealthBar : playerHealthBar; var healthVar = isEnemy ? "enemyHealth" : "playerHealth"; var otherHealthBar = isEnemy ? playerHealthBar : enemyHealthBar; var otherHealthVar = isEnemy ? "playerHealth" : "enemyHealth"; var removeItem = function removeItem() { for (var i = 0; i < 3; i++) { if (itemsArr[i] === itemId) { itemsArr[i] = null; break; } } }; // XRAY: Reveal all chambers for 2s if (itemId === 'xray') { revolver.revealAll(); LK.setTimeout(function () { revolver.hideAll(); }, 2000); removeItem(); } // CIGARETTE: Heal 1 HP (if not max) else if (itemId === 'cigarette') { if (!isEnemy && playerHealth < maxHealth) { playerHealth++; healthBar.flashHeal(); healthBar.setHealth(playerHealth); } else if (isEnemy && enemyHealth < maxHealth) { enemyHealth++; healthBar.flashHeal(); healthBar.setHealth(enemyHealth); } removeItem(); } // ADRENALINE: Next shot doesn't hurt (immunity for 1 turn) else if (itemId === 'adrenaline') { if (!isEnemy) { game.adrenalineImmune = true; } else { game.enemyAdrenalineImmune = true; } removeItem(); } // MAGNIFIER: See next chamber type for 2s else if (itemId === 'magnifier') { var idx = revolver.currentChamber; revolver.chambers[idx].alpha = 1; LK.setTimeout(function () { revolver.chambers[idx].alpha = 0.5; }, 2000); removeItem(); } // BUCKSHOT: Next live round does double damage else if (itemId === 'buckshot') { if (!isEnemy) { game.buckshotActive = true; } else { game.enemyBuckshotActive = true; } removeItem(); } // WHISKEY: Heal 2 HP (if not max) else if (itemId === 'whiskey') { if (!isEnemy && playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; healthBar.flashHeal(); healthBar.setHealth(playerHealth); } else if (isEnemy && enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; healthBar.flashHeal(); healthBar.setHealth(enemyHealth); } removeItem(); } // PAINKILLERS: Survive next shot at 1 HP else if (itemId === 'painkillers') { if (!isEnemy) { game.painkillersActive = true; } else { game.enemyPainkillersActive = true; } removeItem(); } // MIRROR: Reflect next shot to opponent else if (itemId === 'mirror') { if (!isEnemy) { game.mirrorActive = true; } else { game.enemyMirrorActive = true; } removeItem(); } // TAPE: Skip opponent's next turn else if (itemId === 'tape') { if (!isEnemy) { game.skipEnemyTurn = true; } else { game.skipPlayerTurn = true; } removeItem(); } // SHELL PULLER: Remove a random live round (if any) else if (itemId === 'shellPuller') { var found = false; for (var i = 0; i < revolver.chambers.length; i++) { if (revolver.chambers[i].type === 'live') { revolver.chambers[i].setType('blank'); found = true; break; } } if (found) { LK.effects.flashScreen(0x00ffcc, 500); } removeItem(); } // BLANK BULLETS: Convert a random blank to a live (for sabotage) else if (itemId === 'blankBullets') { var blanks = []; for (var i = 0; i < revolver.chambers.length; i++) { if (revolver.chambers[i].type === 'blank') blanks.push(i); } if (blanks.length > 0) { var idx = blanks[Math.floor(Math.random() * blanks.length)]; revolver.chambers[idx].setType('live'); LK.effects.flashScreen(0xffa500, 500); } removeItem(); } // SCOPE: Next shot is guaranteed to be a blank (for player or enemy) else if (itemId === 'scope') { // Find next chamber to fire var idx = revolver.currentChamber; if (revolver.chambers[idx].type === 'live') { revolver.chambers[idx].setType('blank'); LK.effects.flashScreen(0x00ffcc, 500); } removeItem(); } // HANDCUFFS: Opponent skips their next turn else if (itemId === 'handcuffs') { if (!isEnemy) { game.skipEnemyTurn = true; } else { game.skipPlayerTurn = true; } removeItem(); } // DEFLECTOR: Next shot is deflected (no one takes damage) else if (itemId === 'deflector') { if (!isEnemy) { game.deflectorActive = true; } else { game.enemyDeflectorActive = true; } removeItem(); } // LIGHTER: Instantly fire the next chamber (player only) else if (itemId === 'lighter') { if (!isEnemy && currentTurn === 'player' && gamePhase === 'action') { fireRevolver(); } removeItem(); } // COIN: 50% chance to heal 1 HP or lose 1 HP else if (itemId === 'coin') { var flip = Math.random() < 0.5; if (!isEnemy) { if (flip && playerHealth < maxHealth) { playerHealth++; healthBar.flashHeal(); healthBar.setHealth(playerHealth); } else if (!flip && playerHealth > 1) { playerHealth--; healthBar.flashDamage(); healthBar.setHealth(playerHealth); } } else { if (flip && enemyHealth < maxHealth) { enemyHealth++; healthBar.flashHeal(); healthBar.setHealth(enemyHealth); } else if (!flip && enemyHealth > 1) { enemyHealth--; healthBar.flashDamage(); healthBar.setHealth(enemyHealth); } } removeItem(); } // CIGARETTE PACK: Fully heal (set HP to max) else if (itemId === 'cigarettePack') { if (!isEnemy && playerHealth < maxHealth) { playerHealth = maxHealth; healthBar.flashHeal(); healthBar.setHealth(playerHealth); } else if (isEnemy && enemyHealth < maxHealth) { enemyHealth = maxHealth; healthBar.flashHeal(); healthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE CASE: Next 2 shots are blanks else if (itemId === 'cigaretteCase') { var blanksSet = 0; for (var i = 0; i < revolver.chambers.length && blanksSet < 2; i++) { var idx = (revolver.currentChamber + i) % revolver.chambers.length; if (revolver.chambers[idx].type === 'live') { revolver.chambers[idx].setType('blank'); blanksSet++; } } removeItem(); } // CIGARETTE LIGHTER: Next shot is guaranteed to be live else if (itemId === 'cigaretteLighter') { var idx = revolver.currentChamber; if (revolver.chambers[idx].type === 'blank') { revolver.chambers[idx].setType('live'); LK.effects.flashScreen(0xffa500, 500); } removeItem(); } // CIGARETTE FILTER: Next shot does no damage else if (itemId === 'cigaretteFilter') { if (!isEnemy) { game.filterActive = true; } else { game.enemyFilterActive = true; } removeItem(); } // CIGARETTE PAPER: Add a blank round to a random chamber else if (itemId === 'cigarettePaper') { var lives = []; for (var i = 0; i < revolver.chambers.length; i++) { if (revolver.chambers[i].type === 'live') lives.push(i); } if (lives.length > 0) { var idx = lives[Math.floor(Math.random() * lives.length)]; revolver.chambers[idx].setType('blank'); LK.effects.flashScreen(0x00ffcc, 500); } removeItem(); } // CIGARETTE TOBACCO: Next shot does double damage to opponent else if (itemId === 'cigaretteTobacco') { if (!isEnemy) { game.buckshotActive = true; } else { game.enemyBuckshotActive = true; } removeItem(); } // CIGARETTE BUTT: Lose 1 HP to gain 2 money (if money system is used) else if (itemId === 'cigaretteButt') { if (!isEnemy && playerHealth > 1) { playerHealth--; playerMoney += 2; healthBar.flashDamage(); healthBar.setHealth(playerHealth); } else if (isEnemy && enemyHealth > 1) { enemyHealth--; enemyMoney += 2; healthBar.flashDamage(); healthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE ASH: Next shot is a blank for both players else if (itemId === 'cigaretteAsh') { var idx = revolver.currentChamber; revolver.chambers[idx].setType('blank'); removeItem(); } // CIGARETTE BURN: Next shot does 1 extra damage else if (itemId === 'cigaretteBurn') { if (!isEnemy) { game.burnActive = true; } else { game.enemyBurnActive = true; } removeItem(); } // CIGARETTE SMOKE: Both players lose 1 HP else if (itemId === 'cigaretteSmoke') { if (playerHealth > 1) { playerHealth--; playerHealthBar.flashDamage(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth > 1) { enemyHealth--; enemyHealthBar.flashDamage(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE EMBER: Next shot is skipped (no one fires) else if (itemId === 'cigaretteEmber') { if (!isEnemy) { game.skipPlayerTurn = true; } else { game.skipEnemyTurn = true; } removeItem(); } // CIGARETTE TIP: Heal 1 HP and gain 1 money else if (itemId === 'cigaretteTip') { if (!isEnemy && playerHealth < maxHealth) { playerHealth++; playerMoney++; healthBar.flashHeal(); healthBar.setHealth(playerHealth); } else if (isEnemy && enemyHealth < maxHealth) { enemyHealth++; enemyMoney++; healthBar.flashHeal(); healthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE ROLL: Randomly shuffle all chambers else if (itemId === 'cigaretteRoll') { shuffle(revolverChambers); revolver.setChambers(revolverChambers); removeItem(); } // CIGARETTE BOX: Add 1 live round to a random blank else if (itemId === 'cigaretteBox') { var blanks = []; for (var i = 0; i < revolver.chambers.length; i++) { if (revolver.chambers[i].type === 'blank') blanks.push(i); } if (blanks.length > 0) { var idx = blanks[Math.floor(Math.random() * blanks.length)]; revolver.chambers[idx].setType('live'); LK.effects.flashScreen(0xffa500, 500); } removeItem(); } // CIGARETTE CARTON: Both players fully heal else if (itemId === 'cigaretteCarton') { playerHealth = maxHealth; enemyHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); removeItem(); } // CIGARETTE BRAND: Next shot is a blank for enemy else if (itemId === 'cigaretteBrand') { if (isEnemy) { var idx = revolver.currentChamber; revolver.chambers[idx].setType('blank'); } removeItem(); } // CIGARETTE LOGO: Next shot is a blank for player else if (itemId === 'cigaretteLogo') { if (!isEnemy) { var idx = revolver.currentChamber; revolver.chambers[idx].setType('blank'); } removeItem(); } // CIGARETTE STICKER: Next shot is a live for both players else if (itemId === 'cigaretteSticker') { var idx = revolver.currentChamber; revolver.chambers[idx].setType('live'); removeItem(); } // CIGARETTE FOIL: Next shot is skipped for both players else if (itemId === 'cigaretteFoil') { game.skipPlayerTurn = true; game.skipEnemyTurn = true; removeItem(); } // CIGARETTE CELLOPHANE: Both players lose 2 HP else if (itemId === 'cigaretteCellophane') { if (playerHealth > 2) { playerHealth -= 2; playerHealthBar.flashDamage(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth > 2) { enemyHealth -= 2; enemyHealthBar.flashDamage(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE TAX STAMP: Both players gain 2 money else if (itemId === 'cigaretteTaxStamp') { playerMoney += 2; enemyMoney += 2; removeItem(); } // CIGARETTE WARNING: Next shot does no damage for both players else if (itemId === 'cigaretteWarning') { game.filterActive = true; game.enemyFilterActive = true; removeItem(); } // CIGARETTE BARCODE: Randomly set all chambers to blank or live else if (itemId === 'cigaretteBarcode') { for (var i = 0; i < revolver.chambers.length; i++) { revolver.chambers[i].setType(Math.random() < 0.5 ? 'blank' : 'live'); } removeItem(); } // CIGARETTE SERIAL: Next shot is a blank for both players else if (itemId === 'cigaretteSerial') { var idx = revolver.currentChamber; revolver.chambers[idx].setType('blank'); removeItem(); } // CIGARETTE BATCH: Next shot is a live for both players else if (itemId === 'cigaretteBatch') { var idx = revolver.currentChamber; revolver.chambers[idx].setType('live'); removeItem(); } // CIGARETTE DATE: Both players skip next turn else if (itemId === 'cigaretteDate') { game.skipPlayerTurn = true; game.skipEnemyTurn = true; removeItem(); } // CIGARETTE FACTORY: Both players fully heal else if (itemId === 'cigaretteFactory') { playerHealth = maxHealth; enemyHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); removeItem(); } // CIGARETTE COUNTRY: Both players lose 1 HP else if (itemId === 'cigaretteCountry') { if (playerHealth > 1) { playerHealth--; playerHealthBar.flashDamage(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth > 1) { enemyHealth--; enemyHealthBar.flashDamage(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE IMPORT: Player gains 2 money else if (itemId === 'cigaretteImport') { if (!isEnemy) playerMoney += 2; removeItem(); } // CIGARETTE EXPORT: Enemy gains 2 money else if (itemId === 'cigaretteExport') { if (isEnemy) enemyMoney += 2; removeItem(); } // CIGARETTE DUTY: Both players lose 1 money else if (itemId === 'cigaretteDuty') { if (playerMoney > 0) playerMoney--; if (enemyMoney > 0) enemyMoney--; removeItem(); } // CIGARETTE TAR: Next shot does double damage for both players else if (itemId === 'cigaretteTar') { game.buckshotActive = true; game.enemyBuckshotActive = true; removeItem(); } // CIGARETTE NICOTINE: Next shot does no damage for both players else if (itemId === 'cigaretteNicotine') { game.filterActive = true; game.enemyFilterActive = true; removeItem(); } // CIGARETTE CARBON MONOXIDE: Both players lose 1 HP else if (itemId === 'cigaretteCarbonMonoxide') { if (playerHealth > 1) { playerHealth--; playerHealthBar.flashDamage(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth > 1) { enemyHealth--; enemyHealthBar.flashDamage(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE ADDITIVE: Next shot is a blank for both players else if (itemId === 'cigaretteAdditive') { var idx = revolver.currentChamber; revolver.chambers[idx].setType('blank'); removeItem(); } // CIGARETTE FLAVOR: Next shot is a live for both players else if (itemId === 'cigaretteFlavor') { var idx = revolver.currentChamber; revolver.chambers[idx].setType('live'); removeItem(); } // CIGARETTE MENTHOL: Both players heal 1 HP else if (itemId === 'cigaretteMenthol') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE CLOVE: Next shot is skipped for both players else if (itemId === 'cigaretteClove') { game.skipPlayerTurn = true; game.skipEnemyTurn = true; removeItem(); } // CIGARETTE HERBAL: Both players heal 2 HP else if (itemId === 'cigaretteHerbal') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE ORGANIC: Both players heal 1 HP else if (itemId === 'cigaretteOrganic') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE LIGHT: Next shot does half damage for both players else if (itemId === 'cigaretteLight') { if (!isEnemy) { game.lightActive = true; } else { game.enemyLightActive = true; } removeItem(); } // CIGARETTE ULTRALIGHT: Next shot does no damage for both players else if (itemId === 'cigaretteUltraLight') { game.filterActive = true; game.enemyFilterActive = true; removeItem(); } // CIGARETTE SLIM: Next shot is a blank for both players else if (itemId === 'cigaretteSlim') { var idx = revolver.currentChamber; revolver.chambers[idx].setType('blank'); removeItem(); } // CIGARETTE SUPERSLIM: Next shot is a blank for both players else if (itemId === 'cigaretteSuperSlim') { var idx = revolver.currentChamber; revolver.chambers[idx].setType('blank'); removeItem(); } // CIGARETTE MINI: Next shot is a blank for both players else if (itemId === 'cigaretteMini') { var idx = revolver.currentChamber; revolver.chambers[idx].setType('blank'); removeItem(); } // CIGARETTE KING SIZE: Next shot is a live for both players else if (itemId === 'cigaretteKingSize') { var idx = revolver.currentChamber; revolver.chambers[idx].setType('live'); removeItem(); } // CIGARETTE 100s: Next shot is a live for both players else if (itemId === 'cigarette100s') { var idx = revolver.currentChamber; revolver.chambers[idx].setType('live'); removeItem(); } // CIGARETTE 120s: Next shot is a live for both players else if (itemId === 'cigarette120s') { var idx = revolver.currentChamber; revolver.chambers[idx].setType('live'); removeItem(); } // CIGARETTE LONG: Next shot is a live for both players else if (itemId === 'cigaretteLong') { var idx = revolver.currentChamber; revolver.chambers[idx].setType('live'); removeItem(); } // CIGARETTE SHORT: Next shot is a blank for both players else if (itemId === 'cigaretteShort') { var idx = revolver.currentChamber; revolver.chambers[idx].setType('blank'); removeItem(); } // CIGARETTE REGULAR: No effect (placeholder) else if (itemId === 'cigaretteRegular') { removeItem(); } // CIGARETTE SPECIAL: Next shot is a live for both players else if (itemId === 'cigaretteSpecial') { var idx = revolver.currentChamber; revolver.chambers[idx].setType('live'); removeItem(); } // CIGARETTE LIMITED: Next shot is a blank for both players else if (itemId === 'cigaretteLimited') { var idx = revolver.currentChamber; revolver.chambers[idx].setType('blank'); removeItem(); } // CIGARETTE EDITION: Shuffle all chambers else if (itemId === 'cigaretteEdition') { shuffle(revolverChambers); revolver.setChambers(revolverChambers); removeItem(); } // CIGARETTE VINTAGE: Both players heal 1 HP else if (itemId === 'cigaretteVintage') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE CLASSIC: Both players heal 1 HP else if (itemId === 'cigaretteClassic') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE PREMIUM: Both players heal 2 HP else if (itemId === 'cigarettePremium') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE GOLD: Both players gain 5 money else if (itemId === 'cigaretteGold') { playerMoney += 5; enemyMoney += 5; removeItem(); } // CIGARETTE SILVER: Both players gain 3 money else if (itemId === 'cigaretteSilver') { playerMoney += 3; enemyMoney += 3; removeItem(); } // CIGARETTE PLATINUM: Both players gain 10 money else if (itemId === 'cigarettePlatinum') { playerMoney += 10; enemyMoney += 10; removeItem(); } // CIGARETTE DIAMOND: Both players fully heal and gain 10 money else if (itemId === 'cigaretteDiamond') { playerHealth = maxHealth; enemyHealth = maxHealth; playerMoney += 10; enemyMoney += 10; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); removeItem(); } // CIGARETTE RUBY: Both players lose 2 HP else if (itemId === 'cigaretteRuby') { if (playerHealth > 2) { playerHealth -= 2; playerHealthBar.flashDamage(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth > 2) { enemyHealth -= 2; enemyHealthBar.flashDamage(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE SAPPHIRE: Both players heal 2 HP else if (itemId === 'cigaretteSapphire') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE EMERALD: Both players heal 3 HP else if (itemId === 'cigaretteEmerald') { if (playerHealth < maxHealth) { playerHealth += 3; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 3; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE PEARL: Both players heal 1 HP else if (itemId === 'cigarettePearl') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE CRYSTAL: Both players heal 2 HP else if (itemId === 'cigaretteCrystal') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE OPAL: Both players heal 1 HP else if (itemId === 'cigaretteOpal') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE JADE: Both players heal 2 HP else if (itemId === 'cigaretteJade') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE AMBER: Both players heal 1 HP else if (itemId === 'cigaretteAmber') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE TOPAZ: Both players heal 2 HP else if (itemId === 'cigaretteTopaz') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE GARNET: Both players lose 1 HP else if (itemId === 'cigaretteGarnet') { if (playerHealth > 1) { playerHealth--; playerHealthBar.flashDamage(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth > 1) { enemyHealth--; enemyHealthBar.flashDamage(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE TURQUOISE: Both players heal 1 HP else if (itemId === 'cigaretteTurquoise') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE ONYX: Both players lose 2 HP else if (itemId === 'cigaretteOnyx') { if (playerHealth > 2) { playerHealth -= 2; playerHealthBar.flashDamage(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth > 2) { enemyHealth -= 2; enemyHealthBar.flashDamage(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE OBSIDIAN: Both players lose 1 HP else if (itemId === 'cigaretteObsidian') { if (playerHealth > 1) { playerHealth--; playerHealthBar.flashDamage(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth > 1) { enemyHealth--; enemyHealthBar.flashDamage(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE QUARTZ: Both players heal 1 HP else if (itemId === 'cigaretteQuartz') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE AGATE: Both players heal 2 HP else if (itemId === 'cigaretteAgate') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE JASPER: Both players heal 1 HP else if (itemId === 'cigaretteJasper') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE LAPIS: Both players heal 2 HP else if (itemId === 'cigaretteLapis') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE MALACHITE: Both players heal 1 HP else if (itemId === 'cigaretteMalachite') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE MOONSTONE: Both players heal 2 HP else if (itemId === 'cigaretteMoonstone') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE SUNSTONE: Both players heal 1 HP else if (itemId === 'cigaretteSunstone') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE TIGEREYE: Both players heal 2 HP else if (itemId === 'cigaretteTigerEye') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE ZIRCON: Both players heal 1 HP else if (itemId === 'cigaretteZircon') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE SPINEL: Both players heal 2 HP else if (itemId === 'cigaretteSpinel') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE TOURMALINE: Both players heal 1 HP else if (itemId === 'cigaretteTourmaline') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE PERIDOT: Both players heal 2 HP else if (itemId === 'cigarettePeridot') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE ALEXANDRITE: Both players heal 1 HP else if (itemId === 'cigaretteAlexandrite') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE TANZANITE: Both players heal 2 HP else if (itemId === 'cigaretteTanzanite') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE MORGANITE: Both players heal 1 HP else if (itemId === 'cigaretteMorganite') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE AQUAMARINE: Both players heal 2 HP else if (itemId === 'cigaretteAquamarine') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE CITRINE: Both players heal 1 HP else if (itemId === 'cigaretteCitrine') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE HELIODOR: Both players heal 2 HP else if (itemId === 'cigaretteHeliodor') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE KUNZITE: Both players heal 1 HP else if (itemId === 'cigaretteKunzite') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE LEPIDOLITE: Both players heal 2 HP else if (itemId === 'cigaretteLepidolite') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE RHODONITE: Both players heal 1 HP else if (itemId === 'cigaretteRhodonite') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE SODALITE: Both players heal 2 HP else if (itemId === 'cigaretteSodalite') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE SUGILITE: Both players heal 1 HP else if (itemId === 'cigaretteSugilite') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE TOPAZOLITE: Both players heal 2 HP else if (itemId === 'cigaretteTopazolite') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE TSAVORITE: Both players heal 1 HP else if (itemId === 'cigaretteTsavorite') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE VARISCITE: Both players heal 2 HP else if (itemId === 'cigaretteVariscite') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE ZOISITE: Both players heal 1 HP else if (itemId === 'cigaretteZoisite') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE ANDALUSITE: Both players heal 2 HP else if (itemId === 'cigaretteAndalusite') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE APATITE: Both players heal 1 HP else if (itemId === 'cigaretteApatite') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE AXINITE: Both players heal 2 HP else if (itemId === 'cigaretteAxinite') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE BENITOITE: Both players heal 1 HP else if (itemId === 'cigaretteBenitoite') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE BERYL: Both players heal 2 HP else if (itemId === 'cigaretteBeryl') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE CASSITERITE: Both players heal 1 HP else if (itemId === 'cigaretteCassiterite') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE CHALCEDONY: Both players heal 2 HP else if (itemId === 'cigaretteChalcedony') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE CHRYSOBERYL: Both players heal 1 HP else if (itemId === 'cigaretteChrysoberyl') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE DANBURITE: Both players heal 2 HP else if (itemId === 'cigaretteDanburite') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE DIOPSIDE: Both players heal 1 HP else if (itemId === 'cigaretteDiopside') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE DUMORTIERITE: Both players heal 2 HP else if (itemId === 'cigaretteDumortierite') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE ENSTATITE: Both players heal 1 HP else if (itemId === 'cigaretteEnstatite') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE EPIDOTE: Both players heal 2 HP else if (itemId === 'cigaretteEpidote') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE FLUORITE: Both players heal 1 HP else if (itemId === 'cigaretteFluorite') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE GOSHENITE: Both players heal 2 HP else if (itemId === 'cigaretteGoshenite') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE HACKMANITE: Both players heal 1 HP else if (itemId === 'cigaretteHackmanite') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE HIDDENITE: Both players heal 2 HP else if (itemId === 'cigaretteHiddenite') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE IOLITE: Both players heal 1 HP else if (itemId === 'cigaretteIolite') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE KYANITE: Both players heal 2 HP else if (itemId === 'cigaretteKyanite') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE LABRADORITE: Both players heal 1 HP else if (itemId === 'cigaretteLabradorite') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE LARIMAR: Both players heal 2 HP else if (itemId === 'cigaretteLarimar') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE NEPHRITE: Both players heal 1 HP else if (itemId === 'cigaretteNephrite') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE PETALITE: Both players heal 2 HP else if (itemId === 'cigarettePetalite') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE PREHNITE: Both players heal 1 HP else if (itemId === 'cigarettePrehnite') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE SCAPOLITE: Both players heal 2 HP else if (itemId === 'cigaretteScapolite') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE SERPENTINE: Both players heal 1 HP else if (itemId === 'cigaretteSerpentine') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE SMITHSONITE: Both players heal 2 HP else if (itemId === 'cigaretteSmithsonite') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE SPESSARTITE: Both players heal 1 HP else if (itemId === 'cigaretteSpessartite') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE SPHENE: Both players heal 2 HP else if (itemId === 'cigaretteSphene') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE STAUROLITE: Both players heal 1 HP else if (itemId === 'cigaretteStaurolite') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE SUNSTONE: Both players heal 2 HP else if (itemId === 'cigaretteSunstone') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE TEKTITE: Both players heal 1 HP else if (itemId === 'cigaretteTektite') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE THULITE: Both players heal 2 HP else if (itemId === 'cigaretteThulite') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE UVAROVITE: Both players heal 1 HP else if (itemId === 'cigaretteUvarovite') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE VESUVIANITE: Both players heal 2 HP else if (itemId === 'cigaretteVesuvianite') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE WULFENITE: Both players heal 1 HP else if (itemId === 'cigaretteWulfenite') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE ZIRCON: Both players heal 2 HP else if (itemId === 'cigaretteZircon') { if (playerHealth < maxHealth) { playerHealth += 2; if (playerHealth > maxHealth) playerHealth = maxHealth; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth += 2; if (enemyHealth > maxHealth) enemyHealth = maxHealth; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // CIGARETTE ZOISITE: Both players heal 1 HP else if (itemId === 'cigaretteZoisite') { if (playerHealth < maxHealth) { playerHealth++; playerHealthBar.flashHeal(); playerHealthBar.setHealth(playerHealth); } if (enemyHealth < maxHealth) { enemyHealth++; enemyHealthBar.flashHeal(); enemyHealthBar.setHealth(enemyHealth); } removeItem(); } // Add more items here as needed updateItems(); updateUI(); } function checkGameOver() { // Eşyalar sadece canı giderse (azalırsa) yenilensin, ateş edilince değil // Bir önceki can değerlerini takip et if (typeof checkGameOver.lastPlayerHealth === "undefined") { checkGameOver.lastPlayerHealth = maxHealth; } if (typeof checkGameOver.lastEnemyHealth === "undefined") { checkGameOver.lastEnemyHealth = maxHealth; } var playerLostHealth = false; var enemyLostHealth = false; // Sadece canı azaldıysa (yani bir önceki değerden küçükse) eşyaları yenile if (playerHealth < checkGameOver.lastPlayerHealth) { playerLostHealth = true; } if (enemyHealth < checkGameOver.lastEnemyHealth) { enemyLostHealth = true; } // Eğer birinin canı gitti ise (azaldıysa), eşyaları yenile if (playerLostHealth || enemyLostHealth) { playerItems = getInitialItems(); enemyItems = playerItems.slice(); updateItems(); updateUI(); } // Son can değerlerini güncelle checkGameOver.lastPlayerHealth = playerHealth; checkGameOver.lastEnemyHealth = enemyHealth; if (playerHealth <= 0) { gamePhase = 'gameover'; LK.effects.flashScreen(0xff0000, 1000); LK.showGameOver(); } else if (enemyHealth <= 0) { gamePhase = 'gameover'; LK.effects.flashScreen(0x00ff00, 1000); LK.showYouWin(); } } // --- Enemy AI (MVP: always fires, no items) --- function enemyTurn() { // AI: Use item if available and useful for (var i = 0; i < 3; i++) { var item = enemyItems[i]; if (!item) continue; // Example logic: Use xray if available, or heal if low, or adrenaline if about to fire, etc. if (item === 'xray') { useItem('xray', true); LK.setTimeout(fireRevolver, 1200); return; } if (item === 'cigarette' && enemyHealth < maxHealth) { useItem('cigarette', true); LK.setTimeout(fireRevolver, 1200); return; } if (item === 'adrenaline') { useItem('adrenaline', true); LK.setTimeout(fireRevolver, 1200); return; } if (item === 'magnifier') { useItem('magnifier', true); LK.setTimeout(fireRevolver, 1200); return; } if (item === 'buckshot') { useItem('buckshot', true); LK.setTimeout(fireRevolver, 1200); return; } if (item === 'whiskey' && enemyHealth < maxHealth - 1) { useItem('whiskey', true); LK.setTimeout(fireRevolver, 1200); return; } if (item === 'painkillers' && enemyHealth <= 2) { useItem('painkillers', true); LK.setTimeout(fireRevolver, 1200); return; } if (item === 'mirror') { useItem('mirror', true); LK.setTimeout(fireRevolver, 1200); return; } if (item === 'tape') { useItem('tape', true); LK.setTimeout(fireRevolver, 1200); return; } if (item === 'shellPuller') { useItem('shellPuller', true); LK.setTimeout(fireRevolver, 1200); return; } if (item === 'blankBullets') { useItem('blankBullets', true); LK.setTimeout(fireRevolver, 1200); return; } } // Otherwise, just fire fireRevolver(); } // --- Event Handlers --- // Fire button fireBtn.down = function (x, y, obj) { if (currentTurn === 'player' && gamePhase === 'action') { fireRevolver(); } }; // Item buttons handled in updateItems() // --- Game Start --- resetGame(); // --- Game Update Loop (not needed for MVP, but can be used for animations) --- game.update = function () { // No per-frame logic needed for MVP };
===================================================================
--- original.js
+++ change.js
@@ -199,14 +199,14 @@
/****
* Game Code
****/
-// We'll use tween for simple animations (e.g., health bar changes, shell movement)
+// --- Game State ---
/*
We will use simple shapes for the revolver, shells, health bars, and item icons.
Assets will be initialized automatically by LK based on usage.
*/
-// --- Game State ---
+// We'll use tween for simple animations (e.g., health bar changes, shell movement)
function _typeof(o) {
"@babel/helpers - typeof";
return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
return typeof o;
@@ -729,12 +729,15 @@
enemyItemButtons[i].setItem(itemId, labelText);
enemyItemButtons[i].visible = true;
// 8 eşya ise: 4 sağa 4 sola, 2 üstte yan yana, 2 altta yan yana
if (enemyItemCount === 8) {
- var xArr = [2048 / 2 - 350, 2048 / 2 - 150, 2048 / 2 + 150, 2048 / 2 + 350];
+ // Move enemy items further to the corners for better visibility
+ // Corners: x = 2048/2-600, -400 (sol), +400, +600 (sağ)
+ // Y: üst sıra 550, alt sıra 850
+ var xArr = [2048 / 2 - 600, 2048 / 2 - 400, 2048 / 2 + 400, 2048 / 2 + 600];
if (i < 4) {
enemyItemButtons[i].x = xArr[i];
- enemyItemButtons[i].y = 650;
+ enemyItemButtons[i].y = 550;
} else {
enemyItemButtons[i].x = xArr[i - 4];
enemyItemButtons[i].y = 850;
}
Revovler silahının bir mermi kovanı . No background. Transparent background. Blank background. No shadows. 2d. In-Game asset. flat
Beyaz bir kare ama içi boş olan . No background. Transparent background. Blank background. No shadows. 2d. In-Game asset. flat
"!" Letter. No background. Transparent background. Blank background. No shadows. 2d. In-Game asset. flat