DECLARE SUB Fuga () DECLARE SUB Atacinim () DECLARE SUB Fim () DECLARE SUB Morte () DECLARE SUB Vitor () DECLARE SUB Defesinim () DECLARE SUB Maginim () DECLARE SUB Ataque () DECLARE SUB Defesa () DECLARE SUB Usaritem () DECLARE SUB Usarmagia () DECLARE SUB Prisao () DECLARE SUB Item () DECLARE SUB Monstros () COMMON SHARED px, py, portx, porty, din, mon, senha$ COMMON SHARED nome$(), raca$(), classe$(), forc(), vig(), agi(), inte(), per(), car(), rea(), dano(), vit(), mana(), fer(), exa(), xp() COMMON SHARED var(), sta(), equ(), mag(), hab(), equip() COMMON SHARED sala$(), movn(), movs(), movl(), movo() COMMON SHARED moner(), corpo(), porta() RANDOMIZE TIMER IF mon = 3 THEN PRINT "O orc parte para te atacar." IF mon = 4 THEN PRINT "O orc gordo e sujo de sangue te ataca." IF mon = 5 THEN PRINT "O goblin resolve te atacar." IF mon = 6 THEN PRINT "O hobgoblin se levanta e te ataca." IF mon = 7 THEN PRINT "O orc com armadura diferente te ataca." IF mon = 8 THEN PRINT "O orc resolve te atacar." IF mon = 9 THEN PRINT "O homem de azul olha pra vocˆ, diz uma daquelas frases batidas de vilÆo e te ataca. Tudo que vocˆ entendeu ‚ que o nome dele ‚ Hukgam." IF mon = 10 THEN PRINT "O xamÆ troll parte para o combate." IF mon = 15 THEN PRINT "O guarda o ataca, tentando imobiliz -lo." IF mon = 16 THEN PRINT "O zumbi o ataca." IF mon = 17 THEN PRINT "O lich o ataca." IF var(17) = 1 THEN PRINT "O zumbi tapa seus ouvidos e fecha seus olhos" IF mon = 18 THEN PRINT "Vocˆ ‚ atacado por uma cobra." IF mon = 19 THEN PRINT "Vocˆ ‚ atacado por um escorpiÆo gigante." IF mon = 20 THEN PRINT "Uma harpia vem em sua dire‡Æo." IF mon = 21 THEN PRINT "Vocˆ ‚ atacado por um lagarto gigante." IF mon = 22 THEN PRINT "Vocˆ ‚ atacado por um ser pequeno, que parece um cachorrinho b¡pede." IF mon = 23 THEN PRINT "Vocˆ ‚ atacado por um ser human¢ide, mas com roupas rid¡culas." IF mon = 24 THEN PRINT "Vocˆ ‚ atacado por um grande lobo faminto." IF mon = 25 THEN PRINT "O ogro parece nÆo ter gostado da sua atitude." IF mon = 26 THEN PRINT "O drow parece se preparar para atac -lo." IF mon = 27 THEN PRINT "Vocˆ ‚ atacado por um min£sculo diabrete alado." IF mon = 28 THEN PRINT "Vocˆ est  sendo atacado por uma c¢pia de vocˆ mesmo." IF mon = 29 THEN PRINT "O poderoso beholder entra em combate contra vocˆ!" IF mon = 30 THEN PRINT "O necromante se prepara para lutar." IF mon = 31 THEN PRINT "O vulto de algu‚m montado num cavalo aparece na ponte." IF mon = 32 THEN PRINT "O vulto de sombras te cerca." IF mon = 33 THEN PRINT "O gnoll investe contra vocˆ." IF mon = 34 THEN PRINT "A est tua parece se mover." IF mon = 35 THEN PRINT "Um grande dragÆo cinza aparece na ponte." Monstros sta(1) = 0: sta(10) = 0 IF var(9) > 0 THEN dan = (equ(equip(1)) * 2) + var(9) PRINT "Vocˆ causa "; dan; " de dano em "; nome$(2) fer(2) = fer(2) + dan var(9) = 0 END IF iniciat: INPUT "", press CLS LINE (0, 0)-(640, 480), 6, BF LINE (10, 10)-(630, 470), 8, B COLOR 12 PRINT "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX COMBATE XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" PRINT "": COLOR 15 IF fer(1) >= vit(1) THEN Morte IF fer(2) >= vit(2) THEN Vitor IF var(21) > 0 AND INT(RND * var(21)) >= 0 THEN dan = INT(RND * mag(13)) - INT(RND * (vig(2) + var(22))): IF dan < 0 THEN dan = 0 PRINT "Um esqueleto ataca "; nome$(2); ", causando"; dan; "de dano" fer(2) = fer(2) + dan: sta(15) = sta(15) - 1 IF sta(15) = 0 THEN PRINT "Um esqueleto se desfaz": var(21) = var(21) - 1: IF var(21) > 0 THEN sta(15) = 5 END IF IF ini1 + ini2 <= 0 THEN IF exa(1) > 0 AND INT(RND * 3) = 0 THEN exa(1) = exa(1) - 1 IF exa(2) > 0 AND INT(RND * 3) = 0 THEN exa(2) = exa(2) - 1 IF sta(2) > 0 AND INT(RND * 3) = 0 THEN sta(2) = sta(2) - 1 IF sta(3) > 0 AND INT(RND * 3) = 0 THEN sta(3) = sta(3) - 1 IF sta(4) > 0 AND INT(RND * 3) = 0 THEN sta(4) = sta(4) - 1 IF sta(5) > 0 AND INT(RND * 3) = 0 THEN sta(5) = sta(5) - 1 IF sta(6) > 0 THEN sta(6) = sta(6) - 1: IF fer(1) > 0 THEN fer(1) = fer(1) - 1 IF sta(8) > 0 AND INT(RND * 3) = 0 THEN sta(8) = sta(8) - 1 IF sta(9) > 0 AND INT(RND * 3) = 0 THEN sta(9) = sta(9) - 1 IF sta(10) > 0 AND INT(RND * 3) = 0 THEN sta(10) = sta(10) - 1 IF sta(11) > 0 AND INT(RND * 3) = 0 THEN sta(11) = sta(11) - 1 IF sta(14) > 0 AND INT(RND * 3) = 0 THEN sta(14) = sta(14) - 1 IF sta(16) > 0 AND INT(RND * 3) = 0 THEN sta(16) = sta(16) - 1 IF sta(17) > 0 AND INT(RND * 3) = 0 THEN sta(17) = sta(17) - 1 IF sta(21) > 0 THEN sta(21) = sta(21) - 1: IF INT(RND * 12) + 1 >= vig(1) + sta(5) THEN fer(1) = fer(1) + 1 IF sta(26) > 0 THEN sta(4) = 2: sta(5) = 2: sta(11) = 2: IF INT(RND * 3) = 0 THEN sta(26) = sta(26) - 1: IF sta(26) = 0 THEN sta(4) = 0: sta(5) = 0: sta(11) = 0 IF sta(28) > 0 AND (INT(RND * 4) + 1) = 1 THEN : IF fer(1) > 0 THEN fer(1) = fer(1) - 1: PRINT "Vocˆ sente seu corpo se regenerar" IF var(15) > 0 THEN var(15) = var(15) - 1 IF var(20) > 0 THEN var(20) = var(20) - 1 IF var(29) > 0 THEN var(29) = var(29) - 1 IF var(22) > 0 AND INT(RND * 3) = 0 THEN var(22) = var(22) - 1 IF var(27) > 0 THEN var(27) = var(27) - 1: IF INT(RND * 12) + 1 >= vig(2) THEN fer(2) = fer(2) + 1 IF mon = 10 AND fer(2) > 0 THEN PRINT "Os ferimentos do Troll parecem se fechar": fer(2) = fer(2) - 1 s = 0: d = rea(1) + sta(7): DO d = d - 1: j = INT(RND * 6) + 1: IF j >= 4 THEN s = s + 1: IF j = 6 THEN d = d + 1 LOOP UNTIL d <= 0 ini1 = s s = 0: d = rea(2) - var(29): DO d = d - 1: j = INT(RND * 6) + 1: IF j >= 4 THEN s = s + 1: IF j = 6 THEN d = d + 1 LOOP UNTIL d <= 0 ini2 = s END IF IF ini1 > ini2 THEN GOTO pers IF ini2 > ini1 THEN GOTO inim IF in1 = ini2 THEN IF rea(1) + sta(7) > rea(2) THEN GOTO pers IF rea(2) > rea(1) + sta(7) THEN GOTO inim IF rea(1) + sta(7) = rea(2) THEN : IF INT(RND * 2) = 0 THEN GOTO pers ELSE GOTO inim END IF pers: PRINT "" rea(1) = (((agi(1) + sta(11)) + inte(1)) \ 2) dano(1) = forc(1) + sta(4) - 3 ini1 = ini1 - 1 IF sta(13) > 0 THEN PRINT "Favores do elemental:"; sta(13) INPUT "Vocˆ quer comandar seu elemental para atacar agora? ", resp$ IF resp$ = "s" THEN dan = (INT(RND * mag(10)) + 1) - INT(RND * (vig(2) + var(22))): IF dan < 0 THEN dan = 0 PRINT "O elemental ataca, causando"; dan; "de dano em "; nome$(2) fer(2) = fer(2) + dan sta(13) = sta(13) - 1 IF sta(13) = 0 THEN PRINT "O elemental se esvai" END IF END IF IF sta(17) > 0 THEN PRINT "Vocˆ est  preso numa teia m gica" s = 0: d = forc(1) + sta(4): DO d = d - 1: j = INT(RND * 6) + 1: IF j >= 4 THEN s = s + 1: IF j = 6 THEN d = d + 1 LOOP UNTIL d <= 0 IF s >= sta(17) THEN PRINT "Vocˆ tenta se soltar usando sua for‡a": sta(17) = sta(17) - 1 IF sta(17) = 0 THEN PRINT "Vocˆ arrebenta a teia e se liberta" ELSE IF mag(14) > sta(17) AND exa(1) + 2 <= mana(1) THEN PRINT "Vocˆ dissipa a teia": exa(1) = exa(1) + 2 END IF GOTO iniciat END IF IF sta(2) > 0 THEN PRINT "Uma aura de prote‡Æo o cerca" IF sta(3) > 0 THEN PRINT "Seu poder m gico est  sendo amplificado" IF sta(4) > 0 THEN PRINT "Vocˆ se sente mais forte" IF sta(5) > 0 THEN PRINT "Vocˆ se sente mais vigoroso" IF sta(6) > 0 THEN PRINT "Vocˆ sente suas feridas se fechando" IF sta(8) > 0 THEN PRINT "Vocˆ sente uma armadura m gica ao seu redor" IF sta(9) > 0 THEN PRINT "Uma imagem de vocˆ mesmo est  ao seu lado" IF sta(10) > 0 THEN PRINT "Vocˆ est  invis¡vel" IF sta(11) > 0 THEN PRINT "Vocˆ se sente mais  gil" IF sta(13) > 0 THEN PRINT "Um elemental est  sob o seu comando" IF sta(14) > 0 THEN PRINT "Vocˆ sente uma for‡a divina guiando suas mÆos" IF sta(15) > 0 THEN : IF var(21) > 1 THEN PRINT var(21); " esqueletos estÆo sob o seu comando" ELSE PRINT "Um esqueleto est  sob o seu comando" IF sta(16) > 0 THEN PRINT "Vocˆ exala uma aura de terror em seus inimigos" IF sta(18) > 0 THEN PRINT "Vocˆ se sente azarado de alguma forma" IF sta(21) > 0 THEN PRINT "Vocˆ nÆo se sente bem" IF sta(26) > 0 THEN PRINT "Vocˆ est  na forma de um grande lobo b¡pede" PRINT "" IF equ(1) > 0 AND equip(1) = 1 THEN PRINT "Equipado: Adaga ("; equ(1); ")" IF equ(2) > 0 AND equip(1) = 2 THEN PRINT "Equipado: Espada ("; equ(2); ")" IF equ(3) > 0 AND equip(1) = 3 THEN PRINT "Equipado: Machado ("; equ(3); ")" IF equ(4) > 0 AND equip(1) = 4 THEN PRINT "Equipado: Lan‡a ("; equ(4); ")" IF equ(5) > 0 AND equip(1) = 5 THEN PRINT "Equipado: Arco ("; equ(5); ")" IF equ(6) > 0 AND equip(1) = 6 THEN PRINT "Equipado: Funda ("; equ(6); ")" IF equ(13) > 0 AND equip(1) = 13 THEN PRINT "Equipado: Ma‡a ("; equ(13); ")" IF equ(14) > 0 AND equip(1) = 14 THEN PRINT "Equipado: Martelo ("; equ(14); ")" IF equ(15) > 0 AND equip(1) = 15 THEN PRINT "Equipado: Montante ("; equ(15); ")" IF equ(16) > 0 AND equip(1) = 16 THEN PRINT "Equipado: Alabarda ("; equ(16); ")" IF equ(17) > 0 AND equip(1) = 17 THEN PRINT "Equipado: Arco composto ("; equ(17); ")" IF equ(18) > 0 AND equip(2) = 18 THEN PRINT "Equipado: Cajado ("; equ(18); ")" IF equ(19) > 0 AND equip(1) = 19 THEN PRINT "Equipado: Foice ("; equ(19); ")" IF equ(20) > 0 AND equip(1) = 20 THEN PRINT "Equipado: Espada curta ("; equ(20); ")" IF equ(7) > 0 AND equip(3) = 7 THEN PRINT "Equipado: Corselete ("; equ(7); ")" IF equ(8) > 0 AND equip(3) = 8 THEN PRINT "Equipado: Cota de malha ("; equ(8); ")" IF equ(9) > 0 AND equip(3) = 9 THEN PRINT "Equipado: Cota de talas ("; equ(9); ")" IF equ(10) > 0 AND equip(3) = 10 THEN PRINT "Equipado: Armadura ("; equ(10); ")" IF equ(11) > 0 AND equip(2) = 11 THEN PRINT "Equipado: Escudo ("; equ(11); ")" IF equ(12) > 0 AND equip(2) = 12 THEN PRINT "Equipado: Escudo grande ("; equ(12); ")" IF equ(22) > 0 AND equip(4) = 22 OR equip(5) = 22 THEN PRINT "Equipado: Anel de rubi ("; equ(22); ")" IF equ(23) > 0 AND equip(4) = 23 OR equip(5) = 23 THEN PRINT "Equipado: Anel de ametista ("; equ(23); ")" IF equ(42) > 0 AND equip(4) = 42 OR equip(5) = 42 THEN PRINT "Equipado: Anel azul ("; equ(42); ")" IF equ(24) > 0 AND equip(6) = 24 THEN PRINT "Equipado: Amuleto da estrela ("; equ(24); ")" IF equ(25) > 0 AND equip(6) = 25 THEN PRINT "Equipado: Amuleto da lua ("; equ(25); ")" IF equ(26) > 0 AND equip(2) = 26 THEN PRINT "Equipado: Cajado de pedra ("; equ(26); ")" IF equ(27) > 0 AND equip(2) = 27 THEN PRINT "Equipado: Cajado de madeira ("; equ(27); ")" IF equ(33) > 0 AND equip(2) = 33 THEN PRINT "Equipado: Cajado do jester ("; equ(33); ")" IF equ(38) > 0 AND equip(2) = 38 THEN PRINT "Equipado: Cajado de raios ("; equ(38); ")" IF equ(39) > 0 AND equip(2) = 39 THEN PRINT "Equipado: Cajado de bola de fogo ("; equ(39); ")" IF equ(40) > 0 AND equip(2) = 40 THEN PRINT "Equipado: Cajado de cone de gelo ("; equ(40); ")" IF equ(43) > 0 AND equip(2) = 43 THEN PRINT "Equipado: Cajado recarreg vel do jester ("; equ(43); ")" IF equ(58) > 0 AND equip(1) = 58 THEN PRINT "Equipado: Adaga drow ("; equ(58); ")" IF equ(59) > 0 AND equip(1) = 59 THEN PRINT "Equipado: Espada de cristal ("; equ(59); ")" IF equ(60) > 0 AND equip(3) = 60 THEN PRINT "Equipado: Cota de malha ‚lfica ("; equ(60); ")" IF equ(64) > 0 AND equip(4) = 64 OR equip(5) = 64 THEN PRINT "Equipado: Anel de regenera‡Æo ("; equ(64); ")" IF equ(65) > 0 AND equip(4) = 65 OR equip(5) = 65 THEN PRINT "Equipado: Anel de paraliza‡Æo ("; equ(65); ")" IF equ(70) > 0 AND equip(2) = 70 THEN PRINT "Equipado: Cajado de invoca‡Æo ("; equ(70); ")" IF equ(31) > 0 AND equip(7) = 31 THEN PRINT "Equipado: Manto negro ("; equ(31); ")" IF equ(71) > 0 AND equip(7) = 71 THEN PRINT "Equipado: Manto de invisibilidade ("; equ(71); ")" IF equ(72) > 0 AND equip(7) = 72 THEN PRINT "Equipado: Manto de teleporte ("; equ(72); ")" IF equ(73) > 0 AND equip(6) = 73 THEN PRINT "Equipado: Amuleto do terror ("; equ(73); ")" IF equ(74) > 0 AND equip(6) = 74 THEN PRINT "Equipado: Amuleto da ilusÆo ("; equ(74); ")" PRINT "" PRINT nome$(1); " "; classe$(1); " "; raca$(1); " Vit:"; vit(1) - fer(1); "/"; vit(1); " Mana:"; mana(1) - exa(1); "/"; mana(1); " exp:"; xp(1) PRINT "For:"; forc(1) + sta(4); " Vig:"; vig(1) + sta(5); " Agi:"; agi(1) + sta(11); " Int:"; inte(1); " Per:"; per(1); " Car:"; car(1); " Rea:"; rea(1) + sta(7) PRINT "" IF fer(1) > 0 AND fer(1) < vit(1) \ 2 THEN PRINT "Vocˆ est  levemente ferido" IF fer(1) >= vit(1) \ 2 AND fer(1) < vit(1) * .8 THEN PRINT "Vocˆ est  ferido" IF fer(1) >= vit(1) * .8 THEN PRINT "Vocˆ est  seriamente ferido" PRINT "" PRINT "A‡äes: Atacar(a), Defender(d), Item(i), Magia(m), Fugir(f)" INPUT "A‡Æo: ", acao$ PRINT "" SELECT CASE acao$ CASE "a" Ataque CASE "d" Defesa CASE "i" Usaritem CASE "m" Usarmagia CASE "f" s = 0: d = agi(1) + sta(11): DO d = d - 1: j = INT(RND * 6) + 1: IF j >= 4 THEN s = s + 1: IF j = 6 THEN d = d + 1 LOOP UNTIL d <= 0 IF s >= agi(2) THEN Fuga ELSE PRINT "NÆo foi poss¡vel fugir" END IF CASE ELSE GOTO iniciat END SELECT GOTO iniciat inim: PRINT "" ini2 = ini2 - 1 IF sta(10) > 0 THEN PRINT nome$(1); " nÆo pode te ver": GOTO iniciat IF fer(2) > 0 AND fer(2) < vit(2) \ 2 THEN PRINT nome$(2); " est  levemente ferido" IF fer(2) >= vit(2) \ 2 AND fer(2) < vit(2) * .8 THEN PRINT nome$(2); " est  ferido" IF fer(2) >= vit(2) * .8 THEN PRINT nome$(2); " est  seriamente ferido" IF var(20) > 0 THEN PRINT nome$(2); " est  preso numa teia m gica" s = 0: d = forc(2): DO d = d - 1: j = INT(RND * 6) + 1: IF j >= 4 THEN s = s + 1: IF j = 6 THEN d = d + 1 LOOP UNTIL d <= 0 IF s >= var(20) THEN var(20) = var(20) - 1: PRINT nome$(2); " tenta se soltar da teia" IF var(20) = 0 THEN PRINT nome$(2); " se liberta da teia" GOTO iniciat END IF IF mon = 16 OR mon = 17 THEN sta(16) = 0 SELECT CASE mon CASE 5, 8, 12, 22 IF fer(2) > 7 AND INT(RND * agi(2)) > INT(RND * (agi(1) + sta(11))) THEN PRINT nome$(2); " fugiu da batalha!" IF mon = 5 THEN n = INT(RND * 2) + 1 IF n = 1 THEN moner(1) = moner(1) + 1: IF moner(1) >= 9 THEN moner(1) = moner(1) - 2 IF n = 2 THEN moner(1) = moner(1) - 1: IF moner(1) <= 0 THEN moner(1) = moner(1) + 2 END IF IF mon = 8 THEN n = INT(RND * 2) + 1 IF n = 1 THEN moner(2) = moner(2) + 1: IF moner(2) >= 6 THEN moner(2) = moner(2) - 2 IF n = 2 THEN moner(2) = moner(2) - 1: IF moner(2) <= 0 THEN moner(2) = moner(2) + 2 END IF IF mon = 12 THEN n = INT(RND * 2) + 1 IF n = 1 THEN moner(3) = moner(3) + 1: IF moner(3) >= 5 THEN moner(3) = moner(3) - 2 IF n = 2 THEN moner(3) = moner(3) - 1: IF moner(3) <= 0 THEN moner(3) = moner(3) + 2 END IF Fim ELSE IF fer(2) > 7 THEN PRINT nome$(2); " est  fugindo!" INPUT "Vocˆ permite? ", resp$ IF resp$ = "s" THEN Fim ELSE GOTO iniciat END IF END IF END SELECT acaomon: PRINT "" acmon = INT(RND * 6) + 1 IF mana(2) > 0 AND exa(2) < 10 AND acmon = 1 THEN Maginim: GOTO iniciat IF acmon = 2 AND sta(15) > 0 THEN dan = (INT(RND * forc(2)) + 1) - INT(RND * mag(13)): IF dan < 0 THEN dan = 0 PRINT nome$(2); " ataca um esqueleto, causando"; dan; "de dano" sta(15) = sta(15) - dan IF sta(15) <= 0 THEN sta(15) = 0: PRINT "Um esqueleto se desfaz": var(21) = var(21) - 1: IF var(21) > 0 THEN sta(15) = 5 GOTO iniciat END IF IF acmon = 3 AND sta(13) > 0 THEN dan = INT(RND * forc(2)) - (INT(RND * mag(10)) + 1): IF dan < 0 THEN dan = 0 PRINT nome$(2); " ataca o elemental, causando"; dan; "de dano" IF dan > 0 THEN sta(13) = sta(13) - 1 IF sta(13) <= 0 THEN PRINT "O elemental se esvai": sta(13) = 0 GOTO iniciat END IF IF acmon = 6 THEN PRINT nome$(2); " se defende": var(19) = rea(2) ELSE Atacinim END IF GOTO iniciat SUB Atacinim dan = forc(2) IF equip(2) = 11 OR equip(2) = 12 THEN esc = equ(equip(2)) arm = equ(equip(3)) + sta(8) esc = esc + sta(2) dif = 4 IF fer(1) >= vit(1) \ 2 THEN dif = dif - 1 IF fer(1) >= vit(1) * .8 THEN dif = dif - 1 IF fer(2) >= vit(2) \ 2 THEN dif = dif + 1 IF fer(2) >= vit(2) * .8 THEN dif = dif + 1 IF var(15) > 0 THEN dif = dif + 1 IF sta(17) > 0 THEN dif = dif - 2 IF dif > 6 THEN dif = 6 IF dif < 2 THEN dif = 2 s = 0: d = agi(2) - var(30): DO d = d - 1: j = INT(RND * 6) + 1: IF j >= dif THEN s = s + 1: IF j = 6 THEN d = d + 1 LOOP UNTIL d <= 0 atac = s s = 0: d = rea(1) + sta(7) + var(18) + esc: DO d = d - 1: j = INT(RND * 6) + 1: IF j >= 4 THEN s = s + 1: IF j = 6 THEN d = d + 1 LOOP UNTIL d <= 0 atac = atac - s IF atac > 0 THEN IF sta(9) > 0 AND INT(RND * 2) = 0 THEN PRINT nome$(2); " acerta sua ilusÆo de espelho" ELSE dan = dan + atac - 1 s = 0: d = vig(1) + sta(5) + arm: DO d = d - 1: j = INT(RND * 6) + 1: IF j >= 4 THEN s = s + 1: IF j = 6 THEN d = d + 1 LOOP UNTIL d <= 0 dan = dan - s: IF dan < 0 THEN dan = 0 IF dan <= 3 THEN PRINT nome$(2); " acerta vocˆ com um golpe fraco, causando"; dan; "de dano" IF dan > 3 AND dan < 7 THEN PRINT nome$(2); " acerta vocˆ com um golpe certeiro, causando"; dan; "de dano" IF dan >= 7 THEN PRINT nome$(2); " acerta vocˆ com um golpe cr¡tico, causando"; dan; "de dano" fer(1) = fer(1) + dan IF mon = 18 OR mon = 19 OR mon = 27 OR mon = 26 OR mon = 20 THEN IF INT(RND * 6) = 0 THEN PRINT "Vocˆ foi envenenado": sta(21) = sta(21) + (INT(RND * 3) + 1) IF mon = 23 AND INT(RND * 6) = 0 AND INT(RND * 12) >= per(1) THEN PRINT "O devorador de mentes drena um pouco de sua mem¢ria": IF xp(1) > 0 THEN xp(1) = xp(1) - 1 IF mon = 27 AND sta(25) = 0 AND INT(RND * 10) >= rea(1) + sta(7) THEN PRINT "O imp usa suas garras para sugar um pouco do seu sangue": sta(25) = 1 END IF ELSE PRINT nome$(2); " erra vocˆ" END IF var(18) = 0 var(19) = 0 IF INT(RND * 200) = 0 AND equip(2) >= 11 AND equip(2) <= 12 THEN PRINT "Seu escudo se estragou": equ(equip(2)) = equ(equip(2)) - 1 IF equ(equip(2)) = 0 THEN equip(2) = 0 IF INT(RND * 200) = 0 AND equip(3) > 0 THEN PRINT "Sua armadura se estragou": equ(equip(3)) = equ(equip(3)) - 1 IF equ(equip(3)) = 0 THEN equip(3) = 0 END SUB SUB Ataque sta(10) = 0 SELECT CASE equip(1) CASE 26, 27, 33, 38, 39, 40, 43, 70 dan = 3 CASE ELSE dan = equ(equip(1)) END SELECT IF equip(1) = 0 THEN dan = equ(equip(2)) IF equ(equip(1)) = 5 OR equ(equip(1)) = 6 OR equ(equip(1)) = 17 THEN dano(1) = agi(1) + sta(11) - 3 dif = 4 IF fer(1) >= vit(1) \ 2 THEN dif = dif - 1 IF fer(1) >= vit(1) * .8 THEN dif = dif - 1 IF fer(2) >= vit(2) \ 2 THEN dif = dif + 1 IF fer(2) >= vit(2) * .8 THEN dif = dif + 1 IF var(15) > 0 THEN dif = dif - 1 IF var(20) > 0 THEN dif = dif - 2 IF dif > 6 THEN dif = 6 IF dif < 2 THEN dif = 2 s = 0: d = hab(15) + (agi(1) + sta(11) - 3) + sta(14) - sta(18): DO d = d - 1: j = INT(RND * 6) + 1: IF j >= dif THEN s = s + 1: IF j = 6 THEN d = d + 1 LOOP UNTIL d <= 0 atac = s s = 0: d = rea(2) + var(19) + var(22): DO d = d - 1: j = INT(RND * 6) + 1: IF j >= 4 THEN s = s + 1: IF j = 6 THEN d = d + 1 LOOP UNTIL d <= 0 atac = atac - s IF sta(16) > 0 THEN atac = atac + 1 IF atac > 0 THEN dan = dan + atac - 1 + dano(1) s = 0: d = vig(2): DO d = d - 1: j = INT(RND * 6) + 1: IF j >= 4 THEN s = s + 1: IF j = 6 THEN d = d + 1 LOOP UNTIL d <= 0 dan = dan - s: IF dan < 0 THEN dan = 0 IF dan <= 3 THEN PRINT "Vocˆ acerta "; nome$(2); " com um golpe de fraco, causando"; dan; "de dano" IF dan > 3 AND dan < 7 THEN PRINT "Vocˆ acerta "; nome$(2); " com um golpe certeiro, causando"; dan; "de dano" IF dan >= 7 THEN PRINT "Vocˆ acerta "; nome$(2); " com um golpe cr¡tico, causando"; dan; "de dano" fer(2) = fer(2) + dan ELSE PRINT "Vocˆ erra "; nome$(2) END IF var(18) = 0 var(19) = 0 IF INT(RND * 200) = 0 AND equip(1) > 0 THEN PRINT "Sua arma se desgastou": equ(equip(1)) = equ(equip(1)) - 1 IF INT(RND * 100) = 0 AND equip(1) = 0 AND equip(2) > 0 THEN PRINT "Sua arma se desgastou": equ(equip(2)) = equ(equip(2)) - 1 IF INT(RND * 200) = 0 THEN PRINT "Sua habilidade de combate melhorou": hab(15) = hab(15) + 1 IF equ(equip(1)) = 0 THEN equip(1) = 0 END SUB SUB Defesa INPUT "Bloquear(1) ou esquivar(2)? ", resp IF resp = 1 THEN var(18) = (hab(15)) \ 2 IF equip(2) = equ(11) THEN var(18) = equ(11) * 2 IF equip(2) = equ(12) THEN var(18) = equ(12) * 2 END IF IF resp = 2 THEN var(18) = rea(1) + sta(7) END SUB SUB Fim sta(1) = 0: sta(17) = 0: var(15) = 0: var(20) = 0: var(22) = 0: var(27) = 0 fer(2) = 0: exa(2) = 0 INPUT "", press CHAIN "C:\Blarg!\Diacho\Salas.bas" END SUB SUB Fuga PRINT "" PRINT "Sa¡das:"; IF movn(px, py) = 1 THEN PRINT "Norte(n)"; IF movl(px, py) = 1 THEN PRINT "Leste(l)"; IF movs(px, py) = 1 THEN PRINT "Sul(s)"; IF movo(px, py) = 1 THEN PRINT "Oeste(o)"; PRINT ""; "" INPUT "Fugir para que dire‡Æo? ", dir$ IF dir$ = "n" THEN IF movn(px, py) = 1 THEN py = py - 1: Fim ELSE INPUT "Movimento imposs¡vel", press IF dir$ = "s" THEN IF movs(px, py) = 1 THEN py = py + 1: Fim ELSE INPUT "Movimento imposs¡vel", press IF dir$ = "l" THEN IF movl(px, py) = 1 THEN px = px + 1: Fim ELSE INPUT "Movimento imposs¡vel", press IF dir$ = "o" THEN IF movo(px, py) = 1 THEN px = px - 1: Fim ELSE INPUT "Movimento imposs¡vel", press IF py = 0 THEN py = 20 IF py = 21 THEN py = 1 IF px = 0 THEN px = 20 IF px = 21 THEN px = 1 Fim END SUB SUB Item sorte: prox = INT(RND * 20) + 1 niv = INT(RND * 6) + 1 SELECT CASE prox CASE 1: PRINT "Vocˆ encontra uma adaga "; : IF niv < 2 THEN PRINT "gasta" ELSE IF niv = 2 THEN PRINT "" ELSE IF niv > 2 THEN PRINT "m gica" CASE 2: PRINT "Vocˆ encontra uma espada "; : IF niv < 4 THEN PRINT "gasta" ELSE IF niv = 4 THEN PRINT "" ELSE IF niv > 4 THEN PRINT "m gica" CASE 3: PRINT "Vocˆ encontra um machado "; : IF niv < 5 THEN PRINT "gasto" ELSE IF niv = 5 THEN PRINT "" ELSE IF niv > 5 THEN PRINT "m gico" CASE 4: PRINT "Vocˆ encontra uma lan‡a "; : IF niv < 4 THEN PRINT "gasta" ELSE IF niv = 4 THEN PRINT "" ELSE IF niv > 4 THEN PRINT "m gica" CASE 5: PRINT "Vocˆ encontra um arco "; : IF niv < 4 THEN PRINT "gasto" ELSE IF niv = 4 THEN PRINT "" ELSE IF niv > 4 THEN PRINT "m gico" CASE 6: PRINT "Vocˆ encontra uma funda "; : IF niv < 2 THEN PRINT "gasta" ELSE IF niv = 2 THEN PRINT "" ELSE IF niv > 2 THEN PRINT "m gica" CASE 7: PRINT "Vocˆ encontra um corselete "; : IF niv < 2 THEN PRINT "gasto" ELSE IF niv = 2 THEN PRINT "" ELSE IF niv > 2 THEN PRINT "m gico" CASE 8: PRINT "Vocˆ encontra uma cota de malha "; : IF niv < 3 THEN PRINT "gasta" ELSE IF niv = 3 THEN PRINT "" ELSE IF niv > 3 THEN PRINT "m gica" CASE 9: PRINT "Vocˆ encontra uma cota de talas "; : IF niv < 4 THEN PRINT "gasta" ELSE IF niv = 4 THEN PRINT "" ELSE IF niv > 4 THEN PRINT "m gica" CASE 10: PRINT "Vocˆ encontra uma armadura completa"; : IF niv < 5 THEN PRINT "gasta" ELSE IF niv = 5 THEN PRINT "" ELSE IF niv > 5 THEN PRINT "m gica" CASE 11: PRINT "Vocˆ encontra um escudo "; : IF niv = 1 THEN PRINT "" ELSE IF niv > 1 THEN PRINT "m gico" CASE 12: PRINT "Vocˆ encontra um escudo grande "; : IF niv < 2 THEN PRINT "gasto" ELSE IF niv = 2 THEN PRINT "" ELSE IF niv > 2 THEN PRINT "m gico" CASE 13: PRINT "Vocˆ encontra uma ma‡a "; : IF niv < 4 THEN PRINT "gasta" ELSE IF niv = 4 THEN PRINT "" ELSE IF niv > 4 THEN PRINT "m gica" CASE 14: PRINT "Vocˆ encontra um martelo "; : IF niv < 5 THEN PRINT "gasto" ELSE IF niv = 5 THEN PRINT "" ELSE IF niv > 5 THEN PRINT "m gico" CASE 15: PRINT "Vocˆ encontra uma montante "; : IF niv < 6 THEN PRINT "gasta" ELSE IF niv = 6 THEN PRINT "" ELSE IF niv > 6 THEN PRINT "m gica" CASE 16: PRINT "Vocˆ encontra uma alabarda "; : IF niv < 6 THEN PRINT "gasta" ELSE IF niv = 6 THEN PRINT "" ELSE IF niv > 6 THEN PRINT "m gica" CASE 17: PRINT "Vocˆ encontra um arco composto "; : IF niv < 5 THEN PRINT "gasto" ELSE IF niv = 5 THEN PRINT "" ELSE IF niv > 5 THEN PRINT "m gico" CASE 18: PRINT "Vocˆ encontra um cajado "; : IF niv < 3 THEN PRINT "gasto" ELSE IF niv = 3 THEN PRINT "" ELSE IF niv > 3 THEN PRINT "m gico" CASE 19: PRINT "Vocˆ encontra uma foice "; : IF niv < 4 THEN PRINT "gasta" ELSE IF niv = 4 THEN PRINT "" ELSE IF niv > 4 THEN PRINT "m gica" CASE 20: PRINT "Vocˆ encontra uma espada curta "; : IF niv < 3 THEN PRINT "gasta" ELSE IF niv = 3 THEN PRINT "" ELSE IF niv > 3 THEN PRINT "m gica" END SELECT PRINT "" IF equ(prox) >= niv THEN PRINT "O item est  quebrado e nÆo vale a pena pegar" ELSE equ(prox) = niv SELECT CASE INT(RND * 16) + 1 CASE 1, 2, 3: PRINT "Vocˆ encontra uma po‡Æo" iten = INT(RND * 13) + 1 IF iten = 1 THEN equ(29) = equ(29) + 1 IF iten = 2 THEN equ(44) = equ(44) + 1 IF iten = 3 THEN equ(45) = equ(45) + 1 IF iten >= 4 AND iten <= 12 THEN equ(iten + 45) = equ(iten + 45) + 1 IF iten = 13 THEN equ(63) = equ(63) + 1 CASE 4: PRINT "Vocˆ encontra um anel m gico" iten = INT(RND * 5) + 1 IF iten = 1 THEN equ(22) = equ(22) + niv IF iten = 2 THEN equ(23) = equ(23) + niv IF iten = 3 THEN equ(42) = equ(42) + niv IF iten = 4 THEN equ(64) = equ(64) + niv IF iten = 5 THEN equ(65) = equ(65) + niv CASE 5: PRINT "Vocˆ encontra um cajado m gico" iten = INT(RND * 7) + 1 IF iten = 1 THEN equ(26) = equ(26) + niv IF iten = 2 THEN equ(27) = equ(27) + niv IF iten = 3 THEN equ(33) = equ(33) + niv IF iten = 4 THEN equ(38) = equ(38) + niv IF iten = 5 THEN equ(39) = equ(39) + niv IF iten = 6 THEN equ(40) = equ(40) + niv IF iten = 7 THEN equ(70) = equ(70) + niv CASE 6: PRINT "Vocˆ encontra um amuleto m gico" iten = INT(RND * 4) + 1 IF iten = 1 THEN equ(24) = equ(24) + niv IF iten = 2 THEN equ(25) = equ(25) + niv IF iten = 3 THEN equ(73) = equ(73) + niv IF iten = 4 THEN equ(74) = equ(74) + niv CASE 7: PRINT "Vocˆ encontra um manto m gico" iten = INT(RND * 3) + 1 IF iten = 1 THEN equ(31) = 1 IF iten = 2 THEN equ(71) = equ(71) + niv IF iten = 3 THEN equ(72) = equ(72) + niv CASE 8: PRINT "Vocˆ encontra um pergaminho" iten = INT(RND * 7) + 1 IF iten = 1 THEN equ(28) = equ(28) + 1 IF iten = 2 THEN equ(30) = equ(30) + 1 IF iten = 3 THEN equ(66) = equ(66) + 1 IF iten = 4 THEN equ(67) = equ(67) + 1 IF iten = 5 THEN equ(68) = equ(68) + 1 IF iten = 6 THEN equ(69) = equ(69) + 1 IF iten = 7 THEN equ(75) = equ(75) + 1 END SELECT IF INT(RND * 6) = 0 THEN GOTO sorte END SUB SUB Maginim s = 0: d = per(1) + sta(2) + sta(8): DO d = d - 1: j = INT(RND * 6) + 1: IF j >= 4 THEN s = s + 1: IF j = 6 THEN d = d + 1 LOOP UNTIL d <= 0 IF exa(2) + inte(2) > mana(2) THEN ini2 = ini2 + 1: GOTO fimmaginim ELSE exa(2) = exa(2) + INT(RND * inte(2)) + 1 ef = 0: d = inte(2): DO d = d - 1: j = INT(RND * 6) + 1: IF j >= 4 THEN ef = ef + 1: IF j = 6 THEN d = d + 1 LOOP UNTIL d <= 0 ef = ef - s: IF ef < 0 THEN ef = 0 IF ef > 0 THEN SELECT CASE mon CASE 9, 23, 28, 35 SELECT CASE INT(RND * 5) + 1 CASE 1 dan = 6 - s: IF dan < 0 THEN dan = 0 PRINT nome$(2); " lan‡a um raio sobre vocˆ, causando"; dan; "de dano" fer(1) = fer(1) + dan CASE 2: PRINT nome$(2); " evoca uma aura azul sobre si": var(22) = INT(RND * inte(2)) + 1 CASE 3: PRINT nome$(2); " lan‡a uma teia m gica sobre vocˆ": sta(17) = ef CASE 4 dan = 8 - s: IF dan < 0 THEN dan = 0 PRINT nome$(2); " lan‡a uma bola de fogo sobre vocˆ, causando"; dan; "de dano" fer(1) = fer(1) + dan CASE 5: PRINT nome$(2); " drena seu mana": mana(1) = mana(1) - ef: IF mana(1) < 0 THEN mana(1) = 0 END SELECT CASE 10, 30, 32 SELECT CASE INT(RND * 2) + 1 CASE 1: PRINT nome$(2); " evoca uma maldi‡Æo sobre vocˆ": sta(18) = INT(RND * inte(2)) + 1 CASE 2: PRINT nome$(2); " parece recuperar sua vitalidade": fer(2) = fer(2) - INT(RND * inte(2)) + 1: IF fer(2) < 0 THEN fer(2) = 0 END SELECT CASE 17 SELECT CASE INT(RND * 4) + 1 CASE 1 dan = 6 - s: IF dan < 0 THEN dan = 0 PRINT nome$(2); " lan‡a um raio sobre vocˆ, causando"; dan; "de dano" fer(1) = fer(1) + dan CASE 2: PRINT nome$(2); " evoca uma aura negra sobre si": var(22) = INT(RND * inte(2)) + 1 CASE 3: PRINT nome$(2); " lan‡a uma teia m gica sobre vocˆ": sta(17) = ef CASE 4 IF var(17) = 1 THEN PRINT nome$(2); " tenta comandar o zumbi para te atacar, mas ele nÆo obedece" END SELECT CASE 26, 27, 14 dan = 5 - s: IF dan < 0 THEN dan = 0 PRINT nome$(2); " lan‡a dardos m¡sticos sobre vocˆ, causando"; dan; "de dano" fer(1) = fer(1) + dan CASE 29 SELECT CASE INT(RND * 4) + 1 CASE 1 dan = 10 - s: IF dan < 0 THEN dan = 0 PRINT nome$(2); " usa seu olhar congelante, causando"; dan; "de dano" fer(1) = fer(1) + dan CASE 2 dan = 12 - s: IF dan < 0 THEN dan = 0 PRINT nome$(2); " usa seu olhar do apodrecimento, causando"; dan; "de dano" fer(1) = fer(1) + dan CASE 3 dan = 8 - s: IF dan < 0 THEN dan = 0 PRINT nome$(2); " usa seu olhar vamp¡rico, sugando"; dan; " pontos de vitalidade" fer(1) = fer(1) + dan fer(2) = fer(2) - dan CASE 4 dan = 6 - s: IF dan < 0 THEN dan = 0 PRINT nome$(2); " usa seu olhar negro, causando"; dan; "de dano" fer(1) = fer(1) + dan: sta(18) = sta(18) + dan END SELECT END SELECT ELSE PRINT "O feti‡o de "; nome$(2); " falhou!" END IF fimmaginim: END SUB SUB Monstros SELECT CASE mon CASE 2 nome$(2) = "Orc" forc(2) = 2: vig(2) = 3: agi(2) = 2: inte(2) = 2: rea(2) = 2: vit(2) = 10: mana(2) = 0: xp(2) = 3 CASE 3 nome$(2) = "Orc lutador" forc(2) = 3: vig(2) = 3: agi(2) = 3: inte(2) = 2: rea(2) = 2: vit(2) = 10: mana(2) = 0: xp(2) = 3 CASE 4 nome$(2) = "Orc cozinheiro" forc(2) = 3: vig(2) = 4: agi(2) = 2: inte(2) = 2: rea(2) = 2: vit(2) = 10: mana(2) = 0: xp(2) = 3 CASE 5 nome$(2) = "Goblin" forc(2) = 1: vig(2) = 2: agi(2) = 4: inte(2) = 3: rea(2) = 3: vit(2) = 10: mana(2) = 0: xp(2) = 1 CASE 6 nome$(2) = "Hobgoblin" forc(2) = 3: vig(2) = 4: agi(2) = 3: inte(2) = 4: rea(2) = 3: vit(2) = 10: mana(2) = 0: xp(2) = 5 CASE 7 nome$(2) = "Orc chefe" forc(2) = 4: vig(2) = 4: agi(2) = 3: inte(2) = 3: rea(2) = 3: vit(2) = 10: mana(2) = 0: xp(2) = 5 CASE 8 nome$(2) = "Orc" forc(2) = 2: vig(2) = 3: agi(2) = 2: inte(2) = 2: rea(2) = 2: vit(2) = 10: mana(2) = 0: xp(2) = 1 CASE 9 nome$(2) = "Hukgam" forc(2) = 3: vig(2) = 4: agi(2) = 3: inte(2) = 5: rea(2) = 4: vit(2) = 10: mana(2) = 10: xp(2) = 6 CASE 10 nome$(2) = "XamÆ troll" forc(2) = 5: vig(2) = 6: agi(2) = 3: inte(2) = 4: rea(2) = 3: vit(2) = 12: mana(2) = 10: xp(2) = 1 CASE 11 nome$(2) = "Centop‚ia gigante" forc(2) = 2: vig(2) = 3: agi(2) = 3: inte(2) = 1: rea(2) = 2: vit(2) = 8: mana(2) = 0: xp(2) = 1 CASE 12 nome$(2) = "LadrÆo" forc(2) = 2: vig(2) = 2: agi(2) = 4: inte(2) = 3: rea(2) = 3: vit(2) = 10: mana(2) = 0: xp(2) = 2 CASE 13 nome$(2) = "Rato gigante" forc(2) = 1: vig(2) = 2: agi(2) = 3: inte(2) = 1: rea(2) = 4: vit(2) = 5: mana(2) = 0: xp(2) = 1 CASE 14 nome$(2) = "Monstro amorfo mutante" forc(2) = INT(RND * 6) + 1: vig(2) = INT(RND * 6) + 1: agi(2) = INT(RND * 6) + 1: inte(2) = 1: rea(2) = (inte(2) + agi(2)) \ 2: vit(2) = 12: mana(2) = 12: xp(2) = 4 CASE 15 nome$(2) = "Guarda" forc(2) = 6: vig(2) = 6: agi(2) = 6: inte(2) = 3: rea(2) = 4: vit(2) = 10: mana(2) = 0: xp(2) = 1 CASE 16 nome$(2) = "Zumbi" forc(2) = 3: vig(2) = 3: agi(2) = 2: inte(2) = 3: rea(2) = 2: vit(2) = 10: mana(2) = 0: xp(2) = 1 CASE 17 nome$(2) = "Lich" forc(2) = 3: vig(2) = 3: agi(2) = 3: inte(2) = 6: rea(2) = 4: vit(2) = 10: mana(2) = 12: xp(2) = 10 CASE 18 nome$(2) = "Cobra" forc(2) = 2: vig(2) = 2: agi(2) = 4: inte(2) = 1: rea(2) = 2: vit(2) = 6: mana(2) = 0: xp(2) = 1 CASE 19 nome$(2) = "EscorpiÆo gigante" forc(2) = 3: vig(2) = 3: agi(2) = 4: inte(2) = 1: rea(2) = 2: vit(2) = 8: mana(2) = 0: xp(2) = 1 CASE 20 nome$(2) = "Harpia" forc(2) = 3: vig(2) = 4: agi(2) = 5: inte(2) = 2: rea(2) = 3: vit(2) = 10: mana(2) = 0: xp(2) = 2 CASE 21 nome$(2) = "Lagarto gigante" forc(2) = 3: vig(2) = 3: agi(2) = 3: inte(2) = 1: rea(2) = 2: vit(2) = 8: mana(2) = 0: xp(2) = 1 CASE 22 nome$(2) = "Kobold" forc(2) = 2: vig(2) = 2: agi(2) = 4: inte(2) = 2: rea(2) = 3: vit(2) = 8: mana(2) = 0: xp(2) = 1 CASE 23 nome$(2) = "Devorador de mentes" forc(2) = 4: vig(2) = 6: agi(2) = 4: inte(2) = 6: rea(2) = 4: vit(2) = 12: mana(2) = 8: xp(2) = 3 CASE 24 nome$(2) = "Lobo faminto" forc(2) = 4: vig(2) = 4: agi(2) = 6: inte(2) = 2: rea(2) = 4: vit(2) = 10: mana(2) = 0: xp(2) = 1 CASE 25 nome$(2) = "Ogro" forc(2) = 7: vig(2) = 8: agi(2) = 3: inte(2) = 1: rea(2) = 2: vit(2) = 12: mana(2) = 0: xp(2) = 1 CASE 26 nome$(2) = "Drow" forc(2) = 3: vig(2) = 3: agi(2) = 5: inte(2) = 5: rea(2) = 5: vit(2) = 10: mana(2) = 8: xp(2) = 3 CASE 27 nome$(2) = "Imp" forc(2) = 2: vig(2) = 4: agi(2) = 5: inte(2) = 3: rea(2) = 4: vit(2) = 8: mana(2) = 8: xp(2) = 2 CASE 28 nome$(2) = "Clone" forc(2) = forc(1): vig(2) = vig(1): agi(2) = agi(1): inte(2) = inte(1): rea(2) = rea(1): vit(2) = vit(1): mana(2) = mana(1): xp(2) = 5 CASE 29 nome$(2) = "Beholder" forc(2) = 10: vig(2) = 12: agi(2) = 12: inte(2) = 12: rea(2) = 12: vit(2) = 30: mana(2) = 20: xp(2) = 20 CASE 30 nome$(2) = "Necromante" forc(2) = 3: vig(2) = 3: agi(2) = 4: inte(2) = 5: rea(2) = 4: vit(2) = 10: mana(2) = 10: xp(2) = 3 CASE 31 nome$(2) = "Cavaleiro da morte" forc(2) = 8: vig(2) = 8: agi(2) = 6: inte(2) = 3: rea(2) = 4: vit(2) = 12: mana(2) = 0: xp(2) = 4 CASE 32 nome$(2) = "Apari‡Æo" forc(2) = 6: vig(2) = 6: agi(2) = 5: inte(2) = 5: rea(2) = 5: vit(2) = 10: mana(2) = 10: xp(2) = 3 CASE 33 nome$(2) = "Gnoll" forc(2) = 3: vig(2) = 3: agi(2) = 4: inte(2) = 2: rea(2) = 3: vit(2) = 10: mana(2) = 0: xp(2) = 2 CASE 34 nome$(2) = "Golen" forc(2) = 6: vig(2) = 8: agi(2) = 4: inte(2) = 6: rea(2) = 2: vit(2) = 10: mana(2) = 0: xp(2) = 3 CASE 35 nome$(2) = "DragÆo cinza" forc(2) = 12: vig(2) = 14: agi(2) = 12: inte(2) = 12: rea(2) = 12: vit(2) = 30: mana(2) = 30: xp(2) = 8 END SELECT IF mon = 29 OR mon = 35 THEN ELSE IF hab(15) > 6 THEN ajust1 = hab(15) - 6 vig(2) = vig(2) + ajust1 IF vig(1) > 6 THEN ajust2 = vig(1) - 6 forc(2) = forc(2) + ajust2 IF forc(1) > 6 THEN ajust3 = forc(1) - 6 vig(2) = vig(2) + ajust3 IF agi(1) > 6 THEN ajust4 = (agi(1) - 6) \ 2 rea(2) = rea(2) + ajust4 END IF END SUB SUB Morte IF mon = 15 THEN Prisao INPUT "Vocˆ morreu!", press sta(1) = 0: sta(2) = 0: sta(3) = 0: sta(4) = 0: sta(5) = 0: sta(6) = 0: sta(8) = 0: sta(10) = 0: sta(11) = 0: sta(13) = 0: sta(14) = 0: sta(16) = 0: sta(19) = 0: sta(26) = 0 fer(1) = 0: exa(1) = 0 px = 3: py = 4 xp(1) = xp(1) \ 2: IF xp(1) < 0 THEN xp(1) = 0 din = din \ 2: IF din < 0 THEN din = 0 Fim END SUB SUB Prisao CLS LINE (0, 0)-(640, 480), 6, BF LINE (10, 10)-(630, 470), 8, B PRINT "" INPUT "Os guardas te levam para prisÆo da cidade.", press INPUT "Vocˆ ‚ colocado a frente de um ju¡z.", press INPUT "Ju¡z: Vocˆ ‚ acusado de roubo.", press IF var(13) > 0 THEN INPUT "Ju¡z: Vocˆ tamb‚m ‚ acusado de resistir … prisÆo.", press PRINT "Ju¡z: Qual a sua defesa?" PRINT "" PRINT "Vocˆ quer:" PRINT "(1): Tentar suborno" PRINT "(2): Usar a l bia" PRINT "(3): Confesar o crime" PRINT "" INPUT "Escolha: ", escl PRINT ""; "" tempo = 2 + var(13) IF escl = 1 THEN IF din < 50 THEN PRINT "Ju¡z: A corte considera "; nome$(1); ", o "; classe$(1); "...": SLEEP 2: INPUT "...culpado das acusa‡äes e de tentativa de suborno. Prendam-no.", press: tempo = tempo + 1 IF din >= 50 THEN PRINT "Ju¡z: A corte considera "; nome$(1); ", o "; classe$(1); "...": SLEEP 2: INPUT "...inocente das acusa‡äes por falta de provas. Est  livre.", press: din = din - 50: GOTO livre END IF IF escl = 2 THEN s = 0: d = hab(13) + car(1): DO d = d - 1: j = INT(RND * 6) + 1: IF j >= 4 THEN s = s + 1: IF j = 6 THEN d = d + 1 LOOP UNTIL d <= 0 labia = s SELECT CASE labia - var(13) CASE IS <= 2 PRINT "Ju¡z: A corte considera "; nome$(1); ", o "; classe$(1); "...": SLEEP 2: INPUT "...culpado das acusa‡äes e sentenciado … prisÆo perp‚tua.", press: GOTO perp CASE 3 IF din >= 10 THEN PRINT "Ju¡z: A corte considera "; nome$(1); ", o "; classe$(1); "...": SLEEP 2: INPUT "...culpado das acusa‡äes. Por‚m liberado sob fian‡a de 5 moedas.", press: din = din - 10: GOTO livre ELSE PRINT "Ju¡z: A corte considera "; nome$(1); ", o "; classe$(1); "...": SLEEP 2: INPUT "...culpado das acusa‡äes. Prendam-no.", press END IF CASE 4 PRINT "Ju¡z: A corte considera "; nome$(1); ", o "; classe$(1); "...": SLEEP 2: INPUT "...culpado das acusa‡äes. Por‚m liberado por enquanto.", press: GOTO livre CASE IS >= 5 PRINT "Ju¡z: A corte considera "; nome$(1); ", o "; classe$(1); "...": SLEEP 2: INPUT "...inocente por falta de provas. Est  livre.", press: GOTO livre END SELECT END IF IF escl = 3 THEN IF var(13) <= 1 THEN PRINT "Ju¡z: A corte considera "; nome$(1); ", o "; classe$(1); "...": SLEEP 2: INPUT "...inocente das acusa‡äes. Est  livre.", press: GOTO livre IF var(13) = 2 AND din >= 10 THEN PRINT "Ju¡z: A corte considera "; nome$(1); ", o "; classe$(1); "...": SLEEP 2: INPUT "...culpado das acusa‡äes. Por‚m liberado sob fian‡a de 5 moedas.", press: din = din - 10: GOTO livre IF var(13) = 3 THEN PRINT "Ju¡z: A corte considera "; nome$(1); ", o "; classe$(1); "...": SLEEP 2: INPUT "...culpado das acusa‡äes. Prendam-no.", press IF var(13) >= 4 THEN PRINT "Ju¡z: A corte considera "; nome$(1); ", o "; classe$(1); "...": SLEEP 2: INPUT "...culpado das acusa‡äes e sentenciado … prisÆo perp‚tua.", press: GOTO perp END IF INPUT "", press CLS LINE (0, 0)-(640, 480), 6, BF LINE (10, 10)-(630, 470), 8, B PRINT ""; "" INPUT "Vocˆ passa um tempo sem ver nada a nÆo ser grades.", press: SLEEP tempo INPUT " melhor deitar e assistir tv.", press: SLEEP tempo INPUT "Isso pode ser um pouco chato.", press: SLEEP tempo INPUT "Mas vocˆ deve entender que cometeu um delito grave.", press: SLEEP tempo INPUT "O crime nÆo compensa.", press: SLEEP tempo INPUT "EntÆo finalmente chega o dia da liberdade!.", press px = 8: py = 16: var(13) = 0: GOTO livre perp: INPUT "", press CLS LINE (0, 0)-(640, 480), 6, BF LINE (10, 10)-(630, 470), 8, B PRINT ""; "" INPUT "...vocˆ se ferrou. Mas ainda tem aquele poder de voltar no tempo que todo mundoqueria ter no mundo real. Agora seria uma boa hora para usar porque nÆo h  escapat¢ria daqui.", press SLEEP 2 RUN "C:\Blarg!\Diacho\Diacho.bas" livre: sta(1) = 0: sta(2) = 0: sta(3) = 0: sta(4) = 0: sta(5) = 0: sta(6) = 0: sta(8) = 0: sta(10) = 0: sta(11) = 0: sta(13) = 0: sta(14) = 0: sta(16) = 0: sta(19) = 0 fer(1) = 0: exa(1) = 0 xp(1) = xp(1) \ 2: IF xp(1) < 0 THEN xp(1) = 0 din = din \ 2: IF din < 0 THEN din = 0 END SUB SUB Usaritem inv: CLS LINE (0, 0)-(640, 480), 1, BF LINE (10, 10)-(630, 470), 8, B PRINT "" PRINT "Invent¢rio:" IF equ(1) > 0 THEN PRINT "(1) Adaga "; : IF equip(1) = 1 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(2) > 0 THEN PRINT "(2) Espada "; : IF equip(1) = 2 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(3) > 0 THEN PRINT "(3) Machado "; : IF equip(1) = 3 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(4) > 0 THEN PRINT "(4) Lan‡a "; : IF equip(1) = 4 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(5) > 0 THEN PRINT "(5) Arco "; : IF equip(1) = 5 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(6) > 0 THEN PRINT "(6) Funda "; : IF equip(1) = 6 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(7) > 0 THEN PRINT "(7) Corselete "; : IF equip(3) = 7 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(8) > 0 THEN PRINT "(8) Cota de malha "; : IF equip(3) = 8 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(9) > 0 THEN PRINT "(9) Cota de talas "; : IF equip(3) = 9 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(10) > 0 THEN PRINT "(10) Armadura completa "; : IF equip(3) = 10 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(11) > 0 THEN PRINT "(11) Escudo "; : IF equip(2) = 11 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(12) > 0 THEN PRINT "(12) Escudo grande "; : IF equip(2) = 12 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(13) > 0 THEN PRINT "(13) Ma‡a "; : IF equip(1) = 13 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(14) > 0 THEN PRINT "(14) Martelo "; : IF equip(1) = 14 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(15) > 0 THEN PRINT "(15) Montante "; : IF equip(1) = 15 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(16) > 0 THEN PRINT "(16) Alabarda "; : IF equip(1) = 16 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(17) > 0 THEN PRINT "(17) Arco composto "; : IF equip(1) = 17 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(18) > 0 THEN PRINT "(18) Cajado "; : IF equip(1) = 18 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(19) > 0 THEN PRINT "(19) Foice "; : IF equip(1) = 19 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(20) > 0 THEN PRINT "(20) Espada curta "; : IF equip(1) = 20 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(21) > 0 THEN PRINT "(21) Pacote" IF equ(22) > 0 THEN PRINT "(22) Anel de rubi "; : IF equip(4) = 22 OR equip(5) = 22 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(23) > 0 THEN PRINT "(23) Anel de ametista "; : IF equip(4) = 23 OR equip(5) = 23 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(24) > 0 THEN PRINT "(24) Amuleto da estrela "; : IF equip(6) = 24 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(25) > 0 THEN PRINT "(25) Amuleto da lua "; : IF equip(6) = 25 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(26) > 0 THEN PRINT "(26) Cajado de pedra "; : IF equip(1) = 26 OR equip(2) = 26 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(27) > 0 THEN PRINT "(27) Cajado de madeira "; : IF equip(1) = 27 OR equip(2) = 27 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(28) > 0 THEN PRINT "(28) Pergaminho de portal ("; equ(28); ")" IF equ(29) > 0 THEN PRINT "(29) Po‡Æo de cura ("; equ(29); ")" IF equ(30) > 0 THEN PRINT "(30) Pergaminho ("; equ(30); ")" IF equ(31) > 0 THEN PRINT "(31) Manto negro "; : IF equip(7) = 31 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(32) > 0 THEN PRINT "(32) Pedra quadrada" IF equ(33) > 0 THEN PRINT "(33) Cajado do jester "; : IF equip(1) = 33 OR equip(2) = 33 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(34) > 0 THEN PRINT "(34) Orelhas falsas de elfo" IF equ(35) > 0 THEN PRINT "(35) Po‡Æo contra calv¡cie" IF equ(36) > 0 THEN PRINT "(36) Como fazer amigos e influenciar pessoas" IF equ(37) > 0 THEN PRINT "(37) Caneta permanente" IF equ(38) > 0 THEN PRINT "(38) Cajado de raios "; : IF equip(1) = 38 OR equip(2) = 38 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(39) > 0 THEN PRINT "(39) Cajado de bola de fogo "; : IF equip(1) = 39 OR equip(2) = 39 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(40) > 0 THEN PRINT "(40) Cajado de cone de gelo "; : IF equip(1) = 40 OR equip(2) = 40 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(41) > 0 THEN PRINT "(41) Ba£ vermelho" IF equ(42) > 0 THEN PRINT "(42) Anel azul "; : IF equip(4) = 42 OR equip(5) = 42 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(43) > 0 THEN PRINT "(43) Cajado recarreg vel do jester "; : IF equip(1) = 43 OR equip(2) = 43 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(44) > 0 THEN PRINT "(44) Po‡Æo vermelha ("; equ(44); ")" IF equ(45) > 0 THEN PRINT "(45) Po‡Æo azul ("; equ(45); ")" IF equ(46) > 0 THEN PRINT "(46) Pedra" IF equ(47) > 0 THEN PRINT "(47) Disco" IF equ(48) > 0 THEN PRINT "(48) Reagentes ("; equ(48); ")" IF equ(49) > 0 THEN PRINT "(49) Po‡Æo de for‡a ("; equ(49); ")" IF equ(50) > 0 THEN PRINT "(50) Po‡Æo de vigor ("; equ(50); ")" IF equ(51) > 0 THEN PRINT "(51) Po‡Æo de agilidade ("; equ(51); ")" IF equ(52) > 0 THEN PRINT "(52) Po‡Æo explosiva ("; equ(52); ")" IF equ(53) > 0 THEN PRINT "(53) Po‡Æo ofuscante ("; equ(53); ")" IF equ(54) > 0 THEN PRINT "(54) Po‡Æo de paralizia ("; equ(54); ")" IF equ(55) > 0 THEN PRINT "(55) Po‡Æo de sono ("; equ(55); ")" IF equ(56) > 0 THEN PRINT "(56) Po‡Æo de  cido ("; equ(56); ")" IF equ(57) > 0 THEN PRINT "(57) Po‡Æo de regenera‡Æo ("; equ(57); ")" IF equ(58) > 0 THEN PRINT "(58) Adaga Drow "; : IF equip(1) = 58 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(59) > 0 THEN PRINT "(59) Espada de cristal "; : IF equip(1) = 59 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(60) > 0 THEN PRINT "(60) Cota de malha ‚lfica "; : IF equip(3) = 60 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(61) > 0 THEN PRINT "(61) Gema do olho" IF equ(62) > 0 THEN PRINT "(62) Boneco do Chuthulh£" IF equ(63) > 0 THEN PRINT "(63) Po‡Æo de veneno ("; equ(63); ")" IF equ(64) > 0 THEN PRINT "(64) Anel de regenera‡Æo "; : IF equip(4) = 64 OR equip(5) = 64 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(65) > 0 THEN PRINT "(65) Anel de paraliza‡Æo "; : IF equip(4) = 65 OR equip(5) = 65 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(66) > 0 THEN PRINT "(66) Pergaminho de drenar vida ("; equ(66); ")" IF equ(67) > 0 THEN PRINT "(67) Pergaminho de encantar itens ("; equ(67); ")" IF equ(68) > 0 THEN PRINT "(68) Pergaminho de paraliza‡Æo ("; equ(68); ")" IF equ(69) > 0 THEN PRINT "(69) Pergaminho de transforma‡Æo ("; equ(69); ")" IF equ(70) > 0 THEN PRINT "(70) Cajado de invoca‡Æo "; : IF equip(1) = 70 OR equip(2) = 70 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(71) > 0 THEN PRINT "(71) Manto de invisibilidade "; : IF equip(7) = 71 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(72) > 0 THEN PRINT "(72) Manto de teleporte "; : IF equip(7) = 72 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(73) > 0 THEN PRINT "(73) Amuleto do terror "; : IF equip(6) = 73 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(74) > 0 THEN PRINT "(74) Amuleto da ilusÆo "; : IF equip(6) = 74 THEN PRINT "(Eq)" ELSE PRINT "" IF equ(75) > 0 THEN PRINT "(75) Pergaminho de destrancar ("; equ(75); ")" IF equ(76) > 0 THEN PRINT "(76) Cauda de escorpiÆo" PRINT "" INPUT "Equipar(e), Desequipar(d), Jogar fora(j) ou Usar(u): ", escl$ PRINT "" SELECT CASE escl$ CASE "e" INPUT "Equipar: ", eq IF equ(eq) = 0 THEN GOTO fiminv SELECT CASE eq CASE 1, 58 IF classe$ = "Cl‚rigo" OR classe$ = "Monge" THEN PRINT "Equipamento proibido para classe": GOTO fiminv IF equip(2) = equip(1) THEN equip(2) = 0 equip(1) = eq CASE 2 IF classe$ = "Mago" OR classe$ = "Alquimista" OR classe$ = "Conjurador" OR classe$ = "Nightmage" OR classe$ = "Necromante" OR classe$ = "Cl‚rigo" OR classe$ = "Druida" OR classe$ = "Monge" THEN PRINT "Equipamento proibido para classe": GOTO fiminv IF equip(2) = equip(1) THEN equip(2) = 0 equip(1) = eq CASE 3 IF classe$ = "Mago" OR classe$ = "Bardo" OR classe$ = "LadrÆo" OR classe$ = "Assassino" OR classe$ = "Alquimista" OR classe$ = "Conjurador" OR classe$ = "Nightmage" OR classe$ = "Necromante" OR classe$ = "Cl‚rigo" OR classe$ = "Druida" OR classe$ = "Monge" THEN PRINT "Equipamento proibido para classe": GOTO fiminv equip(1) = eq: equip(2) = eq CASE 4 IF classe$ = "Mago" OR classe$ = "Alquimista" OR classe$ = "Conjurador" OR classe$ = "Nightmage" OR classe$ = "Necromante" OR classe$ = "Cl‚rigo" OR classe$ = "Monge" THEN PRINT "Equipamento proibido para classe": GOTO fiminv IF equip(2) = equip(1) THEN equip(2) = 0 equip(1) = eq CASE 5 IF classe$ = "Monge" THEN PRINT "Equipamento proibido para classe": GOTO fiminv equip(1) = eq: equip(2) = eq CASE 6 IF classe$ = "Monge" THEN PRINT "Equipamento proibido para classe": GOTO fiminv IF equip(2) = equip(1) THEN equip(2) = 0 equip(1) = eq CASE 13 IF classe$ = "Mago" OR classe$ = "Alquimista" OR classe$ = "Conjurador" OR classe$ = "Nightmage" OR classe$ = "Necromante" OR classe$ = "Druida" OR classe$ = "Monge" THEN PRINT "Equipamento proibido para classe": GOTO fiminv IF equip(2) = equip(1) THEN equip(2) = 0 equip(1) = eq CASE 14 IF classe$ = "Mago" OR classe$ = "Alquimista" OR classe$ = "Conjurador" OR classe$ = "Nightmage" OR classe$ = "Necromante" OR classe$ = "Druida" OR classe$ = "Monge" THEN PRINT "Equipamento proibido para classe": GOTO fiminv IF equip(2) = equip(1) THEN equip(2) = 0 equip(1) = eq CASE 15 IF classe$ = "Mago" OR classe$ = "Alquimista" OR classe$ = "Conjurador" OR classe$ = "Nightmage" OR classe$ = "Necromante" OR classe$ = "Cl‚rigo" OR classe$ = "Druida" OR classe$ = "Monge" THEN PRINT "Equipamento proibido para classe": GOTO fiminv equip(1) = eq: equip(2) = eq CASE 16 IF classe$ = "Mago" OR classe$ = "Alquimista" OR classe$ = "Conjurador" OR classe$ = "Nightmage" OR classe$ = "Necromante" OR classe$ = "Cl‚rigo" OR classe$ = "Druida" OR classe$ = "Monge" THEN PRINT "Equipamento proibido para classe": GOTO fiminv equip(1) = eq: equip(2) = eq CASE 17 IF classe$ = "Monge" THEN PRINT "Equipamento proibido para classe": GOTO fiminv equip(1) = eq: equip(2) = eq CASE 18, 26, 27, 33, 38 TO 40, 43, 70 IF equip(2) = equip(1) THEN equip(1) = 0 equip(2) = eq CASE 19 IF classe$ = "Mago" OR classe$ = "Alquimista" OR classe$ = "Conjurador" OR classe$ = "Nightmage" OR classe$ = "Cl‚rigo" OR classe$ = "Monge" THEN PRINT "Equipamento proibido para classe": GOTO fiminv equip(1) = eq: equip(2) = eq CASE 20 IF classe$ = "Mago" OR classe$ = "Alquimista" OR classe$ = "Necromante" OR classe$ = "Cl‚rigo" OR classe$ = "Druida" OR classe$ = "Monge" THEN PRINT "Equipamento proibido para classe": GOTO fiminv IF equip(2) = equip(1) THEN equip(2) = 0 equip(1) = eq CASE 7 IF classe$ = "Mago" OR classe$ = "Alquimista" THEN PRINT "Equipamento proibido para classe": GOTO fiminv equip(3) = eq CASE 8 IF classe$ = "Mago" OR classe$ = "Alquimista" OR classe$ = "Conjurador" OR classe$ = "Nightmage" OR classe$ = "Druida" OR classe$ = "Monge" THEN PRINT "Equipamento proibido para classe": GOTO fiminv equip(3) = eq CASE 9 IF classe$ = "Mago" OR classe$ = "Alquimista" OR classe$ = "Conjurador" OR classe$ = "Nightmage" OR classe$ = "Necromante" OR classe$ = "Druida" OR classe$ = "Monge" THEN PRINT "Equipamento proibido para classe": GOTO fiminv equip(3) = eq CASE 10 IF classe$ = "Mago" OR classe$ = "Alquimista" OR classe$ = "Conjurador" OR classe$ = "Nightmage" OR classe$ = "Necromante" OR classe$ = "Druida" OR classe$ = "Monge" THEN PRINT "Equipamento proibido para classe": GOTO fiminv equip(3) = eq CASE 11 IF classe$ = "Mago" OR classe$ = "Alquimista" OR classe$ = "Conjurador" OR classe$ = "Nightmage" OR classe$ = "Necromante" OR classe$ = "Druida" OR classe$ = "Monge" THEN PRINT "Equipamento proibido para classe": GOTO fiminv IF equip(2) = equip(1) THEN equip(1) = 0 equip(2) = eq CASE 12 IF classe$ = "Mago" OR classe$ = "Alquimista" OR classe$ = "Conjurador" OR classe$ = "Nightmage" OR classe$ = "Necromante" OR classe$ = "Druida" OR classe$ = "Monge" THEN PRINT "Equipamento proibido para classe": GOTO fiminv IF equip(2) = equip(1) THEN equip(1) = 0 equip(2) = eq CASE 22, 23, 42, 64, 65 IF equip(4) > 0 THEN equip(5) = eq ELSE equip(4) = eq CASE 24, 25, 73, 74 equip(6) = eq CASE 31, 71, 72 equip(7) = eq: IF eq = 31 THEN PRINT "Vocˆ sente sua rea‡Æo aumentar" CASE 59 IF equip(2) = equip(1) THEN equip(2) = 0 equip(1) = eq CASE 60 equip(3) = eq END SELECT CASE "d" INPUT "Desquipar: ", eq IF equ(eq) = 0 THEN GOTO fiminv IF equip(1) = eq THEN equip(1) = 0 IF equip(2) = eq THEN equip(2) = 0 IF equip(3) = eq THEN equip(3) = 0 IF equip(4) = eq THEN equip(4) = 0 IF equip(5) = eq THEN equip(5) = 0 IF equip(6) = eq THEN equip(6) = 0 IF equip(7) = eq THEN equip(7) = 0: IF eq = 31 THEN PRINT "Vocˆ sente sua rea‡Æo voltar ao normal" CASE "j" INPUT "Jogar fora: ", eq IF equ(eq) = 0 THEN GOTO fiminv IF eq = 34 AND var(5) = 1 THEN PRINT "NÆo d . EstÆo grudadas": GOTO fiminv IF equip(1) = eq THEN equip(1) = 0 IF equip(2) = eq THEN equip(2) = 0 IF equip(3) = eq THEN equip(3) = 0 IF equip(4) = eq THEN equip(4) = 0 IF equip(5) = eq THEN equip(5) = 0 IF equip(6) = eq THEN equip(6) = 0 IF equip(7) = eq THEN equip(7) = 0 equ(eq) = 0 CASE "u" INPUT "Usar: ", eq IF equ(eq) = 0 THEN GOTO fiminv si = 0: d = vig(2) + var(22): DO d = d - 1: j = INT(RND * 6) + 1: IF j >= 4 THEN si = si + 1: IF j = 6 THEN d = d + 1 LOOP UNTIL d <= 0 SELECT CASE eq CASE 22 IF equip(4) = eq OR equip(5) = eq THEN ELSE GOTO fiminv equ(22) = equ(22) - 1 dan = 8 - si: IF dan < 0 THEN dan = 0 PRINT "Uma chama vermelha sai de seu anel, causando"; dan; "de dano em "; nome$(2) fer(2) = fer(2) + dan CASE 23 IF equip(4) = eq OR equip(5) = eq THEN ELSE GOTO fiminv PRINT "Uma aura protetora come‡a a emanar em torno de vocˆ" sta(2) = 3: equ(23) = equ(23) - 1 CASE 24 IF equip(6) = eq THEN ELSE GOTO fiminv PRINT "Uma aura de poder come‡a a emanar em torno de vocˆ" sta(3) = 2: equ(24) = equ(24) - 1 CASE 24 IF equip(6) = eq THEN ELSE GOTO fiminv PRINT "Este poder nÆo funciona em combate" CASE 26 IF equip(1) = eq OR equip(2) = eq THEN ELSE GOTO fiminv PRINT "Vocˆ se sente mais forte" sta(4) = 2: equ(26) = equ(26) - 1 CASE 27 IF equip(1) = eq OR equip(2) = eq THEN ELSE GOTO fiminv PRINT "Vocˆ sente seu vigor aumentar" sta(5) = 2: equ(27) = equ(27) - 1 CASE 28 PRINT "Vocˆ ‚ teleportado" portx = px: porty = py: px = 10: py = 3 equ(28) = equ(28) - 1 CASE 29 PRINT "Vocˆ sente sua vitalidade se restaurar" fer(1) = fer(1) - INT(RND * 5) + 1 equ(29) = equ(29) - 1 CASE 30: PRINT "Vocˆ sente sua vitalidade regenerando-se" sta(6) = 10: equ(30) = equ(30) - 1 CASE 33 IF equip(1) = eq OR equip(2) = eq THEN ELSE GOTO fiminv SELECT CASE INT(RND * 10) + 1 CASE 1 dan = 7 - si: IF dan < 0 THEN dan = 0 PRINT "V rios dardos de energia saem do cajado, causando"; dan; "de dano em "; nome$(2) fer(2) = fer(2) + dan CASE 2: PRINT "Vocˆ se sente mais protegido": sta(8) = 4 CASE 3 PRINT "Ilusäes e luzes rodopiantes saem do cajado" IF INT(RND * inte(2)) > 2 THEN PRINT nome$(2); " nÆo parece ter sido afetado" ELSE var(15) = 3 CASE 4 IF 3 > INT(RND * inte(2)) + 1 THEN PRINT nome$(2); " dormiu" INPUT "Vocˆ quer mat -lo? ", resp$ IF resp$ = "s" THEN Vitor ELSE Fuga ELSE PRINT nome$(2); " nÆo parece ter sido afetado" END IF CASE 5 PRINT "Uma teia m gica sai do cajado" IF INT(RND * agi(2)) > 2 THEN PRINT nome$(2); " nÆo ‚ pego pela teia" ELSE var(20) = 3 CASE 6: PRINT "Uma imagem de vocˆ mesmo aparece do seu lado": sta(9) = 4 CASE 7 dan = 10 - si: IF dan < 0 THEN dan = 0 PRINT "Uma bola de fogo ‚ disparada do cajado, causando"; dan; "de dano em "; nome$(2) fer(2) = fer(2) + dan CASE 8: PRINT "Vocˆ desaparece": sta(10) = 4 CASE 9: PRINT "Um bando de coelhos come‡am a aparecer do nada e a correr pra todos os lados" CASE 10: PRINT "Nada acontece" END SELECT equ(33) = equ(33) - 1 CASE 38 IF equip(1) = eq OR equip(2) = eq THEN ELSE GOTO fiminv dan = 10 - si: IF dan < 0 THEN dan = 0 PRINT "Um raio ‚ disparado do cajado, causando"; dan; "de dano em "; nome$(2) fer(2) = fer(2) + dan: equ(38) = equ(38) - 1: IF exa(2) < mana(2) THEN exa(2) = exa(2) + 2 CASE 39 IF equip(1) = eq OR equip(2) = eq THEN ELSE GOTO fiminv dan = 10 - si: IF dan < 0 THEN dan = 0 PRINT "Uma bola de fogo ‚ disparada do cajado, causando"; dan; "de dano em "; nome$(2) fer(2) = fer(2) + dan: equ(39) = equ(39) - 1 CASE 40 IF equip(1) = eq OR equip(2) = eq THEN ELSE GOTO fiminv dan = 8 - si: IF dan < 0 THEN dan = 0 PRINT "Um cone de gelo ‚ disparado do cajado, causando"; dan; "de dano em "; nome$(2) fer(2) = fer(2) + dan: var(29) = var(29) + 2: equ(40) = equ(40) - 1 CASE 42 IF equip(4) = eq OR equip(5) = eq THEN ELSE GOTO fiminv dan = 8 - si: IF dan < 0 THEN dan = 0 PRINT "Um raio azul ‚ disparado do cajado, causando"; dan; "de dano em "; nome$(2) fer(2) = fer(2) + dan: equ(42) = equ(42) - 1: var(22) = 0 CASE 43 IF equip(1) = eq OR equip(2) = eq THEN ELSE GOTO fiminv SELECT CASE INT(RND * 10) + 1 CASE 1 dan = 7 - si: IF dan < 0 THEN dan = 0 PRINT "V rios dardos de energia saem do cajado, causando"; dan; "de dano em "; nome$(2) fer(2) = fer(2) + dan CASE 2: PRINT "Vocˆ se sente mais protegido": sta(8) = 4 CASE 3 PRINT "Ilusäes e luzes rodopiantes saem do cajado" IF INT(RND * inte(2)) > 2 THEN PRINT nome$(2); " nÆo parece ter sido afetado" ELSE var(15) = 3 CASE 4 IF 3 > INT(RND * inte(2)) + 1 THEN PRINT nome$(2); " dormiu" INPUT "Vocˆ quer mat -lo? ", resp$ IF resp$ = "s" THEN Vitor ELSE Fuga ELSE PRINT nome$(2); " nÆo parece ter sido afetado" END IF CASE 5 PRINT "Uma teia m gica sai do cajado" IF INT(RND * agi(2)) > 2 THEN PRINT nome$(2); " nÆo ‚ pego pela teia" ELSE var(20) = 3 CASE 6: PRINT "Uma imagem de vocˆ mesmo aparece do seu lado": sta(9) = 6 CASE 7 dan = 10 - si: IF dan < 0 THEN dan = 0 PRINT "Uma bola de fogo ‚ disparada do cajado, causando"; dan; "de dano em "; nome$(2) fer(2) = fer(2) + dan CASE 8: PRINT "Vocˆ desaparece": sta(10) = 4 CASE 9: PRINT "Um bando de coelhos come‡am a aparecer do nada e a correr pra todos os lados" CASE 10: PRINT "Nada acontece" END SELECT equ(43) = equ(43) - 1 CASE 44 PRINT "Essa po‡Æo nÆo parece ter efeito...": SLEEP 1 PRINT "Espere...": SLEEP 1 PRINT "Vocˆ nÆo se sente bem..." equ(44) = equ(44) - 1 Morte CASE 45 PRINT "Essa po‡Æo nÆo parece ter efeito...": SLEEP 1 PRINT "UOU!!! Pera¡ que bateu a onda..." exa(1) = 0 equ(45) = equ(45) - 1 CASE 46 dan = 5 - si: IF dan < 0 THEN dan = 0 PRINT "Vocˆ joga a pedra, causando"; dan; "de dano em "; nome$(2) fer(2) = fer(2) + dan equ(46) = equ(46) - 1 CASE 47 IF mon = 29 THEN PRINT "Vocˆ tenta usar a parte reflexiva do disco para retornar o olhar mortal do beholder contra ele mesmo...": SLEEP 1 INPUT "Mas sem querer acaba mostrando o outro lado!", press PRINT "O beholder olha para o disco" PRINT "Beholder: Oh nÆo! Diablo! Aquela imita‡Æo de MUD com gr ficos! Eu nÆo acredito que me recusaram no teste para monstro principal! Eu odeio esse jogo!!!" INPUT "O beholder come‡a a morrer de ¢dio", press Vitor END IF CASE 49: PRINT "Vocˆ toma a po‡Æo": sta(4) = 3: equ(49) = equ(49) - 1 CASE 50: PRINT "Vocˆ toma a po‡Æo": sta(5) = 3: equ(50) = equ(50) - 1 CASE 51: PRINT "Vocˆ toma a po‡Æo": sta(11) = 3: equ(51) = equ(51) - 1 CASE 52: PRINT "Vocˆ joga a po‡Æo, ela explode em "; nome$(2); " causando"; dan; "de dano" dan = 8 - si: IF dan < 0 THEN dan = 0 fer(2) = fer(2) + dan: equ(52) = equ(52) - 1 CASE 53: PRINT "Vocˆ joga a po‡Æo, ela explode num brilho forte": var(15) = INT(RND * 4) + 1: equ(53) = equ(53) - 1 CASE 54: PRINT "Vocˆ joga a po‡Æo, ela espalha uma coisa grudenta": var(29) = INT(RND * 4) + 1: equ(54) = equ(54) - 1 CASE 55: PRINT "Vocˆ joga a po‡Æo, um p¢ parecido com areia se espalha": equ(55) = equ(55) - 1 IF INT(RND * 6) + 1 >= inte(2) THEN PRINT nome$(2); " dormiu" INPUT "Vocˆ quer mat -lo? ", resp$ IF resp$ = "s" THEN Vitor ELSE Fuga ELSE PRINT nome$(2); " nÆo parece ter sido afetado" END IF CASE 56: PRINT "Vocˆ joga a po‡Æo, ela se quebra e borbulha, causando"; dan; " de dano em "; nome$(2) dan = 7 - si: IF dan < 0 THEN dan = 0 fer(2) = fer(2) + dan: var(27) = dan: equ(56) = equ(56) - 1 CASE 57: PRINT "Vocˆ bebe a po‡Æo": sta(6) = 10: equ(57) = equ(57) - 1 CASE 59: IF equ(59) < 6 THEN PRINT "A espada de cristal brilha e reconstitu¡-se magicamente": equ(59) = 6 CASE 61: PRINT "Vocˆ sente um grande poder nessa gema, mas nÆo sabe como liber -lo" CASE 62: PRINT nome$(2); " olha para o boneco" PRINT nome$(2); ": Sempre quis ter um desses!" CASE 63: PRINT "Vocˆ joga a po‡Æo, ela se quebra em "; nome$(2) var(27) = var(27) + (INT(RND * 4) + 1): equ(63) = equ(63) - 1 CASE 64: IF equip(4) = eq OR equip(5) = eq THEN ELSE GOTO fiminv PRINT "Vocˆ sente sua vitalidade regenerando-se" sta(6) = 6: equ(64) = equ(64) - 1 CASE 65: IF equip(4) = eq OR equip(5) = eq THEN ELSE GOTO fiminv PRINT nome$(2); " ‚ paralizado": var(29) = INT(RND * 4) + 1 equ(65) = equ(65) - 1 CASE 66: IF equip(4) = eq OR equip(5) = eq THEN ELSE GOTO fiminv equ(66) = equ(66) - 1 mag(9) = 0: mag(11) = 0: hab(8) = 0 dan = 7 - si: IF dan < 0 THEN dan = 0 PRINT "Uma energia negra emana de seu anel, causando"; dan; "de dano em "; nome$(2) fer(2) = fer(2) + dan: dan = dan \ 2 PRINT "Vocˆ drena"; dan; "pontos de vitalidade" CASE 67: PRINT "Imposs¡vel em combate" CASE 68: PRINT nome$(2); " ‚ paralizado": var(29) = INT(RND * 4) + 1 equ(68) = equ(68) - 1 CASE 69: PRINT "Vocˆ se transforma num grande lobo b¡pede": sta(26) = 3 equ(69) = equ(69) - 1 CASE 70: IF equip(1) = eq OR equip(2) = eq THEN ELSE GOTO fiminv PRINT "Vocˆ invoca um elemental": sta(13) = car(1): equ(70) = equ(70) - 1 CASE 71: IF equip(7) = eq THEN ELSE GOTO fiminv PRINT "Vocˆ desaparece": sta(10) = 4: equ(71) = equ(71) - 1 CASE 72: IF equip(7) = eq THEN ELSE GOTO fiminv PRINT "Vocˆ ‚ teleportado": px = 11: py = 3 equ(72) = equ(72) - 1 CASE 73: PRINT "Vocˆ emana uma aura de terror": sta(16) = 4 mag(9) = 0: mag(11) = 0: hab(8) = 0 IF mon = 16 OR mon = 17 THEN PRINT "Mortos-vivos nÆo sÆo afetados por essa magia": sta(16) = 0 equ(73) = equ(73) - 1 CASE 74: PRINT "Uma imagem de vocˆ aparece do seu lado": sta(6) = 4 equ(74) = equ(74) - 1 CASE 75: PRINT "Imposs¡vel em combate" CASE ELSE PRINT "Este equipamento nÆo pode ser usado" END SELECT END SELECT fiminv: END SUB SUB Usarmagia CLS LINE (0, 0)-(640, 480), 1, BF LINE (10, 10)-(630, 470), 9, B PRINT "" PRINT "Grim¢rio:" IF mag(1) > 0 THEN PRINT "(1) Dardos m¡sticos: "; mag(1) IF mag(2) > 0 THEN PRINT "(2) Armadura: "; mag(2) IF mag(3) > 0 THEN PRINT "(3) ConfusÆo: "; mag(3) IF mag(4) > 0 THEN PRINT "(4) Sono: "; mag(4) IF mag(5) > 0 THEN PRINT "(5) Teia: "; mag(5) IF mag(6) > 0 THEN PRINT "(6) Espelho: "; mag(6) IF mag(7) > 0 THEN PRINT "(7) Bola de fogo: "; mag(7) IF mag(8) > 0 THEN PRINT "(8) Invisibilidade: "; mag(8) IF mag(9) > 0 THEN PRINT "(9) Cura: "; mag(9) IF mag(10) > 0 THEN PRINT "(10) Conjurar: "; mag(10) IF mag(11) > 0 THEN PRINT "(11) Ben‡Æo: "; mag(11) IF mag(12) > 0 THEN PRINT "(12) Medo: "; mag(12) IF mag(13) > 0 THEN PRINT "(13) Animar morto: "; mag(13) IF mag(14) > 0 THEN PRINT "(14) Dissipar magia: "; mag(14) IF mag(15) > 0 THEN PRINT "(15) Portal: "; mag(15) IF mag(16) > 0 THEN PRINT "(16) Recarregar: "; mag(16) IF mag(17) > 0 THEN PRINT "(17) Levitar: "; mag(17) IF mag(18) > 0 THEN PRINT "(18) Regenerar: "; mag(18) IF mag(19) > 0 THEN PRINT "(19) Forma de Worg: "; mag(19) IF mag(20) > 0 THEN PRINT "(20) Maldi‡Æo: "; mag(20) IF mag(21) > 0 THEN PRINT "(21) Paralizar: "; mag(21) IF mag(22) > 0 THEN PRINT "(22) Esquecimento: "; mag(22) IF mag(23) > 0 THEN PRINT "(23) Drenar vida: "; mag(23) IF mag(24) > 0 THEN PRINT "(24) Encantar item: "; mag(24) IF mag(25) > 0 THEN PRINT "(25) Destrancar: "; mag(25) IF mag(26) > 0 THEN PRINT "(26) Detectar passagens: "; mag(26) IF mag(27) > 0 THEN PRINT "(27) Purifica‡Æo: "; mag(27) PRINT "" INPUT "Feiti‡o: ", feit PRINT "" IF mag(feit) = 0 THEN GOTO fimgrim IF exa(1) + mag(feit) >= mana(1) THEN INPUT "Quer se arriscar a desmaiar para usar esse feiti‡o? ", resp$ IF resp$ = "n" THEN GOTO fimgrim END IF SELECT CASE feit CASE 1: cust = 2 + (mag(feit) \ 2) CASE 2: cust = 3 + (mag(feit) \ 2) CASE 3: cust = 3 + (mag(feit) \ 2) CASE 4: cust = 4 + (mag(feit) \ 2) CASE 5: cust = 4 + (mag(feit) \ 2) CASE 6: cust = 4 + (mag(feit) \ 2) CASE 7: cust = 5 + (mag(feit) \ 2) CASE 8: cust = 5 + (mag(feit) \ 2) CASE 9: cust = 3 + (mag(feit) \ 2) CASE 10: cust = 5 + (mag(feit) \ 2) CASE 11: cust = 3 + (mag(feit) \ 2) CASE 12: cust = 4 + (mag(feit) \ 2) CASE 13: cust = 5 + (mag(feit) \ 2) CASE 14: cust = 4 + (mag(feit) \ 2) CASE 15: cust = 10 - (mag(feit) \ 2) CASE 16: cust = 4 + (mag(feit) \ 2) CASE 17: cust = 4 + (mag(feit) \ 2) CASE 18: cust = 4 + (mag(feit) \ 2) CASE 19: cust = 4 + (mag(feit) \ 2) CASE 20: cust = 3 + (mag(feit) \ 2) CASE 21: cust = 3 + (mag(feit) \ 2) CASE 22: cust = 3 + (mag(feit) \ 2) CASE 23: cust = 5 + (mag(feit) \ 2) CASE 24: cust = 4 + (mag(feit) \ 2) CASE 25: cust = 2 + (mag(feit) \ 2) CASE 26: cust = 3 + (mag(feit) \ 2) CASE 27: cust = 3 + (mag(feit) \ 2) END SELECT s = 0: d = per(1): DO d = d - 1: j = INT(RND * 6) + 1: IF j >= 4 THEN s = s + 1: IF j = 6 THEN d = d + 1 LOOP UNTIL d <= 0 dan = cust - s: IF dan < 1 THEN dan = 1 exa(1) = exa(1) + dan PRINT "Vocˆ sofre"; dan; "de exaustÆo" IF exa(1) >= mana(1) THEN PRINT "As luzes come‡am a se apagar...": Morte s = 0: d = mag(feit) + sta(3) + per(1) - 3: DO d = d - 1: j = INT(RND * 6) + 1: IF j >= 4 THEN s = s + 1: IF j = 6 THEN d = d + 1 LOOP UNTIL d <= 0 si = 0: d = vig(2) + var(22): DO d = d - 1: j = INT(RND * 6) + 1: IF j >= 4 THEN si = si + 1: IF j = 6 THEN d = d + 1 LOOP UNTIL d <= 0 sta(3) = 0 PRINT "" IF s > 0 THEN SELECT CASE feit CASE 1 dan = s - si: IF dan < 0 THEN dan = 0 PRINT "Dardos de energia saem dos seus dedos, causando"; dan; "de dano em "; nome$(2) fer(2) = fer(2) + dan CASE 2: PRINT "Vocˆ se sente protegido": sta(8) = s CASE 3: PRINT "Ilusäes e luzes rodopiantes saem dos seus dedos" IF s > INT(RND * inte(2)) THEN var(15) = s ELSE PRINT nome$(2); " nÆo parece ter sido afetado" CASE 4 IF s > inte(2) THEN PRINT nome$(2); " dormiu" INPUT "Vocˆ quer mat -lo? ", resp$ IF resp$ = "s" THEN Vitor ELSE Fuga ELSE PRINT nome$(2); " nÆo parece ter sido afetado" END IF CASE 5: PRINT "Uma teia m gica sai dos seus dedos" IF s > agi(2) THEN var(20) = s: PRINT nome$(2); " est  preso" ELSE PRINT nome$(2); " consegue evitar a teia" CASE 6: PRINT "Uma imagem de vocˆ aparece do seu lado": sta(9) = s CASE 7 dan = (s * 2) - si: IF dan < 0 THEN dan = 0 PRINT "Uma bola de fogo sai de suas mÆos, causando"; dan; "de dano em "; nome$(2) fer(2) = fer(2) + dan CASE 8: PRINT "Vocˆ desaparece": sta(10) = s CASE 9: PRINT "Uma aura de luz brilha sobre vocˆ" fer(1) = fer(1) - s: IF fer(1) < 0 THEN fer(1) = 0 CASE 10 s = 0: d = car(1): DO d = d - 1: j = INT(RND * 6) + 1: IF j >= 4 THEN s = s + 1: IF j = 6 THEN d = d + 1 LOOP UNTIL d <= 0 PRINT "Vocˆ conjura um elemental": sta(13) = s CASE 11: PRINT "Vocˆ pede uma ben‡Æo divina": sta(14) = s CASE 12: PRINT "Vocˆ exala uma aura de terror": sta(16) = s mag(9) = 0: mag(11) = 0: hab(8) = 0 IF mon = 16 OR mon = 17 THEN PRINT "Mortos-vivos nÆo sÆo afetados por essa magia": sta(16) = 0 CASE 13: PRINT "Imposs¡vel em combate" CASE 14: PRINT "Suas mÆos brilham com uma luz p lida" IF s >= inte(2) THEN PRINT "Vocˆ anula a magia de "; nome$(2): mana(2) = 0 CASE 15 PRINT "Locais:" PRINT "(1) Tricard" PRINT "(2) Uktaw" PRINT "(3) Tarnich" INPUT "Para onde vocˆ quer ir? ", resp IF resp = 1 THEN px = 10: py = 3 IF resp = 2 THEN px = 7: py = 16 IF resp = 3 THEN px = 18: py = 4 CASE 16: PRINT "Imposs¡vel em combate" CASE 17: PRINT "Vocˆ perde a concentra‡Æo" CASE 18: PRINT "Uma aura verde cerca seu corpo": sta(6) = s * 2 CASE 19: PRINT "Vocˆ se transforma num grande lobo b¡pede": sta(26) = s CASE 20: IF s > INT(RND * inte(2)) THEN PRINT "Vocˆ amaldi‡äa "; nome$(2): var(30) = s ELSE PRINT nome$(2); " resiste ao feiti‡o" mag(9) = 0: mag(11) = 0: hab(8) = 0 CASE 21: IF s > INT(RND * inte(2)) THEN PRINT "Vocˆ paraliza "; nome$(2): var(29) = s ELSE PRINT nome$(2); " resiste ao feiti‡o" CASE 22: IF s >= inte(2) THEN PRINT "Vocˆ faz "; nome$(2); " se esquecer de seus feiti‡os": mana(2) = 0 ELSE PRINT nome$(2); " resiste ao feiti‡o" CASE 23: PRINT "Uma energia negra emana em vocˆ e em "; nome$(2) mag(9) = 0: mag(11) = 0: hab(8) = 0 dan = s - si: IF dan < 0 THEN dan = 0 PRINT "O feiti‡o causa"; dan; "de dano em "; nome$(2) fer(2) = fer(2) + dan dan = dan \ 2 PRINT "Vocˆ drena"; dan; "pontos de vitalidade" CASE 24: PRINT "Imposs¡vel em combate" CASE 25: PRINT "Imposs¡vel em combate" CASE 26: PRINT "Imposs¡vel em combate" CASE 27: IF s > sta(21) + sta(18) THEN : PRINT "Vocˆ se sente purificado": sta(21) = 0: sta(18) = 0 ELSE PRINT "O feiti‡o falhou!" END SELECT ELSE PRINT "O feiti‡o falhou!" END IF PRINT "" IF INT(RND * 200) = 0 THEN PRINT "Sua habilidade com esse feiti‡o melhorou": mag(feit) = mag(feit) + 1 fimgrim: END SUB SUB Vitor PRINT "Vocˆ venceu "; nome$(2) PRINT "Experiˆncia pela batalha: "; xp(2) xp(1) = xp(1) + xp(2) corpo(mon) = 1 var(28) = 0 IF mon = 12 THEN moner(3) = 0 IF mon = 8 THEN moner(2) = 0 IF mon = 5 THEN moner(1) = 0 IF mon >= 2 AND mon <= 9 THEN GOTO espolios IF mon = 12 OR mon = 15 OR mon = 16 OR mon = 17 OR mon = 22 OR mon = 23 OR mon = 26 OR mon = 28 OR mon = 30 OR mon = 31 OR mon = 33 THEN espolios: po = INT(RND * 7) + 2 IF var(28) = mon THEN po = 0 PRINT "Vocˆ recolhe"; po; "moedas do corpo de "; nome$(2): din = din + po IF INT(RND * 6) = 0 THEN PRINT "Vocˆ acha um item no corpo de "; nome$(2): Item END IF IF mon = 6 THEN PRINT "Vocˆ encontra uma po‡Æo de cura, um item e 10 moedas no tesouro do Hobglobin." equ(29) = equ(29) + 1 din = din + 10 Item END IF IF mon = 7 THEN PRINT "Vocˆ encontra uma po‡Æo de cura, um item e 10 moedas no tesouro do Orc Chefe." equ(29) = equ(29) + 1 din = din + 10 Item END IF IF mon = 9 THEN PRINT "O mago vira p¢ e some pelo chÆo." PRINT "Vocˆ encontra um anel azul no dedo de Hukgam." PRINT "Vocˆ encontra um item no tesouro de Hukgam." s = 0: d = hab(1): DO d = d - 1: j = INT(RND * 6) + 1: IF j >= 4 THEN s = s + 1: IF j = 6 THEN d = d + 1 LOOP UNTIL d <= 0 IF s >= 1 THEN PRINT "Vocˆ sente magia no anel." IF s >= 3 THEN PRINT "Magia de raio de gelo." equ(42) = 6 Item END IF IF mon = 10 AND var(2) = 0 THEN : PRINT "Vocˆ acha uma pedra quadrada no corpo do Troll": equ(32) = 1: var(2) = 1 IF mon = 14 THEN IF var(5) = 1 THEN var(5) = 2 IF var(5) = 3 THEN PRINT "Dupond: Parab‚ns. Tome sua parte meu rapaz!" prem = (forc(2) + agi(2) + rea(2)) PRINT "Por ter derrotado o monstro, vocˆ recebe"; prem; "moedas" din = din + prem END IF IF mon = 15 THEN var(13) = var(13) + 1: IF classe$ = "Cl‚rigo" OR classe$ = "Paladino" THEN mag(11) = 0: mag(9) = 0: hab(8) = 0 IF mon = 17 THEN PRINT "Vocˆ acha um item no corpo do lich": Item: var(23) = 2: IF px = 3 AND py = 9 THEN var(23) = 3 IF mon >= 12 AND mon <= 19 OR mon = 21 OR mon = 22 OR mon = 23 OR mon = 24 OR mon = 33 THEN PRINT "Um bando de larvas velozes e famintas devoram o corpo em segundos!" END IF IF mon = 19 AND var(12) = 1 THEN : PRINT "Vocˆ pega a cauda do escorpiÆo": equ(76) = 1: var(12) = 2 IF mon = 25 AND var(26) = 0 THEN : PRINT "Vocˆ pega a gema em forma de olho": equ(61) = 1: var(26) = 1 IF mon = 28 THEN sta(25) = 0 IF mon = 29 THEN PRINT "Vocˆ destruiu o beholder que roubou os gr ficos do jogo! Parab‚ns!": sta(22) = 2 PRINT "Vocˆ encontra um artefato antigo na mochila do beholder!": equ(((INT(RND * 20) + 1))) = 10 END IF IF mon = 31 THEN PRINT "O corpo do cavaleiro se desfaz" IF mon = 32 THEN PRINT "A apari‡Æo simplesmente some" IF mon = 34 THEN PRINT "O golen se quebra em peda‡os" IF mon = 35 THEN PRINT "Vocˆ encontra uma bolsa cheia de itens": Item: Item: Item: Item IF mon = 16 AND px = 3 AND py = 6 THEN var(17) = 2 Fim END SUB