Exemple #1
0
        /// <inheritdoc />
        public void OnTargetKilled(ILivingEntity killedEntity)
        {
            if (killedEntity is IMonsterEntity deadMonster)
            {
                // Give experience
                _experienceSystem.GiveExeperience(_player, deadMonster.Data.Experience * _worldConfiguration.Rates.Experience);

                // Quest check
                _questSystem.UpdateQuestDiary(_player, QuestActionType.KillMonster, deadMonster.Data.Id, 1);
            }
        }
Exemple #2
0
 public void OnSendExpServerHandler(IWorldClient client, ExperiencePacket packet)
 {
     if (client.Player.PlayerData.Authority == AuthorityType.GameMaster || client.Player.PlayerData.Authority == AuthorityType.Administrator)
     {
         _logger.LogTrace($"{client.Player.Object.Name} gives himself {packet.Experience} experience point.");
         _expSystem.GiveExeperience(client.Player, packet.Experience);
     }
     else
     {
         throw new ArgumentException($"{client.Player.Object.Name} cannot send to himself exp server while beeing {client.Player.PlayerData.Authority}.");
     }
 }