Trader-Mission Document Check

Trader mission to check an unknown document, if it a vehicle manual.
With a chance of 70%, the Trader can read the document and can give you a Vehicle manual back. The better the manuel, the lower the chance
This commit is contained in:
He-Man 2018-10-22 19:39:06 +02:00
parent 88e8bcf667
commit 494a905857
3 changed files with 110 additions and 1 deletions

View File

@ -15,13 +15,23 @@
class EpochMissionList{
// traderMissionClasses[] = {"missionMonster","missionDelivery","missionEscort","missionUav","missionSapper","missionSkull","missionMilitary","gameCaptureTheJammer","gameCarRace","infoTime","infoName","infoNews","infoVehicles","infoPeople","helpAirDrop","debugResetMission"}; //Exclude from here to remove from menu and trigger
traderMissionClasses[] = {"missionfishing","missionDelivery","missionUav","infoTime","infoName","infoNews","infoVehicles","infoPeople","debugResetMission"}; //Exclude from here to remove from menu and trigger
traderMissionClasses[] = {"missionDocCheck","missionfishing","missionDelivery","missionUav","infoTime","infoName","infoNews","infoVehicles","infoPeople","debugResetMission"}; //Exclude from here to remove from menu and trigger
traderMissionActiveNames[] = {}; //Not currently used (WIP)
traderMissionLongDesc[] = {}; //Not currently used (WIP)
traderMissionActiveLongDesc[] = {}; //Not currently used (WIP)
};
class epochMissions {
class missionDocCheck{
missionName = "Check unknown documents"; //Name of mission as it appears in trader list
missionToolTip= "Trader can check your unknown document and eventually find out, what it is."; //Tooltip for trader menu
missionDesc = "You must have a unknown document in your inventory. The trader will check, what it is."; //Misison description as it appears in trader menu.
missionDeny = ""; //Specify a call compile condition. If it returns true the mission will be dis-allowed. Title will be rust coloured and prefixed with NOT ALLOWED.
missionDenyToolTip = ""; //Provides a tooltip explaining why the mission is denied. prefixed with NOT ALLOWED.
tasksList[] = {"DocCheckAccept"}; //Must contain a list of tasks used for this mission, in order. Used to control trader menu when mission is active. WIP - To control mission from this array alone.
missionTrigger = ""; //A dynamic trigger that sets off the mission anywhere in-game. e.g. player != vehicle player Not currently used (WIP)
missionTriggerDialog[] = {""}; //Randomly selected dialogue that is shown when mission is dynamically triggered. Not currently used (WIP)
};
class missionfishing{
missionName = "Bring me a fresh Fish"; //Name of mission as it appears in trader list
missionToolTip= "Bring the Trader a fresh Fish from the Water."; //Tooltip for trader menu

View File

@ -0,0 +1,98 @@
class DocCheckAccept{
author = "He-Man";
title = "Document check accept";
simpleTask = 0;
items[] = {};
triggerDelay = 1;
triggerintervall = 10;
markerType = 0;
markerVisible = 0;
markerRadius = 0;
markerText = "";
initcall = "";
cleanUpCall = "";
dialogues[] = {};
callevents[] = {};
abandonTime = 240;
failedCondition = "missionNameSpace getVariable ['InSafeZone',false]";
faileddialogues[] = {"Mission not allowed in Safe Zone"};
completeCondition = "true";
completedialogues[] = {};
completedCALL = "";
reward[] = {};
cleanUp = 0;
nextTask[] = {"DocCheckStart"};
};
class DocCheckStart{
author = "He-Man";
title = "Document check start";
simpleTask = 0;
items[] = {};
triggerDelay = 1;
triggerintervall = 8;
markerType = 0;
markerVisible = 0;
markerRadius = 0;
markerText = "";
initcall = "EPOCH_Mission_StartPos = getpos player";
cleanUpCall = "EPOCH_Mission_StartPos = nil;";
dialogues[] = {
{
"'ItemDocument' in magazines player",
{"You have an unknown Document for me? Let's have a look...","Lets try to find out what kind of document you have...","Let's try to identify your unknown document..."}
},
{
"'ItemDocument' in magazines player",
{"Hmm, it's hard to identify it... give me some seconds","Oh, I think it is... hmm... no... wait..."}
}
};
callevents[] = {
{
"player distance EPOCH_Mission_StartPos > 5",
"[selectrandom ['Abort - Come back or I can not check your document!','Abort - Hey, I need your document. Come back!','Abort - If you run away, I can not check your document!'],5,[[0,0,0,0.5],[1,0.5,0,1]]] call epoch_message",
{"DocCheckAbord"}
},
{
"!('ItemDocument' in magazines player)",
"[selectrandom ['Come back later with an unknown document.','You have no unknown document. Find one and come back later.','Without an unknown document, I have nothing to check'],5,[[0,0,0,0.5],[1,0.5,0,1]]] call epoch_message",
{"DocCheckAbord"}
}
};
abandonTime = 240;
failedCondition = "!(alive player)";
faileddialogues[] = {};
completeCondition = "'ItemDocument' in magazines player && diag_tickTime - EPOCH_task_startTime >= 12 && alive player && player distance EPOCH_Mission_StartPos <= 5";
completedialogues[] = {};
completedCALL = "if !('ItemDocument' in magazines player) exitwith {}; player removeMagazine 'ItemDocument'; if ((random 100) > 70) exitwith {[selectrandom ['Oh no, your document is too much damaged. Sorry!','Sorry, I can not read this document. It is only trash. Sorry!'],5] call epoch_message};_randomdoc = selectRandomWeighted ['ItemVehDoc1',10,'ItemVehDoc2',6,'ItemVehDoc3',4,'ItemVehDoc4',2,'ItemVehDocRara',1]; [format ['Oh great, it is a %1 - I put it in your pocket',_randomdoc call EPOCH_itemDisplayName],5,[[0,0,0,0.5],[1,0.5,0,1]]] call Epoch_Message; _randomdoc call EPOCH_fnc_addItemOverflow";
reward[] = {};
cleanUp = 1;
nextTask[] = {};
};
class DocCheckAbord{
author = "He-Man";
title = "DocCheckAbord";
simpleTask = 0;
items[] = {};
triggerDelay = 1;
triggerintervall = 1;
markerType = 0;
markerVisible = 0;
markerRadius = 0;
markerText = "";
initcall = "EPOCH_Mission_StartPos = nil;";
cleanUpCall = "";
dialogues[] = {
};
callevents[] = {
};
abandonTime = 240;
failedCondition = "true";
faileddialogues[] = {};
completeCondition = "false";
completedialogues[] = {};
completedCALL = "";
reward[] = {};
cleanUp = 0;
nextTask[] = {};
};

View File

@ -19,4 +19,5 @@ class inGameTasks {
#include "CfgMissions\CfgmissionMilitary.hpp"
#include "CfgMissions\CfgmissionMonster.hpp"
#include "CfgMissions\CfgmissionFish.hpp"
#include "CfgMissions\CfgDocCheck.hpp"
};