actionscript 3 - gotoAndStop MovieClip outside of extended MovieClip -
i have inventory system worked on timeline. now, trying connect class i'm having difficulties.
on stage, have movieclip
instance name inventorymc
inside inventorymc
, have 15 more movieclips
instance name itemslot1
, itemslot2
etc... gotoandstop
functions not working properly... have no document class, classes extend movieclips
...
this beginnerchest
class, when clicked calls function inventory
class:
package { import flash.display.movieclip; import flash.events.mouseevent; public class beginnerchest extends movieclip { private var _inventory:inventory; public function beginnerchest() { _inventory = new inventory(); addeventlistener(mouseevent.click, begclick); claimbtn.addeventlistener(mouseevent.click, _inventory.claimclick); } public function begclick(e: mouseevent) { play(); } //ends startbtnclick; public function inserttext(str) { return str + "\r" } } }
this inventory
class... took out other functions didn't think necessary. trying addtoslot
function work, never seems find frame hammer
or whatever is. yes, have labeled inside of itemslots
movieclip.
package { import flash.display.movieclip; import flash.events.mouseevent; import flash.text.textfield; import flash.events.event; public class inventory extends movieclip{ var slot1: array = ["empty", "empty", 0]; //[itemid, display name, sell price] var slot2: array = ["empty", "empty", 0]; //[itemid, display name, sell price] var slot3: array = ["empty", "empty", 0]; //[itemid, display name, sell price] var slot4: array = ["empty", "empty", 0]; //[itemid, display name, sell price] var slot5: array = ["empty", "empty", 0]; //[itemid, display name, sell price] var slot6: array = ["empty", "empty", 0]; //[itemid, display name, sell price] var slot7: array = ["empty", "empty", 0]; //[itemid, display name, sell price] var slot8: array = ["empty", "empty", 0]; //[itemid, display name, sell price] var slot9: array = ["empty", "empty", 0]; //[itemid, display name, sell price] var slot10: array = ["empty", "empty", 0]; //[itemid, display name, sell price] var slot11: array = ["empty", "empty", 0]; //[itemid, display name, sell price] var slot12: array = ["empty", "empty", 0]; //[itemid, display name, sell price] var slot13: array = ["empty", "empty", 0]; //[itemid, display name, sell price] var slot14: array = ["empty", "empty", 0]; //[itemid, display name, sell price] var slot15: array = ["empty", "empty", 0]; //[itemid, display name, sell price] var slotclicked: string; var newitem = "none"; var boxesreset: boolean = false; var inventoryfull: boolean = false; var itemselected = ""; var itemuse = "none"; var currentslot = "none"; var currentslot2 = "none"; var itemid = "none"; var storemode: boolean = false; var itemsellprice = 0; var itemname = ""; var totalchildren = 0; ///// dynamic variables ///// var container: movieclip = new movieclip; var btnuse: menuitem = new menuitem; var btntoss: menuitem = new menuitem; var btnclose: menuitem = new menuitem; public function inventory() { addeventlistener(mouseevent.click, itemslotclick); } public function inventoryfullcheck() { if (slot1[0] != "empty" && slot2[0] != "empty" && slot3[0] != "empty" && slot4[0] != "empty" && slot5[0] != "empty" && slot6[0] != "empty" && slot7[0] != "empty" && slot8[0] != "empty" && slot9[0] != "empty" && slot10[0] != "empty" && slot11[0] != "empty" && slot12[0] != "empty" && slot13[0] != "empty" && slot14[0] != "empty" && slot15[0] != "empty") { inventoryfull = true; } else { inventoryfull = false; } } public function claimclick(e: mouseevent): void { addtoslot(hammer); } public function addtoslot(item) { if (slot1[0] == "empty") { currentslot = "itemslot1"; (item)(); <---------------------does hammer function @ bottom } else if (slot2[0] == "empty") { itemslot2.gotoandstop(item); slot2[0] = item; } else if (slot3[3] == "empty") { itemslot3.gotoandstop(item); slot3[0] = item; } else if (slot4[0] == "empty") { itemslot4.gotoandstop(item); slot4[0] = item; } else if (slot5[0] == "empty") { itemslot5.gotoandstop(item); slot5[0] = item; } else if (slot6[0] == "empty") { itemslot6.gotoandstop(item); slot6[0] = item; } else if (slot7[0] == "empty") { itemslot7.gotoandstop(item); slot7[0] = item; } else if (slot8[0] == "empty") { itemslot8.gotoandstop(item); slot8[0] = item; } else if (slot9[0] == "empty") { itemslot9.gotoandstop(item); slot9[0] = item; } else if (slot10[0] == "empty") { itemslot10.gotoandstop(item); slot10[0] = item; } else if (slot11[0] == "empty") { itemslot11.gotoandstop(item); slot11[0] = item; } else if (slot12[0] == "empty") { itemslot12.gotoandstop(item); slot12[0] = item; } else if (slot13[0] == "empty") { itemslot13.gotoandstop(item); slot13[0] = item; } else if (slot14[0] == "empty") { itemslot14.gotoandstop(item); slot14[0] = item; } else if (slot15[0] == "empty") { itemslot15.gotoandstop(item); slot15[0] = item; } else { inventoryfull = true; } } public function clearvars(): void { itemuse = "none"; itemid = "none"; itemselected = "none"; hideselectboxes(); } public function hammer(): void { trace(currentslot); object(root).inventorymc.itemslot1.gotoandstop("hammer"); <---can't work... } } //ends class } //ends package
Comments
Post a Comment