Skip to content

Commit

Permalink
Initial commit
Browse files Browse the repository at this point in the history
  • Loading branch information
nomisum committed Jul 7, 2020
0 parents commit 365e9a8
Show file tree
Hide file tree
Showing 669 changed files with 60,979 additions and 0 deletions.
2 changes: 2 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Auto detect text files and perform LF normalization
* text=auto
3 changes: 3 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# TvT Template - Anleitung im [WIKI](https://github.com/gruppe-adler/TvT_Template.VR/wiki)

Ziel dieser Vorlage ist es, eine Basis für simple, nicht-dynamische TvT Missionen zu schaffen. Enthalten sind unsere üblichen TvT-Spieleinstellungen, ein Respawn System, einfache Siegbedingungen und TvT-Loadouts.
8 changes: 8 additions & 0 deletions USER/ammo/fillWithAmmo.sqf
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
params ["_crate"];

if (!isServer) exitWith {};

_crate addMagazineCargoGlobal ["rhs_30Rnd_545x39_AK_green", 200];
_crate addMagazineCargoGlobal ["rhsusf_mag_40Rnd_46x30_FMJ", 200];
_crate addMagazineCargoGlobal ["rhssaf_mag_15Rnd_9x19_FMJ", 200];
_crate addItemCargoGlobal ["tfar_fadak", 200];
18 changes: 18 additions & 0 deletions USER/ammo/removeHE.sqf
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
if (!isServer) exitWith {};

params ["_vehicle"];

{
_x params ["_type", "_turretpath", "_ammoCount", "_id", "_creator"];

private _ammo = [configfile >> "CfgMagazines" >> _type >> "ammo", "string", ""] call CBA_fnc_getConfigEntry;
private _splashDamage = [configfile >> "CfgAmmo" >> _ammo >> "indirectHit", "number", 0] call CBA_fnc_getConfigEntry;
private _splashRange = [configfile >> "CfgAmmo" >> _ammo >> "indirectHitRange", "number", 0] call CBA_fnc_getConfigEntry;

if (_splashRange > 3 && _splashDamage > 0) then {
_vehicle removeMagazinesTurret [_type, _turretpath];
diag_log format ["removing ammo %1 from %2, splash damage is %3 and range %4",
_ammo, _vehicle, _splashDamage, _splashRange];
};

} forEach (magazinesAllTurrets _vehicle);
13 changes: 13 additions & 0 deletions USER/briefing.sqf
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
//BRIEFING =====================================================================
//Briefingeinträge - Wenn Variable leeren String enthält (Bsp.: _lage = ""), wird dieser Eintrag nicht erstellt.
_lage = //Geschehnisse bis jetzt, Feindlage (Stärke, Verhalten, Absicht), eigene Lage (Stärke, Position, Absicht)
"Lagebeschreibung";

_auftrag = //Darlegung des Missionszieles
"Auftragsbeschreibung";

_durchfuehrung = //Wie soll das Missionsziel erreicht werden? Truppeneinteilung, Sicherung, Gefechtsaufklärung
"Durchführung der Mission";

_einsatzunterstuetzung = //Informationen über unterstützende Einheiten (Luft, Artillerie, etc.) und Nachschub / Versorgungsmöglichkeiten
"verfügbare Einsatzunterstützung";
53 changes: 53 additions & 0 deletions USER/civSettings.hpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
/*
* Legt Einstellungen für grad-civs Zivilisten fest.
* In der Klasse "userEquipment" können eigene Ausrüstungsgegenstände für die Zivilisten definiert werden.
*/
enableCivs = 0;

debugCivState = 0;
backpackProbability = 0.15;

maxCivsResidents = 20;
spawnDistancesResidents[] = {750, 1500};

maxCivsOnFoot = 10;
spawnDistancesOnFoot[] = {1000,4500};

enableInVehicles = 1;
automaticVehicleGroupSize = 1;
maxCivsInVehicles = 5;
spawnDistancesInVehicles[] = {1800,5000};

