ROOM ID 1588 NOPAINTING NOCYBORGS NAME "SoundRoom Midi/Mp3" PICT "download.gif" ARTIST "XT" PICTURE ID 1 NAME "XTSoundRoom1.gif" ENDPICTURE PICTURE ID 2 NAME "XTSoundRoomButtonsBar.gif" ENDPICTURE PICTURE ID 3 NAME "XTSelection1Push2.gif" ENDPICTURE PICTURE ID 4 NAME "XTSelection2Push2.gif" ENDPICTURE PICTURE ID 5 NAME "XTBackwardPush.gif" ENDPICTURE PICTURE ID 6 NAME "XTForwardPush.gif" ENDPICTURE PICTURE ID 7 NAME "XTPlayNormal.gif" ENDPICTURE PICTURE ID 8 NAME "XTPlayPush.gif" ENDPICTURE PICTURE ID 9 NAME "XTStopPush.gif" ENDPICTURE PICTURE ID 10 NAME "XTHelpPush.gif" ENDPICTURE PICTURE ID 11 NAME "XTMidiPush.gif" ENDPICTURE PICTURE ID 12 NAME "XTMp3Push.gif" ENDPICTURE SPOT ID 14 OUTLINE 14,32 51,32 51,66 14,66 LOC 33,44 SCRIPT ON ENTER { SSound GLOBAL "@400,25 ^The instructions are in your log." SAY {0 0 MOVE} 600 ALARMEXEC 10 ME SETALARM {{GLOBAL} [cSound x1 Midi Mp3 Sname ext] FOREACH thearray LENGTH noarray = noarray 2 - nomusic = ; Force x1 always into the array range {0 x1 =} x1 1 < IF {noarray 1 - x1 =} x1 noarray >= IF thearray x1 GET cSound = "" cSoundName = {cSound LENGTH cl = cSound 0 GET Sname = {cSound 1 GET Midi =} {"0" Midi =} cl 0 > IFELSE {cSound 2 GET Mp3 =} {"0" Mp3 =} cl 1 > IFELSE {cSound 3 GET Singer =} {"Unknown" Singer =} cl 2 > IFELSE {Midi Bytes =} {Mp3 Bytes =} ext ".mid" == IFELSE {Sname ext & cSound =} {Sname cSound =} IPTVERSION 0 > ".mp3" ext <> OR IFELSE cSound Bytes & "Kb" & Singer & "@" & "@" STRINDEX cSoundL = ; Now format it with the maximum msg length = 64 Bytes 7 cSoundL + 1 + 1 + SBS = 64 SBS - NSpace = " ______________________________" 0 NSpace SUBSTRING " " & Space = cSound Space & Bytes & "Kb" & " " & Singer & cSoundName = 0 5678 SETSPOTSTATELOCAL } {2 5678 SETSPOTSTATELOCAL} x1 0 > x1 noarray 1 - < AND IFELSE {0 x1 = cSoundName " (Start Of " ME SPOTNAME & " List)" & cSoundName =} x1 1 < IF {noarray 1 - x1 = cSoundName " (End Of " ME SPOTNAME & " List)" & cSoundName =} x1 noarray 1 - >= IF x1 ITOA mn = {"0" mn & mn =} mn "@" & "@" STRINDEX 1 == IF mn "-" & nomusic ITOA & ") " & cSoundName & LOGMSG } SSound DEF } ON ALARM { "Instructions to use the Sound Buttons Bar:" LOGMSG "Click on one of the Selections buttons to select a Music List" LOGMSG "Click on the Forward Button to show the next Music in the List" LOGMSG "Click on the Midi or Mp3 Button if you want the .mid or .mp3 files" LOGMSG "Click on the Play Button to Download/Play the current Music" LOGMSG "Click on the Play Button again after you receive the file to hear it" LOGMSG " " LOGMSG "The Sound Buttons Bar, from left to right, do the following:" LOGMSG " 1. Music Selection 1 2. Music Selection 2" LOGMSG " 3. Backward Music List 4. Forward Music List" LOGMSG " 5. Download/Play Current Music 6. Stop Music" LOGMSG " 7. Help (display this information) 8. Select Midi Files to Download/Play" LOGMSG " 9. Select Mp3 Files to Download/Play 10. Go to Next Room" LOGMSG "Have fun and enjoy!" STATUSMSG } ENDSCRIPT ENDSPOT SPOT ID 1111 NAME "Selection 1" OUTLINE 14,76 51,76 51,92 14,92 LOC 33,86 SCRIPT ; Selection 1 Music list ON ENTER { ; Reset values from previous sound rooms 0 111 SETSPOTSTATELOCAL 1 234 SETSPOTSTATELOCAL {GLOBAL} [cSound x1 ext] FOREACH 0 x1 = "" cSound = "" ext = } ON SELECT {{GLOBAL} [cSound x1] FOREACH 0 x1 = "" cSound = "Click" SOUND {0 111 SETSPOTSTATELOCAL 1 234 SETSPOTSTATELOCAL 2 5678 SETSPOTSTATELOCAL "-------> " ME SPOTNAME & ". Now go to Forward button" & STATUSMSG} {1 111 SETSPOTSTATELOCAL 0 234 SETSPOTSTATELOCAL} 111 GETSPOTSTATE IFELSE } ON ALARM { { ;Put the sound files informations in thearray. ;Format: "Soundname" "midisize" "mp3size" "Singer/Band" [ "" ["AfterTheLoveHasGone" "69" "683" "Earth, Wind & Fire"] ["AgainstAllOdds" "21" "610" "Phil Collins"] ["AllByMyself" "27" "749" "Celine Dion"] ["AllIHaveToGive" "32" "797" "Backstreet Boys"] ["AllIWannaDo" "79" "787" "Sheryl Crow"] ["AllOutOfLove" "40" "699" "Air Supply"] ["AndYouDontRemember" "20" "762" "Mariah Carey"] ["AsLongAsYouLoveMe" "32" "621" "Backstreet Boys"] ["BecauseYouLovedMe" "67" "794" "Celine Dion"] ["CaliforniaDreamin" "39" "453" "Mamas & Papas"] ["Cherish" "60" "674" "Kool And The Gang"] ["EveryBreathYouTake" "48" "712" "The Police"] ["FadingLikeAFlower" "38" "655" "Roxette"] ["FatherAndSon" "20" "631" "Cat Stevens"] ["FieldsOfGold" "26" "628" "Sting"] ["Forever" "24" "671" "Mariah Carey"] ["FriendsWillBeFriends" "45" "704" "Queen"] ["Heaven" "17" "749" "Bryan Adams"] ["HereComesTheSun" "25" "536" "Beatles"] ["HereThereAndEverywhere" "13" "420" "Beatles"] "" ] thearray = SSound GLOBAL SSound EXEC } 111 GETSPOTSTATE NOT IF } ENDSCRIPT ENDSPOT SPOT ID 2348 NAME "Selection 2" OUTLINE 14,102 52,102 52,118 14,118 LOC 33,112 SCRIPT ; Selection 2 Music list ON SELECT {{GLOBAL} [x1 cSound] FOREACH 0 x1 = "" cSound = "Click" SOUND {0 234 SETSPOTSTATELOCAL 1 111 SETSPOTSTATELOCAL 2 5678 SETSPOTSTATELOCAL "-------> " ME SPOTNAME & ". Now go to Forward button" & STATUSMSG} {1 234 SETSPOTSTATELOCAL 0 111 SETSPOTSTATELOCAL} 234 GETSPOTSTATE IFELSE } ON ALARM { { ;Put the sound files informations in thearray. ;Format: "Soundname" "midisize" "mp3size" "Singer/Band" [ "" ["AlmostUnreal" "47" "669" "Roxette"] ["AlwaysBeMyBaby" "34" "740" "Mariah Carey"] ["AlwaysOnMyMind" "35" "621" "Elvis Presley"] ["AndILoveHer" "34" "430" "Beatles"] ["Anytime" "57" "769" "Brian McKnight"] ["AnytimeYouNeedAFriend" "25" "731" "Mariah Carey"] ["Aquarius" "31" "827" "Fifth Dimension"] ["BrainDamage" "18" "676" "Pink Floyd"] ["Breakthru" "49" "718" "Queen"] ["CantStopThisThingWeStarted" "29" "758" "Bryan Adams"] ["CanYouFeelTheLoveTonight" "12" "684" "Elton John"] ["ComeTogether" "37" "755" "Beatles"] ["LoveOfMyLife" "5" "592" "Fred Mercury"] ["Eclipse" "7" "328" "Pink Floyd"] ["EnglishmanInNewYork" "56" "734" "Sting"] ["EverythingIDoIDoItForYou" "24" "1116" "Bryan Adams"] ["FlashDance" "11" "659" "Irene Clara"] ["HardToSayImSorry" "16" "890" "Azyet"] ["HaveIToldYouLately" "23" "688" "Rod Stewart"] ["YouBabe" "31" "700" "Styx"] "" ] thearray = SSound GLOBAL SSound EXEC } 234 GETSPOTSTATE NOT IF } ENDSCRIPT ENDSPOT SPOT ID 8832 NAME "Room Background" OUTLINE 242,179 270,179 270,206 242,206 LOC 256,192 PICTS 1,0,0 ENDPICTS ENDSPOT SPOT ID 2010 NAME "BG Buttons Bar" DONTMOVEHERE OUTLINE 7,356 399,356 401,374 7,374 LOC 256,366 PICTS 2,-1,0 ENDPICTS ENDSPOT DOOR ID 111 NAME "Selection 1" DONTMOVEHERE OUTLINE 8,356 74,356 74,374 7,374 LOC 41,365 PICTS 3,0,0 ENDPICTS SCRIPT ON SELECT {1111 SELECT} ENDSCRIPT ENDDOOR DOOR ID 234 NAME "Selection 2" DONTMOVEHERE OUTLINE 74,356 137,356 137,374 74,374 LOC 106,365 PICTS 4,0,0 ENDPICTS SCRIPT ON SELECT {2348 SELECT} ENDSCRIPT ENDDOOR DOOR ID 6234 NAME "Backward" DONTMOVEHERE OUTLINE 138,356 165,356 165,374 138,374 LOC 152,365 PICTS 5,0,0 ENDPICTS SCRIPT ; Backward Button ON ENTER {1 ME SETSPOTSTATELOCAL} ON SELECT {0 ME SETSPOTSTATELOCAL "click" SOUND x1 GLOBAL 1 x1 -= 1 1111 SETALARM 2 2348 SETALARM 100 ME SETALARM } ON ALARM {1 ME SETSPOTSTATELOCAL} ENDSCRIPT ENDDOOR DOOR ID 7890 NAME "Forward" DONTMOVEHERE OUTLINE 164,356 192,356 192,374 164,374 LOC 178,365 PICTS 6,0,0 ENDPICTS SCRIPT ; Forward Button ON ENTER {1 ME SETSPOTSTATELOCAL} ON SELECT {0 ME SETSPOTSTATELOCAL "click" SOUND x1 GLOBAL 1 x1 += 1 1111 SETALARM 2 2348 SETALARM 100 ME SETALARM } ON ALARM {1 ME SETSPOTSTATELOCAL} ENDSCRIPT ENDDOOR DOOR ID 5678 NAME "Download/Play Sound" DONTMOVEHERE OUTLINE 191,356 218,359 218,374 191,374 LOC 205,365 PICTS 7,0,0 8,0,0 ENDPICTS SCRIPT ; Download/Play Button ON ENTER {2 ME SETSPOTSTATELOCAL} ON SELECT {{GLOBAL} [cSound Sname ext Midi Mp3] FOREACH {"None music from the 'Selection 1/2' was selected" LOCALMSG EXIT} cSound "" == IF Sname ext & SOUND 1 ME SETSPOTSTATELOCAL {MIDISTOP {86 SELECT} 1113 GETSPOTSTATE NOT IF} 30 ALARMEXEC {Midi} {Mp3} ext ".mid" == IFELSE ATOI 2 / 60 / ITOA dtime = "Estimated Downloading Time for " Sname & ext & " " & {Midi} {Mp3} ext ".mid" == IFELSE & "Kb (" & dtime & " min for 56k speed)" & LOGMSG {{GLOBAL} [Sname ext] FOREACH Sname ext & SOUND} 400 ALARMEXEC "If you want to share this song with the people in this room, type 'ms' and )" Sname & ext & LOGMSG " " Sname & ext & 400 10 SAYAT {0 ME SETSPOTSTATELOCAL} 800 ALARMEXEC } ENDSCRIPT ENDDOOR DOOR ID 3456 NAME "Help" DONTMOVEHERE OUTLINE 242,356 270,356 270,374 242,374 LOC 256,365 PICTS 10,0,0 ENDPICTS SCRIPT ; Help Button ON ENTER {1 ME SETSPOTSTATELOCAL} ON SELECT {0 ME SETSPOTSTATELOCAL "click" SOUND 10 14 SETALARM 100 ME SETALARM } ON ALARM {1 ME SETSPOTSTATELOCAL} ENDSCRIPT ENDDOOR DOOR LOCKABLE ID 86 NAME "Stop Midi/Mp3" DONTMOVEHERE OUTLINE 217,356 243,356 243,374 217,374 LOC 231,365 PICTS 9,0,0 ENDPICTS SCRIPT ; Stop Midi/Mp3 Button ON ENTER {1 ME SETSPOTSTATELOCAL} ON SELECT {0 ME SETSPOTSTATELOCAL "click" SOUND MIDISTOP {86 UNLOCK} 1113 GETSPOTSTATE NOT IF ; Trick to stop Mp3/Wav files 0 5678 SETSPOTSTATELOCAL 100 ME SETALARM } ON ALARM {1 ME SETSPOTSTATELOCAL} ON INCHAT {nDoIt GLOBAL nDoIt EXEC offerInScript GLOBAL offerInScript EXEC} ON OUTCHAT {offerOutScript GLOBAL offerOutScript EXEC {MIDISTOP 86 SELECT "" CHATSTR =} CHATSTR "ms" == IF} ENDSCRIPT ENDSPOT DOOR ID 1112 NAME "Midi" DONTMOVEHERE OUTLINE 269,356 333,356 333,374 269,374 LOC 303,365 PICTS 11,0,0 ENDPICTS SCRIPT ON ENTER { MidiB GLOBAL {ext GLOBAL ".mid" ext = 0 ME SETSPOTSTATELOCAL 1 1113 SETSPOTSTATELOCAL "-------> You are addressed to Download/Play the Midi files" STATUSMSG } MidiB DEF MidiB EXEC } ON SELECT {MidiB GLOBAL MidiB EXEC "Click" SOUND} ENDSCRIPT ENDDOOR DOOR ID 1113 NAME "Mp3" DONTMOVEHERE OUTLINE 336,356 401,356 401,374 336,374 LOC 368,365 PICTS 12,0,0 ENDPICTS SCRIPT ON SELECT {ext GLOBAL ".mp3" ext = "Click" SOUND 0 ME SETSPOTSTATELOCAL 1 1112 SETSPOTSTATELOCAL "-------> You are addressed to Download/Play the Mp3 files" STATUSMSG } ENDSCRIPT ENDDOOR DOOR ID 1010 NAME "Go to Next Room" DONTMOVEHERE DEST 12416 OUTLINE 403,356 500,356 500,374 403,374 LOC 435,365 ENDDOOR ENDROOM