mirror of
https://github.com/EpochModTeam/Epoch.git
synced 2024-08-30 18:22:13 +00:00
87c23b106f
* first build for 0.3.8 * 0.3.8.0190 * 0.3.8.0202 * 0.3.8.0213 * 0.3.7.0214 * 0.3.8.0222 * 0.3.8.0246 * 0.3.8.0247 fixed typo * 0.3.8.0249 more fixes for server compiler * 0.3.8.0256 * add build number and simple batch file for packing * match build number with internal * add build numbers to server pbo's and mission files also reworked build script for more options * 0.3.8.0261 * 0.3.8.0261 * 0.3.8.0283 * 0.3.8.0284 * changelog * 0.3.8.0307 * 0.3.8.0311 * remove old BEC plugin * update redis-server.exe to latest build and full config * 0.3.8.0314 * 0.3.8.0315 * inverse logic This should correctly prevent spawning these units nearby jammer or protection zones * use pushbackUnique here * optimized loot function by using selectRandom instead of slower sqf logic * 0.3.8.0316 * make use of new getDir functionality instead of BIS fnc * add lower disconnect value to server.cfg * use new getpos functionality * 0.3.8.0317 * 0.3.8.0319 * 0.3.8.0327 * 0.3.8.0338 changelog update tba * changelog * 0.3.8.0341 * BE update * 0.3.8.0353 * changelog * removed duplicates * 0.3.8.0355 fixed error in getIDC * 0.3.8.0356 revert to BIS_fnc_param as params threw errors * 0.3.8.0357 fixes for #496 #497 * 0.3.8.0359 fixed #497 fixed #496 * 0.3.8.0365 * 0.3.8.0371 * 0.3.8.0373 * 0.3.8.0379 * 0.3.8.0381 * 0.3.8.0386 * 0.3.8.0393 * 0.3.8.0395 * 0.3.8.0396 * 0.3.8.0397 * 0.3.8.0406 * 0.3.8.0409 * 0.3.8.0410 loot balance suppress error in spawnloot make near object check based on building size * 0.3.8.0412 * 0.3.8.0414 removed classes with scope 0 test remove loot trash on gear for #498 fixed #501 * 0.3.8.0415 * same
106 lines
4.3 KiB
Plaintext
106 lines
4.3 KiB
Plaintext
/*
|
|
Author: Andrew Gregory - EpochMod.com
|
|
|
|
Contributors: Aaron Clark - EpochMod.com
|
|
|
|
Description:
|
|
Mission accept
|
|
|
|
Licence:
|
|
Arma Public License Share Alike (APL-SA) - https://www.bistudio.com/community/licenses/arma-public-license-share-alike
|
|
|
|
Github:
|
|
https://github.com/EpochModTeam/Epoch/tree/master/Sources/epoch_code/compile/missions/EPOCH_mission_accept.sqf
|
|
*/
|
|
_index = lbValue[1500, lbCurSel 1500];
|
|
|
|
_config = "MissionList" call EPOCH_returnConfig;
|
|
_disabledMissions = getArray(_config >> "traderMissionDisabled");
|
|
if (_index in _disabledMissions) exitWith{ titleText["Invalid Mission", "PLAIN", 3]; };
|
|
|
|
_nrEnts = player nearEntities ["Man", 20];
|
|
_trader = objNull;
|
|
{
|
|
if ((_x getVariable ["AI_SLOT", -1]) > -1) exitWith {
|
|
_trader = _x;
|
|
};
|
|
}forEach _nrEnts;
|
|
|
|
if !(isNull _trader) then {
|
|
switch _index do {
|
|
case 0: {
|
|
[player,_trader] execFSM "\x\addons\a3_epoch_code\System\Trader_Missions_Delivery.fsm";
|
|
};
|
|
case 1: {
|
|
[player,_trader] execFSM "\x\addons\a3_epoch_code\System\Trader_Missions_Animal_Control.fsm";
|
|
};
|
|
case 2: {
|
|
[player,_trader] execFSM "\x\addons\a3_epoch_code\System\Trader_Missions_UAV.fsm";
|
|
};
|
|
case 3: {
|
|
[] execFSM "\x\addons\a3_epoch_code\System\Trader_Missions_VIP.fsm";
|
|
};
|
|
case 4: {
|
|
_formatMsg = format["<t size='1.6' color='#99ffffff'>The time is %1:%2.</t>",date select 3, date select 4];
|
|
[_formatMsg, 5] call Epoch_dynamicText;
|
|
};
|
|
case 5: {
|
|
_players = [];
|
|
_playersOut = [];
|
|
_grpWith = false;
|
|
_msg = "Apart from you";
|
|
_grp = group player;
|
|
_players = nearestObjects [player, ["Epoch_Man_base_F","Epoch_Female_base_F"], 750];
|
|
_players = _players - [player];
|
|
{
|
|
if!(group _x == _grp)then{
|
|
_playersOut pushBack _x;
|
|
}else{
|
|
_grpWith = true;
|
|
};
|
|
} forEach _players;
|
|
|
|
if(_grpWith)then{
|
|
_msg = "Apart from your team and you";
|
|
};
|
|
_trdrMsg = format["%2 %1, I haven't seen anybody for a while.",name player,_msg];
|
|
|
|
if (count _playersOut > 0) then {
|
|
_player = selectRandom _playersOut;
|
|
_trdrMsg = format["The last person picked up by the UAV was %1.",name _player];
|
|
};
|
|
[format["<t size='1.6' color='#99ffffff'>%1</t>",_trdrMsg], 5] call Epoch_dynamicText;
|
|
};
|
|
case 6:
|
|
{
|
|
_newsArr = ["My dog was shot. That made me sad.","Business has been quiet since word got out that sappers are in the area.","Looters are expecting too much crypto for all the junk they bring in.","What do I look like ? A newspaper vendor. Go Away.","The sun came up again this morning.. That's good news I suppose.","Keep your dog fed with raw or cooked carcasses.","Sappers are known to be good for their pelts. Just don't get too close to one","Some very strange rumours that a Construct was seen in the mountains. Those things are just bedtime stories to scare kids with.","UAVs are a good source of components.","Some say this town is haunted by malevolent spirits.","I hear the military are helping survivors with air drops. Your loot is always welcome here if you find one.","Jammers seem to scare away some of the bad.. things.","Help Military Support Crew spot you with smoke or chemlights.","Hmm, have heard bar stories of a new monster on the loose. You watch yourself out there."];
|
|
_config = 'CfgEpochClient' call EPOCH_returnConfig;
|
|
_customNews = getArray(_config >> "EPOCH_news");
|
|
if(count _customNews > 0)then{
|
|
{
|
|
_newsArr pushBack _x;
|
|
} forEach _customNews;
|
|
};
|
|
_formatMsg = format["<t size='1.6' color='#99ffffff'>%1</t>",selectRandom _newsArr];
|
|
[_formatMsg, 5] call Epoch_dynamicText;
|
|
};
|
|
case 7: {
|
|
_responseArr = ["My name..? What does it matter.","Hey buddy you rock up here unannounced and suddenly we're friends ? On your bike if you aren't buying or selling.",format["My name.. I am known as %1",name _trader], format["When names mattered I was called %1",name _trader],"I forget.. At least, I try to forget."];
|
|
_formatMsg = format["<t size='1.6' color='#99ffffff'>%1</t>",selectRandom _responseArr];
|
|
[_formatMsg, 5] call Epoch_dynamicText;
|
|
};
|
|
case 8: {
|
|
"Epoch_Sapper_F" call EPOCH_unitSpawn;
|
|
};
|
|
case 9: {
|
|
call EPOCH_spawn_looters;
|
|
};
|
|
default {
|
|
["Quit your jabbering and get the hell out of here.", 5] call Epoch_dynamicText;
|
|
};
|
|
};
|
|
|
|
} else {
|
|
titletext["Trader Lost. Goodbye.", "PLAIN DOWN", 3];
|
|
};
|