• Creer une nouvelle mine


    Bonjour voici le tutoriel pour créer une nouvelle mine comme le cuivre par exemple :

    Source : http://www.altisliferpg.com/topic/5418-how-to-3145-create-a-new-mine-creer-une-nouvelle-mine/

    EDIT : FONCTIONNEL CHEZ MOI EN VERSION 3.1.4.8

    Commençons tout de suite :)

    Dans core / items / fn_pickaxeUse.sqf

    /*  
    	File: fn_pickaxeUse.sqf  
    	Author: Bryan "Tonic" Boardwine  
    
    	Description:  
    	Main functionality for pickaxe in mining.  
    */  
    closeDialog 0;  
    private["_mine","_itemWeight","_diff","_itemName","_val"];  
    player say3D "pickaxe";  
    player say3D "pickaxe";  
    switch (true) do  
    {  
    	case (player distance (getMarkerPos "lead_1") < 40): {_mine = "copperore"; _val = 2;};  
    	case (player distance (getMarkerPos "iron_1") < 40): {_mine = "ironore"; _val = 2;};  
    	case (player distance (getMarkerPos "salt_1") < 120) : {_mine = "salt"; _val = 4;};  
    	case (player distance (getMarkerPos "sand_1") < 75) : {_mine = "sand"; _val = 5;};  
    	case (player distance (getMarkerPos "diamond_1") < 50): {_mine = "diamond"; _val = 1;};  
    	case (player distance (getMarkerPos "oil_1") < 40) : {_mine = "oilu"; _val = 1;};  
    	case (player distance (getMarkerPos "oil_2") < 40) : {_mine = "oilu"; _val = 1;};  
    	case (player distance (getMarkerPos "rock_1") < 50): {_mine = "rock"; _val = 2;};  
    	case (player distance (getMarkerPos "silver_1") < 40): {_mine = "silver"; _val = 2;}; // AJOUTEZ CA  
    	default {_mine = "";};  
    };  
    //Mine check  
    if(_mine == "") exitWith {hint localize "STR_ISTR_Pick_NotNear"};  
    if(vehicle player != player) exitWith {hint localize "STR_ISTR_Pick_MineVeh";};  
    
    …  
    

    **silver_1 est le nom du marqueur sur la carte

    <40 est la distance jusqu’où vous pouvez miner à partir du marqueur, ici jusqu’à 40m du marqueur

    _val = 2 dit que vous minez 2 par 2**

    Dans core / actions / fn_processAction.sqf

    /*  
    	File: fn_processAction.sqf  
    	Author: Bryan "Tonic" Boardwine  
    
    	Description:  
    	Master handling for processing an item.  
    */  
    private["_vendor","_type","_itemInfo","_oldItem","_newItem","_cost","_upp","_hasLicense","_itemName","_oldVal","_ui","_progress","_pgText","_cP"];  
    _vendor = [_this,0,ObjNull,[ObjNull]] call BIS_fnc_param;  
    _type = [_this,3,"",[""]] call BIS_fnc_param;  
    //Error check  
    if(isNull _vendor OR _type == "" OR (player distance _vendor > 10)) exitWith {};  
    
    //unprocessed item,processed item, cost if no license,Text to display (I.e Processing  (percent) ..."  
    _itemInfo = switch (_type) do  
    {  
    	case "oil": {["oilu","oilp",1200,(localize "STR_Process_Oil")];};  
    	case "diamond": {["diamond","diamondc",1350,(localize "STR_Process_Diamond")];};  
    	case "heroin": {["heroinu","heroinp",2100,(localize "STR_Process_Heroin")];};  
    	...  
    	case "rhum": {["sugar","rhum",100,(localize "STR_Process_Rhum")];};  
    	case "flour": {["flour","flourp",100,(localize "STR_Process_Flour")];};  
    	case "silver": {["silver","silver_r",1120,(localize "STR_Process_Silver")];};// AJOUTEZ CA  
    	default {[];};  
    };  
    
    //Error checking  
    if(count _itemInfo == 0) exitWith {};  
    
    ...	  
    

    **Silver est la ressource de base / silver_r est la ressource traitée

    localize "STR_Process_Silver est du texte a rajouter dans stringtable.xml, prendre exemple sur le fer ou le cuivre**

    Dans core / config / fn_itemWeight.sqf

    /*  
    	File: fn_itemWeight.sqf  
    	Author: Bryan "Tonic" Boardwine  
    
    	Description:  
    	Gets the items weight and returns it.  
    */  
    private["_item"];  
    _item = [_this,0,"",[""]] call BIS_fnc_param;  
    if(_item == "") exitWith {};  
    
    switch (_item) do  
    {  
    	case "oilu": {7};  
    	case "oilp": {6};  
    	...  
    	case "copperore": {4};  
    	case "copper_r": {3};  
    	case "ironore": {5};  
    	case "iron_r": {3};  
    	case "silver": {6};// AJOUTEZ CA  
    	case "silver_r": {3};// AJOUTEZ CA  
    	case "sand": {3};  
    	case "salt": {3};  
    	case "salt_r": {1};  
    
    ...  
    
    

    Silver prend 6 places brut et 3 places traité

    Dans core / config / fn_licensePrice.sqf

    /*  
    	File: fn_licensePrice.sqf  
    	Author: Bryan "Tonic" Boardwine  
    
    	Description:  
    	Returns the license price.  
    */  
    private["_type"];  
    _type = [_this,0,"",[""]] call BIS_fnc_param;  
    if(_type == "") exitWith {-1};  
    
    switch (_type) do  
    {  
    	case "driver": {500}; //Drivers License cost  
    	case "boat": {1000}; //Boating license cost  
    	case "pilot": {25000}; //Pilot/air license cost  
    	case "gun": {15000}; //Firearm/gun license cost  
    	...  
    	case "sand": {15000}; //Sand licence cost  
    	case "iron": {15000}; //Iron licence cost  
    	case "silver": {30000}; //Silver licence cost// AJOUTEZ CA  
    	case "copper": {8000}; //Copper licence cost  
    	case "cement": {6500}; //Ciment licence cost  
    	...  
    

    Prix de la licence pour traité

    Dans core / config / fn_licenseType.sqf

    /*  
    	File: fn_licenseType.sqf  
    	Author: Bryan "Tonic" Boardwine  
    
    	Description:  
    	Returns the short-var of the license name to a long var and display name.  
    */  
    private["_type","_ret","_var","_mode"];  
    _type = [_this,0,"",[""]] call BIS_fnc_param;  
    _mode = [_this,1,-1,[0]] call BIS_fnc_param;  
    if(_type == "" OR _mode == -1) exitWith {[]};  
    
    switch (_mode) do  
    {  
    	case 0:  
    	{  
    		switch (_type) do  
    		{  
    			case "driver": {_var = "license_civ_driver"}; //Drivers License cost  
    			case "boat": {_var = "license_civ_boat"}; //Boating license cost  
    			case "pilot": {_var = "license_civ_air"}; //Pilot/air license cost  
    			case "gun": {_var = "license_civ_gun"}; //Firearm/gun license cost  
    			...  
    			case "sand": {_var = "license_civ_sand"};  
    			case "iron": {_var = "license_civ_iron"};  
    			case "silver": {_var = "license_civ_silver"}; //ADD THIS / AJOUTE CA  
    			case "copper": {_var = "license_civ_copper"};  
    			case "cement": {_var = "license_civ_cement"};  
    			case "mair": {_var = "license_med_air"};  
    			case "home": {_var = "license_civ_home"};  
    			default {_var = ""};  
    		};  
    	};  
    
    	case 1:  
    	{  
    		switch (_type) do  
    		{  
    			case "license_civ_driver": {_var = "driver"}; //Drivers License cost  
    			case "license_civ_boat": {_var = "boat"}; //Boating license cost  
    			case "license_civ_air": {_var = "pilot"}; //Pilot/air license cost  
    			case "license_civ_gun": {_var = "gun"}; //Firearm/gun license cost  
    			...  
    			case "license_civ_sand": {_var = "sand"};  
    			case "license_civ_iron": {_var = "iron"};  
    			case "license_civ_silver": {_var = "silver"}; // AJOUTEZ CA  
    			case "license_civ_copper": {_var = "copper"};  
    			case "license_civ_cement": {_var = "cement"};  
    			...  
    			case "license_civ_flour": {_var = "flour"};  
    			case "license_med_air": {_var = "mair"};  
    			case "license_civ_home": {_var = "home"};  
    			default {_var = ""};  
    		};  
    	};  
    };  
    
    _ret = [_var,(if(_var != "") then {([_var] call life_fnc_varToStr)})];  
    _ret;  
    

    Dans core / config / fn_varHandle.sqf

    /*  
    	File: fn_varHandle.sqf  
    	Author: Bryan "Tonic" Boardwine  
    
    	Description:  
    	Master handler for getting a variables name, short name, etc.  
    */  
    private["_var","_mode"];  
    _var = [_this,0,"",[""]] call BIS_fnc_param;  
    _mode = [_this,1,-1,[0]] call BIS_fnc_param;  
    if(_var == "" OR _mode == -1) exitWith {""};  
    
    switch (_mode) do  
    {  
    	case 0:  
    	{  
    		switch (_var) do  
    		{  
    			case "oilu": {"life_inv_oilu"};  
    			case "oilp": {"life_inv_oilp"};  
    			...  
    			case "copperore": {"life_inv_copperore"};  
    			case "ironore": {"life_inv_ironore"};  
    			case "iron_r": {"life_inv_ironr"};  
    			case "silver": {"life_inv_silver"}; // AJOUTE CA  
    			case "silver_r": {"life_inv_silverr"};// AJOUTE CA  
    			case "copper_r": {"life_inv_copperr"};  
    			case "salt": {"life_inv_salt"};  
    			case "salt_r": {"life_inv_saltr"};  
    			case "sand": {"life_inv_sand"};  
    			...  
    			case "defusekit": {"life_inv_defusekit"};  
    			case "storagesmall": {"life_inv_storagesmall"};  
    			case "storagebig": {"life_inv_storagebig"};  
    			case "battery": {"life_inv_battery"};  
    			case "kidney": {"life_inv_kidney"};  
    			case "scalpel": {"life_inv_scalpel"};  
    		};  
    	};  
    
    	case 1:  
    	{  
    		switch (_var) do  
    		{  
    			case "life_inv_oilu": {"oilu"};  
    			case "life_inv_oilp": {"oilp"};  
    			...  
    			case "life_inv_copperore": {"copperore"};  
    			case "life_inv_ironore": {"ironore"};  
    			case "life_inv_ironr": {"iron_r"};  
    			case "life_inv_silver": {"silver"}; // AJOUTEZ CA  
    			case "life_inv_silverr": {"silver_r"}; // AJOUTEZ CA  
    			case "life_inv_copperr": {"copper_r"};  
    			case "life_inv_sand": {"sand"};  
    			case "life_inv_salt": {"salt"};  
    			case "life_inv_glass": {"glass"};  
    			...  
    			case "life_inv_boltcutter": {"boltcutter"};  
    			case "life_inv_defusekit": {"defusekit"};  
    			case "life_inv_storagesmall": {"storagesmall"};  
    			case "life_inv_storagebig": {"storagebig"};  
    			case "life_inv_battery": {"battery"};  
    			case "life_inv_kidney": {"kidney"};  
    			case "life_inv_scalpel": {"scalpel"};  
    		};  
    	};  
    };  
    
    

    Dans core / config / fn_varToStr.sqf

    /*  
    	File: fn_varToStr.sqf  
    	Author: Bryan "Tonic" Boardwine  
    
    	Description:  
    	Takes the long-name (variable) and returns a display name for our  
    	virtual item.  
    */  
    private["_var"];  
    _var = [_this,0,"",[""]] call BIS_fnc_param;  
    if(_var == "") exitWith {""};  
    
    switch (_var) do  
    {  
    	//Virtual Inventory Items  
    	case "life_inv_oilu": {(localize "STR_Item_OilU")};  
    	case "life_inv_oilp": {(localize "STR_Item_OilP")};  
    	...  
    	case "life_inv_pickaxe": {(localize "STR_Item_Pickaxe")};  
    	case "life_inv_copperore": {(localize "STR_Item_CopperOre")};  
    	case "life_inv_ironore": {(localize "STR_Item_IronOre")};  
    	case "life_inv_ironr": {(localize "STR_Item_IronIngot")};  
    	case "life_inv_silver": {(localize "STR_Item_Silver")}; // AJOUTE CA  
    	case "life_inv_silverr": {(localize "STR_Item_SilverIngot")}; // AJOUTE CA  
    	case "life_inv_copperr": {(localize "STR_Item_CopperIngot")};  
    	case "life_inv_sand": {(localize "STR_Item_Sand")};  
    	case "life_inv_salt": {(localize "STR_Item_Salt")};  
    	...  
    	case "life_inv_defusekit": {(localize "STR_Item_DefuseKit")};  
    	case "life_inv_storagesmall": {(localize "STR_Item_StorageBS")};  
    	case "life_inv_storagebig": {(localize "STR_Item_StorageBL")};  
    	case "life_inv_battery": {(localize "STR_Item_Battery")};  
    	case "life_inv_kidney": {"Rein(s)"};  
    	case "life_inv_scalpel": {"Scalpel(s)"};  
    
    	//License Block  
    	case "license_civ_driver": {(localize "STR_License_Driver")};  
    	case "license_civ_air": {(localize "STR_License_Pilot")};  
    	...  
    	case "license_civ_diamond": {(localize "STR_License_Diamond")};  
    	case "license_civ_copper": {(localize "STR_License_Copper")};  
    	case "license_civ_iron": {(localize "STR_License_Iron")};  
    	case "license_civ_silver": {(localize "STR_License_Silver")}; // AJOUTE CA  
    	case "license_civ_sand": {(localize "STR_License_Sand")};  
    	case "license_civ_salt": {(localize "STR_License_Salt")};  
    	...  
    	case "license_civ_cement": {(localize "STR_License_Cement")};  
    	case "license_med_air": {(localize "STR_License_Pilot")};  
    	case "license_civ_home": {(localize "STR_License_Home")};  
    };  
    
    

    Dans core / config / fn_virt_shops.sqf

    /*  
    	File: fn_virt_shops.sqf  
    	Author: Bryan "Tonic" Boardwine  
    
    	Description:  
    	Config for virtual shops.  
    */  
    private["_shop"];  
    _shop = _this select 0;  
    
    switch (_shop) do  
    {  
    	case "market": {["Marché",["water","coffee","apple","applep","peach","cherry","cherryp","pear","pearp","rabbit","tbacon","redgull","pickaxe","fuelF","lockpick","battery","boltcutter","storagesmall","storagebig"]]};  
    	case "rebel": {["Marché rebelle",["water","apple","applep","cherry","cherryp","pear","pearp","peach","rabbit","tbacon","redgull","fuelF","lockpick","battery","scalpel","boltcutter","blastingcharge"]]};  
    	case "gang": {["Marché gang", ["water","coffee","apple","applep","peach","cherry","cherryp","pear","pearp","rabbit","tbacon","redgull","fuelF","lockpick","battery","scalpel","boltcutter","blastingcharge"]]};  
    	case "wongs": {["Dealer tortue",["turtlesoup","turtle"]]};  
    	case "coffee": {["Stratis Coffee Club",["coffee","donuts"]]};  
    	case "heroin": {["Dealer",["cocaine","cocainep","ephedra","ephedrap","heroinu","heroinp","cannabis","marijuana"]]};  
    	case "oil": {["Négociateur de kérozène",["oilp","pickaxe","fuelF"]]};  
    	case "fishmarket": {["Poissonnerie",["salema","ornate","mackerel","mullet","tuna","catshark"]]};  
    	case "glass": {["Négociateur de verre",["glass","pickaxe"]]};  
    	case "iron": {["Négociateur de metaux",["iron_r","copper_r","silver_r","pickaxe"]]};// AJOUTEZ silver_r  
    	case "diamond": {["Négociateur de diamant",["diamond","diamondc","pickaxe"]]};  
    	case "salt": {["Négociateur de sel",["salt_r","pickaxe"]]};  
    	case "cop": {["Marché gendarmerie",["water","coffee","apple","applep","peach","cherry","cherryp","pear","pearp","rabbit","donuts","tbacon","redgull","spikeStrip","fuelF","battery","defusekit"]]};  
    	case "cement": {["Négociateur de ciment",["cement","pickaxe"]]};  
    	case "gold": {["Négociateur d'or",["goldbar"]]};  
    	case "sugar": {["Négociateur de sucre",["sugarp"]]};  
    	case "rhum": {["Dealer d'alcool",["rhum"]]};  
    	case "flour": {["Boulanger",["flourp","donuts"]]};  
    	case "medmarijuana": {["Pharmacien",["medmarijuana"]]};  
    	case "organ": {["Dealer d'organes",["kidney","scalpel"]]};  
    };  
    

    Ici j’ai choisi de vendre les lingots d’argent au Negociateur de metaux, il y’a possibilite de faire un vendeur independant mais je n’en parlerais pas ici. case “iron”: {[“Négociateur de metaux”,[“iron_r”,“copper_r”,“silver_r”,“pickaxe”]]};// AJOUTEZ silver_r

    Dans core / configuration.sqf

    #include <macro.h>  
    /*  
    	Master Life Configuration File  
    	This file is to setup variables for the client, there are still other configuration files in the system  
    
    *****************************  
    ****** Backend Variables *****  
    *****************************  
    */  
    life_query_time = time;  
    life_action_delay = time;  
    
    …  
    
    /*  
    	Master Array of items?  
    */  
    life_vShop_rentalOnly = ["B_MRAP_01_hmg_F"];  
    __CONST__(life_vShop_rentalOnly,life_vShop_rentalOnly); //These vehicles can never be bought and only 'rented'. Used as a balancer & money sink. If you want your server to be chaotic then fine.. Remove it..  
    
    life_inv_items =   
    [  
    	"life_inv_oilu",  
    	"life_inv_oilp",  
    ...  
    	"life_inv_copperore",  
    	"life_inv_ironore",  
    	"life_inv_ironr",  
    	"life_inv_silver",  // AJOUTE CA  
    	"life_inv_silverr", // AJOUTE CA  
    	"life_inv_copperr",  
    	"life_inv_sand",  
    ...  
    	"life_inv_storagesmall",  
    	"life_inv_storagebig",  
    	"life_inv_battery",  
    	"life_inv_kidney",  
    	"life_inv_scalpel"  
    ];  
    
    //Setup variable inv vars.  
    {missionNamespace setVariable[_x,0];} foreach life_inv_items;  
    //Licenses [license var, civ/cop]  
    life_licenses =  
    [  
    	["license_cop_air","cop"],  
    	["license_cop_swat","cop"],  
    	["license_cop_cg","cop"],  
    	...  
    	["license_civ_diamond","civ"],  
    	["license_civ_copper","civ"],  
    	["license_civ_iron","civ"],  
    	["license_civ_silver","civ"], // AJOUTEZ CA  
    	["license_civ_sand","civ"],  
    	["license_civ_salt","civ"],  
    	["license_civ_cement","civ"],  
    	["license_med_air","med"],  
    	["license_civ_home","civ"]  
    ];  
    
    //Setup License Variables  
    {missionNamespace setVariable[(_x select 0),false];} foreach life_licenses;  
    
    life_dp_points = ["dp_1","dp_2","dp_3","dp_4","dp_5","dp_6","dp_7","dp_8","dp_9","dp_10","dp_11","dp_12","dp_13","dp_14","dp_15","dp_15","dp_16","dp_17","dp_18","dp_19","dp_20","dp_21","dp_22","dp_23","dp_24","dp_25"];  
    //[shortVar,reward]  
    life_illegal_items = [["heroinu",2000],["heroinp",4900],["rhum",4900],["cocaine",2900],["cocainep",7600],["cannabis",2000],["marijuana",3000],["ephedrap",3300],["ephedra",2900],["turtle",3000],["goldbar",95000],["blastingcharge",10000],["boltcutter",500],["kidney",5000]];  
    
    /*  
    	Sell / buy arrays  
    */  
    sell_array =   
    [  
    	["apple",50],  
    	["applep",100],  
    ...  
    	["diamond",850],  
    	["diamondc",2300],  
    	["iron_r",1600],  
    	["silver_r",2100], // AJOUTE CA  
    	["copper_r",1000],  
    	["salt_r",1300],  
    
    ...  
    

    Ensuite aller dans l’editeur d’arma 3 et creer un nouveaux PNJ puis dans l’initialisation mettez :

    this enableSimulation false; this allowDamage false; this addAction["Traiter l'argent",life_fnc_processAction,"silver",0,false,false,"",' life_inv_silver > 0 && !life_is_processing']; this addAction[format["%1 ($%2)",["license_civ_silver"] call life_fnc_varToStr,[(["silver"] call life_fnc_licensePrice)] call life_fnc_numberText],life_fnc_buyLicense,"silver",0,false,false,"",' !license_civ_silver && playerSide == civilian '];  
    

    Dans votre mission.sqm

    class Item300  
    		{  
    			position[]={16038.342,53.572468,18278.697};  
    			name="silver_1";  
    			text="Mine d'Argent";  
    			type="mil_triangle";  
    			colorName="ColorBrown";  
    		};  
    

    C’est le marqueur sur la carte

    Dans mission.sqm

    class Item301  
    		{  
    			position[]={22526.727,15.765107,16049.566};  
    			name="silver_mine_1";  
    			text="Fonderie d'Argent";  
    			type="mil_box";  
    			colorName="ColorBrown";  
    		};  
    

    silver_mine_1 est le marqueur pour le traitement de l’argent

    Dans core / vehicle / fn_deviceMine.sqf

    /*  
    	Author: Bryan "Tonic" Boardwine  
    
    	Description:  
    	Starts automated mining of resource from the tempest device.  
    */  
    private["_vehicle","_resourceZones","_zone","_weight","_item","_vInv","_itemIndex"];  
    _vehicle = [_this,0,ObjNull,[ObjNull]] call BIS_fnc_param;  
    if(isNull _vehicle) exitWith {}; //Null was passed?  
    if(!isNil {_vehicle getVariable "mining"}) exitWith {hint localize "STR_NOTF_DeviceIsMining";}; //Mining is already in process..  
    closeDialog 0; //Close the interaction menu.  
    life_action_inUse = true; //Lock out the interaction menu for a bit..  
    _weight = [_vehicle] call life_fnc_vehicleWeight;  
    if((_weight select 1) >= (_weight select 0)) exitWith {hint localize "STR_NOTF_DeviceFull"; life_action_inUse = false;};  
    _resourceZones = ["apple_1","apple_2","apple_3","apple_4","peaches_1","peaches_2","peaches_3","peaches_4","cherry_1","cherry_2","pear_1","pear_2","sugar_1","flour_1","heroin_1","cocaine_1","ephedra_1","weed_1","lead_1","iron_1","silver_1","salt_1","sand_1","diamond_1","oil_1","oil_2","rock_1"];  
    _zone = "";  
    
    //Find out what zone we're near  
    {  
    	if(player distance (getMarkerPos _x) < 150) exitWith {_zone = _x;};  
    } foreach _resourceZones;  
    
    if(_zone == "") exitWith {  
    	hint localize "STR_NOTF_notNearResource";  
    	life_action_inUse = false;  
    };  
    
    //Get the resource that will be gathered from the zone name...  
    _item = switch(true) do {  
    	case (_zone in ["apple_1","apple_2","apple_3","apple_4"]): {"apple"};  
    	case (_zone in ["peaches_1","peaches_2","peaches_3","peaches_4"]): {"peach"};  
    	case (_zone in ["cherry_1","cherry_2"]): {"cherry"};  
    	case (_zone in ["pear_1","pear_2"]): {"pear"};  
    	case (_zone in ["sugar_1"]): {"sugar"};  
    	case (_zone in ["flour_1"]): {"flour"};  
    	case (_zone in ["heroin_1"]): {"heroinu"};  
    	case (_zone in ["cocaine_1"]): {"cocaine"};  
    	case (_zone in ["ephedra_1"]): {"ephedra"};  
    	case (_zone in ["weed_1"]): {"cannabis"};  
    	case (_zone in ["lead_1"]): {"copperore"};  
    	case (_zone in ["iron_1"]): {"ironore"};  
    	case (_zone in ["silver_1"]): {"silver"}; // AJOUTEZ CA  
    	case (_zone in ["salt_1"]): {"salt"};  
    	case (_zone in ["sand_1"]): {"sand"};  
    	case (_zone in ["diamond_1"]): {"diamond"};  
    	case (_zone in ["oil_1","oil_2"]): {"oilu"};  
    	case (_zone in ["rock_1"]): {"rock"};  
    	default {""};  
    };  
    
    if(_item == "") exitWith {hint "Mauvaise ressource ?"; life_action_inUse = false;};  
    _vehicle setVariable ["mining",true,true]; //Lock the device  
    [_vehicle,"life_fnc_soundDevice",true,false] spawn life_fnc_MP; //Broadcast the 'mining' sound of the device for nearby units.  
    
    ...  
    

    **Pour pouvoir ramasser avec le tempest materiel :

    _resourceZones = [“apple_1”,“apple_2”,“apple_3”,“apple_4”,“peaches_1”,“peaches_2”,“peaches_3”,“peaches_4”,“cherry_1”,“cherry_2”,“pear_1”,“pear_2”,“sugar_1”,“flour_1”,“heroin_1”,“cocaine_1”,“ephedra_1”,“weed_1”,“lead_1”,“iron_1”,“silver_1”,“salt_1”,“sand_1”,“diamond_1”,“oil_1”,“oil_2”,“rock_1”];**

    Dans stringuable.xml ajoutez STR_Process_Silver apres celui de l’Iron

    <Key ID="STR_Process_Iron">  
    			<Original>Fonte du fer</Original>  
    			<English>Processing Iron</English>  
    		</Key>  
    		<Key ID="STR_Process_Silver">  
    			<Original>Fonte de l'argent</Original>  
    			<English>Processing Silver</English>  
    		</Key>  
    

    Puis ajoutez STR_Item_Silver apres celui la STR_Item_IronIngot :

    <Key ID="STR_Item_IronIngot">  
    			<Original>Lingot(s) de fer</Original>  
    			<English>Iron Ingot</English>  
    		</Key>  
    		<Key ID="STR_Item_Silver">  
    			<Original>Minerai(s) d'argent</Original>  
    			<English>Silver Ore</English>  
    		</Key>  
    		<Key ID="STR_Item_SilverIngot">  
    			<Original>Lingot(s) d'argent</Original>  
    			<English>Silver Ingot</English>  
    		</Key>  
    

    Et pour finir ajoutez STR_License_Silver après celui de l’Iron :

    <Key ID="STR_License_Iron">  
    			<Original>Formation fonte du fer</Original>  
    			<English>Iron Processing</English>  
    		</Key>  
    		<Key ID="STR_License_Silver">  
    			<Original>Formation fonte de l'argent</Original>  
    			<English>Silver Processing</English>  
    		</Key>  
    

    Voila je tien a dire je ne suis pas l’auteur donc si vous avez des problemes je ne serais pas en mesure de tous les regler, mais je pourrais en regler certain ,ne m’y conaissant pas trop je ne suis pas un expert desole. Je penses que d’autres personne s’y conaissent mieux que moi !

    Voila le tutoriel est finis et j’espere vous avoir aider :)

  • Salut super tuto, sa marche niquel je suis en ( 3.1.4.8)

    et je suppose avec ce système ont peut crée tout autre ressources en changeant tout les silvers part autre chose.

  • Exactement :D

  • Salut super tuto, sa marche niquel je suis en ( 3.1.4.8)

    et je suppose avec ce système ont peut crée tout autre ressources en changeant tout les silvers part autre chose.

    Voila n’importe quelle ressource

  • merci pour ce tuto, par contre je ne comprend pas bien ou est-ce que l’on met les coordonnées de minage ? parce que  quand je vais la ou je pose le marqueur, ça me dis que je ne suis pas sur une mine.

    Merci :)

    EDIT: C’est on j’ai trouver mon erreur ;) c’est tellement débile que je ne divulguerais rien :p

  • Bon tout compte fait ca ne fonctionne pas :/ j’ai bien tout vérifié, et voici ce que j’ai dans le fichier mission

    		class Item235  
    		{  
    			position[]={6235.624,43,16258.736};  
    			name="silver_mine_1";  
    			text="Fonderie D'Argent";  
    			type="mil_box";  
    			colorName="ColorBlack";  
    		};  
    		class Item236  
    		{  
    			position[]={4826.3403,338.4339,21944.059};  
    			name="silver_1";  
    			text="Mine de D'Argent";  
    			type="hd_objective";  
    		};  
    

    Cela mine bien (animation de récolte) mais mon inventaire reste vide :’(

  • AAAAARRRRGGGG c’est bon ca marche nikelllllllll !!!

    J’ai la tête qui va exploser…… j’avais pas modifier le fichier configuration -_-

    Merci encore pour le tuto :)  Bisous

  • AAAAARRRRGGGG c’est bon ca marche nikelllllllll !!!

    J’ai la tête qui va exploser…… j’avais pas modifier le fichier configuration -_-

    Merci encore pour le tuto :)  Bisous

    T’en fais pas c’est que des petites choses faut bien regarder se qu’on fait et pas se tromper. Et derien :)

  • Possible tuto comment traité 2 items pour en faire 1item en version 3.1.4.8 biensur

  • Possible tuto comment traité 2 items pour en faire 1item en version 3.1.4.8 biensur

    Je vais essayer de le traduire et surtout de comprendre son fonctionnement

  • Je ne trouve pas stringuable.xml

  • @mrboum747 Il est censé être dans ton dossier source d’Altis_Life.Altis

  • Merci bien pour ce tuto  ;D

  • Bonjoue comment fait on pour que la ressource se récolte sans pioche ?

  • Bonjour *

  • Tu veux dire que se sois comme les peches ou pommes ?

  • Exactement ! :)

  • Alors quelqu’un saurai m’aider ? :/

  • Merci beaucoup pour le tuto ;)

Messages 27Vues 4379