plantilla base para movimiento básico
This commit is contained in:
Robii Aragon
2026-02-05 05:07:55 -08:00
parent 195b696771
commit 779f2c8b20
14443 changed files with 23840465 additions and 452 deletions

View File

@@ -0,0 +1,78 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class GKCVendorConditionSystem : GKCConditionInfo
{
[Header ("Custom Settings")]
[Space]
public int vendorObjectAmount;
public bool useInfiniteVendorAmount;
public float vendorObjectPrice;
public float customMoneyChangeSpeed = 20;
public override bool checkIfConditionCompleteAndReturnResult ()
{
if (!checkIfPlayerAssigned ()) {
return false;
}
bool conditionResult = checkConditionResult ();
setConditionResult (conditionResult);
return conditionResult;
}
public override void checkIfConditionComplete ()
{
if (!checkIfPlayerAssigned ()) {
return;
}
bool conditionResult = checkConditionResult ();
setConditionResult (conditionResult);
}
bool checkConditionResult ()
{
bool conditionResult = false;
playerComponentsManager mainPlayerComponentsManager = currentPlayer.GetComponent<playerComponentsManager> ();
if (mainPlayerComponentsManager != null) {
currencySystem mainCurrencySystem = mainPlayerComponentsManager.getCurrencySystem ();
if (mainCurrencySystem != null) {
bool currentConditionState = true;
if (mainCurrencySystem.getCurrentMoneyAmount () < vendorObjectPrice) {
currentConditionState = false;
}
if (currentConditionState) {
if (useInfiniteVendorAmount || vendorObjectAmount > 0) {
mainCurrencySystem.increaseTotalMoneyAmount (-vendorObjectPrice, customMoneyChangeSpeed);
if (!useInfiniteVendorAmount) {
vendorObjectAmount--;
}
} else {
currentConditionState = false;
}
}
conditionResult = currentConditionState;
}
}
return conditionResult;
}
}