[Résolu] Etape manquant au farm ?


#1

Bonjour,

Avant toute chose, je tiens à m’excuser d’avance si mon erreur est complètement stupide.

Voici le tutoriel que j’ai suivi :

Ce que j’ai fais

class Config_Gather.hpp :

class a_rgentm { // mine d’argent
amount = 2;
zones[] = { “argentm_mine” };
item = “”; //item requis
mined[] = { “a_rgentm” };
zoneSize = 30;

Config_Vitems.hpp :

class argt { // Acheteur d’argent
name = “Argenterie”;
side = “civ”;
conditions = “”;
items[] = { “a_rgentl” };
};

class a_rgentm { // Minerai d’argent
variable = “argentm”;
displayName = “STR_Item_argentm”;
weight = 3;
buyPrice = -1;
sellPrice = -1;
illegal = false;
edible = -1; // si pas commestible -1
icon = “icons\ico_argentm.paa”;
};

class a_rgentl { // Lingots d’argent
variable = “argentl”;
displayName = “STR_Item_argentl”;
weight = 1;
buyPrice = 2560;
sellPrice = 2000;
illegal = false;
edible = -1; // si pas commestible -1
icon = “icons\ico_argentl.paa”;
};

Config_Licenses.hpp :

class argtr { // Argentier
variable = “argtr”;
displayName = “STR_License_argtr”;
price = 20000;
illegal = false;
side = “civ”;
};

Config_Process.hpp :

class argentl { // Lingots d’argent
MaterialsReq[] = {{“a_rgentm”,1}};
MaterialsGive[] = {{“a_rgentl”,2}};
Text = “STR_Process_argentl”;
NoLicenseCost = 350;
};

Marqueur init>Variable :

argentm_mine

Marqueur init>texte :

@STR_MAR_argent_mine

Créer le process :

this enableSimulation false; this allowDamage false; this addAction[localize"STR_Process_argentl",life_fnc_processAction,“argentl”,0,false,false,"",’ life_inv_argentm > 0 && !life_is_processing && !life_action_inUse’]; this addAction[format ["%1 ($%2)",localize (getText(missionConfigFile >> “Licenses” >> “argtr” >> “displayName”)), [(getNumber(missionConfigFile >> “Licenses” >> “argtr” >> “price”))] call life_fnc_numberText],life_fnc_buyLicense,“argtr”,0,false,false,"",’ !license_civ_argtr && playerSide isEqualTo civilian '];

Ce que je veux

Lorsqu’on achète la licence, le traitement se fait plus rapidement.

Ce que j’obtiens

La licence apparaît dans le menu, on peut l’acheter et quand on l’achète, elle est bien présente dans le menu Y (licence possédée). Si on possède la licence on ne peut plus l’acheter. Pour l’instant tout va bien.
Mais lors du traitement, celui nécessite de payer (le prix de non licence, ici 350)

Logs & infos complémentaires

Version du serveur : v5
Système d’exploitation : Linux Debian 9


#2

J ai pas capte ce qui te gene ??
le prix du traitement, le temps du traitement ou les 2 ?


#3

C’est vrai je me suis peut être mal exprime:

  • quand on lance le traitement, le temps de traitement est beaucoup plus long que les autres (ceux déjà présent).
  • même si on a ma licence, on doit payer à chaque fois que l’on fait un traitement m, ce qui indique que la licence n’est pas reconnu lors du traitement.

#4

Yo,

Il faut normalement que ta license ait le même nom que la class de ton traitement pour que ça fonctionne


#5

Merci, je vais faire ça de suite et dès que je pourrais tester je te dirais ce que ça a donné.


#6

Problème résolu,

Merci @3rk, effectivement il fallait bien que la class licence soit la même que la class process