Files
osirose-new/proto/character_db_api.proto
raven cb6ee657f0 - add: Character service can now actually create a character correctly in the database
- add: character db client to allow the character service to talk to the database service
- update: character.proto to make character data shared
2025-01-07 13:41:07 -05:00

64 lines
1.4 KiB
Protocol Buffer

syntax = "proto3";
package character_db_api;
service CharacterService {
rpc GetCharacter (CharacterRequest) returns (Character);
rpc GetCharacterList (CharacterListRequest) returns (CharacterListResponse);
rpc CreateCharacter (CreateCharacterRequest) returns (CreateCharacterResponse);
rpc DeleteCharacter (DeleteCharacterRequest) returns (DeleteCharacterResponse);
}
message CharacterRequest {
int32 character_id = 1;
}
message CharacterListRequest {
int32 user_id = 1;
}
message CharacterListResponse {
repeated Character characters = 1;
}
message CreateCharacterRequest {
int32 user_id = 1;
string name = 2;
string inventory = 3; // JSON serialized
string stats = 4; // JSON serialized
string looks = 5; // JSON serialized
string position = 6; // JSON serialized
}
message CreateCharacterResponse {
int32 result = 1;
int32 character_id = 2;
}
message DeleteCharacterRequest {
int32 user_id = 1;
int32 character_id = 2;
}
message DeleteCharacterResponse {
int64 remaining_time = 1;
string name = 2;
}
message Character {
int32 id = 1;
int32 user_id = 2;
string name = 3;
int32 level = 4;
int64 experience = 5;
string inventory = 6;
string stats = 7;
string looks = 8;
string position = 9;
string created_at = 10;
string updated_at = 11;
bool is_active = 12;
}
message Empty {}