Werks/JobMarket mission tracking
This commit is contained in:
parent
974400b535
commit
204413c43b
151
src/missions/jobmarket.tin
Normal file
151
src/missions/jobmarket.tin
Normal file
@ -0,0 +1,151 @@
|
|||||||
|
#CLASS {missiontimers_jobmarket} {kill};
|
||||||
|
#CLASS {missiontimers_jobmarket} {open};
|
||||||
|
|
||||||
|
#VARIABLE {missions[jobmarket]} {
|
||||||
|
{board_codes}{}
|
||||||
|
{current_code}{0}
|
||||||
|
{current_name}{0}
|
||||||
|
};
|
||||||
|
|
||||||
|
#NOP Trigger to capture what "code" belongs to what job when reading the board;
|
||||||
|
#ACTION {^{[A-Z]{2}}) {Thirst Quencher|Gofer|Dog Walker|Advertising Manager|Street Fixer|Sett Maker|Delivery Lackey|Delivery Runner|Full-time Street Repairer|Textiles Fixer|Expert Street Maintenance Technician|Deliverer of Rare Items|Deliverer of Foreign Goods}$} {
|
||||||
|
#VARIABLE {missions[jobmarket][board_codes][%1]} {%2};
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
#NOP Alias to capture when we apply for a job at Mr Werks;
|
||||||
|
#ALIAS {^apply for{ job|} {[A-z]{2}}$} {
|
||||||
|
#FORMAT {jobcode} {%u} {%2};
|
||||||
|
#SEND {apply for job $jobcode};
|
||||||
|
|
||||||
|
#NOP Reference code in last known board_codes table to get a job name;
|
||||||
|
#VARIABLE {missions[jobmarket][current_code]} {$jobcode};
|
||||||
|
#VARIABLE {jobname} {$missions[jobmarket][board_codes][$jobcode]};
|
||||||
|
#VARIABLE {missions[jobmarket][current_name]} {$jobname};
|
||||||
|
};
|
||||||
|
|
||||||
|
#NOP Alias to capture when we resign from a job;
|
||||||
|
#ALIAS {^resign from job} {
|
||||||
|
#SEND {resign from job};
|
||||||
|
#LOCAL {current_name} {$missions[jobmarket][current_name]};
|
||||||
|
#IF {"$current_name" != "0"} {
|
||||||
|
#UNVARIABLE {missions[jobmarket][active_list][$GMCP[charinfo][capname]][$current_name]};
|
||||||
|
#FORMAT {missions[jobmarket][retry_list][$GMCP[charinfo][capname]]} {%T};
|
||||||
|
|
||||||
|
#line sub variable {
|
||||||
|
#delay {600} {
|
||||||
|
#format {jobmarket_timer_line} {<acf>[<fff>missions<acf>] <138>*<900><cfa> %s <acf>can now apply for another Job Market mission.<099>} {$GMCP[charinfo][capname]};
|
||||||
|
#echo {$jobmarket_timer_line};
|
||||||
|
#unvar {$jobmarket_timer_line};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
#unvar {delayname};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
#NOP Trigger to capture the job being accepted so we get an accurate start-time stamp;
|
||||||
|
#ACTION {Mr Werks hands you an official employment writ.} {
|
||||||
|
#NOP Set a timestamp for when we began this job;
|
||||||
|
#VARIABLE {missions[jobmarket][current_name]} {$jobname};
|
||||||
|
#IF {"$missions[jobmarket][current_name]" != "0"} {
|
||||||
|
#FORMAT {missions[jobmarket][active_list][$GMCP[charinfo][capname]][$missions[jobmarket][current_name]]} {%T};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
#NOP Trigger to capture time on the job expiring;
|
||||||
|
#ACTION {^The time has expired on your present job. You do not need to finish the rest of your deliveries, Mr Werks will find someone else to do this.$} {
|
||||||
|
#format {current_time} {%T};
|
||||||
|
#format {current_player} {%s} {$GMCP[charinfo][capname]};
|
||||||
|
#format {current_job} {%s} {$missions[jobmarket][current_name]};
|
||||||
|
#variable {missions[jobmarket][active_list][$current_player][$current_job]} {$current_time};
|
||||||
|
|
||||||
|
|
||||||
|
#nop == configure a message display when the timer is up ==;
|
||||||
|
#math {mins} {$current_time - $missions[jobmarket][active_list][$current_player][$current_job]};
|
||||||
|
#math {mins} {($mins - (60 - 1)) / 60};
|
||||||
|
|
||||||
|
#math {time_left} {60 - $mins};
|
||||||
|
#line sub variable {
|
||||||
|
#delay {$time_left} {
|
||||||
|
#format {jobmarket_timer_line} {<acf>[<fff>missions<acf>] <138>*<900><cfa> %s <acf>can now do another Job Market "%c%s%c" mission.<099>} {$GMCP[charinfo][capname]} {Jade} {$missions[jobmarket][current_name]} {<acf>};
|
||||||
|
#echo {$jobmarket_timer_line};
|
||||||
|
#unvar {$jobmarket_timer_line};
|
||||||
|
|
||||||
|
#unvar {missions[jobmarket][active_list][$current_player][$current_job]};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
#unvar {delayname};
|
||||||
|
};
|
||||||
|
|
||||||
|
#NOP Trigger to capture reward from completing a job;
|
||||||
|
#ACTION {^You have been awarded {[0-9]{1,7}} experience points {for|for partially} completing this job%3} {
|
||||||
|
#nop Mission completed, so store current mission for current player in active_list;
|
||||||
|
#format {current_time} {%T};
|
||||||
|
#format {current_player} {%s} {$GMCP[charinfo][capname]};
|
||||||
|
#format {current_job} {%s} {$missions[jobmarket][current_name]};
|
||||||
|
#variable {missions[jobmarket][active_list][$current_player][$current_job]} {$current_time};
|
||||||
|
|
||||||
|
|
||||||
|
#nop == configure a message display when the timer is up ==;
|
||||||
|
#line sub variable {
|
||||||
|
#format {delayname} {jobmarket_%s_%s} {$current_player} {$missions[jobmarket][current_name]};
|
||||||
|
#delay {$delayname} {
|
||||||
|
#format {jobmarket_timer_line} {<acf>[<fff>missions<acf>] <138>*<900><cfa> %s <acf>can now do another Job Market "%c%s%c" mission.<099>} {$GMCP[charinfo][capname]} {Jade} {$missions[jobmarket][current_name]} {<acf>};
|
||||||
|
#echo {$jobmarket_timer_line};
|
||||||
|
#unvar {$jobmarket_timer_line};
|
||||||
|
|
||||||
|
#unvar {missions[jobmarket][active_list][$current_player][$current_job]};
|
||||||
|
} {3600};
|
||||||
|
};
|
||||||
|
#unvar {delayname};
|
||||||
|
};
|
||||||
|
|
||||||
|
#ALIAS {/jobmarket_recreate_delays} {
|
||||||
|
#format {current_time} {%T};
|
||||||
|
|
||||||
|
#nop == start with retry list;
|
||||||
|
#foreach {*missions[jobmarket][retry_list][]} {player} {
|
||||||
|
#local {delay_time} {$missions[jobmarket][retry_list][$player]};
|
||||||
|
#math {delay_time} {600 - ($current_time - $delay_time)};
|
||||||
|
|
||||||
|
#if {$delay_time < 1} {
|
||||||
|
#unvar {missions[jobmarket][retry_list][$player]};
|
||||||
|
#continue;
|
||||||
|
};
|
||||||
|
|
||||||
|
#line sub variable {
|
||||||
|
#delay {$delay_time} {
|
||||||
|
#format {jobmarket_timer_line} {<acf>[<fff>missions<acf>] <138>*<900><cfa> %s <acf>can now apply for another Job Market mission.<099>} {$player};
|
||||||
|
#echo {$jobmarket_timer_line};
|
||||||
|
#unvar {jobmarket_timer_line};
|
||||||
|
|
||||||
|
#unvar {missions[jobmarket][retry_list][$player]};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
#nop == do all the difficulties;
|
||||||
|
#foreach {*missions[jobmarket][active_list][]} {player} {
|
||||||
|
#foreach {*missions[jobmarket][active_list][$player][]} {$job} {
|
||||||
|
#local {delay_time} {$missions[jobmarket][active_list][$player][$job]};
|
||||||
|
#math {delay_time} {3600 - ($current_time - $delay_time)};
|
||||||
|
|
||||||
|
#if {$delay_time < 1} {
|
||||||
|
#unvar {missions[jobmarket][active_list][$player][$difficulty]};
|
||||||
|
#continue;
|
||||||
|
};
|
||||||
|
|
||||||
|
#line sub variable {
|
||||||
|
#delay {$delay_time} {
|
||||||
|
#format {jobmarket_timer_line} {<acf>[<fff>missions<acf>] <138>*<900><cfa> %s <acf>can now do another Job Market "%c%s%c" mission.<099>} {$player} {Jade} {$job} {<acf>};
|
||||||
|
#echo {$jobmarket_timer_line};
|
||||||
|
#unvar {jobmarket_timer_line};
|
||||||
|
|
||||||
|
#unvar {missions[jobmarket][active_list][$player][$difficulty]};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
#CLASS {missiontimers_jobmarket} {close};
|
||||||
Loading…
x
Reference in New Issue
Block a user