示例#1
0
    public void AddScores(int scoresToAdd, float3 worldPosition, AddScoreType type)
    {
        if (type == AddScoreType.NormalCoin || type == AddScoreType.CoinFromBlock)
        {
            throw new ArgumentException("Use AddCoin instead.");
        }

        AddScores_Internal(scoresToAdd, worldPosition, type);
    }
示例#2
0
    private void AddScores_Internal(int scoresToAdd, float3 worldPosition, AddScoreType type)
    {
        Assert.AreNotEqual(scoresToAdd, 0);
        Log.Info($"[PlayerDataManager.AddScores_Internal] scoresToAdd = {scoresToAdd}, worldPosition = {worldPosition}, type = {type}");
        Scores += scoresToAdd;
        var eventArgs = GameEntry.Instance.RefPool.GetOrAdd <AddScoreEventArgs>().Acquire();

        eventArgs.ScoresToAdd   = scoresToAdd;
        eventArgs.WorldPosition = worldPosition;
        eventArgs.Type          = type;
        GameEntry.Instance.Event.SendEvent(this, eventArgs);
    }