Compare commits
merge into: binaryatrocity:master
binaryatrocity:gh-pages
binaryatrocity:master
binaryatrocity:wiki
pull from: binaryatrocity:wiki
binaryatrocity:gh-pages
binaryatrocity:master
binaryatrocity:wiki
No commits in common. 'master' and 'wiki' have entirely different histories.
22 changed files with 116 additions and 494 deletions
-
25ProjectHome.md
-
114README.md
-
11RecommendedSSHClients.md
-
1Screenshot_PC_main.md
-
2SubmitYourScript.md
-
1actions.tin
-
58aliases.tin
-
7bin/aardwolf-session
-
14bin/release
-
28config.tin
-
0logs/active.log
-
0logs/channel.log
-
0logs/history.log
-
0logs/minimap.log
-
0logs/mobs.log
-
0logs/notes.log
-
48src/char.tin
-
89src/gmcp.tin
-
40src/init.tin
-
61src/minimap.tin
-
39src/prompt.tin
-
72src/quest.tin
@ -0,0 +1,25 @@ |
|||
<h1><u>Aardwolf Tintin Package</u></h1> |
|||
<p> |
|||
<b>OS</b>: Linux/Unix or Mac (Although these settings have been known to work with <a href='http://tintin.sourceforge.net/download.php'>Wintin++</a> as well)<br> |
|||
<b>Requires</b>: <a href='http://tintin.sourceforge.net'>Tintin 2.00.7</a><br> |
|||
<b>Recommended</b>: <a href='http://tmux.sourceforge.net'>Tmux 1.5</a> (or some comparable program).<br> |
|||
<table cellpadding='5px' border='1'> |
|||
<tr> |
|||
<td> |
|||
<h3><u>Features:</u></h3> |
|||
<dl> |
|||
<dt>GMCP event handling/variable setting<br> |
|||
<dt>Integrated GMCP/Tintin Mapping<br> |
|||
<dt>Captures into logfiles for "miniwindows":<br> |
|||
<blockquote><dd>ASCII Map<br> |
|||
<dd>Communications<br> |
|||
<dd>Affects<br> |
|||
<dd>Group Stats<br> |
|||
<dd>Mobs/Chars in room<br> |
|||
<dt>Spellup aliases/triggers for keeping spells up<br> |
|||
<dt>A customized prompt with several timers for ticks/quests/etc<br> |
|||
<dt>Examples of making aliases that use #map find in several ways<br> |
|||
<p> |
|||
Most of the work was done by the player "Cheezburger." It is<br> |
|||
highly undocumented and by no means bug free.<br> |
|||
<td><a href='https://lh3.googleusercontent.com/-4rqyXaYgCGw/UBnVVDdJghI/AAAAAAAAABA/BmiBKnPhkII/s800/aardwolf%252Btintin2.PNG'><img src='https://lh3.googleusercontent.com/-4rqyXaYgCGw/UBnVVDdJghI/AAAAAAAAABA/BmiBKnPhkII/s800/aardwolf%252Btintin2.PNG' alt='aardwolf-tintin screenshot'></img></a> |
@ -1,37 +1,77 @@ |
|||
# TinTin++ Settings for Aardwolf MUD |
|||
|
|||
## Setup: |
|||
* Clone the repository |
|||
* Edit username in config.tin |
|||
* Edit password in config.tin |
|||
* Edit bag in config.tin |
|||
* Edit paths in aardwolf-session |
|||
|
|||
## Usage: |
|||
* Launch tmux (tmux -2) |
|||
* Run aardwolf-session (./aardwolf-session) |
|||
* In-game: tags channel on |
|||
* In-game: tags map on |
|||
* In-game: tags mapexits on |
|||
* In-game: tags mapnames on |
|||
* In-game: tags roomchars on |
|||
* In-game: tags roomobjs on |
|||
|
|||
## Features |
|||
* GMCP powered 2-line prompt with colored percentage meters (prompt.tin) |
|||
* Quest time ticker and target tracking (quest.tin) |
|||
* Repop watch and announce (gmcp.tin) |
|||
* Minimap in seperate window (minimap.tin) |
|||
* Alias-driven note jotting system (aliases.tin) |
|||
* Channels logged to separate window (gmcp.tin) |
|||
* Room characters/mobiles and objects logged to file (minimap.tin) |
|||
|
|||
## Commands |
|||
* debug on|off - toggles echoing GMCP data as it arrives |
|||
* repopwatch on|off - toggles announcing of repops in $repchan |
|||
* .note *message here* - adds *message* to notes.log (bottom right window) |
|||
* .newpage - clears the note screen, providing a fresh page |
|||
* cpcheck - print list of campaign targets to note window, sorted by area |
|||
|
|||
|
|||
The actions.tin and aliases.tin files are a place for your personal triggers and aliases. |
|||
#Copy of the README |
|||
|
|||
``` |
|||
Intro: |
|||
------ |
|||
This project compliments of the Aardwolf character Cheezburger. |
|||
This is a group of settings intended to be comparable to the base MUSHClient Aardwolf settings. |
|||
It is intended for Linux users or those with access to a machine capable of running Tintin++. |
|||
It should run under Wintin++ however performance may vary. |
|||
|
|||
Getting Tintin++: |
|||
----------------- |
|||
These settings (mainly the mapping) require Tintin++ versin 2.00.7 or better. |
|||
Check out http://tintin.sourceforge.net/download.php for the latest versions. |
|||
|
|||
Getting Started: |
|||
---------------- |
|||
edit setup.tin |
|||
start tintin with setup.tin (Ex. /usr/games/tt++ -G setup.tin) |
|||
|
|||
Tintin Mapping: |
|||
--------------- |
|||
#map create 60000 - to initialize a new tintin map |
|||
#map flag nofollow on - to stop tintin trying to create rooms based on movement |
|||
-all the room creation is done via gmcp |
|||
#map goto 1 to goto the first vnum of the tintin map |
|||
#var mapping 1 to create the map as you go |
|||
-should be on in setup.tin by default |
|||
-a tick timer is created to save the map every 300seconds |
|||
-a session disconnect event is set to save a backup copy of the map |
|||
Capturing & Logging: |
|||
-------------------- |
|||
The ascii map: |
|||
'tags map on' to start capturing the map to the file 'minimap' |
|||
'tags mapnames on' to send the room name with the map |
|||
'tags mapexits on' to send the room exits with the map |
|||
Toggle 'shortmap' command until it says "You will now see blank lines on the map." |
|||
|
|||
Channels: |
|||
Most channels are captured to the file 'Aardwolf-chats' by GMCP |
|||
To configure which ones are shown in the main window: |
|||
'tags channels on' to show tags around them |
|||
-adjust general.tin list to change which channels are gagged |
|||
|
|||
Mobs/Players in the room: |
|||
'tags roomchars on' to start capturing people/mobs to the file 'chars' |
|||
|
|||
Group Stats: |
|||
Group stat logging is handled by gmcp.tt and logs to 'group' file once you are in a group |
|||
|
|||
Custom Prompt |
|||
------------- |
|||
Tintin++ should automatically split off the bottom 4 lines of your terminal for the custom prompt. |
|||
The bottom line will be the input command line, next up is a dividing line, then a vitals bar, |
|||
then a bar with a few other things I'll explain in detail. |
|||
|
|||
1. Time till next tick -- self explanatory |
|||
2. Quest timer -- this will be set to "quest_timer" until you take a quest or type quest info. |
|||
3. Exp till next level -- self exlanatory |
|||
4. Thirst/Hunger -- T/H:[ thirst level / hunger level ] |
|||
5. Alignment -- Positive or negative alignment |
|||
|
|||
|
|||
Optional Settings: |
|||
------------------ |
|||
read in optional settings as required |
|||
-affcaps.tin Will capture and gag skill/spell affects, add colors, and log to 'affects' file |
|||
-paths.tin Useful demonstration aliases for using the tintin map once one is generated by the user |
|||
-pathwalk.tin Provides an alternative to #path run, it will stop for aggro mobs and continue on death |
|||
|
|||
Displaying: |
|||
----------- |
|||
Setup panes in tmux or multiple terminal windows and use the tail command (ex. tail -fs .1 minimap) |
|||
on whichever log file you wish. |
|||
*NOTE* For the minimap file you will need to set the size of the window to match the output from the mud. |
|||
For a typical 10pt font a size of 30columns by 21rows should be close. |
|||
``` |
@ -0,0 +1,11 @@ |
|||
# Introduction # |
|||
|
|||
These SSH clients have been known to work well. |
|||
|
|||
|
|||
# Clients # |
|||
**iPad**/**iPhone** |
|||
https://itunes.apple.com/us/app/vssh-hd-lite/id535056241?mt=8 |
|||
|
|||
**Android** |
|||
https://play.google.com/store/apps/details?id=org.connectbot&hl=en |
@ -0,0 +1 @@ |
|||
<img src='https://lh3.googleusercontent.com/-4rqyXaYgCGw/UBnVVDdJghI/AAAAAAAAABA/BmiBKnPhkII/s800/aardwolf%252Btintin2.PNG' alt='aardwolf-tintin screenshot'></img> |
@ -0,0 +1,2 @@ |
|||
For users to submit their own scripts. Simply paste it as a comment. |
|||
I have no idea what the length limit is atm. |
@ -1 +0,0 @@ |
|||
#ACTION {The quest will start in} {#bell}; |
@ -1,58 +0,0 @@ |
|||
#ALIAS {porthome} |
|||
{ |
|||
get portal $bag; |
|||
wear portal; |
|||
enter; |
|||
remove portal; |
|||
put portal $bag; |
|||
wear all; |
|||
}; |
|||
|
|||
#ALIAS {^.note %*} |
|||
{ |
|||
#line {log} {$dir/logs/notes.log} {%1}; |
|||
}; |
|||
|
|||
#ALIAS {^.newpage$} |
|||
{ |
|||
#5 #line {log} {$dir/logs/notes.log} {\n\n\n\n}; |
|||
}; |
|||
|
|||
#ALIAS {^.colors$} |
|||
{ |
|||
#forall {0;1;2;3;4;5;6;7;8;9} |
|||
{ |
|||
#showme {<0&09>\<0&09\><099> <1&09>\<1&09\><099>}; |
|||
}; |
|||
}; |
|||
|
|||
#ALIAS {cpcheck} |
|||
{ |
|||
.newpage; |
|||
#var {cplog} {1}; |
|||
#line {log} {$dir/logs/notes.log} {<199>-==[<169>Campaign Targets<199>]==-<099>\n}; |
|||
campaign check; |
|||
}; |
|||
|
|||
#ACTION {^You still have to kill %. %* (%*)$} |
|||
{ |
|||
#if {$cplog} |
|||
{ |
|||
#list {cpareas} {find} {%3} {exists}; |
|||
#if {$exists == 0} { #list {cpareas} {sort} {%3}; }; |
|||
#list {cplist[%3]} {sort} {%2}; |
|||
}; |
|||
}; |
|||
|
|||
#ACTION {left to finish this campaign.$} |
|||
{ |
|||
#var {cplog} {0}; |
|||
#foreach {$cpareas[%*]} {area} |
|||
{ |
|||
#line {log} {$dir/logs/notes.log} {<199>$area:<099>}; |
|||
#foreach {$cplist[$area][%*]} {target} |
|||
{ |
|||
#line {log} {$dir/logs/notes.log} { * <029>$target<099>}; |
|||
} |
|||
} |
|||
}; |
@ -1,7 +0,0 @@ |
|||
#!/bin/bash |
|||
tmux split-window -h -p 22 'tail -fs .1 /home/br4n/documents/MUD/AardWolf/aardwolf-tintin/logs/minimap.log' |
|||
tmux split-window -v -p 58 'tail -fs .1 /home/br4n/documents/MUD/AardWolf/aardwolf-tintin/logs/notes.log' |
|||
tmux select-pane -L |
|||
tmux split-window -v -p 80 'tail -fs .1 /home/br4n/documents/MUD/AardWolf/aardwolf-tintin/logs/channel.log' |
|||
tmux swap-pane -Ud |
|||
tmux send-keys 'tt++ -G /home/br4n/documents/MUD/AardWolf/aardwolf-tintin/config.tin' Enter |
@ -1,14 +0,0 @@ |
|||
#!/bin/bash |
|||
|
|||
# Clear Username and Password |
|||
sed -i '1,2s/{\(.*\)} {\(.*\)}\;$/{\1} {}\;/' config.tin |
|||
echo "Clearing credentials..." |
|||
|
|||
# Empty logs and history |
|||
for f in logs/*.log |
|||
do |
|||
rm $f |
|||
touch $f |
|||
echo "Clearing $f..." |
|||
done |
|||
echo "Done - ready to commit." |
@ -1,28 +0,0 @@ |
|||
#VARIABLE {name} {}; |
|||
#VARIABLE {password} {}; |
|||
#VARIABLE {dir} {.}; |
|||
|
|||
#VARIABLE {repchan} {gt}; |
|||
#VARIABLE {bag} {pentagram}; |
|||
|
|||
#CONFIG {LOG} {RAW} |
|||
#LOG APPEND {$dir/logs/active.log} |
|||
|
|||
#READ {$dir/src/prompt.tin}; |
|||
#READ {$dir/src/gmcp.tin}; |
|||
#READ {$dir/src/char.tin}; |
|||
#READ {$dir/src/quest.tin}; |
|||
#READ {$dir/src/minimap.tin}; |
|||
#READ {$dir/src/init.tin}; |
|||
|
|||
#READ {$dir/aliases.tin}; |
|||
#READ {$dir/actions.tin}; |
|||
|
|||
#ACTION {{^\{chan ch={answer|question|wangrp|tech|gossip|barter|auction|nobletalk|sports|gclan|newbie|curse|market}\}%2$}} {#line gag}; |
|||
#ACTION {{\{stats\}}} {#line gag}; |
|||
|
|||
#SESSION {aard} {aardmud.org} {4000}; |
|||
|
|||
#SPLIT {0} {3}; |
|||
#SUB {\{chan ch=%*\}} {}; |
|||
|
@ -1,48 +0,0 @@ |
|||
#class char kill |
|||
#class char open |
|||
|
|||
|
|||
#event {IAC SB GMCP char.vitals IAC SE} |
|||
{ |
|||
#if {$debug} { #showme %1 }; |
|||
#var {GMCPDATA[CHAR][VITALS]} {%0}; |
|||
#var {hp} {$GMCPDATA[CHAR][VITALS][hp]}; |
|||
#var {mana} {$GMCPDATA[CHAR][VITALS][mana]}; |
|||
#var {moves} {$GMCPDATA[CHAR][VITALS][moves]}; |
|||
prompt_statmon; |
|||
} |
|||
|
|||
#event {IAC SB GMCP char.maxstats IAC SE} |
|||
{ |
|||
#if {$debug} { #showme %1 }; |
|||
#var {GMCPDATA[CHAR][MAXSTATS]} {%0}; |
|||
#var {maxhp} {$GMCPDATA[CHAR][MAXSTATS][maxhp]}; |
|||
#var {maxmana} {$GMCPDATA[CHAR][MAXSTATS][maxmana]}; |
|||
#var {maxmoves} {$GMCPDATA[CHAR][MAXSTATS][maxmoves]}; |
|||
#nop Actual stats below are yet unusued. |
|||
#var {maxstr} {$GMCPDATA[CHAR][MAXSTATS][maxstr]}; |
|||
#var {maxint} {$GMCPDATA[CHAR][MAXSTATS][maxint]}; |
|||
#var {maxwis} {$GMCPDATA[CHAR][MAXSTATS][maxwis]}; |
|||
#var {maxdex} {$GMCPDATA[CHAR][MAXSTATS][maxdex]}; |
|||
#var {maxcon} {$GMCPDATA[CHAR][MAXSTATS][maxcon]}; |
|||
#var {maxluck} {$GMCPDATA[CHAR][MAXSTATS][maxluck]}; |
|||
prompt_statmon; |
|||
} |
|||
|
|||
#event {IAC SB GMCP char.status IAC SE} |
|||
{ |
|||
#variable {GMCPDATA[CHAR][STATUS]} {%0}; |
|||
#if {$debug} {#showme %1}; |
|||
#var {level} {$GMCPDATA[CHAR][STATUS][level]}; |
|||
#var {tnl} {$GMCPDATA[CHAR][STATUS][tnl]}; |
|||
#var {hunger} {$GMCPDATA[CHAR][STATUS][hunger]}; |
|||
#var {thirst} {$GMCPDATA[CHAR][STATUS][thirst]}; |
|||
#var {align} {$GMCPDATA[CHAR][STATUS][align]}; |
|||
#var {state} {$GMCPDATA[CHAR][STATUS][state]}; |
|||
#var {position} {$GMCPDATA[CHAR][STATUS][pos]}; |
|||
#var {enemy} {$GMCPDATA[CHAR][STATUS][enemy]}; |
|||
#var {enemy_health} {$GMCPDATA[CHAR][STATUS][enemypct]}; |
|||
prompt_statmon; |
|||
} |
|||
|
|||
#class char close |
@ -1,89 +0,0 @@ |
|||
#class gmcp kill |
|||
#class gmcp open |
|||
|
|||
|
|||
#format IAC %a 255 |
|||
#format DONT %a 254 |
|||
#format DO %a 253 |
|||
#format WONT %a 252 |
|||
#format WILL %a 251 |
|||
#format SB %a 250 |
|||
#format SE %a 240 |
|||
|
|||
#format GMCP %a 201 |
|||
|
|||
#alias {debug {on|off}} |
|||
{ |
|||
#if {"%1" == "on"} { #variable debug 1 }; |
|||
#else { #variable debug 0 }; |
|||
#showme { Debug is <139>$debug<099> }; |
|||
#nop; |
|||
} |
|||
|
|||
#alias {repopwatch {on|off}} |
|||
{ |
|||
#if {"%1" == "on"} { #variable repop 1 }; |
|||
#else { #variable repop 0 }; |
|||
#showme { Repopwatch is <139>$repop<099> }; |
|||
#nop; |
|||
} |
|||
|
|||
#alias {{^check repop$}} |
|||
{ |
|||
#format {timestamp} {%T}; |
|||
#math {repop_time} {($last_repop+606)-$timestamp}; |
|||
#send {$repchan @CNext repop@w: @R$repop_time @Wseconds.@w}; |
|||
} |
|||
|
|||
#event {IAC SB GMCP comm.channel IAC SE} |
|||
{ |
|||
#if {$debug} { #showme %1 }; |
|||
#var {GMCPDATA[COMM][CHATLOGGER]} {%0}; |
|||
#if {"$GMCPDATA[COMM][CHATLOGGER][chan]" != "mobsay"} |
|||
{ |
|||
#line log {$dir/logs/channel.log} {$GMCPDATA[COMM][CHATLOGGER][msg]}; |
|||
}; |
|||
} |
|||
|
|||
#event {IAC SB GMCP comm.repop IAC SE} |
|||
{ |
|||
#if {$debug} { #showme %1 }; |
|||
#var {GMCP[COMM][REPOP]} {%0}; |
|||
|
|||
#format {last_repop} {%T}; |
|||
#format {time} {%t} {%H:%M:%S}; |
|||
#send {$repchan @WRepop @w= @r$GMCP[COMM][REPOP][zone]@w @@ @r$time}; |
|||
#var time {}; |
|||
#nop; |
|||
} |
|||
|
|||
#nop Start up GMCP connection with the server |
|||
#event {IAC WILL GMCP} |
|||
{ |
|||
#send {$IAC$DO$GMCP\}; |
|||
#send {$IAC$SB$GMCP Core.Hello { "client": "$CLIENT_NAME", "version": "$CLIENT_VERSION" } $IAC$SE\}; |
|||
#send {$IAC$SB$GMCP Core.Supports.Set [ "Room 1", "Char 1", "Core 1", "Comm 1", "Debug 1", "Group 1" ] $IAC$SE\} |
|||
} |
|||
|
|||
#event {PROGRAM START} |
|||
{ |
|||
#variable CLIENT_NAME %0; |
|||
#variable CLIENT_VERSION %1; |
|||
} |
|||
|
|||
#nop Write out command history and variable class on disconnect |
|||
#event {SESSION DISCONNECTED} |
|||
{ |
|||
#history write {$dir/logs/history.log}; |
|||
} |
|||
|
|||
#event {SESSION CONNECTED} |
|||
{ |
|||
$name; |
|||
$password; |
|||
#unvar name; |
|||
#unvar password; |
|||
#history read {$dir/logs/history.log}; |
|||
} |
|||
|
|||
#class gmcp close |
@ -1,40 +0,0 @@ |
|||
#class init kill |
|||
#class init open |
|||
|
|||
#ALIAS {do_on_connect} |
|||
{ |
|||
map; |
|||
protocol gmcp sendchar; |
|||
quest time; |
|||
look; |
|||
}; |
|||
|
|||
#ACTION {^############# Reconnecting to Game #############$} {do_on_connect} |
|||
#ACTION {^Welcome to Aardwolf. May your adventures be mystical, challenging and rewarding.} {do_on_connect} |
|||
|
|||
#ACTION {^You do not have to wait to go on another quest.$} |
|||
{ |
|||
#var {quest[timer]} {<129>READY<099>}; |
|||
prompt_statmon; |
|||
#class init kill |
|||
} |
|||
#ACTION {^There are %d minutes remaining until you can go on another quest.$} |
|||
{ |
|||
start_quest_timer %1; |
|||
prompt_statmon; |
|||
#class init kill |
|||
} |
|||
#ACTION {^There is less than a minute remaining until you can go on another quest.$} |
|||
{ |
|||
start_quest_timer 1; |
|||
prompt_statmon; |
|||
#class init kill |
|||
} |
|||
#ACTION {^Time left for current quest: %d$} |
|||
{ |
|||
#var {quest[timer]} {<fca>ACTIVE<099>}; |
|||
prompt_statmon; |
|||
#class init kill |
|||
} |
|||
|
|||
#class init close |
@ -1,61 +0,0 @@ |
|||
#class minimap kill |
|||
#class minimap open |
|||
|
|||
#ALIAS {get_minimap} |
|||
{ |
|||
#ACTION {~%0} |
|||
{ |
|||
#line log {$dir/logs/minimap.log} {%0}; |
|||
#line gag; |
|||
} {10} |
|||
} |
|||
|
|||
#ALIAS {get_chars} |
|||
{ |
|||
#ACTION {~%0} |
|||
{ |
|||
#line log {$dir/logs/mobs.log} {%0}; |
|||
} {10} |
|||
} |
|||
|
|||
#ACTION {^<MAPEND>$} |
|||
{ |
|||
#unaction {~%%0} {}; |
|||
#line gag; |
|||
} {1} |
|||
|
|||
#ACTION {^<MAPSTART>$} |
|||
{ |
|||
#line log {$dir/logs/minimap.log} {\n\n\n\n\n\n}; |
|||
get_minimap; |
|||
#line gag; |
|||
} {1} |
|||
|
|||
#ACTION {{^\{roomchars\}}} |
|||
{ |
|||
#line log {$dir/logs/mobs.log} {\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n}; |
|||
get_chars; |
|||
#line gag; |
|||
} |
|||
|
|||
#ACTION {{^\{/roomchars\}$}} |
|||
{ |
|||
#unaction {~%%0} {}; |
|||
#line log {$dir/logs/mobs.log} {\n\r}; |
|||
#line gag; |
|||
} |
|||
|
|||
#ACTION {{^\{roomobjs\}}} |
|||
{ |
|||
get_chars; |
|||
#line gag; |
|||
} |
|||
|
|||
#ACTION {{^\{/roomobjs\}$}} |
|||
{ |
|||
#unaction {~%%0} {}; |
|||
#line log {$dir/logs/mobs.log} {\n\r}; |
|||
#line gag; |
|||
} |
|||
|
|||
#class minimap close |
@ -1,39 +0,0 @@ |
|||
#FUNCTION {percent_color} |
|||
{ |
|||
#var {percent_store} {}; |
|||
#if {%1 > 80} { #format {percent_store} {%c%d<099>} {bold green} {%1} }; |
|||
#if {%1 < 80 && %1 > 30} { #format {percent_store} {%c%d<099>} {bold yellow} {%1} }; |
|||
#if {%1 < 30} { #format {percent_store} {%c%d<099>} {bold red} {%1} }; |
|||
#return $percent_store; |
|||
} |
|||
|
|||
#ALIAS {prompt_statmon} |
|||
{ |
|||
#math hp_percent {((1.00*$hp) / $maxhp)*100}; |
|||
#math mana_percent {((1.00*$mana) / $maxmana)*100}; |
|||
#math moves_percent {((1.00*$moves) / $maxmoves)*100}; |
|||
|
|||
#var {c_hp_percent} {@percent_color{$hp_percent}}; |
|||
#var {c_mana_percent} {@percent_color{$mana_percent}}; |
|||
#var {c_moves_percent} {@percent_color{$moves_percent}}; |
|||
|
|||
#var {hp_prompt} {<039>$hp<099>/<139>$maxhp<099>hp ($c_hp_percent%)}; |
|||
#var {mana_prompt} {<069>$mana<099>/<169>$maxmana<099>m ($c_mana_percent%)}; |
|||
#var {moves_prompt} {<049>$moves<099>/<149>$maxmoves<099>mv ($c_moves_percent%)}; |
|||
|
|||
#var {prompt} {<$hp_prompt | $mana_prompt | $moves_prompt>}; |
|||
#if {$state == 8} |
|||
{ |
|||
#var {c_enemy_health} {@percent_color{$enemy_health}}; |
|||
#var {battleprompt} {<119>$enemy<099>: $c_enemy_health%}; |
|||
#var {prompt} {$prompt $battleprompt}; |
|||
}; |
|||
#elseif {$state == 9 || $state == 11} { #var {prompt} {$prompt <159>RESTING<099>}}; |
|||
#showme {$prompt} {1}; |
|||
|
|||
#var {c_hunger} {@percent_color{$hunger}}; |
|||
#var {c_thirst} {@percent_color{$thirst}}; |
|||
#var {top_prompt} {[Quest: <169>$quest[timer]<099> | TNL: <059>$tnl<099> | Align: <149>$align<099> | Hunger/Thirst: $c_hunger%/$c_thirst%]}; |
|||
#showme {$top_prompt} {2}; |
|||
}; |
|||
|
@ -1,72 +0,0 @@ |
|||
#class quest kill |
|||
#class quest open |
|||
|
|||
|
|||
#ALIAS {start_quest_timer} |
|||
{ |
|||
#var {quest[timer]} {%1}; |
|||
#ticker {quest[timer]} |
|||
{ |
|||
#math {quest[timer]} {$quest[timer] - 1}; |
|||
#if {$quest[timer] == 0} |
|||
{ |
|||
#untick {quest[timer]}; |
|||
#var {quest[timer]} {<cfa>READY<099>}; |
|||
}; |
|||
prompt_statmon; |
|||
} {60} |
|||
}; |
|||
|
|||
|
|||
#EVENT {IAC SB GMCP comm.quest IAC SE} |
|||
{ |
|||
#if {$debug} { #showme {%1} }; |
|||
#var {GMCPDATA[COMM][QUEST]} {%0}; |
|||
|
|||
#if {"$GMCPDATA[COMM][QUEST][action]" == "ready"} |
|||
{ |
|||
#send {$repchan @W\{-=@RQuest Time@W=-\}@w}; |
|||
#var {quest[timer]} {<129>READY<099>}; |
|||
#bell; |
|||
}; |
|||
#elseif {"$GMCPDATA[COMM][QUEST][action]" == "start"} |
|||
{ |
|||
#format {quest[start]} {%T}; |
|||
#var {quest[timer]} {<fca>ACTIVE<099>}; |
|||
#var {quest[room]} {$GMCPDATA[COMM][QUEST][room]}; |
|||
#var {quest[area]} {$GMCPDATA[COMM][QUEST][area]}; |
|||
#var {quest[target]} {$GMCPDATA[COMM][QUEST][targ]}; |
|||
|
|||
#send {$repchan @Y[@RQuest Requested@Y]@w: @YTarget@w=@R$quest[target]@w. @YRoom@w=@R$quest[room]@w. @YArea@w=@R$quest[area]@w.}; |
|||
}; |
|||
#elseif {"$GMCPDATA[COMM][QUEST][action]" == "fail"} |
|||
{ |
|||
#send {$repchan @W\{-=@RQuest Failed@W=-\}@w}; |
|||
#var {quest} {}; |
|||
|
|||
start_quest_timer 30; |
|||
}; |
|||
#elseif {"$GMCPDATA[COMM][QUEST][action]" == "comp"} |
|||
{ |
|||
#format {quest[end]} {%T}; |
|||
#math {quest[time]} {$quest[end] - $quest[start]}; |
|||
#var {quest[trivia]} {$GMCPDATA[COMM][QUEST][tp]}; |
|||
#var {quest[pracs]} {$GMCPDATA[COMM][QUEST][pracs]}; |
|||
#var {quest[trains]} {$GMCPDATA[COMM][QUEST][trains]}; |
|||
#var {quest[qp]} {$GMCPDATA[COMM][QUEST][totqp]}; |
|||
|
|||
#send {$repchan @R[@YQuest Completed@R] @Y[@WQp: @R$quest[qp]@Y] $quest[time] secs @Y[@WBonus: @R $quest[pracs] / $quest[train] / $quest[trivia]@Y]@w}; |
|||
#var {quest} {}; |
|||
|
|||
start_quest_timer 30; |
|||
}; |
|||
#elseif {"$GMCP[COMM][QUEST][target]" == "killed"} |
|||
{ |
|||
#send {$repchan @W\{-=@RQuest Target Killed@W=-\}@w}; |
|||
#var {quest[timer]} {<169>RETURN<099>}; |
|||
}; |
|||
|
|||
prompt_statmon; |
|||
} |
|||
|
|||
#class quest close |
Write
Preview
Loading…
Cancel
Save
Reference in new issue