Ziko87 a écrit le dernier message :
Parfait je te remerciePour commencé on va sur le map et on place un marker sur la terre et on lui donne un nom de variable .
exemple: banane_1
Créé 2 VirtualItems le premier banane et le second banane_cuite.
Français - Créer un item virtuel
Bonjour, Comment créer un item virtuel ? 1 - Rendez-vous à la racine de votre mission. 2 - Rendez-vous dans \config\Config_vItems.hpp. Le fichier Config_vItems.hpp se décompose en deux grandes classes : La class VirtualShops { }; est utilisée pour déclarer l'ensemble des shops (marché...forum.the-programmer.com
Création farm:
Dans votre mission config/Config_Gather.hpp ajoutez cette ligne après class Resources { .
[CODE title="Config_Gather.hpp"]
class banane {
amount = 5;
zones[] = { "banane_1" };
item = "";
zoneSize = 30;
};[/CODE]
Création du traitement:
Ensuit on se dirige vers config/Config_Process.hpp ajoutez cette ligne après class ProcessAction { .
[CODE title="Config_Process.hpp"]
class banane {
MaterialsReq[] = {{"banane",1}};
MaterialsGive[] = {{"banane_cuite",1}};
Text = "STR_Process_banane";
//ScrollText = "Process banane";
NoLicenseCost = 1200;
};[/CODE]
Création du licence:
on va créé la licence pour le process on va dans config/Config_Licenses.hpp ajoutez cette ligne après class Licenses { ou //Processing Licenses . le nom de la licence doit être identique au nom de la class du process.
[CODE title="Config_Licenses.hpp"]
class banane {
variable = "banane";
displayName = "STR_License_banane";
price = 10000;
illegal = false;
side = "civ";
};[/CODE]
Pose init
Sur le mapping on pose un/des panneaux et on rentre init suivante pour le traitement.
[CODE title="init traitement"]
this addAction[localize"STR_Process_Oil",life_fnc_processAction,"banane",0,false,false,"",' life_inv_banane > 0 && !life_is_processing && !life_action_inUse',5];[/CODE]
Sur un autre panneau où le même on rentre init pour l'achat de la licence pour le traitement.
[CODE title="init achat license"]
this addAction[format ["%1 ($%2)",localize (getText(missionConfigFile >> "Licenses" >> "banane" >> "displayName")), [(getNumber(missionConfigFile >> "Licenses" >> "banane" >> "price"))] call life_fnc_numberText],life_fnc_buyLicense,"banane",0,false,false,"",' !license_civ_banane && playerSide isEqualTo civilian ',5];[/CODE]
il reste une chose a reporter STR_License_banane , STR_Process_banane dans le stringtable.xml qui se trouve à la racine de la mission.