Cuberite Forum

Full Version: Joining the packet sources
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3 4 5 6 7
I thought I'd work on the HandlePlayerAbilities, but i'm stuck already. How do those "Flags" work?
Those flags are just a bitfield, similar to how some block metadata work in MC. Bit 0 says if the player thinks they are in Creative mode, bit 1 says if they think they are flying, bit 2 says if they think they are allowed to fly, etc.
To construct such a value, you OR the bit values together:
Byte ValueToSend = 1 | 2 | 4;  // Creative, flying, can fly
To query such value, you AND it with the respective bitmasks:
if ((ValueReceived & 1) != 0)
{
  // Creative
}
if ((ValueReceived & 2) != 0)
{
  // Flying
}
Note that the vanilla server ignores some of these, we should as well.
Look at me flying in survival Smile
[Image: 5NngQ.jpg]
(12-15-2013, 11:26 PM)STR_Warrior Wrote: [ -> ]Look at me flying in survival Smile
[Image: 5NngQ.jpg]
Send me or post the plugin pleaseBig Grin
I always wanted the /fly command in MCServer.
It's not a plugin Wink I'm making the server able to control if a player can fly and is flying.
It's awesome that you're doing more CPP :)
First Commit.

xoft are you okay with the names of the functions?
The names are great.

I have to say, you have really surprised me. When you started tinkering with MCS, I wouldn't have believed that you'd get so good. Keep surprising me in such good ways!
Pages: 1 2 3 4 5 6 7