// Proto has been converted from Sorapointa to Grasscutter format // Sorapointa - A server software re-implementation for a certain anime game, and avoid sorapointa. // Copyright (C) 2022 Sorapointa Team // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU Affero General Public License as // published by the Free Software Foundation, either version 3 of the // License, or (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU Affero General Public License for more details. // // You should have received a copy of the GNU Affero General Public License // along with this program. If not, see . syntax = "proto3"; import "GCGMsgAddCards.proto"; import "GCGMsgAddDice.proto"; import "GCGMsgCardUpdate.proto"; import "GCGMsgCharDie.proto"; import "GCGMsgClientPerform.proto"; import "GCGMsgCostDice.proto"; import "GCGMsgCostRevise.proto"; import "GCGMsgDiceReroll.proto"; import "GCGMsgDiceRoll.proto"; import "GCGMsgDuelDataChange.proto"; import "GCGMsgGameOver.proto"; import "GCGMsgModifyAdd.proto"; import "GCGMsgModifyRemove.proto"; import "GCGMsgMoveCard.proto"; import "GCGMsgNewCard.proto"; import "GCGMsgNoDamageSkillResult.proto"; import "GCGMsgOpTimer.proto"; import "GCGMsgPVEIntentionChange.proto"; import "GCGMsgPVEIntentionInfo.proto"; import "GCGMsgPass.proto"; import "GCGMsgPhaseChange.proto"; import "GCGMsgPhaseContinue.proto"; import "GCGMsgReactionBegin.proto"; import "GCGMsgReactionEnd.proto"; import "GCGMsgRemoveCards.proto"; import "GCGMsgSelectOnStage.proto"; import "GCGMsgSelectOnStageByEffect.proto"; import "GCGMsgSkillLimitsChange.proto"; import "GCGMsgSkillResult.proto"; import "GCGMsgTokenChange.proto"; import "GCGMsgUpdateController.proto"; import "GCGMsgUseSkill.proto"; import "GCGMsgUseSkillEnd.proto"; import "GCGMsgWaitingListChange.proto"; option java_package = "emu.grasscutter.net.proto"; message GCGMessage { oneof message { GCGMsgTokenChange token_change = 2; GCGMsgPhaseChange phase_change = 10; GCGMsgAddCards add_cards = 5; GCGMsgRemoveCards remove_cards = 12; GCGMsgSelectOnStage select_on_stage = 6; GCGMsgDiceRoll dice_roll = 14; GCGMsgDiceReroll dice_reroll = 15; GCGMsgPass pass = 8; GCGMsgCharDie char_die = 4; GCGMsgSkillResult skill_result = 3; GCGMsgCostDice cost_dice = 13; GCGMsgAddDice add_dice = 7; GCGMsgMoveCard move_card = 11; GCGMsgUseSkill use_skill = 1; GCGMsgNewCard new_card = 296; GCGMsgUpdateController update_controller = 1111; GCGMsgModifyAdd modify_add = 1733; GCGMsgModifyRemove modify_remove = 2014; GCGMsgUseSkillEnd use_skill_end = 1368; GCGMsgDuelDataChange duel_data_change = 1791; GCGMsgClientPerform client_perform = 1677; GCGMsgGameOver game_over = 632; GCGMsgOpTimer op_timer = 154; GCGMsgWaitingListChange waiting_list_change = 1991; GCGMsgCardUpdate card_update = 1702; GCGMsgSelectOnStageByEffect select_on_stage_by_effect = 1737; GCGMsgCostRevise cost_revise = 468; GCGMsgPhaseContinue phase_continue = 1157; GCGMsgPVEIntentionInfo pve_intention_info = 850; GCGMsgPVEIntentionChange pve_intention_change = 1268; GCGMsgSkillLimitsChange skill_limits_change = 710; GCGMsgNoDamageSkillResult no_damage_skill_result = 773; GCGMsgReactionBegin reaction_begin = 243; GCGMsgReactionEnd reaction_end = 1172; } }