class userEquipment {
// Soll die hier definierte Ausrüstung die vordefinierte, inselabhängige Ausrüstung ersetzen oder zu dieser hinzugefügt werden? (0: hinzufügen, 1: ersetzen)
replace = 0;

// Uniformen
clothes[] = {

};

// Helme, Mützen
headgear[] = {

};

// Gesichter
faces[] = {

};

// Brillen, Masken, Halstücher
goggles[] = {

};

// Rucksäcke
backpacks[] = {

};

vehicles[] = {

};
};
9 changes: 9 additions & 0 deletions USER/debug/logSides.sqf
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
params ["_name", "_encryption", "_ffOriginalSide", "_technicalSide", "_didjip"];

diag_log format ["------------------ FF TFAR RADIOS RECEIVED BEGIN ------------------"];
diag_log format ["name player: %1", _name];
diag_log format ["radio code: %1", _encryption];
diag_log format ["FF originalSide: %1", _ffOriginalSide];
diag_log format ["technical side (should be east): %1", _technicalSide];
diag_log format ["client JIP: %1", _didjip];
diag_log format ["------------------ FF TFAR RADIOS RECEIVED END ------------------"];
117 changes: 117 additions & 0 deletions USER/faces/fn_getFace.sqf
Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@

params ["_unit"];

private _face = "LivonianHead_1";

switch (_unit getVariable ["FF_originalSide", sideUnknown]) do {
// russians
case west : {
_face = selectRandom [
"LivonianHead_1",
"LivonianHead_2",
"LivonianHead_3",
"LivonianHead_4",
"LivonianHead_5",
"LivonianHead_6",
"LivonianHead_7",
"LivonianHead_8",
"LivonianHead_9",
"LivonianHead_10",
"RussianHead_1",
"RussianHead_2",
"RussianHead_3",
"RussianHead_4",
"RussianHead_5"
];

};

// italians
case east : {
_face = selectRandom [
"PersianHead_A3_01",
"PersianHead_A3_02",
"PersianHead_A3_03",
"GreekHead_A3_01",
"GreekHead_A3_02",
"GreekHead_A3_03",
"GreekHead_A3_04",
"GreekHead_A3_05",
"GreekHead_A3_06",
"GreekHead_A3_07",
"GreekHead_A3_08",
"GreekHead_A3_09"
];
};

// asian
case independent : {
_face = selectRandom [
"AsianHead_A3_01",
"AsianHead_A3_02",
"AsianHead_A3_03",
"AsianHead_A3_04",
"AsianHead_A3_05",
"AsianHead_A3_06",
"AsianHead_A3_07",
"AsianHead_A3_01_sick",
"AsianHead_A3_02_sick",
"AsianHead_A3_03_sick",
"AsianHead_A3_04_sick",
"AsianHead_A3_05_sick",
"AsianHead_A3_06_sick",
"AsianHead_A3_07_sick",
"AsianHead_A3_02_sick",
"TanoanHead_A3_01",
"TanoanHead_A3_02",
"TanoanHead_A3_03",
"TanoanHead_A3_04",
"TanoanHead_A3_05",
"TanoanHead_A3_06",
"TanoanHead_A3_07",
"TanoanHead_A3_08",
"TanoanBossHead"
];
};

// german
case civilian : {
_face = selectRandom [
"WhiteHead_01",
"WhiteHead_02",
"WhiteHead_03",
"WhiteHead_04",
"WhiteHead_05",
"WhiteHead_06",
"WhiteHead_07",
"WhiteHead_08",
"WhiteHead_09",
"WhiteHead_10",
"WhiteHead_11",
"WhiteHead_12",
"WhiteHead_13",
"WhiteHead_14",
"WhiteHead_15",
"WhiteHead_16",
"WhiteHead_17",
"WhiteHead_18",
"WhiteHead_19",
"WhiteHead_20",
"WhiteHead_21",
"WhiteHead_22",
"WhiteHead_23",
"WhiteHead_24",
"WhiteHead_25",
"WhiteHead_26",
"WhiteHead_27",
"WhiteHead_28",
"WhiteHead_29",
"WhiteHead_30",
"WhiteHead_31",
"WhiteHead_32"
];
};
default {};
};

_face
17 changes: 17 additions & 0 deletions USER/fuelbus/addSpawnAction.sqf
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
params ["_classname", "_vehicle", "_helper", "_side"];

