fix: Prevent setting properties of higher privileged mobiles (#1420)

---------

Co-authored-by: Kamron Batman <3953314+kamronbatman@users.noreply.github.com>
This commit is contained in:
Mink80 2023-07-16 07:01:33 +02:00 • committed by GitHub
parent 8ff105ac46
commit e9fa2bf9fa
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 26 additions and 0 deletions

View file

@ -363,6 +363,14 @@ namespace Server.Commands
{
try
{
// Don't allow staff to be modified if they are under StaffAccess command
if (obj is Mobile mob &&
(mob.AccessLevel > from.AccessLevel ||
mob.Account?.AccessLevel > from.AccessLevel))
{
return "You cannot modify a higher privileged mobile.";
}
if (toSet is AccessLevel newLevel)
{
var reqLevel = newLevel switch