home *** CD-ROM | disk | FTP | other *** search
- Rem dndedit1.bas v2.9c
- Rem $Include: 'dndbbs.inc'
-
- Sub ShowObject
- On Local Error Goto 10002
- Select Case TempX
- Case 0
- Strng=Chr$(27)+"[1;37;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[2;8H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[1;33;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[2;2H"
- Call Scrn(Strng)
- Strng="Object"+Str$(Object.Number)
- Call Scrn(Strng)
- Case Else
- Strng=Chr$(27)+"[1;37;40m"
- Call Scrn(Strng)
- Select Case TempX
- Case 1
- Strng=Chr$(27)+"[4;2H"
- Call Scrn(Strng)
- Strng=ObjectRecord.ObjectName
- Call Scrn(Strng)
- Case 2
- Strng=Chr$(27)+"[7;2H"
- Call Scrn(Strng)
- Strng=Lcase$(ObjectRecord.ShortName)
- Call Scrn(Strng)
- Case 3
- Strng=Chr$(27)+"[9;12H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[9;12H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(ObjectRecord.RoomLink),2)
- Call Scrn(Strng)
- Case 4
- Strng=Chr$(27)+"[11;10H"
- Call Scrn(Strng)
- If ObjectRecord.LightRoom Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 5
- Strng=Chr$(27)+"[11;25H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[11;25H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(ObjectRecord.LightTime),2)
- Call Scrn(Strng)
- Case 6
- Strng=Chr$(27)+"[13;13H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[13;13H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(ObjectRecord.Keyed),2)
- Call Scrn(Strng)
- Case 7
- Strng=Chr$(27)+"[16;2H"
- Call Scrn(Strng)
- Strng=Left$(ObjectRecord.LongDesc,78)
- Call Scrn(Strng)
- Case 8
- Strng=Chr$(27)+"[19;2H"
- Call Scrn(Strng)
- Strng=Left$(ObjectRecord.ShortDesc,40)
- Call Scrn(Strng)
- Case 9
- Strng=Chr$(27)+"[3;57H"
- Call Scrn(Strng)
- If ObjectRecord.Hidden Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 10
- Strng=Chr$(27)+"[5;60H"
- Call Scrn(Strng)
- If ObjectRecord.Invisible Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 11
- Strng=Chr$(27)+"[7;60H"
- Call Scrn(Strng)
- If ObjectRecord.JailTrap Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 12
- Strng=Chr$(27)+"[9;57H"
- Call Scrn(Strng)
- If ObjectRecord.DoorLock>1 Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 13
- Strng=Chr$(27)+"[11;58H"
- Call Scrn(Strng)
- If ObjectRecord.Relocks Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 14
- Strng=Chr$(27)+"[13;60H"
- Call Scrn(Strng)
- If ObjectRecord.Permanent Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 15
- Strng=Chr$(27)+"[15;65H"
- Call Scrn(Strng)
- Strng="?"
- If ObjectRecord.Trap=1 Then
- Strng="P"
- Endif
- If ObjectRecord.Trap=2 Then
- Strng="F"
- Endif
- If ObjectRecord.Trap=3 Then
- Strng="D"
- Endif
- Call Scrn(Strng)
- End Select
- End Select
- 10001
- Exit Sub
- 10002
- Resume 10001
- End Sub
-
- Sub DisplayObject
- On Local Error Goto 10012
- Strng=Chr$(27)+"[1;33;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[17;50H"
- Call Scrn(Strng)
- If ObjectRecord.Trap<=1 Then
- Strng="<none>"
- Call Scrn(Strng)
- Strng=Space$(4)
- Call Scrn(Strng)
- Else
- If ObjectRecord.Trap=2 Then
- Strng="Teleport"
- Call Scrn(Strng)
- Else
- If ObjectRecord.Trap=3 Then
- Strng="Hits For"
- Call Scrn(Strng)
- Endif
- Endif
- Endif
- Strng=Chr$(27)+"[1;37;40m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[17;59H"
- Call Scrn(Strng)
- If ObjectRecord.Trap=2 Then
- If ObjectRecord.Teleport>False Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Else
- If ObjectRecord.Trap=3 Then
- If ObjectRecord.Teleport>False Then
- Call Scrn("F")
- Else
- If ObjectRecord.Teleport<False Then
- Call Scrn("V")
- Else
- Call Scrn("?")
- Endif
- Endif
- Endif
- Endif
- Strng=Chr$(27)+"[1;33;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[18;50H"
- Call Scrn(Strng)
- If ObjectRecord.Trap<=1 Then
- Strng=Space$(16)
- Call Scrn(Strng)
- Else
- If ObjectRecord.Trap=2 Then
- Title.Data(17)="Room Teleport To"
- Strng="Room Teleport To"
- Call Scrn(Strng)
- Else
- If ObjectRecord.Trap=3 Then
- Title.Data(17)="Fatigue/Vitality"
- Strng="Fatigue/Vitality"
- Call Scrn(Strng)
- Endif
- Endif
- Endif
- If ObjectRecord.Trap>1 Then
- Strng=Chr$(27)+"[1;37;40m"
- Call Scrn(Strng)
- Else
- Strng=Chr$(27)+"[0;33;44m"
- Call Scrn(Strng)
- Endif
- Strng=Chr$(27)+"[19;50H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- If ObjectRecord.Trap>1 Then
- Strng=Chr$(27)+"[19;50H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(Abs(ObjectRecord.Teleport)),2)
- Call Scrn(Strng)
- Endif
- 10011
- Exit Sub
- 10012
- Resume 10011
- End Sub
-
- Sub AddObject
- On Local Error Goto 10022
- Object.Number=Lof(6)/Len(ObjectRecord)+1
- ObjectRecord.ObjectName=Nul
- ObjectRecord.ShortName=Nul
- ObjectRecord.RoomLink=False
- ObjectRecord.Invisible=False
- ObjectRecord.JailTrap=False
- ObjectRecord.DoorLock=False
- ObjectRecord.Permanent=False
- ObjectRecord.Hidden=False
- ObjectRecord.Closed=False
- ObjectRecord.Keyed=False
- ObjectRecord.Relocks=False
- ObjectRecord.LightRoom=False
- ObjectRecord.LightTime=False
- ObjectRecord.LongDesc=Nul
- ObjectRecord.ShortDesc=Nul
- ObjectRecord.Trap=False
- ObjectRecord.Teleport=False
- Put 6,Object.Number,ObjectRecord
- Call DisplayObjectScreen
- 10021
- Exit Sub
- 10022
- Resume 10021
- End Sub
-
- Sub ShowTreasure
- On Local Error Goto 10032
- Select Case TempX
- Case 0
- Strng=Chr$(27)+"[1;37;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[2;11H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[1;33;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[2;2H"
- Call Scrn(Strng)
- Strng="Treasure"+Str$(Treasure.Number)
- Call Scrn(Strng)
- Exit Sub
- Case Else
- Strng=Chr$(27)+"[1;37;40m"
- Call Scrn(Strng)
- Select Case TempX
- Case 1
- Strng=Chr$(27)+"[4;2H"
- Call Scrn(Strng)
- Strng=TreasureRecord.TreasureName
- Call Scrn(Strng)
- Case 2
- Strng=Chr$(27)+"[6;2H"
- Call Scrn(Strng)
- Strng=Lcase$(TreasureRecord.ShortName)
- Call Scrn(Strng)
- Case 3
- Strng=Chr$(27)+"[8;9H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[8;9H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(TreasureRecord.Weight),2)
- Call Scrn(Strng)
- Case 4
- Strng=Chr$(27)+"[10;8H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[10;8H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(TreasureRecord.Gold),2)
- Call Scrn(Strng)
- Case 5
- Strng=Chr$(27)+"[12;7H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[12;7H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(Abs(TreasureRecord.Plus)),2)
- Call Scrn(Strng)
- Case 6
- Strng=Chr$(27)+"[14;10H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[14;10H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(TreasureRecord.Charges),2)
- Call Scrn(Strng)
- Case 7
- Strng=Chr$(27)+"[16;17H"
- Call Scrn(Strng)
- Strng="?"
- If TreasureRecord.Proficiency=1 Then
- Strng="B"
- Endif
- If TreasureRecord.Proficiency=2 Then
- Strng="P"
- Endif
- If TreasureRecord.Proficiency=3 Then
- Strng="S"
- Endif
- If TreasureRecord.Proficiency=4 Then
- Strng="T"
- Endif
- Call Scrn(Strng)
- Strng=Chr$(27)+"[1;37;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[16;7H"
- Call Scrn(Strng)
- Strng="(B/P/S/T)"
- Call Scrn(Strng)
- Case 8
- Strng=Chr$(27)+"[18;16H"
- Call Scrn(Strng)
- If TreasureRecord.Type=False Then
- If TreasureRecord.Plus=False Then
- Strng="T"
- Else
- Strng="W"
- Endif
- Endif
- If TreasureRecord.Type<False Then
- Strng="S"
- Endif
- If TreasureRecord.Type>False Then
- Strng="A"
- Endif
- Call Scrn(Strng)
- Strng=Chr$(27)+"[1;37;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[18;6H"
- Call Scrn(Strng)
- Strng="(S/A/W/T)"
- Call Scrn(Strng)
- Case 9
- Strng=Chr$(27)+"[3;26H"
- Call Scrn(Strng)
- If TreasureRecord.Coin Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 10
- Strng=Chr$(27)+"[5;27H"
- Call Scrn(Strng)
- If TreasureRecord.Potion Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 11
- Strng=Chr$(27)+"[7;27H"
- Call Scrn(Strng)
- If TreasureRecord.Scroll Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 12
- Strng=Chr$(27)+"[9;30H"
- Call Scrn(Strng)
- If TreasureRecord.Invisible Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 13
- Strng=Chr$(27)+"[11;29H"
- Call Scrn(Strng)
- If TreasureRecord.Loadable Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 14
- Strng=Chr$(27)+"[13;31H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[13;31H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(TreasureRecord.AmmoLoads),2)
- Call Scrn(Strng)
- Case 15
- Strng=Chr$(27)+"[15;31H"
- Call Scrn(Strng)
- If TreasureRecord.Ammunition Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 16
- Strng=Chr$(27)+"[17;31H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[17;31H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(TreasureRecord.Keyed),2)
- Call Scrn(Strng)
- Case 17
- Strng=Chr$(27)+"[19;28H"
- Call Scrn(Strng)
- If TreasureRecord.Spell Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 18
- If TreasureRecord.Spell<1 Or_
- TreasureRecord.Spell>Lof(4)/Len(SpellRecord) Then
- Strng=Chr$(27)+"[4;40H"
- Call Scrn(Strng)
- Strng="<none>"
- Call Scrn(Strng)
- Strng=Space$(14)
- Call Scrn(Strng)
- Else
- Get 4,TreasureRecord.Spell,SpellRecord
- Strng=Chr$(27)+"[4;40H"
- Call Scrn(Strng)
- Strng=Left$(SpellRecord.SpellName,20)
- Call Scrn(Strng)
- Endif
- Case 19
- Strng=Chr$(27)+"[5;45H"
- Call Scrn(Strng)
- If TreasureRecord.RingType Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 20
- Strng=Chr$(27)+"[8;40H"
- Call Scrn(Strng)
- Strng="?"
- If TreasureRecord.RingType=1 Then
- Strng="P"
- Endif
- If TreasureRecord.RingType=2 Then
- Strng="L"
- Endif
- If TreasureRecord.RingType=3 Then
- Strng="S"
- Endif
- Call Scrn(Strng)
- Strng=Chr$(27)+"[1;37;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[7;50H"
- Call Scrn(Strng)
- Strng="(P/L/S)"
- Call Scrn(Strng)
- Case 21
- Strng=Chr$(27)+"[10;40H"
- Call Scrn(Strng)
- If TreasureRecord.RingSpell=False Then
- Strng="<none>"
- Call Scrn(Strng)
- Strng=Space$(14)
- Call Scrn(Strng)
- Endif
- If TreasureRecord.RingSpell<False Then
- Strng="<generic spell>"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Endif
- If TreasureRecord.RingSpell>False Then
- Get 4,TreasureRecord.RingSpell,SpellRecord
- Strng=Left$(SpellRecord.SpellName,20)
- Call Scrn(Strng)
- Endif
- Case 22
- Strng=Chr$(27)+"[11;51H"
- Call Scrn(Strng)
- If TreasureRecord.Recep Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 23
- Strng=Chr$(27)+"[13;55H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- If TreasureRecord.Recep Then
- Strng=Chr$(27)+"[13;55H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(TreasureRecord.RecepMax),2)
- Call Scrn(Strng)
- Endif
- Case 24
- Strng=Chr$(27)+"[15;49H"
- Call Scrn(Strng)
- If TreasureRecord.RecepFileName<>Nul Then
- Strng=TreasureRecord.RecepFileName
- Call Scrn(Strng)
- Else
- Strng=Space$(8)
- Call Scrn(Strng)
- Endif
- Case 25
- Strng=Chr$(27)+"[17;47H"
- Call Scrn(Strng)
- If TreasureRecord.Locked Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 26
- Strng=Chr$(27)+"[19;47H"
- Call Scrn(Strng)
- If TreasureRecord.Edible Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 27
- Strng=Chr$(27)+"[3;71H"
- Call Scrn(Strng)
- If TreasureRecord.Rustable Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 28
- Strng=Chr$(27)+"[5;75H"
- Call Scrn(Strng)
- Strng=Space$(3)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[5;75H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(TreasureRecord.RustPercent),2)
- Call Scrn(Strng)
- Case 29
- Strng=Chr$(27)+"[7;72H"
- Call Scrn(Strng)
- If TreasureRecord.Stealable Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 30
- Strng=Chr$(27)+"[9;76H"
- Call Scrn(Strng)
- Strng=Space$(3)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[9;76H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(TreasureRecord.StealPercent),2)
- Call Scrn(Strng)
- Case 31
- Strng=Chr$(27)+"[11;73H"
- Call Scrn(Strng)
- If TreasureRecord.Launchable Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 32
- Strng=Chr$(27)+"[13;75H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[13;75H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(TreasureRecord.LaunchLoads),2)
- Call Scrn(Strng)
- Case 33
- Strng=Chr$(27)+"[15;74H"
- Call Scrn(Strng)
- If TreasureRecord.LaunchAmmo Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 34
- Strng=Chr$(27)+"[17;70H"
- Call Scrn(Strng)
- If TreasureRecord.Movable Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- End Select
- End Select
- 10031
- Exit Sub
- 10032
- Resume 10031
- End Sub
-
- Sub AddTreasure
- On Local Error Goto 10042
- Treasure.Number=Lof(8)/Len(TreasureRecord)+1
- TreasureRecord.TreasureName=Nul
- TreasureRecord.ShortName=Nul
- TreasureRecord.Weight=False
- TreasureRecord.Gold=False
- TreasureRecord.Spell=False
- TreasureRecord.Plus=False
- TreasureRecord.Coin=False
- TreasureRecord.Keyed=False
- TreasureRecord.Scroll=False
- TreasureRecord.Charges=False
- TreasureRecord.Charges=False
- TreasureRecord.Recep=False
- TreasureRecord.RecepFileName=Nul
- TreasureRecord.RecepMax=False
- TreasureRecord.Type=False
- TreasureRecord.Potion=False
- TreasureRecord.Locked=False
- TreasureRecord.Closed=False
- TreasureRecord.Loadable=False
- TreasureRecord.Ammunition=False
- TreasureRecord.AmmoLoads=False
- TreasureRecord.Invisible=False
- TreasureRecord.Proficiency=False
- TreasureRecord.RingType=False
- TreasureRecord.RingSpell=False
- TreasureRecord.Edible=False
- TreasureRecord.Rustable=False
- TreasureRecord.RustPercent=False
- TreasureRecord.Stealable=False
- TreasureRecord.StealPercent=False
- TreasureRecord.Launchable=False
- TreasureRecord.LaunchLoads=False
- TreasureRecord.LaunchAmmo=False
- TreasureRecord.Movable=False
- Put 8,Treasure.Number,TreasureRecord
- Call DisplayTreasure
- 10041
- Exit Sub
- 10042
- Resume 10041
- End Sub
-
- Sub ShowMonster
- On Local Error Goto 10052
- Select Case TempX
- Case 0
- Strng=Chr$(27)+"[1;37;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[2;10H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[1;33;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[2;2H"
- Call Scrn(Strng)
- Strng="Monster"+Str$(Monster.Number)
- Call Scrn(Strng)
- Case Else
- Strng=Chr$(27)+"[1;37;40m"
- Call Scrn(Strng)
- Select Case TempX
- Case 1
- Strng=Chr$(27)+"[4;2H"
- Call Scrn(Strng)
- Strng=MonsterRecord.MonsterName
- Call Scrn(Strng)
- Case 2
- Strng=Chr$(27)+"[7;2H"
- Call Scrn(Strng)
- Strng=MonsterRecord.PluralName
- Call Scrn(Strng)
- Case 3
- Strng=Chr$(27)+"[9;8H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[9;8H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(MonsterRecord.Level),2)
- Call Scrn(Strng)
- Case 4
- Strng=Chr$(27)+"[11;7H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[11;7H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(MonsterRecord.Hits),2)
- Call Scrn(Strng)
- Case 5
- Strng=Chr$(27)+"[13;13H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[13;13H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(MonsterRecord.Experience),2)
- Call Scrn(Strng)
- Case 6
- For Temp6=1 To 5
- Temp7=MonsterRecord.Treasure(Temp6)
- Strng=Chr$(27)+"["+Mid$(Str$(Temp6+14),2)+";2H"
- Call Scrn(Strng)
- If Temp7>False Then
- Get 8,Temp7,TreasureRecord
- Strng=TreasureRecord.TreasureName
- Call Scrn(Strng)
- Else
- Strng=Space$(30)
- Call Scrn(Strng)
- Endif
- Next
- Case 7
- Strng=Chr$(27)+"[21;10H"
- Call Scrn(Strng)
- If MonsterRecord.Psionic Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 8
- If MonsterRecord.Psionic=False Then
- Strng=Chr$(27)+"[21;22H"
- Call Scrn(Strng)
- Strng="<none>"
- Call Scrn(Strng)
- Strng=Space$(14)
- Call Scrn(Strng)
- Else
- Strng=Chr$(27)+"[21;22H"
- Call Scrn(Strng)
- Get 4,MonsterRecord.PsionicSpell,SpellRecord
- Strng=Left$(SpellRecord.SpellName,20)
- Call Scrn(Strng)
- Endif
- Case 9
- Strng=Chr$(27)+"[3;58H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[3;58H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(MonsterRecord.NumberAppearing),2)
- Call Scrn(Strng)
- Case 10
- Strng=Chr$(27)+"[5;52H"
- Call Scrn(Strng)
- If MonsterRecord.Poison Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 11
- Strng=Chr$(27)+"[5;68H"
- Call Scrn(Strng)
- Strng=Space$(3)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[5;68H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(MonsterRecord.PoisonPercent),2)
- Call Scrn(Strng)
- Case 12
- Strng=Chr$(27)+"[7;57H"
- Call Scrn(Strng)
- If MonsterRecord.LevelDrain Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 13
- Strng=Chr$(27)+"[7;68H"
- Call Scrn(Strng)
- Strng=Space$(3)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[7;68H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(MonsterRecord.DrainPercent),2)
- Call Scrn(Strng)
- Case 14
- Strng=Chr$(27)+"[9;51H"
- Call Scrn(Strng)
- If MonsterRecord.Block Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 15
- Strng=Chr$(27)+"[9;68H"
- Call Scrn(Strng)
- Strng=Space$(3)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[9;68H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(MonsterRecord.BlockPercent),2)
- Call Scrn(Strng)
- Case 16
- Strng=Chr$(27)+"[11;53H"
- Call Scrn(Strng)
- If MonsterRecord.Prevent Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 17
- Strng=Chr$(27)+"[11;68H"
- Call Scrn(Strng)
- Strng=Space$(3)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[11;68H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(MonsterRecord.PreventPercent),2)
- Call Scrn(Strng)
- Case 18
- Strng=Chr$(27)+"[13;52H"
- Call Scrn(Strng)
- If MonsterRecord.Follow Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 19
- Strng=Chr$(27)+"[13;68H"
- Call Scrn(Strng)
- Strng=Space$(3)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[13;68H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(MonsterRecord.FollowPercent),2)
- Call Scrn(Strng)
- Case 20
- Strng=Chr$(27)+"[13;72H"
- Call Scrn(Strng)
- Strng=Space$(3)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[13;72H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(MonsterRecord.Teleport),2)
- Call Scrn(Strng)
- Case 21
- Strng=Chr$(27)+"[15;56H"
- Call Scrn(Strng)
- If MonsterRecord.Spell Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 22
- Strng=Chr$(27)+"[15;68H"
- Call Scrn(Strng)
- Strng=Space$(3)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[15;68H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(MonsterRecord.SpellPercent),2)
- Call Scrn(Strng)
- Case 23
- Strng=Chr$(27)+"[17;51H"
- Call Scrn(Strng)
- If MonsterRecord.Spell<1 Or_
- MonsterRecord.Spell>Lof(4)/Len(SpellRecord) Then
- Strng="<none>"
- Call Scrn(Strng)
- Strng=Space$(14)
- Call Scrn(Strng)
- Else
- Get 4,MonsterRecord.Spell,SpellRecord
- Strng=Left$(SpellRecord.SpellName,20)
- Call Scrn(Strng)
- Endif
- Case 24
- Strng=Chr$(27)+"[19;53H"
- Call Scrn(Strng)
- If MonsterRecord.Magic Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 25
- Strng=Chr$(27)+"[19;65H"
- Call Scrn(Strng)
- If MonsterRecord.Permanent Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 26
- Strng=Chr$(27)+"[20;54H"
- Call Scrn(Strng)
- If MonsterRecord.Equation Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Strng=Chr$(27)+"[1;37;40m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[21;45H"
- Call Scrn(Strng)
- Strng=Space$(35)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[21;45H"
- Call Scrn(Strng)
- Strng=Rtrim$(MonsterRecord.MonsterEquate)
- Strng=Left$(Strng,35)
- Call Scrn(Strng)
- End Select
- End Select
- 10051
- Exit Sub
- 10052
- Resume 10051
- End Sub
-
- Sub AddMonster
- On Local Error Goto 10062
- Monster.Number=Lof(7)/Len(MonsterRecord)+1
- MonsterRecord.MonsterName=Nul
- MonsterRecord.PluralName=Nul
- For Temp6=1 To 5
- MonsterRecord.Treasure(Temp6)=False
- Next
- MonsterRecord.Experience=False
- MonsterRecord.NumberAppearing=False
- MonsterRecord.Level=False
- MonsterRecord.Hits=False
- MonsterRecord.Poison=False
- MonsterRecord.LevelDrain=False
- MonsterRecord.Spell=False
- MonsterRecord.Block=False
- MonsterRecord.Prevent=False
- MonsterRecord.Follow=False
- MonsterRecord.Magic=False
- MonsterRecord.Jail=False
- MonsterRecord.Teleport=False
- MonsterRecord.FollowPercent=False
- MonsterRecord.BlockPercent=False
- MonsterRecord.PreventPercent=False
- MonsterRecord.SpellPercent=False
- MonsterRecord.PoisonPercent=False
- MonsterRecord.DrainPercent=False
- MonsterRecord.Rate=False
- MonsterRecord.RatePercent=False
- MonsterRecord.Permanent=False
- For Temp6=1 To 5
- MonsterRecord.Talk(Temp6)=False
- Next
- MonsterRecord.Psionic=False
- MonsterRecord.PsionicSpell=False
- Put 7,Monster.Number,MonsterRecord
- Call DisplayMonster
- 10061
- Exit Sub
- 10062
- Resume 10061
- End Sub
-
- Sub ShowNonplayer
- On Local Error Goto 10072
- Select Case TempX
- Case 0
- Strng=Chr$(27)+"[1;37;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[2;12H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[1;33;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[2;2H"
- Call Scrn(Strng)
- Strng="Nonplayer"+Str$(Nonplayer.Number)
- Call Scrn(Strng)
- Case Else
- Strng=Chr$(27)+"[1;37;40m"
- Call Scrn(Strng)
- Select Case TempX
- Case 1
- Strng=Chr$(27)+"[4;2H"
- Call Scrn(Strng)
- Strng=MonsterRecord.MonsterName
- Call Scrn(Strng)
- Case 2
- Strng=Chr$(27)+"[7;2H"
- Call Scrn(Strng)
- Strng=MonsterRecord.PluralName
- Call Scrn(Strng)
- Case 3
- Strng=Chr$(27)+"[9;8H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[9;8H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(MonsterRecord.Level),2)
- Call Scrn(Strng)
- Case 4
- Strng=Chr$(27)+"[11;7H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[11;7H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(MonsterRecord.Hits),2)
- Call Scrn(Strng)
- Case 5
- Strng=Chr$(27)+"[13;13H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[13;13H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(MonsterRecord.Experience),2)
- Call Scrn(Strng)
- Case 6
- For Temp6=1 To 5
- Temp7=MonsterRecord.Treasure(Temp6)
- Strng=Chr$(27)+"["+Mid$(Str$(Temp6+14),2)+";2H"
- Call Scrn(Strng)
- If Temp7>False Then
- Get 8,Temp7,TreasureRecord
- Strng=TreasureRecord.TreasureName
- Call Scrn(Strng)
- Else
- Strng=Space$(30)
- Call Scrn(Strng)
- Endif
- Next
- Case 7
- Strng=Chr$(27)+"[21;10H"
- Call Scrn(Strng)
- If MonsterRecord.Psionic Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 8
- If MonsterRecord.Psionic=False Then
- Strng=Chr$(27)+"[21;22H"
- Call Scrn(Strng)
- Strng="<none>"
- Call Scrn(Strng)
- Strng=Space$(14)
- Call Scrn(Strng)
- Else
- Strng=Chr$(27)+"[21;22H"
- Call Scrn(Strng)
- Get 4,MonsterRecord.PsionicSpell,SpellRecord
- Strng=Left$(SpellRecord.SpellName,20)
- Call Scrn(Strng)
- Endif
- Case 9
- Strng=Chr$(27)+"[3;58H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[3;58H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(MonsterRecord.NumberAppearing),2)
- Call Scrn(Strng)
- Case 10
- Strng=Chr$(27)+"[5;52H"
- Call Scrn(Strng)
- If MonsterRecord.Poison Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 11
- Strng=Chr$(27)+"[5;68H"
- Call Scrn(Strng)
- Strng=Space$(3)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[5;68H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(MonsterRecord.PoisonPercent),2)
- Call Scrn(Strng)
- Case 12
- Strng=Chr$(27)+"[7;57H"
- Call Scrn(Strng)
- If MonsterRecord.LevelDrain Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 13
- Strng=Chr$(27)+"[7;68H"
- Call Scrn(Strng)
- Strng=Space$(3)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[7;68H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(MonsterRecord.DrainPercent),2)
- Call Scrn(Strng)
- Case 14
- Strng=Chr$(27)+"[9;51H"
- Call Scrn(Strng)
- If MonsterRecord.Block Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 15
- Strng=Chr$(27)+"[9;68H"
- Call Scrn(Strng)
- Strng=Space$(3)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[9;68H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(MonsterRecord.BlockPercent),2)
- Call Scrn(Strng)
- Case 16
- Strng=Chr$(27)+"[11;53H"
- Call Scrn(Strng)
- If MonsterRecord.Prevent Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 17
- Strng=Chr$(27)+"[11;68H"
- Call Scrn(Strng)
- Strng=Space$(3)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[11;68H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(MonsterRecord.PreventPercent),2)
- Call Scrn(Strng)
- Case 18
- Strng=Chr$(27)+"[13;52H"
- Call Scrn(Strng)
- If MonsterRecord.Follow Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 19
- Strng=Chr$(27)+"[13;68H"
- Call Scrn(Strng)
- Strng=Space$(3)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[13;68H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(MonsterRecord.FollowPercent),2)
- Call Scrn(Strng)
- Case 20
- Strng=Chr$(27)+"[13;72H"
- Call Scrn(Strng)
- Strng=Space$(3)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[13;72H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(MonsterRecord.Teleport),2)
- Call Scrn(Strng)
- Case 21
- Strng=Chr$(27)+"[15;56H"
- Call Scrn(Strng)
- If MonsterRecord.Spell Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 22
- Strng=Chr$(27)+"[15;68H"
- Call Scrn(Strng)
- Strng=Space$(3)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[15;68H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(MonsterRecord.SpellPercent),2)
- Call Scrn(Strng)
- Case 23
- Strng=Chr$(27)+"[17;51H"
- Call Scrn(Strng)
- If MonsterRecord.Spell<1 Or_
- MonsterRecord.Spell>Lof(4)/Len(SpellRecord) Then
- Strng="<none>"
- Call Scrn(Strng)
- Strng=Space$(14)
- Call Scrn(Strng)
- Else
- Get 4,MonsterRecord.Spell,SpellRecord
- Strng=Left$(SpellRecord.SpellName,20)
- Call Scrn(Strng)
- Endif
- End Select
- End Select
- 10071
- Exit Sub
- 10072
- Resume 10071
- End Sub
-
- Sub AddNonplayer
- On Local Error Goto 10082
- Nonplayer.Number=Lof(9)/Len(MonsterRecord)+1
- MonsterRecord.MonsterName=Nul
- MonsterRecord.PluralName=Nul
- For Temp6=1 To 5
- MonsterRecord.Treasure(Temp6)=False
- Next
- MonsterRecord.Experience=False
- MonsterRecord.NumberAppearing=False
- MonsterRecord.Level=False
- MonsterRecord.Hits=False
- MonsterRecord.Poison=False
- MonsterRecord.LevelDrain=False
- MonsterRecord.Spell=False
- MonsterRecord.Block=False
- MonsterRecord.Prevent=False
- MonsterRecord.Follow=False
- MonsterRecord.Magic=True
- MonsterRecord.Jail=False
- MonsterRecord.Teleport=False
- MonsterRecord.FollowPercent=False
- MonsterRecord.BlockPercent=False
- MonsterRecord.PreventPercent=False
- MonsterRecord.SpellPercent=False
- MonsterRecord.PoisonPercent=False
- MonsterRecord.DrainPercent=False
- MonsterRecord.Rate=False
- MonsterRecord.RatePercent=False
- MonsterRecord.Permanent=-2
- For Temp6=1 To 5
- MonsterRecord.Talk(Temp6)=False
- Next
- MonsterRecord.Psionic=False
- MonsterRecord.PsionicSpell=False
- Put 9,Nonplayer.Number,MonsterRecord
- Call DisplayNonplayer
- 10081
- Exit Sub
- 10082
- Resume 10081
- End Sub
-
- Sub ShowSpell
- On Local Error Goto 10092
- Select Case TempX
- Case 0
- Strng=Chr$(27)+"[1;37;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[2;8H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[1;33;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[2;2H"
- Call Scrn(Strng)
- Strng="Spell"+Str$(Spell.Number)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[19;2H"
- Call Scrn(Strng)
- Strng="Class Type Restrictions"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[9;49H"
- Call Scrn(Strng)
- Strng="Ingredient Casting Type"
- Call Scrn(Strng)
- Case Else
- Strng=Chr$(27)+"[1;37;40m"
- Call Scrn(Strng)
- Select Case TempX
- Case 1
- Strng=Chr$(27)+"[4;2H"
- Call Scrn(Strng)
- Strng=SpellRecord.SpellName
- Call Scrn(Strng)
- Case 2
- Strng=Chr$(27)+"[6;16H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[6;16H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(SpellRecord.Teleport),2)
- Call Scrn(Strng)
- Case 3
- Strng=Chr$(27)+"[8;8H"
- Call Scrn(Strng)
- Strng=Space$(2)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[8;8H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(SpellRecord.Level),2)
- Call Scrn(Strng)
- Case 4
- Strng=Chr$(27)+"[8;22H"
- Call Scrn(Strng)
- Strng=Space$(2)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[8;22H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(SpellRecord.SpellType),2)
- Call Scrn(Strng)
- Case 5
- Strng=Chr$(27)+"[10;16H"
- Call Scrn(Strng)
- If SpellRecord.Psionic Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 6
- Strng=Chr$(27)+"[12;20H"
- Call Scrn(Strng)
- Select Case SpellRecord.PsionicMode
- Case 1
- Strng="A"
- Case 2
- Strng="D"
- Case Else
- Strng="?"
- End Select
- Call Scrn(Strng)
- Case 7
- Strng=Chr$(27)+"[13;11H"
- Call Scrn(Strng)
- If SpellRecord.Equation Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Strng=Chr$(27)+"[14;2H"
- Call Scrn(Strng)
- Strng=Space$(40)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[14;2H"
- Call Scrn(Strng)
- Strng=Rtrim$(SpellRecord.SpellEquate)
- Call Scrn(Strng)
- Case 8
- Strng=Chr$(27)+"[16;2H"
- Call Scrn(Strng)
- Strng=Lcase$(Left$(SpellRecord.Chant,78))
- Call Scrn(Strng)
- Case 9
- Strng=Chr$(27)+"[18;2H"
- Call Scrn(Strng)
- Strng=Left$(SpellRecord.Desc,78)
- Call Scrn(Strng)
- Case 10
- Strng=Chr$(27)+"[20;10H"
- Call Scrn(Strng)
- If SpellRecord.ClassType And Class1 Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 11
- Strng=Chr$(27)+"[20;23H"
- Call Scrn(Strng)
- If SpellRecord.ClassType And Class2 Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 12
- Strng=Chr$(27)+"[20;31H"
- Call Scrn(Strng)
- If SpellRecord.ClassType And Class3 Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 13
- Strng=Chr$(27)+"[20;40H"
- Call Scrn(Strng)
- If SpellRecord.ClassType And Class4 Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 14
- Strng=Chr$(27)+"[20;50H"
- Call Scrn(Strng)
- If SpellRecord.ClassType And Class5 Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 15
- Strng=Chr$(27)+"[20;59H"
- Call Scrn(Strng)
- If SpellRecord.ClassType And Class6 Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 16
- Strng=Chr$(27)+"[20;67H"
- Call Scrn(Strng)
- If SpellRecord.ClassType And Class7 Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 17
- Strng=Chr$(27)+"[20;75H"
- Call Scrn(Strng)
- If SpellRecord.ClassType And Class8 Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 18
- For Temp6=1 To 5
- Temp7=SpellRecord.Ingred(Temp6)
- Strng=Chr$(27)+"["+Mid$(Str$(Temp6+3),2)+";49H"
- Call Scrn(Strng)
- If Temp7>False And Temp7<=Lof(8)/Len(TreasureRecord) Then
- Get 8,Temp7,TreasureRecord
- Strng=TreasureRecord.TreasureName
- Call Scrn(Strng)
- Else
- Strng=Space$(30)
- Call Scrn(Strng)
- Endif
- Next
- Case 19
- Strng=Chr$(27)+"[10;61H"
- Call Scrn(Strng)
- If SpellRecord.SpellFlag And Use.Spell.Type Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 20
- Strng=Chr$(27)+"[12;56H"
- Call Scrn(Strng)
- If SpellRecord.SpellFlag And Scroll.Spell.Type Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 21
- Strng=Chr$(27)+"[14;62H"
- Call Scrn(Strng)
- If SpellRecord.SpellFlag And Cast.Spell.Type Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- End Select
- End Select
- 10091
- Exit Sub
- 10092
- Resume 10091
- End Sub
-
- Sub AddSpell
- On Local Error Goto 10102
- Spell.Number=Lof(4)/Len(SpellRecord)+1
- SpellRecord.SpellName=Nul
- SpellRecord.Teleport=False
- SpellRecord.Level=False
- SpellRecord.Chant=Nul
- SpellRecord.SpellType=False
- SpellRecord.Psionic=False
- SpellRecord.PsionicMode=False
- SpellRecord.ClassType=False
- SpellRecord.Desc=Nul
- For Temp6=1 To 5
- SpellRecord.Ingred(Temp6)=False
- Next
- SpellRecord.SpellFlag=False
- SpellRecord.Equation=False
- SpellRecord.SpellEquate=Nul
- Put 4,Spell.Number,SpellRecord
- Call DisplaySpell
- 10101
- Exit Sub
- 10102
- Resume 10101
- End Sub
-
- Sub ShowField
- On Local Error Goto 10112
- If Next.Field Then
- Strng=Chr$(27)+"[1;33;44m"
- Call Scrn(Strng)
- Call DisplayField
- Selection=Next.Field
- Strng=Chr$(27)+"[1;37;41m"
- Call Scrn(Strng)
- Call DisplayField
- Endif
- 10111
- Exit Sub
- 10112
- Resume 10111
- End Sub
-
- Sub DisplayField
- On Local Error Goto 10122
- Strng=Chr$(27)+"["+Mid$(Str$(Array.Data(Selection,1)),2)+";"+_
- Mid$(Str$(Array.Data(Selection,2)),2)+"H"
- Call Scrn(Strng)
- Strng=Title.Data(Selection)
- Call Scrn(Strng)
- 10121
- Exit Sub
- 10122
- Resume 10121
- End Sub
-
- Sub RedisplayField
- On Local Error Goto 10132
- Strng=Chr$(27)+"[1;37;41m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"["+Mid$(Str$(Array.Data(Selection,1)),2)+";"+_
- Mid$(Str$(Array.Data(Selection,2)),2)+"H"
- Call Scrn(Strng)
- Strng=Title.Data(Selection)
- Call Scrn(Strng)
- 10131
- Exit Sub
- 10132
- Resume 10131
- End Sub
-
- Sub MainSelect
- On Local Error Goto 10142
- Next.Field=False
- If TempX$=Chr$(9) Then
- TempX=77
- Endif
- Select Case TempX
- Case 59 To 68
- Next.Field=TempX-58
- TempX$=Chr$(13)
- Case 72
- If Selection>1 Then
- Next.Field=Selection-1
- Endif
- Case 80
- If Selection<10 Then
- Next.Field=Selection+1
- Endif
- Case 15, 75
- If Selection>5 Then
- Next.Field=Selection-5
- Endif
- Case 77
- If Selection<6 Then
- Next.Field=Selection+5
- Endif
- Case 71
- If Selection<>1 Then
- Next.Field=1
- Endif
- Case 79
- If Selection<>10 Then
- Next.Field=10
- Endif
- Case 73
- Select Case Selection
- Case 2 To 5
- Next.Field=1
- Case 7 To 10
- Next.Field=6
- End Select
- Case 81
- Select Case Selection
- Case 1 To 4
- Next.Field=5
- Case 6 To 9
- Next.Field=10
- End Select
- End Select
- Call ShowMainField
- 10141
- Exit Sub
- 10142
- Resume 10141
- End Sub
-
- Sub ShowMainField
- On Local Error Goto 10152
- If Next.Field Then
- If Next.Field<>Selection Then
- Strng=Chr$(27)+"["+Mid$(Str$(Array.Data(Selection,1)),2)+";"+_
- Mid$(Str$(Array.Data(Selection,2)+3),2)+"H"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[1;37;44m"
- Call Scrn(Strng)
- Strng=Left$(Title.Data(Selection),1)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[1;33;44m"
- Call Scrn(Strng)
- Strng=Mid$(Title.Data(Selection),2)
- Strng=Rtrim$(Strng)
- Call Scrn(Strng)
- Selection=Next.Field
- Strng=Chr$(27)+"["+Mid$(Str$(Array.Data(Selection,1)),2)+";"+_
- Mid$(Str$(Array.Data(Selection,2)+3),2)+"H"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[1;37;41m"
- Call Scrn(Strng)
- Strng=Left$(Title.Data(Selection),1)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[1;33;41m"
- Call Scrn(Strng)
- Strng=Mid$(Title.Data(Selection),2)
- Strng=Rtrim$(Strng)
- Call Scrn(Strng)
- Endif
- Endif
- 10151
- Exit Sub
- 10152
- Resume 10151
- End Sub
-
- Sub RoomSelect
- On Local Error Goto 10162
- Next.Field=False
- If TempX$=Chr$(9) Then
- TempX=77
- Endif
- Select Case TempX
- Case 77
- Select Case Selection
- Case 3 To 8, 10 To 12, 14
- Next.Field=Selection+1
- End Select
- Case 15, 75
- Select Case Selection
- Case 4 To 9, 11 To 13, 15
- Next.Field=Selection-1
- End Select
- Case 72
- Select Case Selection
- Case 2
- Next.Field=1
- Case 3
- Next.Field=2
- Case 10
- Next.Field=3
- Case 14
- Next.Field=10
- Case 13
- Next.Field=9
- Case 15
- Next.Field=13
- Case 16
- Next.Field=14
- End Select
- Case 80
- Select Case Selection
- Case 1
- Next.Field=2
- Case 2
- Next.Field=3
- Case 3
- Next.Field=10
- Case 9
- Next.Field=13
- Case 10
- Next.Field=14
- Case 13
- Next.Field=15
- Case 14
- Next.Field=16
- Case 15
- Next.Field=16
- End Select
- Case 71
- If Selection<>1 Then
- Next.Field=1
- Endif
- Case 79
- If Selection<>16 Then
- Next.Field=16
- Endif
- Case 73
- Select Case Selection
- Case 4 To 9
- Next.Field=3
- Case 11 To 13
- Next.Field=10
- Case 15
- Next.Field=14
- End Select
- Case 81
- Select Case Selection
- Case 3 To 8
- Next.Field=9
- Case 10 To 12
- Next.Field=13
- Case 14
- Next.Field=15
- End Select
- End Select
- Call ShowField
- 10161
- Exit Sub
- 10162
- Resume 10161
- End Sub
-
- Sub ObjectSelect
- On Local Error Goto 10172
- Next.Field=False
- If TempX$=Chr$(9) Then
- TempX=77
- Endif
- Select Case TempX
- Case 77
- Select Case Selection
- Case 1
- Next.Field=9
- Case 2, 3
- Next.Field=Selection+9
- Case 4
- Next.Field=5
- Case 6, 7, 8
- Next.Field=Selection+8
- End Select
- Case 15, 75
- Select Case Selection
- Case 5
- Next.Field=4
- Case 9, 10
- Next.Field=1
- Case 11, 12
- Next.Field=Selection-9
- Case 13
- Next.Field=3
- Case 14, 15, 16
- Next.Field=Selection-8
- End Select
- Case 72
- If Selection>1 Then
- Next.Field=Selection-1
- Endif
- Case 80
- If Selection<16 Then
- Next.Field=Selection+1
- Endif
- Case 71
- If Selection<>1 Then
- Next.Field=1
- Endif
- Case 79
- If ObjectRecord.Trap<=1 Then
- If Selection<>15 Then
- Next.Field=15
- Endif
- Else
- If Selection<>16 Then
- Next.Field=16
- Endif
- Endif
- Case 73
- Select Case Selection
- Case 2 To 8
- Next.Field=1
- Case 8
- Next.Field=9
- End Select
- Case 81
- Select Case Selection
- Case 1 To 7
- Next.Field=8
- Case 9 To 16
- If ObjectRecord.Trap<=1 Then
- If Selection<>15 Then
- Next.Field=15
- Endif
- Else
- If Next.Field<>16 Then
- Next.Field=16
- Endif
- Endif
- End Select
- End Select
- If Next.Field=16 Then
- If ObjectRecord.Trap<=1 Then
- Title.Data(16)="<none> "
- Endif
- If ObjectRecord.Trap=2 Then
- Title.Data(16)="Teleport"
- Endif
- If ObjectRecord.Trap=3 Then
- Title.Data(16)="Hits For"
- Endif
- Endif
- If Next.Field=16 Then
- If ObjectRecord.Trap<=1 Then
- Exit Sub
- Endif
- Endif
- Call ShowField
- 10171
- Exit Sub
- 10172
- Resume 10171
- End Sub
-
- Sub TreasureSelect
- On Local Error Goto 10182
- Next.Field=False
- If TempX$=Chr$(9) Then
- TempX=77
- Endif
- Select Case TempX
- Case 77
- Select Case Selection
- Case 1 To 8
- Next.Field=Selection+8
- Case 9 To 25
- Next.Field=Selection+9
- End Select
- Case 15, 75
- Select Case Selection
- Case 9 To 16
- Next.Field=Selection-8
- Case 18 To 34
- Next.Field=Selection-9
- End Select
- Case 72
- If Selection>1 Then
- Next.Field=Selection-1
- Endif
- Case 80
- If Selection<34 Then
- Next.Field=Selection+1
- Endif
- Case 71
- If Selection<>1 Then
- Next.Field=1
- Endif
- Case 79
- If Selection<>34 Then
- Next.Field=34
- Endif
- Case 73
- Select Case Selection
- Case 2 To 8
- Next.Field=1
- Case 10 To 17
- Next.Field=9
- Case 19 To 26
- Next.Field=18
- Case 28 To 34
- Next.Field=27
- End Select
- Case 81
- Select Case Selection
- Case 1 To 7
- Next.Field=8
- Case 9 To 16
- Next.Field=17
- Case 18 To 25
- Next.Field=26
- Case 27 To 33
- Next.Field=34
- End Select
- End Select
- Call ShowField
- 10181
- Exit Sub
- 10182
- Resume 10181
- End Sub
-
- Sub MonsterSelect
- On Local Error Goto 10192
- Next.Field=False
- If TempX$=Chr$(9) Then
- TempX=77
- Endif
- Select Case TempX
- Case 77
- Select Case Selection
- Case 1
- Next.Field=9
- Case 2
- Next.Field=12
- Case 3
- Next.Field=14
- Case 4
- Next.Field=16
- Case 5
- Next.Field=18
- Case 6
- Next.Field=21
- Case 7
- Next.Field=8
- Case 8
- Next.Field=26
- Case 10
- Next.Field=11
- Case 12
- Next.Field=13
- Case 14
- Next.Field=15
- Case 16
- Next.Field=17
- Case 18
- Next.Field=19
- Case 21
- Next.Field=22
- Case 24
- Next.Field=25
- End Select
- Case 15, 75
- Select Case Selection
- Case 8
- Next.Field=7
- Case 9, 10
- Next.Field=1
- Case 11
- Next.Field=10
- Case 12
- Next.Field=2
- Case 13
- Next.Field=12
- Case 15
- Next.Field=14
- Case 14
- Next.Field=3
- Case 16
- Next.Field=4
- Case 17
- Next.Field=16
- Case 18
- Next.Field=5
- Case 19
- Next.Field=18
- Case 21
- Next.Field=6
- Case 22
- Next.Field=21
- Case 25
- Next.Field=24
- Case 26
- Next.Field=8
- End Select
- Case 72
- Select Case Selection
- Case 2 To 10
- Next.Field=Selection-1
- Case 11 To 18
- Next.Field=Selection-2
- Case 19
- Next.Field=20
- Case 20
- Next.Field=17
- Case 21
- Next.Field=18
- Case 22
- Next.Field=19
- Case 23
- Next.Field=21
- Case 24
- Next.Field=23
- Case 25
- Next.Field=23
- Case 26
- Next.Field=24
- End Select
- Case 80
- Select Case Selection
- Case 1 To 9
- Next.Field=Selection+1
- Case 10 To 16
- Next.Field=Selection+2
- Case 17
- Next.Field=20
- Case 18
- Next.Field=21
- Case 19
- Next.Field=22
- Case 20
- Next.Field=19
- Case 21
- Next.Field=23
- Case 22
- Next.Field=23
- Case 23
- Next.Field=24
- Case 24
- Next.Field=26
- Case 25
- Next.Field=26
- End Select
- Case 71
- If Selection<>1 Then
- Next.Field=1
- Endif
- Case 79
- If Selection<>26 Then
- Next.Field=26
- Endif
- Case 73
- Select Case Selection
- Case 2 To 8
- Next.Field=1
- Case 10 To 26
- Next.Field=9
- End Select
- Case 81
- Select Case Selection
- Case 1 To 7
- Next.Field=8
- Case 9 To 25
- Next.Field=26
- End Select
- End Select
- Call ShowField
- 10191
- Exit Sub
- 10192
- Resume 10191
- End Sub
-
- Sub NonplayerSelect
- On Local Error Goto 10202
- Next.Field=False
- If TempX$=Chr$(9) Then
- TempX=77
- Endif
- Select Case TempX
- Case 77
- Select Case Selection
- Case 1
- Next.Field=9
- Case 2
- Next.Field=12
- Case 3
- Next.Field=14
- Case 4
- Next.Field=16
- Case 5
- Next.Field=18
- Case 6
- Next.Field=21
- Case 7
- Next.Field=8
- Case 10
- Next.Field=11
- Case 12
- Next.Field=13
- Case 14
- Next.Field=15
- Case 16
- Next.Field=17
- Case 18
- Next.Field=19
- Case 21
- Next.Field=22
- End Select
- Case 15, 75
- Select Case Selection
- Case 8
- Next.Field=7
- Case 9, 10
- Next.Field=1
- Case 11
- Next.Field=10
- Case 12
- Next.Field=2
- Case 13
- Next.Field=12
- Case 15
- Next.Field=14
- Case 14
- Next.Field=3
- Case 16
- Next.Field=4
- Case 17
- Next.Field=16
- Case 18
- Next.Field=5
- Case 19
- Next.Field=18
- Case 21
- Next.Field=6
- Case 22
- Next.Field=21
- End Select
- Case 72
- Select Case Selection
- Case 2 To 10
- Next.Field=Selection-1
- Case 11 To 18
- Next.Field=Selection-2
- Case 19
- Next.Field=20
- Case 20
- Next.Field=17
- Case 21
- Next.Field=18
- Case 22
- Next.Field=19
- Case 23
- Next.Field=21
- End Select
- Case 80
- Select Case Selection
- Case 1 To 9
- Next.Field=Selection+1
- Case 10 To 16
- Next.Field=Selection+2
- Case 17
- Next.Field=20
- Case 18
- Next.Field=21
- Case 19
- Next.Field=22
- Case 20
- Next.Field=19
- Case 21, 22
- Next.Field=23
- End Select
- Case 71
- If Selection<>1 Then
- Next.Field=1
- Endif
- Case 79
- If Selection<>23 Then
- Next.Field=23
- Endif
- Case 73
- Select Case Selection
- Case 2 To 8
- Next.Field=1
- Case 10 To 23
- Next.Field=9
- End Select
- Case 81
- Select Case Selection
- Case 1 To 7
- Next.Field=8
- Case 9 To 22
- Next.Field=23
- End Select
- End Select
- Call ShowField
- 10201
- Exit Sub
- 10202
- Resume 10201
- End Sub
-
- Sub SpellSelect
- On Local Error Goto 10212
- Next.Field=False
- If TempX$=Chr$(9) Then
- TempX=77
- Endif
- Select Case TempX
- Case 15, 75
- Select Case Selection
- Case 4
- Next.Field=3
- Case 10 To 17
- Next.Field=Selection-1
- Case 18
- Next.Field=1
- Case 19 To 21
- Next.Field=Selection-14
- End Select
- Case 77
- Select Case Selection
- Case 1
- Next.Field=18
- Case 3
- Next.Field=4
- Case 10 To 16
- Next.Field=Selection+1
- Case 5 To 7
- Next.FIeld=Selection+14
- End Select
- Case 72
- Select Case Selection
- Case 2 To 16, 19 To 21
- Next.Field=Selection-1
- Case 17
- Next.Field=21
- End Select
- Case 80
- Select Case Selection
- Case 1 To 16, 18 To 20
- Next.Field=Selection+1
- Case 21
- Next.FIeld=17
- End Select
- Case 71, 73
- Select Case Selection
- Case 2 To 10
- Next.Field=1
- Case 11 To 17
- Next.Field=10
- Case 19 To 21
- Next.Field=18
- End Select
- Case 79, 81
- Select Case Selection
- Case 1 To 9
- Next.Field=10
- Case 10 To 16
- Next.Field=17
- Case 18 To 20
- Next.Field=21
- End Select
- End Select
- Call ShowField
- 10211
- Exit Sub
- 10212
- Resume 10211
- End Sub
-
- Sub UserSelect
- On Local Error Goto 10222
- Next.Field=False
- If TempX$=Chr$(9) Then
- TempX=77
- Endif
- Select Case TempX
- Case 77
- Select Case Selection
- Case 1 To 6
- Next.Field=Selection+17
- Case 7, 8
- Next.Field=Selection+16
- Case 9 To 16
- Next.Field=Selection+1
- Case 17
- Next.Field=27
- End Select
- Case 15, 75
- Select Case Selection
- Case 10 To 17
- Next.Field=Selection-1
- Case 18 To 22
- Next.Field=Selection-17
- Case 23 To 24
- Next.Field=Selection-16
- Case 27
- Next.Field=17
- End Select
- Case 72
- If Selection>1 Then
- Next.Field=Selection-1
- Endif
- Case 80
- If Selection<27 Then
- Next.Field=Selection+1
- Endif
- Case 71
- If Selection<>1 Then
- Next.Field=1
- Endif
- Case 79
- If Selection<>27 Then
- Next.Field=27
- Endif
- Case 73
- Select Case Selection
- Case 2 To 17
- Next.Field=1
- Case 19 To 27
- Next.Field=18
- End Select
- Case 81
- Select Case Selection
- Case 1 To 16
- Next.Field=17
- Case 17 To 26
- Next.Field=27
- End Select
- End Select
- Call ShowField
- 10221
- Exit Sub
- 10222
- Resume 10221
- End Sub
-
- Sub ShowAction
- On Local Error Goto 10232
- Select Case TempX
- Case 0
- Strng=Chr$(27)+"[1;37;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[3;2H"
- Call Scrn(Strng)
- Strng="Triggers"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[3;50H"
- Call Scrn(Strng)
- Strng="Results"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[2;17H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[1;33;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[2;2H"
- Call Scrn(Strng)
- Strng="Action for Room"+Str$(Room.Action)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[7;2H"
- Call Scrn(Strng)
- Strng="and/or"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[1;37;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[10;67H"
- Call Scrn(Strng)
- Strng="(W/S/A/M)"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[13;50H"
- Call Scrn(Strng)
- Strng="Fatigue/Vitality"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[17;2H"
- Call Scrn(Strng)
- Strng="Direction Restriction"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[20;2H"
- Call Scrn(Strng)
- Strng="All results are from entering a room unless indicated by a trigger"
- Call Scrn(Strng)
- Case Else
- Strng=Chr$(27)+"[1;37;40m"
- Call Scrn(Strng)
- Select Case TempX
- Case 1
- Strng=Chr$(27)+"[4;17H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[4;17H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(RoomRecord.MonsterTrigger),2)
- Call Scrn(Strng)
- Case 2
- Strng=Chr$(27)+"[6;18H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[6;18H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(RoomRecord.MonsterTalk),2)
- Call Scrn(Strng)
- Case 3
- Strng=Chr$(27)+"[8;14H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[8;14H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(RoomRecord.Teleport),2)
- Call Scrn(Strng)
- Case 4
- Strng=Chr$(27)+"[11;2H"
- Call Scrn(Strng)
- If RoomRecord.SpellTrigger<1 Or_
- RoomRecord.SpellTrigger>Lof(4)/Len(SpellRecord) Then
- Strng="<none>"
- Call Scrn(Strng)
- Strng=Space$(24)
- Call Scrn(Strng)
- Else
- Get 4,RoomRecord.SpellTrigger,SpellRecord
- Strng=Left$(SpellRecord.SpellName,30)
- Call Scrn(Strng)
- Endif
- Case 5
- Strng=Chr$(27)+"[13;14H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[13;14H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(Abs(RoomRecord.Level)),2)
- Call Scrn(Strng)
- Case 6
- Strng=Chr$(27)+"[15;16H"
- Call Scrn(Strng)
- Strng=Space$(3)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[15;16H"
- Call Scrn(Strng)
- Strng="n/a"
- If RoomRecord.Level<False Then
- Strng="min"
- Endif
- If RoomRecord.Level>False Then
- Strng="max"
- Endif
- Call Scrn(Strng)
- Case 7
- Strng=Chr$(27)+"[18;8H"
- Call Scrn(Strng)
- If RoomRecord.Restrictions And Direction1 Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 8
- Strng=Chr$(27)+"[18;15H"
- Call Scrn(Strng)
- If RoomRecord.Restrictions And Direction2 Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 9
- Strng=Chr$(27)+"[18;23H"
- Call Scrn(Strng)
- If RoomRecord.Restrictions And Direction3 Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 10
- Strng=Chr$(27)+"[18;30H"
- Call Scrn(Strng)
- If RoomRecord.Restrictions And Direction4 Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 11
- Strng=Chr$(27)+"[18;36H"
- Call Scrn(Strng)
- If RoomRecord.Restrictions And Direction5 Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 12
- Strng=Chr$(27)+"[18;41H"
- Call Scrn(Strng)
- If RoomRecord.Restrictions And Direction6 Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 13
- Strng=Chr$(27)+"[18;48H"
- Call Scrn(Strng)
- If RoomRecord.Restrictions And Direction7 Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 14
- Strng=Chr$(27)+"[18;53H"
- Call Scrn(Strng)
- If RoomRecord.Restrictions And Direction8 Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 15
- Strng=Chr$(27)+"[18;58H"
- Call Scrn(Strng)
- If RoomRecord.Restrictions And Direction9 Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 16
- Strng=Chr$(27)+"[18;63H"
- Call Scrn(Strng)
- If RoomRecord.Restrictions And Direction10 Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 17
- Strng=Chr$(27)+"[18;68H"
- Call Scrn(Strng)
- If RoomRecord.Restrictions And Direction11 Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 18
- Strng=Chr$(27)+"[18;76H"
- Call Scrn(Strng)
- If RoomRecord.Restrictions And Direction12 Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 19
- Strng=Chr$(27)+"[4;62H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[4;62H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(RoomRecord.HealthRate),2)
- Call Scrn(Strng)
- Case 20
- Strng=Chr$(27)+"[6;65H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[6;65H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(RoomRecord.EncounterRate),2)
- Call Scrn(Strng)
- Case 21
- Strng=Chr$(27)+"[8;57H"
- Call Scrn(Strng)
- If RoomRecord.Fumble Then
- Call Scrn("Y")
- Else
- Call Scrn("N")
- Endif
- Case 22
- Strng=Chr$(27)+"[10;77H"
- Call Scrn(Strng)
- Strng="?"
- Select Case RoomRecord.Inventory
- Case 1
- Strng="W"
- Case 2
- Strng="S"
- Case 3
- Strng="A"
- Case 4
- Strng="M"
- End Select
- Call Scrn(Strng)
- Case 23
- Strng=Chr$(27)+"[12;64H"
- Call Scrn(Strng)
- Select Case RoomRecord.HitPoints
- Case Is<False
- Strng="V"
- Case Is>False
- Strng="F"
- Case False
- Strng="?"
- End Select
- Call Scrn(Strng)
- Case 24
- Strng=Chr$(27)+"[13;67H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[13;67H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(Abs(RoomRecord.HitPoints)),2)
- Call Scrn(Strng)
- Case 25
- Strng=Chr$(27)+"[15;60H"
- Call Scrn(Strng)
- Strng=Space$(4)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[15;60H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(RoomRecord.RustRate),2,4)
- Call Scrn(Strng)
- Case 26
- Strng=Chr$(27)+"[15;76H"
- Call Scrn(Strng)
- Strng=Space$(4)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[15;76H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(RoomRecord.StealRate),2,4)
- Call Scrn(Strng)
- End Select
- End Select
- 10231
- Exit Sub
- 10232
- Resume 10231
- End Sub
-
- Sub ActionSelect
- On Local Error Goto 10242
- Next.Field=False
- If TempX$=Chr$(9) Then
- TempX=77
- Endif
- Select Case TempX
- Case 77
- Select Case Selection
- Case 1 To 5
- Next.Field=Selection+18
- Case 6
- Next.Field=25
- Case 7 To 17
- Next.Field=Selection+1
- Case 25
- Next.Field=26
- End Select
- Case 15, 75
- Select Case Selection
- Case 8 To 18
- Next.Field=Selection-1
- Case 19 To 23
- Next.Field=Selection-18
- Case 24, 25
- Next.Field=Selection-19
- Case 26
- Next.Field=25
- End Select
- Case 72
- Select Case Selection
- Case 2 To 7, 20 To 25
- Next.Field=Selection-1
- Case 18
- Next.Field=26
- Case 26
- Next.Field=24
- End Select
- Case 80
- Select Case Selection
- Case 1 To 6, 19 To 24
- Next.Field=Selection+1
- Case 25, 26
- Next.Field=18
- End Select
- Case 71
- If Selection<>1 Then
- Next.Field=1
- Endif
- Case 79
- If Selection<>18 Then
- Next.Field=18
- Endif
- Case 73
- Select Case Selection
- Case 2 To 7
- Next.Field=1
- Case 18
- Next.Field=19
- End Select
- Case 81
- Select Case Selection
- Case 1 To 6
- Next.Field=7
- Case 19 To 26
- Next.Field=18
- End Select
- End Select
- Call ShowField
- 10241
- Exit Sub
- 10242
- Resume 10241
- End Sub
-
- Sub RoomLinkSelect
- On Local Error Goto 10252
- Next.Field=False
- If TempX$=Chr$(9) Then
- TempX=9
- Endif
- Select Case TempX
- Case 77
- Select Case Selection
- Case 1
- Next.Field=8
- Case 3
- Next.Field=9
- Case 4
- Next.Field=2
- Case 10
- Next.Field=3
- Case 11
- Next.Field=1
- End Select
- Case 75
- Select Case Selection
- Case 1
- Next.Field=11
- Case 2
- Next.Field=4
- Case 3
- Next.Field=10
- Case 8
- Next.Field=1
- Case 9
- Next.Field=3
- End Select
- Case 80
- Select Case Selection
- Case 1
- Next.Field=3
- Case 2
- Next.Field=9
- Case 4
- Next.Field=10
- Case 5, 6
- Next.Field=Selection+1
- Case 8
- Next.Field=2
- Case 11
- Next.Field=4
- End Select
- Case 72
- Select Case Selection
- Case 2
- Next.Field=8
- Case 3
- Next.Field=1
- Case 4
- Next.Field=11
- Case 6, 7
- Next.Field=Selection-1
- Case 9
- Next.Field=2
- Case 10
- Next.Field=4
- End Select
- Case 9
- Select Case Selection
- Case 1, 8, 11
- Next.Field=5
- Case 2, 4
- Next.Field=6
- Case 3, 9, 10
- Next.Field=7
- End Select
- Case 15
- Select Case Selection
- Case 5
- Next.Field=8
- Case 6
- Next.Field=2
- Case 7
- Next.Field=9
- End Select
- End Select
- Call ShowField
- 10251
- Exit Sub
- 10252
- Resume 10251
- End Sub
-
- Sub MonclassSelect
- On Local Error Goto 10262
- Next.Field=False
- Select Case TempX
- Case 72
- If Selection>1 Then
- Next.Field=Selection-1
- Endif
- Case 80
- If Selection<10 Then
- Next.Field=Selection+1
- Endif
- Case 71
- If Selection<>1 Then
- Next.Field=1
- Endif
- Case 79
- If Selection<>10 Then
- Next.Field=10
- Endif
- Case 73
- If Selection<>1 Then
- Next.Field=1
- Endif
- Case 81
- If Selection<>10 Then
- Next.Field=10
- Endif
- End Select
- If Next.Field Then
- Strng=Chr$(27)+"[1;33;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"["+Mid$(Str$(Selection*2+1),2)+";2H"
- Call Scrn(Strng)
- Strng="Monster"+Str$(Selection)
- Call Scrn(Strng)
- Selection=Next.Field
- Call MonclassField
- Endif
- 10261
- Exit Sub
- 10262
- Resume 10261
- End Sub
-
- Sub MonclassField
- On Local Error Goto 10272
- Strng=Chr$(27)+"[1;37;41m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"["+Mid$(Str$(Selection*2+1),2)+";2H"
- Call Scrn(Strng)
- Strng="Monster"+Str$(Selection)
- Call Scrn(Strng)
- 10271
- Exit Sub
- 10272
- Resume 10271
- End Sub
-
- Sub ShowUser
- On Local Error Goto 10282
- Select Case TempX
- Case 0
- Strng=Chr$(27)+"[1;33;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[2;6H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[2;2H"
- Call Scrn(Strng)
- Strng="User"+Str$(User.Number)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[1;37;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[12;7H"
- Call Scrn(Strng)
- Strng="(F/M/T/C/P/R/D/L/A/*)"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[16;20H"
- Call Scrn(Strng)
- Strng="(B/P/S/T)"
- Call Scrn(Strng)
- Case Else
- Strng=Chr$(27)+"[1;37;40m"
- Call Scrn(Strng)
- Select Case TempX
- Case 1
- Strng=Chr$(27)+"[4;2H"
- Call Scrn(Strng)
- Strng=UserRecord.CodeName
- Call Decrypt(Strng)
- Strng=Lcase$(Strng)
- Mid$(Strng,1,1)=Ucase$(Mid$(Strng,1,1))
- Call Scrn(Strng)
- Case 2
- Strng=Chr$(27)+"[6;2H"
- Call Scrn(Strng)
- Strng=UserRecord.PassWord
- Call Decrypt(Strng)
- Strng=Lcase$(Strng)
- Call Scrn(Strng)
- Case 3
- Strng=Chr$(27)+"[8;2H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[8;2H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(UserRecord.Level),2)
- Call Scrn(Strng)
- Case 4
- Strng=Chr$(27)+"[10;2H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[10;2H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(UserRecord.Room),2)
- Call Scrn(Strng)
- Case 5
- Strng=Chr$(27)+"[11;7H"
- Call Scrn(Strng)
- If UserRecord.Race<1 Then
- UserRecord.Race=1
- Endif
- Strng=Space$(10)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[11;7H"
- Call Scrn(Strng)
- Strng=Rtrim$(Race(UserRecord.Race))
- Call Scrn(Strng)
- Case 6
- Strng=Chr$(27)+"[12;29H"
- Call Scrn(Strng)
- Select Case UserRecord.ClassType
- Case 1
- Strng="F"
- Case 2
- Strng="M"
- Case 3
- Strng="T"
- Case 4
- Strng="C"
- Case 5
- Strng="P"
- Case 6
- Strng="R"
- Case 7
- Strng="D"
- Case 8
- Strng="L"
- Case 9
- Strng="A"
- Case 10
- Strng="*"
- Case Else
- Strng="?"
- End Select
- Call Scrn(Strng)
- Case 7
- Strng=Chr$(27)+"[13;12H"
- Call Scrn(Strng)
- Strng=Space$(7)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[13;12H"
- Call Scrn(Strng)
- Select Case UserRecord.Align1
- Case Is<False
- Strng="Good"
- Case Is>False
- Strng="Evil"
- Case False
- Strng="Neutral"
- End Select
- Call Scrn(Strng)
- Strng=Chr$(27)+"[13;20H"
- Call Scrn(Strng)
- Strng=Space$(7)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[13;20H"
- Call Scrn(Strng)
- Select Case UserRecord.Align2
- Case Is<False
- Strng="Lawful"
- Case Is>False
- Strng="Chaotic"
- Case Else
- Strng="Neutral"
- End Select
- Call Scrn(Strng)
- Case 8
- Strng=Chr$(27)+"[15;2H"
- Call Scrn(Strng)
- Strng=UserRecord.ClassName
- Call Decrypt(Strng)
- Call Scrn(Strng)
- Case 9
- Strng=Chr$(27)+"[16;30H"
- Call Scrn(Strng)
- Select Case UserRecord.Proficiency
- Case 1
- Strng="B"
- Case 2
- Strng="P"
- Case 3
- Strng="S"
- Case 4
- Strng="T"
- Case Else
- Strng="?"
- End Select
- Call Scrn(Strng)
- Case 10
- Strng=Chr$(27)+"[17;7H"
- Call Scrn(Strng)
- Strng=Space$(3)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[17;7H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(UserRecord.Weapons(1)),2)
- Call Scrn(Strng)
- Case 11
- Strng=Chr$(27)+"[17;17H"
- Call Scrn(Strng)
- Strng=Space$(3)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[17;17H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(UserRecord.Weapons(2)),2)
- Call Scrn(Strng)
- Case 12
- Strng=Chr$(27)+"[17;27H"
- Call Scrn(Strng)
- Strng=Space$(3)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[17;27H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(UserRecord.Weapons(3)),2)
- Call Scrn(Strng)
- Case 13
- Strng=Chr$(27)+"[17;41H"
- Call Scrn(Strng)
- Strng=Space$(3)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[17;41H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(UserRecord.Weapons(4)),2)
- Call Scrn(Strng)
- Case 14
- Strng=Chr$(27)+"[19;10H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[19;10H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(UserRecord.FatigueMax),2)
- Call Scrn(Strng)
- Case 15
- Strng=Chr$(27)+"[19;25H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[19;25H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(UserRecord.VitalityMax),2)
- Call Scrn(Strng)
- Case 16
- Strng=Chr$(27)+"[19;37H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[19;37H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(UserRecord.MagicMax),2)
- Call Scrn(Strng)
- Case 17
- Strng=Chr$(27)+"[21;17H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[21;17H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(UserRecord.PsionicMax),2)
- Call Scrn(Strng)
- Case 18
- Strng=Chr$(27)+"[3;54H"
- Call Scrn(Strng)
- Strng=Space$(22)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[3;54H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(UserRecord.Experience),2)
- Call Scrn(Strng)
- Case 19
- Strng=Chr$(27)+"[5;55H"
- Call Scrn(Strng)
- Strng=Space$(22)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[5;55H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(UserRecord.Gold),2)
- Call Scrn(Strng)
- Case 20
- Strng=Chr$(27)+"[7;62H"
- Call Scrn(Strng)
- Strng=Space$(3)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[7;62H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(UserRecord.NumCalls),2)
- Call Scrn(Strng)
- Case 21
- Strng=Chr$(27)+"[9;59H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[9;59H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(UserRecord.Stats(1)),2)
- Call Scrn(Strng)
- Case 22
- Strng=Chr$(27)+"[11;63H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[11;63H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(UserRecord.Stats(2)),2)
- Call Scrn(Strng)
- Case 23
- Strng=Chr$(27)+"[13;57H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[13;57H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(UserRecord.Stats(3)),2)
- Call Scrn(Strng)
- Case 24
- Strng=Chr$(27)+"[15;60H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[15;60H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(UserRecord.Stats(4)),2)
- Call Scrn(Strng)
- Case 25
- Strng=Chr$(27)+"[17;63H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[17;63H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(UserRecord.Stats(5)),2)
- Call Scrn(Strng)
- Case 26
- Strng=Chr$(27)+"[19;56H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[19;56H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(UserRecord.Stats(6)),2)
- Call Scrn(Strng)
- Case 27
- Strng=Chr$(27)+"[21;59H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[21;59H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(UserRecord.Stats(7)),2)
- Call Scrn(Strng)
- End Select
- End Select
- 10281
- Exit Sub
- 10282
- Resume 10281
- End Sub
-
- Sub ShowDeletedUser
- On Local Error Goto 10292
- Strng=Chr$(27)+"[1;37;40m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[4;2H"
- Call Scrn(Strng)
- Strng=Space$(30)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[4;2H"
- Call Scrn(Strng)
- Strng=Deleted$
- Call Scrn(Strng)
- Strng=Chr$(27)+"[6;2H"
- Call Scrn(Strng)
- Strng=Space$(20)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[6;2H"
- Call Scrn(Strng)
- Strng=Deleted$
- Call Scrn(Strng)
- Strng=Chr$(27)+"[8;2H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[10;2H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[1;37;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[12;7H"
- Call Scrn(Strng)
- Strng="(F/M/T/C/P/R/D/L/A/*)"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[1;37;40m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[11;7H"
- Call Scrn(Strng)
- Strng=Space$(10)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[12;29H"
- Call Scrn(Strng)
- Strng=" "
- Call Scrn(Strng)
- Strng=Chr$(27)+"[13;12H"
- Call Scrn(Strng)
- Strng=Space$(7)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[13;20H"
- Call Scrn(Strng)
- Strng=Space$(7)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[15;2H"
- Call Scrn(Strng)
- Strng=Space$(20)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[15;2H"
- Call Scrn(Strng)
- Strng=Deleted$
- Call Scrn(Strng)
- Strng=Chr$(27)+"[1;37;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[16;20H"
- Call Scrn(Strng)
- Strng="(B/P/S/T)"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[1;37;40m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[16;30H"
- Call Scrn(Strng)
- Strng=" "
- Call Scrn(Strng)
- Strng=Chr$(27)+"[17;7H"
- Call Scrn(Strng)
- Strng=Space$(3)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[17;17H"
- Call Scrn(Strng)
- Strng=Space$(3)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[17;27H"
- Call Scrn(Strng)
- Strng=Space$(3)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[17;41H"
- Call Scrn(Strng)
- Strng=Space$(3)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[19;10H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[19;25H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[19;37H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[21;17H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[3;54H"
- Call Scrn(Strng)
- Strng=Space$(22)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[5;55H"
- Call Scrn(Strng)
- Strng=Space$(22)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[7;62H"
- Call Scrn(Strng)
- Strng=" "
- Call Scrn(Strng)
- Strng=Chr$(27)+"[9;59H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[11;63H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[13;57H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[15;60H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[17;63H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[19;56H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[21;59H"
- Call Scrn(Strng)
- Strng=Space$(5)
- Call Scrn(Strng)
- 10291
- Exit Sub
- 10292
- Resume 10291
- End Sub
-
- Sub AddUser
- On Local Error Goto 10302
- User.Number=Lof(3)/Len(UserRecord)+1
- Strng=Deleted$
- Call Valid(Strng,30)
- Call Encrypt(Strng,True)
- UserRecord.CodeName=Strng
- Strng=Deleted$
- Call Valid(Strng,20)
- Call Encrypt(Strng,False)
- UserRecord.PassWord=Strng
- Strng=Deleted$
- Call Valid(Strng,20)
- Call Encrypt(Strng,True)
- UserRecord.ClassName=Strng
- UserRecord.ClassType=False
- For Temp6=1 To 7
- UserRecord.Stats(Temp6)=False
- Next
- For Temp6=1 To 4
- UserRecord.Weapons(Temp6)=False
- Next
- UserRecord.Room=False
- UserRecord.Level=False
- UserRecord.Experience=False
- UserRecord.Gold=False
- UserRecord.Borrow=False
- UserRecord.NumCalls=False
- UserRecord.Fatigue=False
- UserRecord.FatigueMax=False
- UserRecord.Vitality=False
- UserRecord.VitalityMax=False
- UserRecord.Magic=False
- UserRecord.MagicMax=False
- UserRecord.Psionic=False
- UserRecord.PsionicMax=False
- UserRecord.Poison=False
- UserRecord.Invisible=False
- UserRecord.Race=False
- UserRecord.Proficiency=False
- UserRecord.Bank=False
- UserRecord.PlayersKilled=False
- UserRecord.MonstersKilled=False
- UserRecord.Brief=False
- Strng=Date$
- Call Valid(Strng,10)
- Call Encrypt(Strng,True)
- UserRecord.DateOn=Strng
- UserRecord.Align1=False
- UserRecord.Align2=False
- UserRecord.Flags=False
- UserRecord.MaxCalls=False
- UserRecord.FromHour=False
- UserRecord.FromMin=False
- UserRecord.ToHour=False
- UserRecord.ToMin=False
- Put 3,User.Number,UserRecord
- Call DisplayUser
- 10301
- Exit Sub
- 10302
- Resume 10301
- End Sub
-
- Sub StatusLine
- On Local Error Goto 10312
- Temp1$=Strng
- Temp2$=Out2
- Strng=Chr$(27)+"[1;33;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[23;2H"
- Call Scrn(Strng)
- Strng=Space$(78)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[23;2H"
- Call Scrn(Strng)
- Call Scrn(Temp1$)
- Strng=Chr$(27)+"[24;2H"
- Call Scrn(Strng)
- Strng=Space$(78)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[24;2H"
- Call Scrn(Strng)
- Call Scrn(Temp2$)
- 10311
- Exit Sub
- 10312
- Resume 10311
- End Sub
-
- Sub AddRoom
- On Local Error Goto 10322
- Room.Number=Lof(5)/Len(RoomRecord)+1
- RoomRecord.ShortDesc=Nul
- RoomRecord.Restrictions=False
- RoomRecord.MonsterClass=False
- RoomRecord.SpellTrigger=False
- RoomRecord.MonsterTrigger=False
- RoomRecord.HealthRate=False
- RoomRecord.EncounterRate=False
- RoomRecord.HitPoints=False
- RoomRecord.Inventory=False
- RoomRecord.MonsterTalk=False
- RoomRecord.Fumble=False
- RoomRecord.Level=False
- RoomRecord.Teleport=False
- RoomRecord.RustRate=False
- RoomRecord.StealRate=False
- For Temp6=1 To 4
- RoomRecord.LongDesc(Temp6)=Nul
- Next
- For Temp6=1 To 11
- RoomRecord.Direct(Temp6)=False
- Next
- For Temp6=1 To 10
- RoomRecord.Object(Temp6)=False
- RoomRecord.ObjCharges(Temp6)=False
- RoomRecord.Treasure(Temp6)=False
- RoomRecord.TreCharges(Temp6)=False
- RoomRecord.Flags(Temp6)=False
- Next
- Put 5,Room.Number,RoomRecord
- Call DisplayRoom
- 10321
- Exit Sub
- 10322
- Resume 10321
- End Sub
-
- Sub AddAction
- On Local Error Goto 10332
- Room.Number=Lof(5)/Len(RoomRecord)+1
- RoomRecord.ShortDesc=Nul
- RoomRecord.Restrictions=False
- RoomRecord.MonsterClass=False
- RoomRecord.SpellTrigger=False
- RoomRecord.MonsterTrigger=False
- RoomRecord.HealthRate=False
- RoomRecord.EncounterRate=False
- RoomRecord.HitPoints=False
- RoomRecord.Inventory=False
- RoomRecord.MonsterTalk=False
- RoomRecord.Fumble=False
- RoomRecord.Level=False
- RoomRecord.Teleport=False
- RoomRecord.RustRate=False
- RoomRecord.StealRate=False
- For Temp6=1 To 4
- RoomRecord.LongDesc(Temp6)=Nul
- Next
- For Temp6=1 To 11
- RoomRecord.Direct(Temp6)=False
- Next
- For Temp6=1 To 10
- RoomRecord.Object(Temp6)=False
- RoomRecord.ObjCharges(Temp6)=False
- RoomRecord.Treasure(Temp6)=False
- RoomRecord.TreCharges(Temp6)=False
- RoomRecord.Flags(Temp6)=False
- Next
- Put 5,Room.Number,RoomRecord
- Call DisplayAction
- 10331
- Exit Sub
- 10332
- Resume 10331
- End Sub
-
- Sub ShowRoomObject
- On Local Error Goto 10352
- Call ClearSubstats
- TempD=True
- Strng=Chr$(27)+"[1;33;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[16;45H"
- Call Scrn(Strng)
- Strng="Object Number"+Str$(Object.Number)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[1;37;40m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[2;33H"
- Call Scrn(Strng)
- Strng=" "
- Call Scrn(Strng)
- Strng=Chr$(27)+"[2;33H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(Room.Objects),2)
- Call Scrn(Strng)
- If Object.Index=False Then
- Exit Sub
- Endif
- Get 6,Object.Index,ObjectRecord
- Strng=Chr$(27)+"[1;37;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[17;34H"
- Call Scrn(Strng)
- Strng="Name:"
- Call Scrn(Strng)
- Strng=Left$(ObjectRecord.ObjectName,20)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[18;34H"
- Call Scrn(Strng)
- Strng="Identifier:"
- Call Scrn(Strng)
- Strng=Left$(ObjectRecord.ShortName,14)
- Strng=Lcase$(Strng)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[19;34H"
- Call Scrn(Strng)
- Strng="Room Link:"
- Call Scrn(Strng)
- Strng=Mid$(Str$(ObjectRecord.RoomLink),2)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[20;34H"
- Call Scrn(Strng)
- Strng="Permanent:"
- Call Scrn(Strng)
- If ObjectRecord.Permanent Then
- Call Scrn("Yes")
- Else
- Call Scrn("No")
- Endif
- Strng=Chr$(27)+"[21;34H"
- Call Scrn(Strng)
- Strng="Hidden:"
- Call Scrn(Strng)
- If RoomRecord.Flags(Room.Index)=Hidden.Object Then
- Call Scrn("Yes")
- Else
- Call Scrn("No")
- Endif
- Strng=Chr$(27)+"[22;34H"
- Call Scrn(Strng)
- Strng="Magically Hidden:"
- Call Scrn(Strng)
- If RoomRecord.Flags(Room.Index)=Magically.Hidden Then
- Call Scrn("Yes")
- Else
- Call Scrn("No")
- Endif
- Strng=Chr$(27)+"[17;60H"
- Call Scrn(Strng)
- Strng="Hidden:"
- Call Scrn(Strng)
- If ObjectRecord.Hidden Then
- Call Scrn("Yes")
- Else
- Call Scrn("No")
- Endif
- Strng=Chr$(27)+"[18;60H"
- Call Scrn(Strng)
- Strng="Invisible:"
- Call Scrn(Strng)
- If ObjectRecord.Invisible Then
- Call Scrn("Yes")
- Else
- Call Scrn("No")
- Endif
- Strng=Chr$(27)+"[19;60H"
- Call Scrn(Strng)
- Strng="Trapped:"
- Call Scrn(Strng)
- If ObjectRecord.JailTrap Then
- Call Scrn("Yes")
- Else
- Call Scrn("No")
- Endif
- Strng=Chr$(27)+"[20;60H"
- Call Scrn(Strng)
- Strng="Locked:"
- Call Scrn(Strng)
- If ObjectRecord.DoorLock>1 Then
- Call Scrn("Yes")
- Else
- Call Scrn("No")
- Endif
- Strng=Chr$(27)+"[21;60H"
- Call Scrn(Strng)
- Strng="Relocks:"
- Call Scrn(Strng)
- If ObjectRecord.Relocks Then
- Call Scrn("Yes")
- Else
- Call Scrn("No")
- Endif
- Strng=Chr$(27)+"[22;60H"
- Call Scrn(Strng)
- Strng="Key Number:"
- Call Scrn(Strng)
- Strng=Mid$(Str$(ObjectRecord.Keyed),2)
- Call Scrn(Strng)
- 10351
- Exit Sub
- 10352
- Resume 10351
- End Sub
-
- Sub ShowRoomTreasure
- On Local Error Goto 10362
- Call ClearSubstats
- TempD=True
- Strng=Chr$(27)+"[1;33;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[16;45H"
- Call Scrn(Strng)
- Strng="Treasure Number"+Str$(Treasure.Number)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[1;37;40m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[2;22H"
- Call Scrn(Strng)
- Strng=" "
- Call Scrn(Strng)
- Strng=Chr$(27)+"[2;22H"
- Call Scrn(Strng)
- Strng=Mid$(Str$(Room.Treasure),2)
- Call Scrn(Strng)
- If Treasure.Index=False Then
- Exit Sub
- Endif
- Get 8,Treasure.Index,TreasureRecord
- Strng=Chr$(27)+"[1;37;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[17;34H"
- Call Scrn(Strng)
- Strng="Name:"
- Call Scrn(Strng)
- Strng=Left$(TreasureRecord.TreasureName,20)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[18;34H"
- Call Scrn(Strng)
- Strng="Identifier:"
- Call Scrn(Strng)
- Strng=Left$(TreasureRecord.ShortName,14)
- Strng=Lcase$(Strng)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[19;34H"
- Call Scrn(Strng)
- Strng="Weight:"
- Call Scrn(Strng)
- Strng=Mid$(Str$(TreasureRecord.Weight),2)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[20;34H"
- Call Scrn(Strng)
- Strng="Value:"
- Call Scrn(Strng)
- Strng=Mid$(Str$(TreasureRecord.Gold),2)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[21;34H"
- Call Scrn(Strng)
- Strng="Hits:"
- Call Scrn(Strng)
- Strng=Mid$(Str$(Abs(TreasureRecord.Plus)),2)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[22;34H"
- Call Scrn(Strng)
- Strng="Strikes:"
- Call Scrn(Strng)
- Strng=Mid$(Str$(TreasureRecord.Charges),2)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[17;60H"
- Call Scrn(Strng)
- Strng="Coins:"
- Call Scrn(Strng)
- If TreasureRecord.Coin Then
- Call Scrn("Yes")
- Else
- Call Scrn("No")
- Endif
- Strng=Chr$(27)+"[18;60H"
- Call Scrn(Strng)
- Strng="Potion:"
- Call Scrn(Strng)
- If TreasureRecord.Potion Then
- Call Scrn("Yes")
- Else
- Call Scrn("No")
- Endif
- Strng=Chr$(27)+"[19;60H"
- Call Scrn(Strng)
- Strng="Scroll:"
- Call Scrn(Strng)
- If TreasureRecord.Scroll Then
- Call Scrn("Yes")
- Else
- Call Scrn("No")
- Endif
- Strng=Chr$(27)+"[20;60H"
- Call Scrn(Strng)
- Strng="Invisible:"
- Call Scrn(Strng)
- If TreasureRecord.Invisible Then
- Call Scrn("Yes")
- Else
- Call Scrn("No")
- Endif
- Strng=Chr$(27)+"[21;60H"
- Call Scrn(Strng)
- Strng="Key Number:"
- Call Scrn(Strng)
- Strng=Mid$(Str$(TreasureRecord.Keyed),2)
- Call Scrn(Strng)
- Strng=Chr$(27)+"[22;60H"
- Call Scrn(Strng)
- Strng="Spell:"
- Call Scrn(Strng)
- If TreasureRecord.Spell=False Then
- Strng="<none>"
- Call Scrn(Strng)
- Strng=Space$(8)
- Call Scrn(Strng)
- Else
- If TreasureRecord.Spell<1 Or_
- TreasureRecord.Spell>Lof(4)/Len(SpellRecord) Then
- Strng="<out of range>"
- Call Scrn(Strng)
- Else
- Get 4,TreasureRecord.Spell,SpellRecord
- Strng=Left$(SpellRecord.SpellName,14)
- Call Scrn(Strng)
- Endif
- Endif
- 10361
- Exit Sub
- 10362
- Resume 10361
- End Sub
-
- Sub ClearSubstats
- On Local Error Goto 10372
- If TempD Then
- Strng=Chr$(27)+"[1;37;44m"
- Call Scrn(Strng)
- For Temp2=16 To 22
- Strng=Chr$(27)+"["+Mid$(Str$(Temp2),2)+";34H"
- Call Scrn(Strng)
- Strng=Space$(46)
- Call Scrn(Strng)
- Next
- TempD=False
- Endif
- 10371
- Exit Sub
- 10372
- Resume 10371
- End Sub
-
- Sub Help(Var1)
- On Local Error Goto 10382
- Strng=Chr$(27)+"[1;37;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[2J"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[1;36;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[1;1H"
- Call Scrn(Strng)
- Strng=Chr$(214)+String$(78,196)+Chr$(183)
- Call Scrn(Strng)
- For Temp=2 To 24
- Strng=Chr$(27)+"["+Mid$(Str$(Temp),2)+";1H"
- Call Scrn(Strng)
- Strng=Chr$(186)
- Call Scrn(Strng)
- Strng=Chr$(27)+"["+Mid$(Str$(Temp),2)+";80H"
- Call Scrn(Strng)
- Strng=Chr$(186)
- Call Scrn(Strng)
- Next
- Strng=Chr$(27)+"[25;1H"
- Call Scrn(Strng)
- Strng=Chr$(211)+String$(78,196)
- Call Scrn(Strng)
- Color 11,1
- Locate 25,80,0
- Print Chr$(189);
- Strng=Chr$(27)+"[25;6H"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[1;37;44m"
- Call Scrn(Strng)
- Strng=" Next Screen: Cursor Up/Dn "
- Call Scrn(Strng)
- Strng=Chr$(27)+"[25;35H"
- Call Scrn(Strng)
- Strng=" Next Topic: Page Up/Dn "
- Call Scrn(Strng)
- Strng=Chr$(27)+"[25;61H"
- Call Scrn(Strng)
- Strng=" Quit: Escape "
- Call Scrn(Strng)
- Strng=Chr$(27)+"[1;33;44m"
- Call Scrn(Strng)
- Temp2=1
- Temp1=False
- Gosub Read.Data
- Do
- TempX$=Inkey$
- While TempX$=Nul
- TempX$=Inkey$
- Wend
- If TempX$=Chr$(27) Then
- Exit Sub
- Endif
- If Len(TempX$)=2 Then
- Temp8=Asc(Mid$(TempX$,2,1))
- Select Case Temp8
- Case 72
- If Temp2<>1 Then
- Temp2=Temp2-1
- Gosub Read.Data
- Endif
- Case 73
- If Temp1 Then
- Temp2=1
- Temp1=Temp1-1
- Gosub Read.Data
- Endif
- Case 80
- Temp2=Temp2+1
- Gosub Read.Data
- Temp2=Temp4
- Case 81
- Temp1=Temp1+1
- Temp3=Temp2
- Temp2=1
- Gosub Read.Data
- If Temp5<Temp1 Then
- Temp1=Temp5
- Temp2=Temp3
- Endif
- End Select
- Endif
- Loop
- Exit Sub
-
- Read.Data:
- Restore HelpData
- Temp5=False
- Temp8=1
- Dat1=False
- Dat2=False
- Dat3=False
- Do
- Read Dat1,Dat2,Dat3,OutZ
- OutZ=" "+OutZ+" "
- If Dat1>False And Dat1>Var1 Then
- Return
- Endif
- If (Dat1=Var1 Or Dat1=False) And Dat2=Temp1 Then
- Temp5=Dat2
- Temp4=1
- Temp7=False
- For Temp9=1 To Dat3
- Get 1,Temp9+Temp8,HelpRecord1
- Temp7=Temp7+1
- If Temp4=Temp2 Then
- Strng=Chr$(27)+"[1;"+Mid$(Str$(HelpRecord1.TextColor),2)+";44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"["+Mid$(Str$(Temp7+1),2)+";2H"
- Call Scrn(Strng)
- Strng=HelpRecord1.Text
- Call Scrn(Strng)
- Endif
- If Temp4=Temp2 And Temp7=1 Then
- Strng=Chr$(27)+"[1;37;44m"
- Call Scrn(Strng)
- Strng=Chr$(27)+"[1;2H"
- Call Scrn(Strng)
- Strng=String$(78,196)
- Call Scrn(Strng)
- VarX=Int(40-Len(OutZ)/2+1)
- Strng=Chr$(27)+"[1;"+Mid$(Str$(VarX),2)+"H"
- Call Scrn(Strng)
- Strng=OutZ
- Call Scrn(Strng)
- Endif
- If Temp7=22 Then
- If Temp4=Temp2 Then
- Return
- Else
- Temp4=Temp4+1
- Temp7=False
- Endif
- Endif
- Next
- If Temp2>Temp4 Or Temp7=False Then
- Return
- Endif
- If Temp7<22 Then
- For Temp9=Temp7+1 To 22
- Strng=Chr$(27)+"["+Mid$(Str$(Temp9+1),2)+";2H"
- Call Scrn(Strng)
- Strng=Space$(78)
- Call Scrn(Strng)
- Next
- Endif
- Return
- Endif
- Temp8=Temp8+Dat3
- Temp5=Dat2
- Loop Until Dat1=99 And Dat2=99 And Dat3=99
- Return
- 10381
- Exit Sub
- 10382
- Resume 10381
- End Sub
-
- Sub Scrn(Var$)
- On Local Error Goto 10392
- Var$=Var$+"$"
- InregsX.AX=&H0900
- InregsX.DS=Sseg(Var$)
- InregsX.DX=Sadd(Var$)
- Call InterruptX(&H21,InregsX,OutregsX)
- 10391
- Exit Sub
- 10392
- Resume 10391
- End Sub
-
- HelpData:
- Data 0,0,19,"DNDEDIT KEYS CHART"
- Data 1,1,34,"DNDEDIT ROOM EDIT KEYS CHART"
- Data 1,2,38,"DNDEDIT ROOM FIELDS"
- Data 2,1,16,"DNDEDIT OBJECT EDIT KEYS CHART"
- Data 2,2,146,"DNDEDIT OBJECT FIELDS"
- Data 3,1,17,"DNDEDIT TREASURE EDIT KEYS CHART"
- Data 3,2,250,"DNDEDIT TREASURE FIELDS"
- Data 4,1,17,"DNDEDIT MONSTER EDIT KEYS CHART"
- Data 4,2,172,"DNDEDIT MONSTER FIELDS"
- Data 5,1,16,"DNDEDIT SPELL EDIT KEYS CHART"
- Data 5,2,120,"DNDEDIT SPELL FIELDS"
- Data 6,1,10,"DNDEDIT ACTION EDIT KEYS CHART"
- Data 6,2,125,"DNDEDIT ACTION FIELDS"
- Data 7,1,20,"DNDEDIT USER EDIT KEYS CHART"
- Data 7,2,234,"DNDEDIT USER FIELDS"
- Data 8,1,14,"DNDEDIT MONCLASS EDIT KEYS CHART"
- Data 8,2,19,"DNDEDIT MONCLASS FIELDS"
- Data 9,1,17,"DNDEDIT ROOMLINK EDIT KEYS CHART"
- Data 9,2,9,"DNDEDIT ROOMLINK FIELDS"
- Data 10,1,17,"DNDEDIT NONPLAYER EDIT KEYS CHART"
- Data 10,2,146,"DNDEDIT NONPLAYER FIELDS"
- Data 99,99,99,"EOF"
-