// Evol Script // Author: Gumi, Jesusalva // TODO: This script must be auto-generated from db/quests.conf to be of any use function script GlobalQuestDebug { do { clear; setnpcdialogtitle l("Quest debug") + " - " + l("Other"); mes l("This menu gives access to quest debug menus for @@ quests.", strtolower(l("Other"))); next; mes l("Please select a quest:"); menuint menuimage("actions/back", l("Go back")), -1, l("Custom"), -136; switch (@menuret) { case -1: return; case -136: mes "Determine the quest number, as stated in db/quests.conf"; input .@quest; if (!.@quest) return; mes ""; mes l("DEBUG: Changing @@, Values: (@@, @@, @@).", getquestlink(.@quest), getq(.@quest), getq2(.@quest), getq3(.@quest)); select "set 1", "set 2", "set 3", "reset"; mes l("DEBUG: Changing @@ field @@ to something else.", getquestlink(.@quest), @menu); mes ""; mes "Determine the new value (numeric only)"; input .@value; if (.@value < 0) return; if (@menu == 1) setq1 .@quest, .@value; if (@menu == 2) setq2 .@quest, .@value; if (@menu == 3) setq3 .@quest, .@value; if (@menu == 4) setq .@quest, .@value, 0, 0; return; default: return; } } while (1); return; } - script @qdebug 32767,{ end; OnCall: if (!is_gm()) { end; } GlobalQuestDebug; closedialog; end; OnSetq: if (.@atcmd_numparameters < 1) { dispbottom "setq called with invalid arguments (min. 2)"; dispbottom "GM Command syntax: @setq "; end; } .@q=atoi(.@atcmd_parameters$[0]); if (.@atcmd_numparameters < 2) { if (!is_trusted()) charcommand sprintf("@request Quest %d count: %d / %d / %d", .@q, getq(.@q), getq2(.@q), getq3(.@q)); else dispbottom sprintf("%s Quest count: %d / %d / %d", getquestlink(.@q), getq(.@q), getq2(.@q), getq3(.@q)); end; } switch (.@atcmd_numparameters) { case 4: setq3 .@q, atoi(.@atcmd_parameters$[3]); case 3: setq2 .@q, atoi(.@atcmd_parameters$[2]); case 2: setq1 .@q, atoi(.@atcmd_parameters$[1]); dispbottom l("Quest @@ modified by GM", getquestlink(.@q)); specialeffect 50, SELF, playerattached(); break; default: dispbottom "setq called with invalid arguments (max. 4)"; dispbottom "GM Command syntax: @setq "; break; } end; OnInit: bindatcmd "qdebug", "@qdebug::OnCall", 99, 99, 1; bindatcmd "setq", "@qdebug::OnSetq", 99, 99, 1; }