Skip to content

Instantly share code, notes, and snippets.

@Freddo3000
Last active October 10, 2019 16:03
Show Gist options
  • Select an option

  • Save Freddo3000/a5388ae326ec8a88c395e466a9b9827a to your computer and use it in GitHub Desktop.

Select an option

Save Freddo3000/a5388ae326ec8a88c395e466a9b9827a to your computer and use it in GitHub Desktop.

Revisions

  1. Freddo3000 revised this gist Oct 10, 2019. 1 changed file with 3 additions and 0 deletions.
    3 changes: 3 additions & 0 deletions cup_contact_replacement.sqf
    Original file line number Diff line number Diff line change
    @@ -1,6 +1,9 @@
    //Author: Freddo3000
    //Description: Replaces CUP buildings with Contact DLC equivalents
    //License: https://www.bohemia.net/community/licenses/arma-public-license-share-alike
    //Usage: [] execVM "cup_contact_replacement.sqf";

    if !(isServer) exitWith {};

    #define REPLACE(OLDTYPE,NEWTYPE) case OLDTYPE: {[_x, NEWTYPE] call _fnc_replaceBuilding}

  2. Freddo3000 created this gist Oct 10, 2019.
    83 changes: 83 additions & 0 deletions cup_contact_replacement.sqf
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,83 @@
    //Author: Freddo3000
    //Description: Replaces CUP buildings with Contact DLC equivalents
    //License: https://www.bohemia.net/community/licenses/arma-public-license-share-alike

    #define REPLACE(OLDTYPE,NEWTYPE) case OLDTYPE: {[_x, NEWTYPE] call _fnc_replaceBuilding}

    _fnc_replaceBuilding =
    {
    params ["_building", "_newType"];

    private _pos = getPosATL _building;
    private _dir = getDir _building;
    private _vectorDirUp = [vectorDir _building, vectorUp _building];
    hideObjectGlobal _building;

    private _newBuilding = createVehicle [_newType, _pos, [], 0, "CAN_COLLIDE"];
    _newBuilding setDir _dir;
    _newBuilding setVectorDirAndUp _vectorDirUp;
    };



    {
    switch (typeOf _x) do
    {
    REPLACE("Land_Church_01","Land_Church_05_F");
    REPLACE("Land_Church_02","Land_OrthodoxChurch_02_F");
    REPLACE("Land_Church_02a","Land_OrthodoxChurch_02_F");

    REPLACE("Land_Barn_Metal_dam","Land_Barn_04_F");
    REPLACE("Land_Barn_Metal","Land_Barn_04_F");
    REPLACE("Land_Barn_W_01_dam","Land_Barn_03_large_F");
    REPLACE("Land_Barn_W_01","Land_Barn_03_large_F");
    REPLACE("Land_Farm_WTower","Land_WaterTower_02_F");

    REPLACE("Vec03","Land_HayBale_01_F");
    REPLACE("Vec03","Land_HayBale_01_decayed_F");

    //REPLACE_OFFSET("Land_Shed_W4","Land_Shed_14_F");
    //REPLACE_OFFSET("Land_Shed_W02","Land_Shed_W02");

    //REPLACE_OFFSET("Land_HouseV_2I","Land_House_1B01_F");
    //REPLACE_OFFSET("Land_HouseV_1I1","Land_House_1W01_F");
    REPLACE("Land_HouseV_1I1_dam","Land_House_1W01_F");
    REPLACE("Land_HouseV_3I1","Land_House_1W08_F");
    REPLACE("Land_HouseV_3I2","Land_House_1W09_F");
    REPLACE("Land_HouseV_1L2","Land_House_1W06_F");
    REPLACE("Land_HouseV_1I3","Land_House_1W03_F");
    REPLACE("Land_HouseV_3I3","Land_House_1W10_F");
    REPLACE("Land_HouseV_1I4","Land_House_1W04_F");
    REPLACE("Land_HouseV_3I4","Land_House_1W11_F");
    REPLACE("Land_HouseV_2L","Land_House_2B01_F");
    REPLACE("Land_HouseV_2L_dam","Land_House_2B01_F");
    //REPLACE_OFFSET("Land_HouseV_1L1","Land_House_1W05_F");
    //REPLACE_OFFSET("Land_HouseV_1T","Land_House_1W07_F");
    REPLACE("Land_houseV_2T1","Land_House_2W01_F");
    REPLACE("Land_houseV_2T2","Land_House_2W02_F");
    REPLACE("Land_HouseV2_02","Land_House_2B02_F");
    REPLACE("Land_HouseV2_03B","Land_House_2B03_F");
    REPLACE("Land_HouseV2_03B_dam","Land_House_2B03_F");
    REPLACE("Land_HouseV2_04_interier_dam","Land_House_2B04_F");
    REPLACE("Land_HouseV2_04_interier","Land_House_2B04_F");
    //REPLACE_OFFSET("Land_HouseV2_01A_dam","Land_House_2W03_F");
    //REPLACE_OFFSET("Land_HouseV2_01A","Land_House_2W03_F");
    //REPLACE_OFFSET("Land_HouseV2_01B_dam","Land_House_2W04_F");
    //REPLACE_OFFSET("Land_HouseV2_01B","Land_House_2W04_F");

    REPLACE("Land_Ind_Stack_Big","Land_Smokestack_01_factory_F");
    REPLACE("Land_Misc_PowerStation","Land_PowerStation_01_F");
    REPLACE("Land_Ind_PowerStation_EP1","Land_PowerStation_01_F");
    REPLACE("Land_PowerStation_01_F","Land_Factory_02_F");
    REPLACE("Land_HouseV2_03_dam","Land_Factory_02_F");
    REPLACE("Land_HouseV2_03","Land_Factory_02_F");
    //REPLACE_OFFSET("Land_Misc_WaterStation","Land_WaterStation_01_F")
    //REPLACE_OFFSET("Land_Ind_Pec_03","Land_CementWorks_01_brick_F");
    //REPLACE_OFFSET("Land_Ind_Pec_03b","Land_CementWorks_01_grey_F");

    REPLACE("Land_rail_station_big","Land_Rail_Station_Big_F");
    REPLACE("Land_Rail_House_01","Land_Rail_Station_Small_F");


    };
    } forEach (nearestObjects [[worldsize / 2, worldsize / 2], ["House"], worldsize]);