public void InflictStatus(WorldObject target)
        {
            if (!target)
            {
                return;
            }

            this.target = target;

            // if the status is not already active on the target, call OnStatusStart
            if (!target.IsStatusActive(this))
            {
                OnStatusStart();
            }

            this.duration = 0;
            this.isActive = true;

            target.AddStatus(this);
        }