| 30 | const version = mcData.version |
| 31 | |
| 32 | const loginPacket = (client, server) => { |
| 33 | if (mcData.loginPacket) { |
| 34 | return mcData.loginPacket |
| 35 | } |
| 36 | return { |
| 37 | // 1.7 |
| 38 | entityId: client.id, |
| 39 | gameMode: 1, |
| 40 | dimension: (version.version >= 735 ? mcData.loginPacket.dimension : 0), |
| 41 | difficulty: 2, |
| 42 | maxPlayers: server.maxPlayers, |
| 43 | levelType: 'default', |
| 44 | // 1.8 |
| 45 | reducedDebugInfo: (version.version >= 735 ? false : 0), |
| 46 | // 1.14 |
| 47 | // removes `difficulty` |
| 48 | viewDistance: 10, |
| 49 | // 1.15 |
| 50 | hashedSeed: [0, 0], |
| 51 | enableRespawnScreen: true, |
| 52 | // 1.16 |
| 53 | // removed levelType |
| 54 | previousGameMode: version.version >= 755 ? 0 : 255, |
| 55 | worldNames: ['minecraft:overworld'], |
| 56 | dimensionCodec: version.version >= 755 ? mcData.loginPacket.dimensionCodec : (version.version >= 735 ? mcData.loginPacket.dimension : { name: '', type: 'compound', value: { dimension: { type: 'list', value: { type: 'compound', value: [w] } } } }), |
| 57 | worldName: 'minecraft:overworld', |
| 58 | isDebug: false, |
| 59 | isFlat: false, |
| 60 | // 1.16.2 |
| 61 | isHardcore: false, |
| 62 | // 1.18 |
| 63 | simulationDistance: 10, |
| 64 | // 1.19 |
| 65 | // removed `dimension` |
| 66 | // removed `dimensionCodec` |
| 67 | registryCodec: { |
| 68 | type: 'compound', |
| 69 | name: '', |
| 70 | value: {} |
| 71 | }, |
| 72 | worldType: 'minecraft:overworld', |
| 73 | death: undefined, |
| 74 | // 1.20.5 |
| 75 | enforceSecureChat: false |
| 76 | // more to be added |
| 77 | } |
| 78 | } |
| 79 | let nextChatIndex = 1 |
| 80 | |
| 81 | function sendBroadcastMessage (server, clients, message, sender) { |