mirror of
https://github.com/Grasscutters/Grasscutter.git
synced 2026-05-24 05:30:00 +08:00
Improved satiation (#2055)
* Natural satiation decreasing Graphic showing satiation when eating (usually) * Reworking values to match original * Little fixes * Satiation bar matches real values Revival correctly updates bar * Greatly simplify handling Some fixes * Inline variables Add TODO for bug * Satiation works correctly Finally it all works as intended * Remove unnecessary packets * Improve satiation reduction handling
This commit is contained in:
committed by
GitHub
Unverified
parent
b4b8f1ec38
commit
1b2210f5a7
@@ -1,5 +1,7 @@
|
||||
package emu.grasscutter.server.packet.send;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
import emu.grasscutter.game.avatar.Avatar;
|
||||
import emu.grasscutter.game.props.PlayerProperty;
|
||||
import emu.grasscutter.net.packet.BasePacket;
|
||||
@@ -9,19 +11,19 @@ import emu.grasscutter.net.proto.AvatarPropNotifyOuterClass.AvatarPropNotify;
|
||||
public class PacketAvatarPropNotify extends BasePacket {
|
||||
public PacketAvatarPropNotify(Avatar avatar) {
|
||||
super(PacketOpcodes.AvatarPropNotify);
|
||||
|
||||
|
||||
AvatarPropNotify proto = AvatarPropNotify.newBuilder()
|
||||
.setAvatarGuid(avatar.getGuid())
|
||||
.putPropMap(PlayerProperty.PROP_LEVEL.getId(), avatar.getLevel())
|
||||
.putPropMap(PlayerProperty.PROP_EXP.getId(), avatar.getExp())
|
||||
.putPropMap(PlayerProperty.PROP_BREAK_LEVEL.getId(), avatar.getPromoteLevel())
|
||||
.putPropMap(PlayerProperty.PROP_SATIATION_VAL.getId(), 0)
|
||||
.putPropMap(PlayerProperty.PROP_SATIATION_PENALTY_TIME.getId(), 0)
|
||||
.putPropMap(PlayerProperty.PROP_SATIATION_VAL.getId(), avatar.getSatiation())
|
||||
.putPropMap(PlayerProperty.PROP_SATIATION_PENALTY_TIME.getId(), avatar.getSatiationPenalty())
|
||||
.build();
|
||||
|
||||
|
||||
this.setData(proto);
|
||||
}
|
||||
|
||||
|
||||
public PacketAvatarPropNotify(Avatar avatar, PlayerProperty prop, int value) {
|
||||
super(PacketOpcodes.AvatarPropNotify);
|
||||
|
||||
@@ -29,7 +31,18 @@ public class PacketAvatarPropNotify extends BasePacket {
|
||||
.setAvatarGuid(avatar.getGuid())
|
||||
.putPropMap(prop.getId(), value)
|
||||
.build();
|
||||
|
||||
|
||||
this.setData(proto);
|
||||
}
|
||||
|
||||
public PacketAvatarPropNotify(Avatar avatar, Map<Integer, Long> propMap) {
|
||||
super(PacketOpcodes.AvatarPropNotify);
|
||||
|
||||
AvatarPropNotify proto = AvatarPropNotify.newBuilder()
|
||||
.setAvatarGuid(avatar.getGuid())
|
||||
.putAllPropMap(propMap)
|
||||
.build();
|
||||
|
||||
this.setData(proto);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user