@@ -452,14 +452,6 @@ fn void kill_all_items(Item[]* items) {
452
452
}
453
453
}
454
454
455
- fn ItemsCollectedBatchMessage*! verify_items_collected_batch_message(Message *message) {
456
- if (message.byte_length < ItemsCollectedBatchMessage.sizeof) return MessageFault.INVALID?;
457
- if ((message.byte_length - ItemsCollectedBatchMessage.sizeof)%int.sizeof != 0) return MessageFault.INVALID?;
458
- ItemsCollectedBatchMessage* items_collected_batch_message = (ItemsCollectedBatchMessage*)message;
459
- if (items_collected_batch_message.kind != MessageKind.ITEM_COLLECTED) return MessageFault.INVALID?;
460
- return items_collected_batch_message;
461
- }
462
-
463
455
fn bool apply_items_collected_batch_message(ItemsCollectedBatchMessage *message, Item[]* items) {
464
456
usz count = (message.byte_length - ItemsCollectedBatchMessage.sizeof)/int.sizeof;
465
457
@@ -482,14 +474,6 @@ fn bool apply_items_collected_batch_message(ItemsCollectedBatchMessage *message,
482
474
return true;
483
475
}
484
476
485
- fn ItemsSpawnedBatchMessage*! verify_items_spawned_batch_message(Message *message) {
486
- if (message.byte_length < ItemsSpawnedBatchMessage.sizeof) return MessageFault.INVALID?;
487
- if ((message.byte_length - ItemsSpawnedBatchMessage.sizeof)%ItemSpawned.sizeof != 0) return MessageFault.INVALID?;
488
- ItemsSpawnedBatchMessage* items_spawned_batch_message = (ItemsSpawnedBatchMessage*)message;
489
- if (items_spawned_batch_message.kind != MessageKind.ITEM_SPAWNED) return MessageFault.INVALID?;
490
- return items_spawned_batch_message;
491
- }
492
-
493
477
fn bool apply_items_spawned_batch_message(ItemsSpawnedBatchMessage *message, Item[]* items) {
494
478
usz count = (message.byte_length - ItemsCollectedBatchMessage.sizeof)/ItemSpawned.sizeof;
495
479
for (usz i = 0; i < count; ++i) {
@@ -564,14 +548,6 @@ fn void update_bombs_on_client_side(SpritePool *sprite_pool, ParticlePool *parti
564
548
}
565
549
}
566
550
567
- fn BombsSpawnedBatchMessage*! verify_bombs_spawned_batch_message(Message *message) {
568
- if (message.byte_length < BombsSpawnedBatchMessage.sizeof) return MessageFault.INVALID?;
569
- if ((message.byte_length - BombsSpawnedBatchMessage.sizeof)%BombSpawned.sizeof != 0) return MessageFault.INVALID?;
570
- BombsSpawnedBatchMessage* bombs_spawned_batch_message = (BombsSpawnedBatchMessage*)message;
571
- if (bombs_spawned_batch_message.kind != MessageKind.BOMB_SPAWNED) return MessageFault.INVALID?;
572
- return bombs_spawned_batch_message;
573
- }
574
-
575
551
fn bool apply_bombs_spawned_batch_message(BombsSpawnedBatchMessage *message, Bombs *bombs) {
576
552
usz count = (message.byte_length - BombsSpawnedBatchMessage.sizeof)/BombSpawned.sizeof;
577
553
for (usz i = 0; i < count; ++i) {
@@ -593,14 +569,6 @@ fn bool apply_bombs_spawned_batch_message(BombsSpawnedBatchMessage *message, Bom
593
569
return true;
594
570
}
595
571
596
- fn BombsExplodedBatchMessage*! verify_bombs_exploded_batch_message(Message *message) {
597
- if (message.byte_length < BombsExplodedBatchMessage.sizeof) return MessageFault.INVALID?;
598
- if ((message.byte_length - BombsExplodedBatchMessage.sizeof)%BombExploded.sizeof != 0) return MessageFault.INVALID?;
599
- BombsExplodedBatchMessage* bombs_exploded_batch_message = (BombsExplodedBatchMessage*)message;
600
- if (bombs_exploded_batch_message.kind != MessageKind.BOMB_EXPLODED) return MessageFault.INVALID?;
601
- return bombs_exploded_batch_message;
602
- }
603
-
604
572
fn bool apply_bombs_exploded_batch_message(BombsExplodedBatchMessage *message, Bombs *bombs, ParticlePool *particle_pool) {
605
573
usz count = (message.byte_length - BombsExplodedBatchMessage.sizeof)/BombExploded.sizeof;
606
574
for (usz i = 0; i < count; ++i) {
@@ -645,13 +613,6 @@ const Control[*] CONTROL_KEYS = {
645
613
{83, MOVING_BACKWARD},
646
614
};
647
615
648
- fn HelloMessage*! verify_hello_message(Message *message) {
649
- if (message.byte_length != HelloMessage.sizeof) return MessageFault.INVALID?;
650
- HelloMessage* hello_message = (HelloMessage*)message;
651
- if (hello_message.kind != HELLO) return MessageFault.INVALID?;
652
- return hello_message;
653
- }
654
-
655
616
fn bool apply_hello_message_to_me(HelloMessage *hello_message, Item[]* items) {
656
617
// TODO: maybe we should reset everything (bombs, etc) on hello message
657
618
// So to let the server recreate the world properly
@@ -665,14 +626,6 @@ fn bool apply_hello_message_to_me(HelloMessage *hello_message, Item[]* items) {
665
626
return true;
666
627
}
667
628
668
- fn PlayersJoinedBatchMessage*! verify_players_joined_batch_message(Message *message) {
669
- if (message.byte_length < PlayersJoinedBatchMessage.sizeof) return MessageFault.INVALID?;
670
- if ((message.byte_length - PlayersJoinedBatchMessage.sizeof)%PlayerStruct.sizeof != 0) return MessageFault.INVALID?;
671
- PlayersJoinedBatchMessage* players_joined_batch_message = (PlayersJoinedBatchMessage*)message;
672
- if (players_joined_batch_message.kind != PLAYER_JOINED) return MessageFault.INVALID?;
673
- return players_joined_batch_message;
674
- }
675
-
676
629
fn void apply_players_joined_batch_message(PlayersJoinedBatchMessage *message) {
677
630
usz count = (message.byte_length - PlayersJoinedBatchMessage.sizeof)/PlayerStruct.sizeof;
678
631
for (usz i = 0; i < count; ++i) {
@@ -703,29 +656,13 @@ fn void apply_players_joined_batch_message(PlayersJoinedBatchMessage *message) {
703
656
}
704
657
}
705
658
706
- fn PlayersLeftBatchMessage*! verify_players_left_batch_message(Message *message) {
707
- if (message.byte_length < PlayersLeftBatchMessage.sizeof) return MessageFault.INVALID?;
708
- if ((message.byte_length - PlayersLeftBatchMessage.sizeof)%uint.sizeof != 0) return MessageFault.INVALID?;
709
- PlayersLeftBatchMessage* players_left_batch_message = (PlayersLeftBatchMessage*)message;
710
- if (players_left_batch_message.kind != PLAYER_LEFT) return MessageFault.INVALID?;
711
- return players_left_batch_message;
712
- }
713
-
714
659
fn void apply_players_left_batch_message(PlayersLeftBatchMessage *message) {
715
660
usz count = (message.byte_length - PlayersLeftBatchMessage.sizeof)/uint.sizeof;
716
661
for (usz i = 0; i < count; ++i) {
717
662
other_players.remove(message.ids[i]);
718
663
}
719
664
}
720
665
721
- fn PlayersMovingBatchMessage*! verify_players_moving_batch_message(Message *message) {
722
- if (message.byte_length < PlayersMovingBatchMessage.sizeof) return MessageFault.INVALID?;
723
- if ((message.byte_length - PlayersMovingBatchMessage.sizeof)%PlayerStruct.sizeof != 0) return MessageFault.INVALID?;
724
- PlayersMovingBatchMessage* players_moving_batch_message = (PlayersMovingBatchMessage*)message;
725
- if (players_moving_batch_message.kind != PLAYER_MOVING) return MessageFault.INVALID?;
726
- return players_moving_batch_message;
727
- }
728
-
729
666
fn bool apply_players_moving_batch_message(PlayersMovingBatchMessage *message) {
730
667
usz count = (message.byte_length - PlayersMovingBatchMessage.sizeof)/PlayerStruct.sizeof;
731
668
for (usz i = 0; i < count; ++i) {
@@ -887,13 +824,6 @@ fn void ping_server_if_needed() {
887
824
}
888
825
}
889
826
890
- fn PongMessage*! verify_pong_message(Message *message) {
891
- if (message.byte_length != PongMessage.sizeof) return MessageFault.INVALID?;
892
- PongMessage* pong_message = (PongMessage*)message;
893
- if (pong_message.kind != PONG) return MessageFault.INVALID?;
894
- return pong_message;
895
- }
896
-
897
827
uint ping = 0;
898
828
fn void process_pong_message(PongMessage *message) {
899
829
ping = platform_now_msecs() - message.timestamp;
@@ -904,47 +834,47 @@ fn uint ping_msecs() @extern("ping_msecs") @wasm {
904
834
}
905
835
906
836
fn bool process_message(Message *unknown_message) @extern("process_message") @wasm {
907
- if (try message = verify_hello_message(unknown_message)) {
837
+ if (try message = common:: verify_hello_message(unknown_message)) {
908
838
apply_hello_message_to_me(message, &common::items);
909
839
return true;
910
840
}
911
- if (try message = verify_players_joined_batch_message(unknown_message)) {
841
+ if (try message = common:: verify_players_joined_batch_message(unknown_message)) {
912
842
apply_players_joined_batch_message(message);
913
843
return true;
914
844
}
915
- if (try message = verify_players_left_batch_message(unknown_message)) {
845
+ if (try message = common:: verify_players_left_batch_message(unknown_message)) {
916
846
apply_players_left_batch_message(message);
917
847
return true;
918
848
}
919
- if (try message = verify_players_moving_batch_message(unknown_message)) {
849
+ if (try message = common:: verify_players_moving_batch_message(unknown_message)) {
920
850
if (!apply_players_moving_batch_message(message)) {
921
851
return false;
922
852
}
923
853
return true;
924
854
}
925
- if (try message = verify_pong_message(unknown_message)) {
855
+ if (try message = common:: verify_pong_message(unknown_message)) {
926
856
process_pong_message(message);
927
857
return true;
928
858
}
929
- if (try message = verify_items_collected_batch_message(unknown_message)) {
859
+ if (try message = common:: verify_items_collected_batch_message(unknown_message)) {
930
860
if (!apply_items_collected_batch_message(message, &common::items)) {
931
861
return false;
932
862
}
933
863
return true;
934
864
}
935
- if (try message = verify_items_spawned_batch_message(unknown_message)) {
865
+ if (try message = common:: verify_items_spawned_batch_message(unknown_message)) {
936
866
if (!apply_items_spawned_batch_message(message, &common::items)) {
937
867
return false;
938
868
}
939
869
return true;
940
870
}
941
- if (try message = verify_bombs_spawned_batch_message(unknown_message)) {
871
+ if (try message = common:: verify_bombs_spawned_batch_message(unknown_message)) {
942
872
if (!apply_bombs_spawned_batch_message(message, &common::bombs)) {
943
873
return false;
944
874
}
945
875
return true;
946
876
}
947
- if (try message = verify_bombs_exploded_batch_message(unknown_message)) {
877
+ if (try message = common:: verify_bombs_exploded_batch_message(unknown_message)) {
948
878
if (!apply_bombs_exploded_batch_message(message, &common::bombs, &particle_pool)) {
949
879
return false;
950
880
}
0 commit comments