Advertisement
FlyingFrog

PlayerWallet

Jul 6th, 2025
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.56 KB | Gaming | 0 0
  1. using UnityEngine;
  2. using System;
  3. using YG;
  4.  
  5. public class PlayerWallet : MonoBehaviour
  6. {
  7.     [SerializeField] private MoneyEarner _earner;
  8.  
  9.     private int _currentMoney;
  10.     private int _earnedMoney;
  11.  
  12.     public int CurrentMoney => _currentMoney;
  13.  
  14.     public event Action<int> MoneyChanged;
  15.  
  16.     private void Start()
  17.     {
  18.         _earnedMoney = YandexGame.savesData.earnedMoney;
  19.         _currentMoney = YandexGame.savesData.playerMoney;
  20.         MoneyChanged?.Invoke(_currentMoney);
  21.     }
  22.     private void Update()
  23.     {
  24.         if (Input.GetKeyDown(KeyCode.J))
  25.         {
  26.             AddMoney(200000);
  27.         }
  28.     }
  29.     private void OnEnable()
  30.     {
  31.         _earner.MoneyEarned += OnMoneyEarned;
  32.     }
  33.  
  34.     private void OnDisable()
  35.     {
  36.         _earner.MoneyEarned -= OnMoneyEarned;
  37.     }
  38.  
  39.     public void AddMoney(int money)
  40.     {
  41.         _currentMoney += money;
  42.         _earnedMoney += money;
  43.         MoneyChanged?.Invoke(_currentMoney);
  44.         YandexGame.savesData.earnedMoney = _earnedMoney;
  45.         YandexGame.savesData.playerMoney = _currentMoney;
  46.         YandexGame.NewLeaderboardScores("earnedMoney", _earnedMoney);
  47.         YandexGame.SaveProgress();
  48.     }
  49.  
  50.     public void SpendMoney(int money)
  51.     {
  52.         _currentMoney -= money;
  53.         MoneyChanged?.Invoke(_currentMoney);
  54.         YandexGame.savesData.playerMoney = _currentMoney;
  55.         YandexGame.SaveProgress();
  56.     }
  57.  
  58.     private void OnMoneyEarned(int money, bool hasMagnet)
  59.     {
  60.         if (hasMagnet)
  61.         {
  62.             AddMoney(money);
  63.         }
  64.     }
  65. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement