279 lines
6.6 KiB
Protocol Buffer
279 lines
6.6 KiB
Protocol Buffer
syntax = "proto3";
|
|
package dcs.trigger.v0;
|
|
import "dcs/common/v0/common.proto";
|
|
option csharp_namespace = "RurouniJones.Dcs.Grpc.V0.Trigger";
|
|
option go_package = "github.com/DCS-gRPC/go-bindings/dcs/v0/trigger";
|
|
|
|
// https://wiki.hoggitworld.com/view/DCS_singleton_trigger
|
|
service TriggerService {
|
|
// https://wiki.hoggitworld.com/view/DCS_func_outText
|
|
rpc OutText(OutTextRequest) returns (OutTextResponse) {}
|
|
|
|
// https://wiki.hoggitworld.com/view/DCS_func_outTextForCoalition
|
|
rpc OutTextForCoalition(OutTextForCoalitionRequest)
|
|
returns (OutTextForCoalitionResponse) {}
|
|
|
|
// https://wiki.hoggitworld.com/view/DCS_func_outTextForGroup
|
|
rpc OutTextForGroup(OutTextForGroupRequest)
|
|
returns (OutTextForGroupResponse) {}
|
|
|
|
// https://wiki.hoggitworld.com/view/DCS_func_outTextForUnit
|
|
rpc OutTextForUnit(OutTextForUnitRequest)
|
|
returns (OutTextForUnitResponse) {}
|
|
|
|
// https://wiki.hoggitworld.com/view/DCS_func_getUserFlag
|
|
rpc GetUserFlag(GetUserFlagRequest) returns (GetUserFlagResponse) {}
|
|
|
|
// https://wiki.hoggitworld.com/view/DCS_func_setUserFlag
|
|
rpc SetUserFlag(SetUserFlagRequest) returns (SetUserFlagResponse) {}
|
|
|
|
// https://wiki.hoggitworld.com/view/DCS_func_markToAll
|
|
rpc MarkToAll(MarkToAllRequest) returns (MarkToAllResponse) {}
|
|
|
|
// https://wiki.hoggitworld.com/view/DCS_func_markToCoalition
|
|
rpc MarkToCoalition(MarkToCoalitionRequest)
|
|
returns (MarkToCoalitionResponse) {}
|
|
|
|
// https://wiki.hoggitworld.com/view/DCS_func_markToGroup
|
|
rpc MarkToGroup(MarkToGroupRequest) returns (MarkToGroupResponse) {}
|
|
|
|
// https://wiki.hoggitworld.com/view/DCS_func_markupToAll
|
|
rpc MarkupToAll(MarkupToAllRequest) returns (MarkupToAllResponse) {}
|
|
|
|
// Uses markupToAll under the hood but enforces a coalition to be specified
|
|
// https://wiki.hoggitworld.com/view/DCS_func_markupToAll
|
|
rpc MarkupToCoalition(MarkupToCoalitionRequest)
|
|
returns (MarkupToCoalitionResponse) {}
|
|
|
|
// https://wiki.hoggitworld.com/view/DCS_func_removeMark
|
|
rpc RemoveMark(RemoveMarkRequest) returns (RemoveMarkResponse) {}
|
|
|
|
// https://wiki.hoggitworld.com/view/DCS_func_explosion
|
|
rpc Explosion(ExplosionRequest) returns (ExplosionResponse) {}
|
|
|
|
// https://wiki.hoggitworld.com/view/DCS_func_smoke
|
|
rpc Smoke(SmokeRequest) returns (SmokeResponse) {}
|
|
|
|
// https://wiki.hoggitworld.com/view/DCS_func_illuminationBomb
|
|
rpc IlluminationBomb(IlluminationBombRequest)
|
|
returns (IlluminationBombResponse) {}
|
|
|
|
// https://wiki.hoggitworld.com/view/DCS_func_signalFlare
|
|
rpc SignalFlare(SignalFlareRequest) returns (SignalFlareResponse) {}
|
|
}
|
|
|
|
message OutTextRequest {
|
|
string text = 1;
|
|
int32 display_time = 2;
|
|
bool clear_view = 3;
|
|
}
|
|
|
|
message OutTextResponse {
|
|
}
|
|
|
|
message OutTextForCoalitionRequest {
|
|
string text = 1;
|
|
int32 display_time = 2;
|
|
bool clear_view = 3;
|
|
dcs.common.v0.Coalition coalition = 4;
|
|
}
|
|
|
|
message OutTextForCoalitionResponse {
|
|
}
|
|
|
|
message OutTextForGroupRequest {
|
|
string text = 1;
|
|
int32 display_time = 2;
|
|
bool clear_view = 3;
|
|
uint32 group_id = 4;
|
|
}
|
|
|
|
message OutTextForGroupResponse {
|
|
}
|
|
|
|
message OutTextForUnitRequest {
|
|
string text = 1;
|
|
int32 display_time = 2;
|
|
bool clear_view = 3;
|
|
uint32 unit_id = 4;
|
|
}
|
|
|
|
message OutTextForUnitResponse {
|
|
}
|
|
|
|
message GetUserFlagRequest {
|
|
string flag = 1;
|
|
}
|
|
|
|
message GetUserFlagResponse {
|
|
uint32 value = 1;
|
|
}
|
|
|
|
message SetUserFlagRequest {
|
|
string flag = 1;
|
|
uint32 value = 2;
|
|
}
|
|
|
|
message SetUserFlagResponse {
|
|
}
|
|
|
|
message MarkToAllRequest {
|
|
string text = 2;
|
|
dcs.common.v0.InputPosition position = 3;
|
|
bool read_only = 4;
|
|
string message = 5;
|
|
}
|
|
|
|
message MarkToAllResponse {
|
|
uint32 id = 1;
|
|
}
|
|
|
|
message MarkToCoalitionRequest {
|
|
uint32 id = 1;
|
|
string text = 2;
|
|
dcs.common.v0.InputPosition position = 3;
|
|
dcs.common.v0.Coalition coalition = 4;
|
|
bool read_only = 5;
|
|
string message = 6;
|
|
}
|
|
|
|
message MarkToCoalitionResponse {
|
|
uint32 id = 1;
|
|
}
|
|
|
|
message MarkToGroupRequest {
|
|
uint32 id = 1;
|
|
string text = 2;
|
|
dcs.common.v0.InputPosition position = 3;
|
|
uint32 group_id = 4;
|
|
bool read_only = 5;
|
|
string message = 6;
|
|
}
|
|
|
|
message MarkToGroupResponse {
|
|
uint32 id = 1;
|
|
}
|
|
|
|
message RemoveMarkRequest {
|
|
uint32 id = 1;
|
|
}
|
|
|
|
message RemoveMarkResponse {
|
|
}
|
|
|
|
message ExplosionRequest {
|
|
dcs.common.v0.InputPosition position = 1;
|
|
uint32 power = 2;
|
|
}
|
|
|
|
message ExplosionResponse {
|
|
}
|
|
|
|
message SmokeRequest {
|
|
enum SmokeColor {
|
|
SMOKE_COLOR_UNSPECIFIED = 0;
|
|
SMOKE_COLOR_GREEN = 1;
|
|
SMOKE_COLOR_RED = 2;
|
|
SMOKE_COLOR_WHITE = 3;
|
|
SMOKE_COLOR_ORANGE = 4;
|
|
SMOKE_COLOR_BLUE = 5;
|
|
}
|
|
|
|
// Altitude parameter will be ignored. Smoke always eminates from ground
|
|
// level which will be calculated server-side
|
|
dcs.common.v0.InputPosition position = 1;
|
|
SmokeColor color = 2;
|
|
}
|
|
|
|
message SmokeResponse {
|
|
}
|
|
|
|
message IlluminationBombRequest {
|
|
// The altitude of Illumination Bombs is meters above ground. Ground level
|
|
// will be calculated server-side
|
|
dcs.common.v0.InputPosition position = 1;
|
|
uint32 power = 2;
|
|
}
|
|
|
|
message IlluminationBombResponse {
|
|
}
|
|
|
|
message SignalFlareRequest {
|
|
enum FlareColor {
|
|
FLARE_COLOR_UNSPECIFIED = 0;
|
|
FLARE_COLOR_GREEN = 1;
|
|
FLARE_COLOR_RED = 2;
|
|
FLARE_COLOR_WHITE = 3;
|
|
FLARE_COLOR_YELLOW = 4;
|
|
}
|
|
|
|
// Altitude parameter will be ignored. Signal flares always fire from
|
|
// ground level which will be calculated server-side
|
|
dcs.common.v0.InputPosition position = 1;
|
|
FlareColor color = 2;
|
|
uint32 azimuth = 3;
|
|
}
|
|
|
|
message SignalFlareResponse {
|
|
}
|
|
|
|
enum LineType {
|
|
// protolint:disable:next ENUM_FIELD_NAMES_ZERO_VALUE_END_WITH
|
|
LINE_TYPE_NO_LINE = 0;
|
|
LINE_TYPE_SOLID = 1;
|
|
LINE_TYPE_DASHED = 2;
|
|
LINE_TYPE_DOTTED = 3;
|
|
LINE_TYPE_DOT_DASH = 4;
|
|
LINE_TYPE_LONG_DASH = 5;
|
|
LINE_TYPE_TWO_DASH = 6;
|
|
}
|
|
|
|
// Represents an RGBA color but instead of using 0-255 as the color
|
|
// values it uses 0 to 1. A red color with 50% transparency would be
|
|
// RGBA of 1, 0, 0, 0.5
|
|
message Color {
|
|
double red = 1;
|
|
double green = 2;
|
|
double blue = 3;
|
|
double alpha = 4;
|
|
}
|
|
|
|
enum Shape {
|
|
SHAPE_UNSPECIFIED = 0;
|
|
SHAPE_LINE = 1;
|
|
SHAPE_CIRCLE = 2;
|
|
SHAPE_RECT = 3;
|
|
SHAPE_ARROW = 4;
|
|
SHAPE_TEXT = 5;
|
|
SHAPE_QUAD = 6;
|
|
SHAPE_FREEFORM = 7;
|
|
}
|
|
|
|
message MarkupToAllRequest {
|
|
Shape shape = 1;
|
|
repeated dcs.common.v0.InputPosition points = 2;
|
|
Color border_color = 3;
|
|
Color fill_color = 4;
|
|
LineType line_type = 5;
|
|
bool read_only = 6;
|
|
string message = 7;
|
|
}
|
|
|
|
message MarkupToAllResponse {
|
|
uint32 id = 1;
|
|
}
|
|
|
|
message MarkupToCoalitionRequest {
|
|
Shape shape = 1;
|
|
dcs.common.v0.Coalition coalition = 2;
|
|
repeated dcs.common.v0.InputPosition points = 3;
|
|
Color border_color = 4;
|
|
Color fill_color = 5;
|
|
LineType line_type = 6;
|
|
bool read_only = 7;
|
|
string message = 8;
|
|
}
|
|
|
|
message MarkupToCoalitionResponse {
|
|
uint32 id = 1;
|
|
} |