public void saveCoins(CoinTransactions trans, int value) { switch (trans) { case CoinTransactions.pay: globalCoins -= value; break; case CoinTransactions.add: value = (int)(value * moneyRatio); globalCoins += value; break; case CoinTransactions.none: globalCoins += 0; break; default: break; } getCurrentCoins(); PlayerPrefs.SetInt("myCoins", globalCoins); PlayerPrefs.Save(); }
public void AddTransaction(Dictionary <String, TransactionOutput> utxos, CoinTransaction coinTransaction) { if (PreviousHash != "0") { if (!coinTransaction.ProcessTransaction(utxos)) { throw new Exception(); } } CoinTransactions.Add(coinTransaction); }
public void MineBlock(int difficulty) { MerkleRoot = CoinTransactions.GenerateMerkleRoot(); var target = string.Empty.PadLeft(difficulty, '0'); while (Hash.Substring(0, difficulty) != target) { Nonce++; Hash = CalculateHash(); } Console.WriteLine($"Block Mined - {Hash}"); }