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.
320 lines
12 KiB
320 lines
12 KiB
#CLASS {quow} {kill};
|
|
#CLASS {quow} {open};
|
|
|
|
#VARIABLE {map_id_names} {
|
|
{1}{Ankh-Morpork}
|
|
{2}{AM Assassins}
|
|
{3}{AM Buildings}
|
|
{4}{AM Cruets}
|
|
{5}{AM Docks}
|
|
{6}{AM Guilds}
|
|
{7}{AM Isle of Gods}
|
|
{8}{Shades Maze}
|
|
{9}{Temple of Small Gods}
|
|
{10}{AM Temples}
|
|
{11}{AM Thieves}
|
|
{12}{Unseen University}
|
|
{13}{AM Warriors}
|
|
{14}{Pseudopolis Watch House}
|
|
{15}{Magpyr's Castle}
|
|
{16}{Bois}
|
|
{17}{Bes Pelargic}
|
|
{18}{BP Buildings}
|
|
{19}{BP Estates}
|
|
{20}{BP Wizards}
|
|
{21}{Brown Islands}
|
|
{22}{Death's Domain}
|
|
{23}{Djelibeybi}
|
|
{24}{IIL - DJB Wizards}
|
|
{25}{Ephebe}
|
|
{26}{Ephebe Underdocks}
|
|
{27}{Genua}
|
|
{28}{Genua Sewers}
|
|
{29}{GRFLX Caves}
|
|
{30}{Hashishim Caves}
|
|
{31}{Klatch Region}
|
|
{32}{Lancre Region}
|
|
{33}{Mano Rossa}
|
|
{34}{Monks of Cool}
|
|
{35}{Netherworld}
|
|
{37}{Pumpkin Town}
|
|
{38}{Ramtops Regions}
|
|
{39}{Sto-Lat}
|
|
{40}{Academy of Artificers}
|
|
{41}{Cabbage Warehouse}
|
|
{42}{AoA Library}
|
|
{43}{Sto-Lat Sewers}
|
|
{44}{Sprite Caves}
|
|
{45}{Sto Plains Region}
|
|
{46}{Uberwald Region}
|
|
{47}{UU Library}
|
|
{48}{Klatchian Farmsteads}
|
|
{49}{CTF Arena}
|
|
{50}{PK Arena}
|
|
{51}{AM Post Office}
|
|
{52}{Ninja Guild}
|
|
{53}{The Travelling Shop}
|
|
{54}{Slippery Hollow}
|
|
{55}{House of Magic - Creel}
|
|
{56}{Special Areas}
|
|
{57}{Skund Wolf Trail}
|
|
}
|
|
|
|
#LIST {last_query_list} {create};
|
|
|
|
#ALIAS {db gatherable %1} {
|
|
#unvariable {gatherable_display};
|
|
|
|
#variable {search_term} {%1};
|
|
#replace {search_term} {'} {''};
|
|
|
|
#format {query} {SELECT item_name, room_short, shop_items.room_id, map_id, INSTR(item_name, '%s') pos FROM shop_items INNER JOIN rooms on rooms.room_id = shop_items.room_id WHERE pos > 0 AND sale_price = 'gather' LIMIT 10;} {$search_term};
|
|
#format {db_command} {sqlite3 -separator ";" src/quow.db "%s"} {$query};
|
|
|
|
#script {gatherable_query_result} {$db_command};
|
|
#list {gatherable_query_result} {size} {gatherable_result_size};
|
|
|
|
#list {last_query_list} {clear};
|
|
|
|
#if {$gatherable_result_size > 0} {
|
|
#format {gatherable_display} {%cResults for gatherables matching "%c%s%c":} {bold blue}{yellow}{%1}{bold blue};
|
|
#echo {$gatherable_display};
|
|
|
|
#var {gather_count} {0};
|
|
|
|
#foreach {$gatherable_query_result[%*]} {inner_query_result} {
|
|
#replace {inner_query_result} {\\} {};
|
|
#list gatherable_results create {${inner_query_result}};
|
|
|
|
#variable {gatherable_info} {
|
|
{item_name}{$gatherable_results[1]}
|
|
{room_short}{$gatherable_results[2]}
|
|
{room_id}{$gatherable_results[3]}
|
|
{map_name}{$map_id_names[$gatherable_results[4]]}
|
|
};
|
|
|
|
#format {gatherable_display} {%c [%c%d%c]: %c%s%c found in %c%s%c,%c %s%c} {bold blue}{cyan}{$gather_count}{bold blue}{green}{$gatherable_info[item_name]}{bold blue}{orange}{$gatherable_info[room_short]}{bold blue}{orange}{$gatherable_info[map_name]}{bold blue};
|
|
#echo {$gatherable_display};
|
|
|
|
#variable {last_query_list[$gather_count]} {$gatherable_info};
|
|
#math {gather_count} {$gather_count + 1};
|
|
}
|
|
} {
|
|
#format {gatherable_display} {%cQuery Result: %c%s%c was not found.} {bold blue}{green}{%1}{bold blue};
|
|
#echo {$gatherable_display};
|
|
}
|
|
}
|
|
|
|
#ALIAS {db npc %1} {
|
|
#unvariable {npc_display};
|
|
|
|
#variable {search_term} {%1};
|
|
#replace {search_term} {'} {''};
|
|
|
|
#format {query} {SELECT npc_name, rooms.map_id, rooms.room_id, rooms.room_short, INSTR(npc_name, '%s') pos FROM npc_info INNER JOIN rooms on rooms.room_id = npc_info.room_id WHERE pos > 0 LIMIT 10} {$search_term};
|
|
#format {db_command} {sqlite3 -separator ";" src/quow.db "%s"} {$query};
|
|
|
|
#script {npc_query_result} {$db_command};
|
|
#list {npc_query_result} {size} {npc_result_size};
|
|
|
|
#list {last_query_list} {clear};
|
|
|
|
#if {$npc_result_size > 0} {
|
|
#format {npc_display} {%cResults for NPCs matching "%c%s%c":} {bold blue}{yellow}{%1}{bold blue};
|
|
#echo {$npc_display};
|
|
|
|
#var {npc_count} {0};
|
|
|
|
#foreach {$npc_query_result[%*]} {inner_query_result} {
|
|
#replace {inner_query_result} {\\} {};
|
|
#list npc_results create {${inner_query_result}};
|
|
|
|
#variable {npc_info} {
|
|
{npc_name}{$npc_results[1]}
|
|
{map_name}{$map_id_names[$npc_results[2]]}
|
|
{room_id}{$npc_results[3]}
|
|
{room_short}{$npc_results[4]}
|
|
};
|
|
|
|
#format {npc_display} {%c [%c%d%c]: %c%s%c found in %c%s%c,%c %s%c} {bold blue}{cyan}{$npc_count}{bold blue}{green}{$npc_info[npc_name]}{bold blue}{orange}{$npc_info[room_short]}{bold blue}{orange}{$npc_info[map_name]}{bold blue};
|
|
#echo {$npc_display};
|
|
|
|
#variable {last_query_list[$npc_count]} {$npc_info};
|
|
#math {npc_count} {$npc_count + 1};
|
|
}
|
|
} {
|
|
#format {npc_display} {%cQuery Result: %c%s%c was not found.} {bold blue}{green}{%1}{bold blue};
|
|
#echo {$npc_display};
|
|
}
|
|
};
|
|
|
|
#ALIAS {db npcitem %1} {
|
|
#unvariable {npcitem_display};
|
|
|
|
#variable {search_term} {%1};
|
|
#replace {search_term} {'} {''};
|
|
|
|
#format {query} {SELECT npc_info.map_id, npc_name, npc_info.room_id, item_name, room_short, INSTR(item_name, '%s') pos FROM 'npc_info' INNER JOIN npc_items ON npc_items.npc_id = npc_info.npc_id INNER JOIN rooms on npc_info.room_id = rooms.room_id WHERE pos > 0 LIMIT 10} {$search_term};
|
|
#format {db_command} {sqlite3 -separator ";" src/quow.db "%s"} {$query};
|
|
|
|
#script {npcitem_query_result} {$db_command};
|
|
#list {npcitem_query_result} {size} {npcitem_result_size};
|
|
|
|
#list {last_query_list} {clear};
|
|
|
|
#if {$npcitem_result_size > 0} {
|
|
#format {npcitem_display} {%cResults for NPC items matching "%c%s%c":} {bold blue}{yellow}{%1}{bold blue};
|
|
#echo {$npcitem_display};
|
|
|
|
#var {npcitem_count} {0};
|
|
|
|
#foreach {$npcitem_query_result[%*]} {inner_query_result} {
|
|
#replace {inner_query_result} {\\} {};
|
|
#list npcitem_results create {${inner_query_result}};
|
|
|
|
#variable {npcitem_info} {
|
|
{map_name}{$map_id_names[$npcitem_results[1]]}
|
|
{npc_name}{$npcitem_results[2]}
|
|
{room_id}{$npcitem_results[3]}
|
|
{item_name}{$npcitem_results[4]}
|
|
{room_short}{$npcitem_results[5]}
|
|
};
|
|
|
|
#format {npcitem_display} {%c [%c%d%c]: %c%s%c found on %c%s%c in %c%s%c,%c %s%c} {bold blue}{cyan}{$npcitem_count}{bold blue}{green}{$npcitem_info[item_name]}{bold blue}{white}{$npcitem_info[npc_name]}{bold blue}{orange}{$npcitem_info[room_short]}{bold blue}{orange}{$npcitem_info[map_name]}{bold blue};
|
|
#echo {$npcitem_display};
|
|
|
|
#variable {last_query_list[$npcitem_count]} {$npcitem_info};
|
|
#math {npcitem_count} {$npcitem_count + 1};
|
|
}
|
|
} {
|
|
#format {npcitem_display} {%cQuery Result: %c%s%c was not found.} {bold blue}{green}{%1}{bold blue};
|
|
#echo {$npcitem_display};
|
|
}
|
|
};
|
|
|
|
#ALIAS {db item %1} {
|
|
#unvariable {item_display};
|
|
|
|
#variable {search_term} {%1};
|
|
#replace {search_term} {'} {''};
|
|
|
|
#format {query} {SELECT item_name, sale_price, room_short, shop_items.room_id, map_id, INSTR(item_name, '%s') pos FROM shop_items INNER JOIN rooms on rooms.room_id = shop_items.room_id WHERE pos > 0 AND sale_price != 'gather' LIMIT 10;} {$search_term};
|
|
#format {db_command} {sqlite3 -separator ";" src/quow.db "%s"} {$query};
|
|
|
|
#script {item_query_result} {$db_command};
|
|
#list {item_query_result} {size} {item_result_size};
|
|
|
|
#list {last_query_list} {clear};
|
|
|
|
#if {$item_result_size > 0} {
|
|
#format {item_display} {%cResults for items items matching "%c%s%c":} {bold blue}{yellow}{%1}{bold blue};
|
|
#echo {$item_display};
|
|
|
|
#var {item_count} {0};
|
|
|
|
#foreach {$item_query_result[%*]} {inner_query_result} {
|
|
#replace {inner_query_result} {\\} {};
|
|
#list item_results create {${inner_query_result}};
|
|
|
|
#variable {item_info} {
|
|
{item_name}{$item_results[1]}
|
|
{sale_price}{$item_results[2]}
|
|
{room_short}{$item_results[3]}
|
|
{room_id}{$item_results[4]}
|
|
{map_name}{$map_id_names[$item_results[5]]}
|
|
};
|
|
|
|
#format {item_display} {%c [%c%d%c]: %c%s%c (%c%s%c) found in %c%s%c,%c %s%c} {bold blue}{cyan}{$item_count}{bold blue}{green}{$item_info[item_name]}{bold blue}{yellow}{$item_info[sale_price]}{bold blue}{orange}{$item_info[room_short]}{bold blue}{orange}{$item_info[map_name]}{bold blue};
|
|
#echo {$item_display};
|
|
|
|
#variable {last_query_list[$item_count]} {$item_info};
|
|
#math {item_count} {$item_count + 1};
|
|
}
|
|
} {
|
|
#format {item_display} {%cQuery Result: %c%s%c was not found.} {bold blue}{green}{%1}{bold blue};
|
|
#echo {$item_display};
|
|
}
|
|
}
|
|
|
|
#ALIAS {db room %1} {
|
|
#unvariable {room_display};
|
|
|
|
#variable {search_term} {%1};
|
|
#replace {search_term} {'} {''};
|
|
|
|
#format {query} {SELECT room_id, map_id, room_short, room_type, INSTR(room_short, '%s') pos FROM rooms WHERE pos > 0 LIMIT 10;} {$search_term};
|
|
#format {db_command} {sqlite3 -separator ";" src/quow.db "%s"} {$query};
|
|
|
|
#script {room_query_result} {$db_command};
|
|
#list {room_query_result} {size} {room_result_size};
|
|
|
|
#list {last_query_list} {clear};
|
|
|
|
#if {$room_result_size > 0} {
|
|
#format {room_display} {%cResults for items items matching "%c%s%c":} {bold blue}{yellow}{%1}{bold blue};
|
|
#echo {$room_display};
|
|
|
|
#var {room_count} {0};
|
|
|
|
#foreach {$room_query_result[%*]} {inner_query_result} {
|
|
#replace {inner_query_result} {\\} {};
|
|
#list room_results create {${inner_query_result}};
|
|
|
|
#variable {room_info} {
|
|
{room_id}{$room_results[1]}
|
|
{map_name}{$map_id_names[$room_results[2]]}
|
|
{room_short}{$room_results[3]}
|
|
{room_type}{$room_results[4]}
|
|
};
|
|
|
|
#format {room_display} {%c [%c%d%c]: %c%s%c (%c%s%c) found in %c%s%c} {bold blue}{cyan}{$room_count}{bold blue}{green}{$room_info[room_short]}{bold blue}{yellow}{$room_info[room_type]}{bold blue}{orange}{$room_info[map_name]}{bold blue};
|
|
#echo {$room_display};
|
|
|
|
#variable {last_query_list[$room_count]} {$room_info};
|
|
#math {room_count} {$room_count + 1};
|
|
}
|
|
} {
|
|
#format {room_display} {%cQuery Result: %c%s%c was not found.} {bold blue}{green}{%1}{bold blue};
|
|
#echo {$room_display};
|
|
};
|
|
};
|
|
|
|
#ALIAS {db route %1} {
|
|
#if {&last_query_list[%1]} {
|
|
#var {target_room} {$last_query_list[%1]};
|
|
#format {route_display} {%c[speedwalk] Generating speedwalk from current location to %c%s%c, %c%s%c...} {bold blue}{green}{$target_room[room_short]}{bold blue}{orange}{$target_room[map_name]}{bold blue};
|
|
|
|
#echo {$route_display};
|
|
|
|
#var {route_current_room_id} {$GMCP[room][info][identifier]};
|
|
#var {route_target_room_id} {$target_room[room_id]};
|
|
|
|
#format {route_command} {python src/maproute.py %s %s} {$route_current_room_id} {$route_target_room_id};
|
|
#script {speedwalk_result} {$route_command};
|
|
|
|
#if {"$speedwalk_result[1]" == "0"} {
|
|
#format {route_error} {%c[speedwalk] Unable to find route to %c%s%c or unknown current room.} {bold blue}{green}{$target_room[room_short]}{bold blue};
|
|
#echo {$route_error};
|
|
#return;
|
|
}
|
|
#send {$speedwalk_result[1]};
|
|
|
|
#variable {route_length} {$speedwalk_result[1]};
|
|
#replace {route_length} {\\\;} {;};
|
|
#replace {route_length} { } {};
|
|
#list {route_length} {create} {$route_length};
|
|
#list {route_length} {size} {route_length};
|
|
|
|
#format {route_confirm} {%c[speedwalk] A route was found, type "%cspeedwalk%c" to fast travel. [%g steps]} {bold blue}{green}{bold blue}{$route_length};
|
|
#echo {$route_confirm};
|
|
} {
|
|
#format {route_display} {%c[speedwalk] No previous query data found, try searching first.} {bold blue};
|
|
#echo {$route_display};
|
|
}
|
|
};
|
|
|
|
#ALIAS {speedwalk} {
|
|
#send {RuhsSpeedRun};
|
|
}
|
|
|
|
#CLASS {quow} {close};
|