(Feat) Add Harvetable
This commit is contained in:
@@ -240,20 +240,35 @@ public:
|
||||
// ------------------------------------------------------------------
|
||||
// Outil
|
||||
//
|
||||
// Volontairement reduit au TYPE pour l'instant : la puissance de recolte et
|
||||
// le cout en durabilite d'un coup n'ont pas encore de lecteur, et inventer
|
||||
// leur forme avant d'ecrire les ressources recoltables serait deviner.
|
||||
// L'usure passe par MaxUses / RemainingUses, comme une canette : un outil neuf
|
||||
// part a MaxUses charges, l'inventaire les suit deja au sol comme dans un
|
||||
// coffre, et WBP_ItemDetails affiche deja la barre correspondante. Un coup qui
|
||||
// PORTE consomme une charge -- un coup dans le vide ou contre la mauvaise
|
||||
// matiere n'use rien, voir UHarvestingComponent.
|
||||
//
|
||||
// L'usure, elle, est deja tranchee : ce sera MaxUses / RemainingUses, comme
|
||||
// une canette. Un outil neuf part donc a MaxUses charges, l'inventaire les
|
||||
// suit deja au sol comme dans un coffre, et WBP_ItemDetails affiche deja la
|
||||
// barre correspondante -- rien a ajouter le jour venu.
|
||||
// Corollaire a connaitre : un outil laisse a MaxUses = 1 casserait au premier
|
||||
// coup. AFpsPlayer::PerformUseItem s'y refuse et le dit dans le log, plutot que
|
||||
// de faire disparaitre la hache que le joueur vient de fabriquer.
|
||||
// ------------------------------------------------------------------
|
||||
|
||||
/** Ce que cet objet sait recolter. None = ce n'est pas un outil. */
|
||||
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Item|Tool")
|
||||
EToolType ToolType = EToolType::None;
|
||||
|
||||
/**
|
||||
* Points retires a une ressource par coup.
|
||||
*
|
||||
* A comparer au Health de UHarvestableDataAsset : 25 contre un arbre a 100
|
||||
* donne quatre coups. C'est ce champ, et lui seul, qui fait la difference entre
|
||||
* la hache de pierre et celle en fer -- la ressource, elle, ne change pas.
|
||||
*
|
||||
* Sans effet sur une ressource que ToolType n'autorise pas : une pioche a 100
|
||||
* de puissance ne coupe toujours pas un arbre.
|
||||
*/
|
||||
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Item|Tool",
|
||||
meta = (EditCondition = "ToolType != EToolType::None", ClampMin = "0"))
|
||||
float HarvestPower = 25.f;
|
||||
|
||||
UFUNCTION(BlueprintPure, Category = "Item|Tool")
|
||||
bool IsTool() const { return ToolType != EToolType::None; }
|
||||
|
||||
|
||||
Reference in New Issue
Block a user