(Feat) Add mulitplayer
This commit is contained in:
@@ -367,6 +367,8 @@ private:
|
||||
* foyer. Se base sur le point de vue reel du pawn, donc sur ce qu'il voit a
|
||||
* l'ecran, et non sur la position de son corps.
|
||||
*/
|
||||
virtual void GetLifetimeReplicatedProps(TArray<FLifetimeProperty>& OutLifetimeProps) const override;
|
||||
|
||||
int32 ResolveAimedSlot(const AActor* Interactor) const;
|
||||
|
||||
/** Decide ce que ferait un appui sur Interagir, sans rien modifier. */
|
||||
@@ -455,8 +457,17 @@ private:
|
||||
/** Inventaire du pawn qui interagit, ou nullptr. */
|
||||
static UInventoryComponent* GetInventoryOf(AActor* Interactor);
|
||||
|
||||
/** Etat courant de chaque emplacement de cuisson. Toujours dimensionne a MaxCookingSlots. */
|
||||
UPROPERTY(Transient)
|
||||
/**
|
||||
* Etat courant de chaque emplacement de cuisson. Toujours dimensionne a
|
||||
* MaxCookingSlots.
|
||||
*
|
||||
* Replique : c'est ce qui fait changer le mesh de la nourriture sous les
|
||||
* yeux de tous. Le FTimerHandle que porte chaque slot n'est pas une
|
||||
* UPROPERTY et ne part donc pas sur le reseau -- c'est voulu, la cuisson se
|
||||
* compte uniquement sur le serveur et les clients n'en voient que le
|
||||
* resultat.
|
||||
*/
|
||||
UPROPERTY(Transient, ReplicatedUsing = OnRep_Slots)
|
||||
TArray<FCookingSlotState> Slots;
|
||||
|
||||
/**
|
||||
@@ -464,7 +475,12 @@ private:
|
||||
* qui brule ; quand il est consomme, tout le monde avance d'un cran et la
|
||||
* derniere buche disparait du foyer.
|
||||
*/
|
||||
UPROPERTY(Transient)
|
||||
/**
|
||||
* Replique : le nombre de buches visibles EST la jauge de carburant, c'est
|
||||
* la seule facon pour un joueur de savoir combien il reste de feu. Les
|
||||
* secondes restantes partent avec, mais seul le serveur les decompte.
|
||||
*/
|
||||
UPROPERTY(Transient, ReplicatedUsing = OnRep_Fuel)
|
||||
TArray<FFuelSlotState> Fuel;
|
||||
|
||||
FTimerHandle FuelTimer;
|
||||
@@ -477,5 +493,16 @@ private:
|
||||
UPROPERTY(Transient)
|
||||
TArray<TObjectPtr<UStaticMeshComponent>> FuelIndicators;
|
||||
|
||||
UPROPERTY(ReplicatedUsing = OnRep_IsLit)
|
||||
bool bIsLit = false;
|
||||
|
||||
/** Le contenu du grill a change cote serveur : on repose tous les meshes. */
|
||||
UFUNCTION()
|
||||
void OnRep_Slots();
|
||||
|
||||
UFUNCTION()
|
||||
void OnRep_Fuel();
|
||||
|
||||
UFUNCTION()
|
||||
void OnRep_IsLit();
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user