private _addSpawnAction = [
"AddSpawn",
"Spawn Car",
"",
{
params ["_target", "_player", "_params"];
_params params ["_helper", "_classname", "_side"];
[_classname, getPos _helper, getDir _helper, _side] execVM "USER\fuelbus\createCar.sqf";
}, {
(player distance _target) <= 4
}, {}, [_helper, _classname, _side]
] call ace_interact_menu_fnc_createAction;


[_vehicle, 0, ["ACE_MainActions"], _addSpawnAction] call ace_interact_menu_fnc_addActionToObject;
36 changes: 36 additions & 0 deletions USER/fuelbus/createCar.sqf
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
params ["_type", "_pos", "_dir", "_side"];

_pos params ["_posX", "_posY"];

private _busType = "RDS_Ikarus_Civ_01";
private _carType = "Car";

private _nearBusses = nearestObjects [_pos, [_busType, _carType], 30];
private _bussesNear = false;
{
private _bus = _x;

if (!alive _bus) then {
{
detach _x;
deleteVehicle _x;
} forEach attachedObjects _bus;
deleteVehicle _bus;
};

if (alive _bus) then {
_bussesNear = true;
};
} forEach _nearBusses;

if (_bussesNear) exitWith {
private _playersOfSide = [];
{
if (_x getVariable ["FF_originalSide", sideUnknown] == _side) then { _playersOfSide pushBackUnique _x; };
} forEach (playableUnits + switchableUnits);
["Remove the vehicles near your spawn to get a new car! Then try again."] remoteExec ["hint", _playersOfSide];

};

private _vehicle = createVehicle [_type, [_posX, _posY, 2], [], 0, "CAN_COLLIDE"];
_vehicle setDir _dir;
13 changes: 13 additions & 0 deletions USER/garbageCollector.hpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
/*
* Legt Einstellungen für die automatische Leichen- und Wrack-Müllabfuhr fest.
*/

corpseManagerMode = 0; // Leichen aufräumen (0/1)
corpseLimit = 30; // Schwellenwert an Leichen, ab dem die corpseRemovalMinTime benutzt wird
corpseRemovalMinTime = 300; // Mindestdauer bevor eine Leiche gelöscht wird
corpseRemovalMaxTime = 500; // Maximaldauer nach der eine Leiche gelöscht wird

wreckManagerMode = 0; // Wracks aufräumen (0/1)
wreckLimit = 20; // Schwellenwert an Wracks, ab dem die wreckRemovalMinTime benutzt wird
wreckRemovalMinTime = 500; // Mindestdauer bevor ein Wrack gelöscht wird
wreckRemovalMaxTime = 1200; // Maximaldauer nach der ein Wrack gelöscht wird
10 changes: 10 additions & 0 deletions USER/getFuelPoints.sqf
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
params [
["_side", sideUnknown]
];
switch (_side) do {
case west: {[fuelSellPoint_west] call ace_refuel_fnc_getFuel };
case east: {[fuelSellPoint_east] call ace_refuel_fnc_getFuel };
case independent: {[fuelSellPoint_independent] call ace_refuel_fnc_getFuel };
case civilian: {[fuelSellPoint_civilian] call ace_refuel_fnc_getFuel };
default {0};
};
16 changes: 16 additions & 0 deletions USER/getPoints.sqf
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
params [
["_side", sideUnknown]
];

private _fuelPoints = [_side] call (compile preprocessFileLineNumbers "USER\getFuelPoints.sqf");
private _infPointsPlayer = [_side, "Players killed"] call grad_points_fnc_getPointsCategory;
private _infPointsAI = [_side, "AI killed"] call grad_points_fnc_getPointsCategory;
private _infPoints = _infPointsAI + _infPointsPlayer;
private _softPoints = [_side, "VEHICLEKILLED"] call grad_points_fnc_getPointsCategory;

private _result = _fuelPoints + _infPoints + _softPoints;
// systemChat str _pointsCategorized;
// systemChat str _result;
// ["Kills",19],["Vehicles destroyed",10],["Other",5]

_result
Loading

0 comments on commit 365e9a8

Please sign in to comment.