84 lines
1.8 KiB
Protocol Buffer
84 lines
1.8 KiB
Protocol Buffer
syntax = "proto2";
|
|
|
|
//Describes a very basic material structure for the map embark
|
|
package isoworldremote;
|
|
|
|
option optimize_for = LITE_RUNTIME;
|
|
|
|
// Plugin: isoworldremote
|
|
|
|
enum BasicMaterial {
|
|
AIR = 0;
|
|
OTHER = 1;
|
|
INORGANIC = 2;
|
|
LIQUID = 3;
|
|
PLANT = 4;
|
|
WOOD = 5;
|
|
};
|
|
|
|
enum LiquidType {
|
|
ICE = 0;
|
|
WATER = 1;
|
|
MAGMA = 2;
|
|
}
|
|
|
|
enum BasicShape {
|
|
NONE = 0;
|
|
OPEN = 1;
|
|
WALL = 3;
|
|
FLOOR = 4;
|
|
RAMP_UP = 5;
|
|
RAMP_DOWN = 6;
|
|
}
|
|
|
|
message ColorDefinition {
|
|
required int32 red = 1;
|
|
required int32 green = 2;
|
|
required int32 blue = 3;
|
|
}
|
|
|
|
message EmbarkTileLayer {
|
|
repeated BasicMaterial mat_type_table = 4 [packed=true];
|
|
repeated int32 mat_subtype_table = 5 [packed=true];
|
|
repeated BasicShape tile_shape_table = 6 [packed=true];
|
|
repeated ColorDefinition tile_color_table = 7;
|
|
}
|
|
|
|
message EmbarkTile {
|
|
required int32 world_x = 1;
|
|
required int32 world_y = 2;
|
|
required sint32 world_z = 3;
|
|
repeated EmbarkTileLayer tile_layer = 4;
|
|
optional int32 current_year = 5;
|
|
optional int32 current_season = 6;
|
|
optional bool is_valid = 7;
|
|
}
|
|
|
|
// RPC GetEmbarkTile : TileRequest -> EmbarkTile
|
|
message TileRequest {
|
|
optional int32 want_x = 1;
|
|
optional int32 want_y = 2;
|
|
}
|
|
|
|
message MapRequest {
|
|
optional string save_folder = 1;
|
|
}
|
|
|
|
// RPC GetEmbarkInfo : MapRequest -> MapReply
|
|
message MapReply {
|
|
required bool available = 1;
|
|
optional int32 region_x = 2;
|
|
optional int32 region_y = 3;
|
|
optional int32 region_size_x = 4;
|
|
optional int32 region_size_y = 5;
|
|
optional int32 current_year = 6;
|
|
optional int32 current_season = 7;
|
|
}
|
|
|
|
// RPC GetRawNames : MapRequest -> RawNames
|
|
message RawNames {
|
|
required bool available = 1;
|
|
repeated string inorganic = 2;
|
|
repeated string organic = 3;
|
|
}
|