!]t̬T^@|&>GYSdd ( @ (//(  0/80@0?/8 0( ?G@POWOXOP?H0@/7@O_``h_hPX 0(P_oppxow_g@O/8'' 7p`o?G/7 0??H/8`/o?GOX@H0?/pOW?H/8 7OP?G/7( P0@PX@O0@ 0O @H/@' 00@@P0?'_OP@H( 7/7' ^^^^^^^^^^^^^^^^^^^^^^^^^^TeeBBBBeTT^^^^^^^eBDJ33333JJDBeZ^^^^TD33==#####==3JDBT^^^^eJ=###=3DeZ^^TB3# #=3JBZ^^T3#  #=JBT^^J# Sll #=JBZ^T# %,68??86,/@A*< ##45('.6787-9%:;*<=#$+&,--.,/01)2 3 $%&&'%($!)* ##  !"#     ??dux@ sprite0  xs5a3 b(fdH@Q@E va1"bMF&#LGhj>u a5 fMͧV iie8̊QC=^~ҡ~/'th_[4hⷋh](sprite1  xs5a3 b(fdH@Q@Ѩ h3G *؅a&.D-ęn UMG5X|j  OmѭpozCC2 _:O(M8QmI]DeVnsprite2  xs5a3 b(fdH@Q@ш h3#!*؅a&.D-ęn UMG5X|j  OmѭpozCC2 _4lP2p4lB-^sprite3  xs5a3 b(fdH@Q@E#va a &B]gM-*㲂cSp4+42nŨ`P/?P :PZoE.Pnsprite4  xs5a3 b(fdH@Q@Eva a &B]gM-*㲂cSp4+42nŨ`P/?P :PZoE.sprite5  xs5a3 b(fdH@Q@Eva a &B]gM-*㲂cSp4+42nŨ`P/?P :e ] 4nK >nsprite6 ! xsf@ @Č `< hp-idT@*Z(X F;V +HBzL.J^ʓeC,f-,+ri]e|M㗦铦M74_hZ?Ҵ~Je$QT/R Q19VTt spr_waterhole  xUA0 w#/qLtL%vQӴ$>טyYyTq=&n?VJvd^s'm㱼GJ1<{\t# %`QG)Dz߳ʸ!*7U!ED /XHޗHȘ\WpN[mwɻm ~PH߰M1f!Ĉ2-2=&c4JRe ݒ_a#W NkF%Rmw{=\spr_fish  x= q9zf]!K)/Od|NfST=d1YHL .)rlJc]XrO>`-9HREF1-ȈOrB r~OptN3 AÒk]䃨 -eĈv#J5H  background0 ?xҡ AEQ J OtBCY0 v9/fFsϗiٽwwwwOWj۠^T+DA QB+DA QB+DA QB+DA QB+DA QB+DA QB+DA QB+DA Qf61+DA QB+DA QB+DA QB+DA QB+DA QB+DA QB+DA QB+DA QBY FLE QB+DA QB+DA QB+DA QB+DA QB+DA QB+DA QB+DA QB+DAu `T+DA QB+DA QB+DA QB+DA QB+DA QB+DA QB+DA QB+DA Qf^M mouse_over-return position_meeting(mouse_x,mouse_y,self)draw_me*draw_sprite(sprite_index,image_single,x,y) inv_add_obj=with argument0 { if global.invobjcnt[object_index] = 0 && global.objcount >= 24 { return 0 } global.invobjcnt[object_index] += 1 if global.invobjcnt[object_index] = 1 { global.obj[global.objcount] = object_index global.objcount += 1 if global.inventory = 1 { global.invobj[global.objcount-1] = instance_create( obj_inventory.xx, obj_inventory.yy, object_index ) obj_inventory.xx += 33 if obj_inventory.xx + 3 > room_width { obj_inventory.xx = room_width - 198 obj_inventory.yy += 33 } } } } return 1 inv_del_objewith (argument0) { global.invobjcnt[object_index] -= 1 if global.invobjcnt[object_index] = 0 { io = -1 for (mm = 0; mm < global.objcount; mm += 1) { if io != -1 { with (global.invobj[mm]) { x -= 33 if x < ((room_width - (6*33)) - 3) { x = room_width - 33 y -= 33 } } } if global.invobj[mm] = id { io = mm } } if io = -1 { return 0 } for (ior = io + 1; ior < global.objcount; ior += 1) { global.invobj[ior-1] = global.invobj[ior] global.obj[ior-1] = global.obj[ior] } global.objcount -= 1 instance_destroy() } } return 1  obj_inventory [global.inventory = 0 global.objcount = 0 background_x[1] = room_width-199 background_visible[1] = 0 for (mm = 0; mm < 24; mm += 1) { global.invobj[mm] = 0 global.invobjcnt[mm] = 0 }0000000[:if global.inventory = 0 && mouse_over() { global.inventory = 1 background_visible[1] = 1 visible = 0 xx = room_width - 198 yy = 1 for (mm = 0; mm < global.objcount; mm += 1) { global.invobj[mm] = instance_create(xx,yy,global.obj[mm]) with global.invobj[mm] { iamfake = 1 } xx += 33 if xx + 3 > room_width { xx = room_width - 198 yy += 33 } } } if global.inventory = 1 { if mouse_x < room_width-199 || mouse_y > 133 { global.inventory = 0 background_visible[1] = 0 visible = 1 for (mm = 0; mm < global.objcount; mm += 1) { with global.invobj[mm] { instance_destroy() } } } } if global.inventory = 0 && visible = 0 { background_visible[1] = 0 visible = 1 for (mm = 0; mm < global.objcount; mm += 1) { with global.invobj[mm] { instance_destroy() } } }0000000object1 [9iamfake = global.inventory if iamfake = 0 { xx = floor(random(room_width-sprite_width)/32)*32 xy = floor(random(room_height-sprite_height)/32)*32 while !place_empty(xx,xy) { xx = floor(random(room_width-sprite_width)/32)*32 xy = floor(random(room_height-sprite_height)/32)*32 } x = xx y = xy }0000000[[draw_me() if iamfake = 1 { draw_text(x+12,y+8,string(global.invobjcnt[object_index])) }0000000object2 object3 object4 object5 object6 object7 [1targetx = -1 targety = -1 move = 0 show_info()0000000[if move = 1 { if point_distance(x,y,targetx,targety) < 4 { move = 0 speed = 0 x = targetx y = targety } else { move_towards_point(targetx,targety,4) } } else { speed = 0 }0000000[if place_meeting(targetx,targety,other) { switch floor(random(2)) { case 0: show_message("Not even a nibble"); break case 1: { show_message("You caught a fish") zz = instance_create(x,y,object9) zz.iamfake = 0 if inv_add_obj(zz) { with zz { instance_destroy() } } }; break } targetx = -1 targety = -1 move = 0 speed = 0 x = xprevious y = yprevious }0000000[if move = 0 && position_meeting(targetx,targety,other) { if other.iamfake = 0 { if inv_add_obj(other) { with other { instance_destroy() } } } targetx = -1 targety = -1 }0000000 [kif mouse_check_button(mb_left) && !global.inventory { targetx = mouse_x targety = mouse_y move = 1 }0000000object8 object9 [if iamfake { score += 1 object7.move = 0 if !inv_del_obj(id) { show_message("error destroying this instance") game_end() } }0000000room0          @` ` @  †@Æ @Ć@@ņ`@Ɔ`dž `Ȇ@`Ɇ``ʆˆ ̆@͆`Άφ І@ц`҆ Ԇ `{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fswiss\fcharset0 Arial;}{\f1\fswiss Arial;}} {\colortbl ;\red0\green0\blue0;} \viewkind4\uc1\pard\cf1\b\f0\fs24 Inventory Throwin \par \b0 By IsmAvatar \par version 1.2 \par \par \b Not recommended for noobs. \par Heck, inventories aren't recommended for noobs.\b0 \par \par \b Controls:\b0 \par Use the mouse to do stuff in here. click on something to attempt to collect it. move the mouse over the X in the topright corner to view your inventory. you can even collect an item AND have the inventory open at the same time. Now you can also click on the fish in the inventory to use the fish to increase your score. \par \par \b User friendly!\b0 \par Feel free to add more collectable items, or change the sprites, just remember, sprites must be 32x32, and collectable objects must have a parent of object1. \par \par \b This example\b0 shows how to use arrays to make an inventory with limits that sorts the items to the order in which the player collects them. \par \par \b Changes\b0 since v1.1: added object interaction and a new script: inv_del_obj(id).\f1 \par } Sprites sprite0sprite1sprite2sprite3sprite4sprite5sprite6 spr_waterholespr_fishSounds Backgrounds background0PathsScripts mouse_overdraw_me inv_add_obj inv_del_obj Data Files Time LinesObjects  obj_inventoryobject1object2object3object4object5object6object7object8 object9Roomsroom0 Game Information Game Options