User prompt
2. Seçeneği yap
User prompt
Sıra sıra deneyeceğiz önce 1. Seçenek
User prompt
Ya sen en ama en çok önerdiğini ve en kolay yapabileceğini seç ve yap
User prompt
Bu çalışmadı o zaman 3. Seçenekteki parlaklaştırmayı yap
User prompt
4. Seçenekteki "!" İşaretini koymayı yaap
User prompt
Ya yani ben XRAY vesaire kullanınca hangi merminin dolu olup hangi merminin dola olmadığını anlayamıyorum bunnu anlamam için bişey yap ssn düşün oraları ve bunu yap
User prompt
Ya kıscası ben XRAY veya MAGNIFIER kullanınca merminin dolu olup olmadığını bilebilmem için bi gösterge koy
User prompt
Olammış içine beyaz yuvarlağı ekle dolu mermi olan yerlere
User prompt
Ama mesela bir mermi dolu olunca XRAY veya MAGNIFIER kullanınca işimiz kolaylaşsın diye dolu olan mermi yerinin içine bir beyaz oradaki mermi koyma yerinden biraz küçük bir şekilde beyaz olan ve XRAY ya da MAGNIFIER kullanınca saydam olmayan ve dışardan belli olmayan beyaz bir yuvarlak ekle
User prompt
Neyse fire btn i kaldır
User prompt
Karşı takım tape kullanınca öyle kalıyor hiç hareket etmiyor yani tape kullanınca karşı takım turunu yeniden kullanabilmesi ne izin ver
User prompt
Hayır sayılar aynı , eşyalarıb türü farklı mesela sayı 3 eşya 3 eşya gelecek iki kişiye de ama eşyaların türü mesela adrenaline ile MAGNIFIER bunlar gibi aynı olmayacaklar ama sayıları eşit olacak
User prompt
He ve bide eşyalar aynı olmasın eşyaların sayısı aynı olsun eşyalar aynı olmasın
User prompt
Ve her zaman yeri rastgele olsun ayrıca yok enemy nin turunda falan farklı mermi yerleri olmasın
User prompt
Şöyle yap ateş edildiğinde merminin yerini değiştir
User prompt
Hayır mermiyi daha çok altına sok yani dışardan kılı bile gözükmesin
User prompt
Daha iyi altına sıkıştır
User prompt
Belli oluyor biraz daha küçültüp FireBtn i daha iyi sıkıştır altına ve dışardan görünmesin
User prompt
Ve şöyle yap merminin oldugu yerin altına FireBtn i koy böylece XRAY veya MAGNIFIER ı kullanırken işimiz kolaylaşır
User prompt
Ve tıklayınca çıkan yerdeki eşyanın açıklamasını yazan yeri gri yap
User prompt
Şimdi eşyaların adını yazdığı yeri beyaz yap
User prompt
Turların yazdığı yeri biraz daha üste koy
User prompt
Biraz daha üstüne
User prompt
Turların yazdığı yer ise kovan Kısmının üst kısmında olsun
User prompt
Şimdi o çantasız mantıkla devam edelim
/**** * 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: "#000" }); 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 ****/ // We'll use tween for simple animations (e.g., health bar changes, shell movement) /* 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 --- 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 = 2732 / 2; 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; // Place higher above the revolver (kovan) in the vertical center // Revolver is at y = 2732 / 2 = 1366, revolver body radius is 120, body asset is scaled 1.2x (asset height 100 * 1.2 = 120), so top of revolver is about 1366 - 120 - 60 = 1186 // Place the label even higher above that for more spacing turnLabel.y = 2732 / 2 - 350; game.addChild(turnLabel); // Çanta (Bag) button ve label kaldırıldı // Item buttons (max 8 but dynamic, now only used in bag popup) var itemButtons = []; for (var i = 0; i < 8; i++) { var btn = new ItemButton(); btn.visible = false; btn.x = -9999; btn.y = -9999; game.addChild(btn); itemButtons.push(btn); } // Bag popup ve bagBtn.down kaldırıldı (çantasız mantık) // 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 kaldırıldı, ateş etme için revolver'a tıklanacak // --- 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 // Her zaman en az 1 dolu mermi olacak şekilde, kalanlar boş olacak var liveCount = 1; var blankCount = 6 - liveCount; revolverChambers = []; // 1 dolu mermiyi rastgele bir yere koy var liveIndexes = []; for (var i = 0; i < liveCount; i++) { liveIndexes.push(i); } var chamberIndexes = [0, 1, 2, 3, 4, 5]; shuffle(chamberIndexes); for (var i = 0; i < 6; i++) { revolverChambers[i] = 'blank'; } for (var i = 0; i < liveCount; i++) { revolverChambers[chamberIndexes[i]] = 'live'; } 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"); // Ateş etme tuşu yok, revolver'a tıklanacak for (var i = 0; i < itemButtons.length; i++) { itemButtons[i].visible = false; itemButtons[i].x = -9999; itemButtons[i].y = -9999; } // bagBtn ve bagLabel yok, çantasız mantık } else { turnLabel.setText("ENEMY'S TURN"); for (var i = 0; i < itemButtons.length; i++) { itemButtons[i].visible = false; itemButtons[i].x = -9999; itemButtons[i].y = -9999; } // bagBtn ve bagLabel yok, çantasız mantık } // Health bars playerHealthBar.setHealth(playerHealth); enemyHealthBar.setHealth(enemyHealth); updateItems(); } // 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."); function updateItems() { // Eşyalar başta ve ölümde veriliyor, burada tekrar verme! 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; // --- Buckshot Roulette 2. seviye gibi, tüm sayılar için aynı düzen --- // 1-8 arası eşya için, simetrik ve köşelere yakın, üst ve alt sıralar, ortada birleşmeden var px = 2048 / 2; var yTop = 2150, yBot = 2450; if (playerItemCount === 8) { // 4 üstte, 4 altta, köşelere yakın var xArr = [px - 700, px - 400, px + 400, px + 700]; if (i < 4) { itemButtons[i].x = xArr[i]; itemButtons[i].y = yTop; } else { itemButtons[i].x = xArr[i - 4]; itemButtons[i].y = yBot; } } else if (playerItemCount === 7) { // 4 üstte, 3 altta var xArrTop = [px - 600, px - 200, px + 200, px + 600]; var xArrBot = [px - 400, px, px + 400]; if (i < 4) { itemButtons[i].x = xArrTop[i]; itemButtons[i].y = yTop; } else { itemButtons[i].x = xArrBot[i - 4]; itemButtons[i].y = yBot; } } else if (playerItemCount === 6) { // 3 üstte, 3 altta var xArr = [px - 400, px, px + 400]; if (i < 3) { itemButtons[i].x = xArr[i]; itemButtons[i].y = yTop; } else { itemButtons[i].x = xArr[i - 3]; itemButtons[i].y = yBot; } } else if (playerItemCount === 5) { // 3 üstte, 2 altta, üsttekiler daha açık var xArrTop = [px - 600, px, px + 600]; var xArrBot = [px - 400, px + 400]; if (i < 3) { itemButtons[i].x = xArrTop[i]; itemButtons[i].y = yTop; } else { itemButtons[i].x = xArrBot[i - 3]; itemButtons[i].y = yBot; } } else if (playerItemCount === 4) { // 2 üstte, 2 altta, köşelere yakın var xArr = [px - 400, px + 400]; if (i < 2) { itemButtons[i].x = xArr[i]; itemButtons[i].y = yTop; } else { itemButtons[i].x = xArr[i - 2]; itemButtons[i].y = yBot; } } else if (playerItemCount === 3) { // 3 buton ortalanmış ve yayılmış var xArr = [px - 400, px, px + 400]; itemButtons[i].x = xArr[i]; itemButtons[i].y = (yTop + yBot) / 2; } else if (playerItemCount === 2) { var xArr = [px - 300, px + 300]; itemButtons[i].x = xArr[i]; itemButtons[i].y = (yTop + yBot) / 2; } else if (playerItemCount === 1) { itemButtons[i].x = px; itemButtons[i].y = (yTop + yBot) / 2; } // 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; // --- Buckshot Roulette 2. seviye gibi, tüm sayılar için aynı düzen --- // 1-8 arası eşya için, simetrik ve köşelere yakın, üst ve alt sıralar, ortada birleşmeden var px = 2048 / 2; var yTop = 500, yBot = 900; if (enemyItemCount === 8) { // 4 üstte, 4 altta, köşelere yakın var xArr = [px - 700, px - 400, px + 400, px + 700]; if (i < 4) { enemyItemButtons[i].x = xArr[i]; enemyItemButtons[i].y = yTop; } else { enemyItemButtons[i].x = xArr[i - 4]; enemyItemButtons[i].y = yBot; } } else if (enemyItemCount === 7) { // 4 üstte, 3 altta var xArrTop = [px - 600, px - 200, px + 200, px + 600]; var xArrBot = [px - 400, px, px + 400]; if (i < 4) { enemyItemButtons[i].x = xArrTop[i]; enemyItemButtons[i].y = yTop; } else { enemyItemButtons[i].x = xArrBot[i - 4]; enemyItemButtons[i].y = yBot; } } else if (enemyItemCount === 6) { // 3 üstte, 3 altta var xArr = [px - 400, px, px + 400]; if (i < 3) { enemyItemButtons[i].x = xArr[i]; enemyItemButtons[i].y = yTop; } else { enemyItemButtons[i].x = xArr[i - 3]; enemyItemButtons[i].y = yBot; } } else if (enemyItemCount === 5) { // 3 üstte, 2 altta, üsttekiler daha açık var xArrTop = [px - 600, px, px + 600]; var xArrBot = [px - 400, px + 400]; if (i < 3) { enemyItemButtons[i].x = xArrTop[i]; enemyItemButtons[i].y = yTop; } else { enemyItemButtons[i].x = xArrBot[i - 3]; enemyItemButtons[i].y = yBot; } } else if (enemyItemCount === 4) { // 2 üstte, 2 altta, köşelere yakın var xArr = [px - 400, px + 400]; if (i < 2) { enemyItemButtons[i].x = xArr[i]; enemyItemButtons[i].y = yTop; } else { enemyItemButtons[i].x = xArr[i - 2]; enemyItemButtons[i].y = yBot; } } else if (enemyItemCount === 3) { // 3 buton ortalanmış ve yayılmış var xArr = [px - 400, px, px + 400]; enemyItemButtons[i].x = xArr[i]; enemyItemButtons[i].y = (yTop + yBot) / 2; } else if (enemyItemCount === 2) { var xArr = [px - 300, px + 300]; enemyItemButtons[i].x = xArr[i]; enemyItemButtons[i].y = (yTop + yBot) / 2; } else if (enemyItemCount === 1) { enemyItemButtons[i].x = px; enemyItemButtons[i].y = (yTop + yBot) / 2; } // 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 --- // Revolver'a tıklayınca ateş et (sadece oyuncu sırası ve action fazında) revolver.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
****/
-// --- Game State ---
+// We'll use tween for simple animations (e.g., health bar changes, shell movement)
/*
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)
+// --- Game State ---
function _typeof(o) {
"@babel/helpers - typeof";
return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
return typeof o;
@@ -266,10 +266,9 @@
var enemyMoney = 0;
// --- UI Elements ---
var revolver = new Revolver();
revolver.x = 2048 / 2;
-// Move revolver a bit higher (daha üstte), e.g. 300px above center
-revolver.y = 2732 / 2 - 300;
+revolver.y = 2732 / 2;
game.addChild(revolver);
var playerHealthBar = new HealthBar();
playerHealthBar.x = 2048 / 2 - 200;
playerHealthBar.y = 1800;
@@ -301,12 +300,12 @@
fill: 0xFFE066
});
turnLabel.anchor.set(0.5, 0);
turnLabel.x = 2048 / 2;
-// Place just above the revolver (kovan) in the vertical center
+// Place higher above the revolver (kovan) in the vertical center
// Revolver is at y = 2732 / 2 = 1366, revolver body radius is 120, body asset is scaled 1.2x (asset height 100 * 1.2 = 120), so top of revolver is about 1366 - 120 - 60 = 1186
-// Place the label a bit above that for spacing
-turnLabel.y = 2732 / 2 - 200;
+// Place the label even higher above that for more spacing
+turnLabel.y = 2732 / 2 - 350;
game.addChild(turnLabel);
// Çanta (Bag) button ve label kaldırıldı
// Item buttons (max 8 but dynamic, now only used in bag popup)
var itemButtons = [];
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