TinTin++ Configs for DiscworldMUD
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

609 lines
18 KiB

#CLASS {xptimers} {kill};
#CLASS {xptimers} {open};
#VARIABLE {xptimer_file} {logs/xptimers.log};
#VARIABLE {killtimers} {
{Delbert}{
{time}{0}
{name}{delbert}
{group}{false}
{respawn}{30}
}
{the Triad boss}{
{time}{0}
{name}{medina boss}
{group}{false}
{respawn}{30}
}
{the bandit leader}{
{time}{0}
{name}{bandit leader}
{group}{false}
{respawn}{30}
}
{Hlakket the Bartender}{
{time}{0}
{name}{hlakket}
{group}{false}
{respawn}{30}
}
{the Zoon Liar}{
{time}{0}
{name}{zoon liar}
{group}{false}
{respawn}{30}
}
{Slim Stevie}{
{time}{0}
{name}{rogues}
{group}{false}
{respawn}{30}
}
{the %* grflx worker}{
{time}{0}
{name}{grflx}
{group}{false}
{respawn}{30}
}
{the %* student}{
{time}{0}
{name}{dojo}
{group}{false}
{respawn}{30}
}
{the ceremonial guard}{
{time}{0}
{name}{cguards}
{group}{false}
{respawn}{30}
}
{the smuggler captain}{
{time}{0}
{name}{smug captain}
{group}{false}
{respawn}{30}
}
{the giant leader}{
{time}{0}
{name}{giants}
{group}{false}
{respawn}{30}
}
{the %* rujona}{
{time}{0}
{name}{snail}
{group}{true}
{respawn}{30}
}
{the %* nitsuni}{
{time}{0}
{name}{snail}
{group}{true}
{respawn}{30}
}
{the Ome outlaw}{
{time}{0}
{name}{snail}
{group}{true}
{respawn}{30}
}
{the %* lion}{
{time}{0}
{name}{shaker lions}
{group}{false}
{respawn}{30}
}
{Louis Accardo}{
{time}{0}
{name}{stables}
{group}{true}
{respawn}{30}
}
{Samuel Casso}{
{time}{0}
{name}{stables}
{group}{true}
{respawn}{30}
}
{Enrico Persuica}{
{time}{0}
{name}{stables}
{group}{true}
{respawn}{30}
}
{Joe Corrola}{
{time}{0}
{name}{stables}
{group}{true}
{respawn}{30}
}
{Marlon Gumboni}{
{time}{0}
{name}{casino}
{group}{true}
{respawn}{30}
}
{Frankie Harvard}{
{time}{0}
{name}{casino}
{group}{true}
{respawn}{30}
}
{Geraldo Ciaco}{
{time}{0}
{name}{casino}
{group}{true}
{respawn}{30}
}
{Charles Marchella}{
{time}{0}
{name}{casino}
{group}{true}
{respawn}{30}
}
}
#VARIABLE {visittimers} {
{AMShades}{
{time}{0}
{name}{shades}
{group}{false}
{respawn}{12}
}
{ebff897af2b8bb6800a9a8636143099d0714be07}{
{time}{0}
{name}{smugglers}
{group}{false}
{respawn}{12}
}
{70546ec71867645ab5c51e9ce6087b75dcf4176f}{
{time}{0}
{name}{offler}
{group}{false}
{respawn}{30}
}
{f6c60dd36ed38707eb954c3a670f2f9370a79399}{
{time}{0}
{name}{black market}
{group}{true}
{respawn}{30}
}
{e4646eab906aef1187a9dd3e980441b8f6b8d68c}{
{time}{0}
{name}{black market}
{group}{true}
{respawn}{30}
}
{0ae9d8c4f2b48f4fcc4cb57fd85443399be2ecc5}{
{time}{0}
{name}{black market}
{group}{true}
{respawn}{30}
}
{c7c6f5720d2c587f80696b6f0ec7f9ac0f084b06}{
{time}{0}
{name}{black market}
{group}{true}
{respawn}{30}
}
{3862c5fd0fe83f4080bdb9b94519bf8da89d5015}{
{time}{0}
{name}{parades}
{group}{true}
{respawn}{30}
}
{cca9645565f2bb0d017ea9b1dcc9d1b3e9fcfe72}{
{time}{0}
{name}{cabbage}
{group}{false}
{respawn}{30}
}
}
#ALIAS {dtreset} {
#regex {%1} {all} {
#foreach {$killtimers[]} {spot} {
#format {killtimers[$spot][time]} {0};
}
#foreach {$visittimers[]} {spot} {
#format {visittimers[$spot][time]} {0};
}
#format {xptimer_message} {%c[XPTimer] %c*%c Resetting all spots to Unseen.} {bold blue} {bold yellow} {bold blue};
#echo {$xptimer_message};
#variable {dtreset_all} {1};
};
#if {$dtreset_all < 1} {
#foreach {$killtimers[]} {spot} {
#regex {%1 %2} {$killtimers[$spot][name]} {
#format {killtimers[$spot][time]} {%T};
#if {"$killtimers[$spot][group]" == "true"} {
#format {xptimer_message} {%c[XPTimer] %c*%c Resetting death timer for%c $killtimers[$spot][name] ($spot)%c.} {bold blue} {bold yellow} {bold blue} {bold green} {bold blue};
};
#else {
#format {xptimer_message} {%c[XPTimer] %c*%c Resetting death timer for%c $killtimers[$spot][name]%c.} {bold blue} {bold yellow} {bold blue} {bold green} {bold blue};
};
#echo {$xptimer_message};
};
}
#foreach {$visittimers[]} {spot} {
#regex {%1 %2} {$visittimers[$spot][name]} {
#format {visittimers[$spot][time]} {%T};
#if {"$visittimers[$spot][group]" == "true"} {
#format {xptimer_message} {%c[XPTimer] %c*%c Resetting visit timer for%c $visittimers[$spot][name] ($spot)%c.} {bold blue} {bold yellow} {bold blue} {bold green} {bold blue};
};
#else {
#format {xptimer_message} {%c[XPTimer] %c*%c Resetting visit timer for%c $visittimers[$spot][name]%c.} {bold blue} {bold yellow} {bold blue} {bold green} {bold blue};
};
#echo {$xptimer_message};
};
}
}
#unvariable {dtreset_all};
}
#ACTION {%1 deals the death blow to %2.} {
#foreach {$killtimers[]} {spot} {
#regex {%2} {$spot} {
#format {killtimers[$spot][time]} {%T};
};
}
}
#ACTION {You kill %1.} {
#foreach {$killtimers[]} {spot} {
#regex {%1} {$spot} {
#format {killtimers[$spot][time]} {%T};
};
}
}
#FUNCTION {write_spot} {
#var {spotname} {%1};
#var {spottime} {%2};
#var {spotrespawn} {%3};
#format {current_time} {%T};
#if {$spottime == 0} {
#format {spotstring} { - (???) %s } {$spotname};
};
#else {
#math {mins} {$current_time - $spottime};
#math {mins} {($mins - (60 - 1)) / 60};
#nop Choose a color-code based on downtime;
#if {$mins > ($spotrespawn + 40)} {
#var {current_spot_color} {<099>};
};
#elseif {$mins > ($spotrespawn + 20)} {
#var {current_spot_color} {<119>};
};
#elseif {$mins > $spotrespawn} {
#var {current_spot_color} {<139>};
};
#else {
#var {current_spot_color} {<099>};
}
#if {$mins > 99} { #var {mins} {99} };
#nop Format the line to print;
#if {$mins >= 10} {
#format {spotstring} { - (%dm) %c%s<099> } {$mins} {$current_spot_color} {$spotname};
};
#else {
#nop Zero pad under 10 mins;
#format {spotstring} { - (0%dm) %c%s<099> } {$mins} {$current_spot_color} {$spotname};
}
};
#return {$spotstring};
}
#ALIAS {dt} {
#format {current_time} {%T};
#var {spot_groups} {};
#var {spot_groups_respawn} {};
#echo {.:: Death Timers ::.};
#foreach {$killtimers[]} {spot} {
#if {"$killtimers[$spot][group]" == "true"} {
#if {&spot_groups[$killtimers[$spot][name]] == 0} {
#var {spot_groups[$killtimers[$spot][name]]} {$killtimers[$spot][time]};
#var {spot_groups_respawn[$killtimers[$spot][name]]} {$killtimers[$spot][respawn]};
};
#if {$killtimers[$spot][time] < $spot_groups[$killtimers[$spot][name]]} {
#var {spot_groups[$killtimers[$spot][name]]} {$killtimers[$spot][time]};
#var {spot_groups_respawn[$killtimers[$spot][name]]} {$killtimers[$spot][respawn]};
};
#continue;
};
#var {spotstring} {@write_spot{$killtimers[$spot][name];$killtimers[$spot][time];$killtimers[$spot][respawn]}};
#echo {$spotstring};
}
#foreach {$spot_groups[]} {spot} {
#var {spotstring} {@write_spot{$spot;$spot_groups[$spot];$spot_groups_respawn[$spot]}};
#echo {$spotstring};
}
#echo {\n};
#var {spot_groups} {};
#var {spot_groups_respawn} {};
#echo {.:: Visit Timers ::.};
#format {current_time} {%T};
#foreach {$visittimers[]} {spot} {
#if {"$visittimers[$spot][group]" == "true"} {
#if {&spot_groups[$visittimers[$spot][name]] == 0} {
#var {spot_groups[$visittimers[$spot][name]]} {$visittimers[$spot][time]};
#var {spot_groups_respawn[$visittimers[$spot][name]]} {$visittimers[$spot][respawn]};
};
#if {$visittimers[$spot][time] < $spot_groups[$visittimers[$spot][name]]} {
#var {spot_groups[$visittimers[$spot][name]]} {$visittimers[$spot][time]};
#var {spot_groups_respawn[$visittimers[$spot][name]]} {$visittimers[$spot][respawn]};
};
#continue;
};
#var {spotstring} {@write_spot{$visittimers[$spot][name];$visittimers[$spot][time];$visittimers[$spot][respawn]}};
#echo {$spotstring};
}
#foreach {$spot_groups[]} {spot} {
#var {spotstring} {@write_spot{$spot;$spot_groups[$spot];$spot_groups_respawn[$spot]}};
#echo {$spotstring};
}
#echo {\n};
}
#ALIAS {writetimerstofile} {
#system {> $xptimer_file};
#format {current_time} {%T};
#var {spot_groups} {};
#var {spot_groups_respawn} {};
#line {log} {$xptimer_file} {.:: Death Timers ::. };
#foreach {$killtimers[]} {spot} {
#if {"$killtimers[$spot][group]" == "true"} {
#if {&spot_groups[$killtimers[$spot][name]] == 0} {
#var {spot_groups[$killtimers[$spot][name]]} {$killtimers[$spot][time]};
#var {spot_groups_respawn[$killtimers[$spot][name]]} {$killtimers[$spot][respawn]};
};
#if {$killtimers[$spot][time] != 0 && $killtimers[$spot][time] < $spot_groups[$killtimers[$spot][name]]} {
#var {spot_groups[$killtimers[$spot][name]]} {$killtimers[$spot][time]};
#var {spot_groups_respawn[$killtimers[$spot][name]]} {$killtimers[$spot][respawn]};
};
#continue;
};
#var {spotstring} {@write_spot{$killtimers[$spot][name];$killtimers[$spot][time];$killtimers[$spot][respawn]}};
#line {log} {$xptimer_file} {$spotstring};
}
#foreach {$spot_groups[]} {spot} {
#var {spotstring} {@write_spot{$spot;$spot_groups[$spot];$spot_groups_respawn[$spot]}};
#line {log} {$xptimer_file} {$spotstring};
}
#line {log} {$xptimer_file} {\n\r\n\r.:: Visit Timers ::. };
#var {spot_groups} {};
#var {spot_groups_respawn} {};
#foreach {$visittimers[]} {spot} {
#if {"$visittimers[$spot][group]" == "true"} {
#if {&spot_groups[$visittimers[$spot][name]] == 0} {
#var {spot_groups[$visittimers[$spot][name]]} {$visittimers[$spot][time]};
#var {spot_groups_respawn[$visittimers[$spot][name]]} {$visittimers[$spot][respawn]};
};
#if {$visittimers[$spot][time] != 0 && $visittimers[$spot][time] < $spot_groups[$visittimers[$spot][name]]} {
#var {spot_groups[$visittimers[$spot][name]]} {$visittimers[$spot][time]};
#var {spot_groups_respawn[$visittimers[$spot][name]]} {$visittimers[$spot][respawn]};
};
#continue;
};
#var {spotstring} {@write_spot{$visittimers[$spot][name];$visittimers[$spot][time];$visittimers[spot][respawn]}};
#line {log} {$xptimer_file} {$spotstring};
}
#foreach {$spot_groups[]} {spot} {
#var {spotstring} {@write_spot{$spot;$spot_groups[$spot];$spot_groups_respawn[$spot]}};
#line {log} {$xptimer_file} {$spotstring};
}
}
#EVENT {SEND OUTPUT} {writetimerstofile};
#FUNCTION {parse_spot} {
#var {spot_sync_raw} {%0};
#replace {spot_sync_raw} {=} {;};
#list {spot_sync} {create} {${spot_sync_raw}};
#return {$spot_sync};
}
#ACTION {%1 tells you: ruhs_dtsync=[%2] | ruhs_vtsync=[%3]} {
#var {synccount} {0};
#var {dtsync} {%2};
#var {vtsync} {%3};
#replace {dtsync} {,} {;};
#replace {vtsync} {,} {;};
#list dtsync_list create {${dtsync}};
#list vtsync_list create {${vtsync}};
#foreach {$dtsync_list[]} {spot} {
#var {syncitem} {@parse_spot{$dtsync_list[$spot]}};
#var {syncname} {$syncitem[1]};
#var {synctime} {$syncitem[2]};
#foreach {$killtimers[]} {spotident} {
#var {spotname} {$killtimers[$spotident][name]};
#if {"$spotname" == "$syncname"} {
#var {killtimers[$spotident][time]} {$synctime};
#math {synccount} {$synccount + 1};
};
}
}
#foreach {$vtsync_list[]} {spot} {
#var {syncitem} {@parse_spot{$vtsync_list[$spot]}};
#var {syncname} {$syncitem[1]};
#var {synctime} {$syncitem[2]};
#foreach {$visittimers[]} {spotident} {
#var {spotname} {$killtimers[$spotident][name]};
#if {"$spotname" == "$syncname"} {
#var {visittimers[$spotident][time]} {$synctime};
#math {synccount} {$synccount + 1};
};
}
}
#format {dtsync_message} {%c[XPTimer] %c*%c Synced %c%d%c spots from %c%s%c.} {bold blue}{yellow}{bold blue}{orange}{$synccount}{bold blue}{green}{%1}{bold blue};
#echo {$dtsync_message};
}
#ALIAS {dtsync %1} {
#var {dtsync_msg} {};
#var {vtsync_msg} {};
#foreach {$killtimers[]} {spotident} {
#if {$killtimers[$spotident][time] > 0} {
#format {dtsync_msg} {%s,%s=%d} {$dtsync_msg}{$killtimers[$spotident][name]}{$killtimers[$spotident][time]};
};
}
#regex {$dtsync_msg} {^,{(.+)}$} { #var {dtsync_msg} {&1}; };
#foreach {$visittimers[]} {spotident} {
#if {$visittimers[$spotident][time] > 0} {
#format {vtsync_msg} {%s,%s=%d} {$vtsync_msg}{$visittimers[$spotident][name]}{$visittimers[$spotident][time]};
};
}
#regex {$vtsync_msg} {^,{(.+)}$} { #var {vtsync_msg} {&1}; };
#format {sync_message} {tell %s ruhs_dtsync=[%s] | ruhs_vtsync=[%s]} {%1} {$dtsync_msg} {$vtsync_msg};
#send {$sync_message};
}
#nop #EVENT {IAC SB GMCP room.info IAC SE}
#ALIAS {/spottimercheckroomid %1} {
#var {room_info} {%1};
#foreach {$visittimers[]} {spot} {
#regex {$room_info} {$spot} {
#format {visittimers[$spot][time]} {%T};
}
}
}
#ALIAS {gsdt} {
#var {gsdt_string} {};
#var {spot_groups} {};
#var {group_spot_label} {};
#foreach {$killtimers[]} {spot} {
#format {spotname} {$killtimers[$spot][name]};
#var {mins} {???};
#if {$killtimers[$spot][time] == 0} {
#format {spotstring} {%s: ??? |} {$spotname};
};
#else {
#math {mins} {$current_time - $killtimers[$spot][time]};
#math {mins} {($mins - (60 - 1)) / 60};
#if {$mins > 99} { #var {mins} {99} };
#if {$mins < 10} {
#format {spotstring} {%s: 0%dm |} {$spotname} {$mins} ;
};
#else {
#format {spotstring} {%s: %dm |} {$spotname} {$mins} ;
};
}
#if {"$killtimers[$spot][group]" == "true"} {
#if {&spot_groups[$killtimers[$spot][name]] == 0} {
#var {spot_groups[$killtimers[$spot][name]]} {$killtimers[$spot][time]};
#var {group_spot_label[$killtimers[$spot][name]]} {$spotstring};
};
#if {$killtimers[$spot][time] < $spot_groups[$killtimers[$spot][name]]} {
#var {spot_groups[$killtimers[$spot][name]]} {$killtimers[$spot][time]};
#var {group_spot_label[$killtimers[$spot][name]]} {$spotstring};
};
#continue;
};
#format {gsdt_string} {%s %s} {$gsdt_string} {$spotstring};
}
#foreach {$spot_groups} {spot} {
#format {gsdt_string} {%s %s} {$gsdt_string} {$group_spot_label[$spot]};
};
#var {spot_groups} {};
#var {group_spot_label} {};
#foreach {$visittimers[]} {spot} {
#format {spotname} {$visittimers[$spot][name]};
#var {mins} {???};
#if {$visittimers[$spot][time] == 0} {
#format {spotstring} {%s: ??? |} {$spotname};
};
#else {
#math {mins} {$current_time - $visittimers[$spot][time]};
#math {mins} {($mins - (60 - 1)) / 60};
#if {$mins > 99} { #var {mins} {99} };
#if {$mins < 10} {
#format {spotstring} {%s: 0%dm |} {$spotname} {$mins} ;
};
#else {
#format {spotstring} {%s: %dm |} {$spotname} {$mins} ;
};
}
#if {"$visittimers[$spot][group]" == "true"} {
#if {&spot_groups[$visittimers[$spot][name]] == 0} {
#var {spot_groups[$visittimers[$spot][name]]} {$visittimers[$spot][time]};
#var {group_spot_label[$visittimers[$spot][name]]} {$spotstring};
};
#if {$visittimers[$spot][time] < $spot_groups[$visittimers[$spot][name]]} {
#var {spot_groups[$visittimers[$spot][name]]} {$visittimers[$spot][time]};
#var {group_spot_label[$visittimers[$spot][name]]} {$spotstring};
};
#continue;
};
#format {gsdt_string} {%s %s} {$gsdt_string} {$spotstring};
}
#foreach {$spot_groups} {spot} {
#format {gsdt_string} {%s %s} {$gsdt_string} {$group_spot_label[$spot]};
};
#regex {$gsdt_string} {^{(.+)} \|$} {#var {gsdt_string} {&1}; };
#send {group say $gsdt_string};
}
#CLASS {xptimers} {close};