Restrict to MP prop only.

This commit is contained in:
gentlespoon 2022-05-04 23:50:08 -07:00 committed by Melledy
parent 94c1de66b9
commit 080ba33cc9

View File

@ -8,7 +8,6 @@ import emu.grasscutter.net.packet.PacketOpcodes;
import emu.grasscutter.net.proto.PropValueOuterClass.PropValue; import emu.grasscutter.net.proto.PropValueOuterClass.PropValue;
import emu.grasscutter.net.proto.SetPlayerPropReqOuterClass.SetPlayerPropReq; import emu.grasscutter.net.proto.SetPlayerPropReqOuterClass.SetPlayerPropReq;
import emu.grasscutter.server.game.GameSession; import emu.grasscutter.server.game.GameSession;
import emu.grasscutter.server.packet.send.PacketSetPlayerNameRsp;
import emu.grasscutter.server.packet.send.PacketSetPlayerPropRsp; import emu.grasscutter.server.packet.send.PacketSetPlayerPropRsp;
import java.util.ArrayList; import java.util.ArrayList;
@ -24,8 +23,12 @@ public class HandlerSetPlayerPropReq extends PacketHandler {
Player player = session.getPlayer(); Player player = session.getPlayer();
List<PropValue> propList = req.getPropListList(); List<PropValue> propList = req.getPropListList();
for (int i = 0; i < propList.size(); i++) { for (int i = 0; i < propList.size(); i++) {
if (!player.setProperty(PlayerProperty.getPropById(propList.get(i).getType()), (int)propList.get(i).getVal())) { PlayerProperty prop = PlayerProperty.getPropById(propList.get(i).getType());
session.send(new PacketSetPlayerPropRsp(1)); if (prop == PlayerProperty.PROP_IS_MP_MODE_AVAILABLE) {
if (!player.setProperty(prop, (int)propList.get(i).getVal())) {
session.send(new PacketSetPlayerPropRsp(1));
return;
}
} }
} }
player.save(); player.save();