This enumeration lists the message IDs for DI-Guy's custom pdus, not all are usuable outside of diguyscenario.
DIGUY_CUSTOM_PDU_ID_SET_CHAR_TYPE
DIGUY_CUSTOM_PDU_ID_SET_CHAR_APPEARANCE
DIGUY_CUSTOM_PDU_ID_SET_CHAR_ACTION
- Contents: String A, String B
- Meaning: Set the character action to A, the second string is either "p" or "" (the empty string). A value of "p" for the second string indicates that the action is paused. Characters are typically paused if the sending application such as DI-Guy Scenario has been playing and the user hits "pause" on the VCR control.
DIGUY_CUSTOM_PDU_ID_SET_CHAR_VISIBLE
DIGUY_CUSTOM_PDU_ID_SET_SCENARIO_FRAME
- Contents: Long val
- Meaning: call diguyScenario::set_frame_desired(val)
DIGUY_CUSTOM_PDU_ID_SET_SCENARIO_PLAYBACK_MODE
- Contents: Long val
- Meaning: call diguyScenario::set_playback_mode(val)
DIGUY_CUSTOM_PDU_ID_LOAD_SCENARIO_CAMERA
DIGUY_CUSTOM_PDU_ID_RESET
DIGUY_CUSTOM_PDU_ID_HAIL
DIGUY_CUSTOM_PDU_ID_LOAD_SCENARIO_FILE
- Contents: string
- Meaning: call diguyScenario::load(string)
DIGUY_CUSTOM_PDU_ID_SET_CAMERA_DETAILS
Internal Use only
DIGUY_CUSTOM_PDU_ID_XC_LOAD_SCENARIO
- Contents:
- NetU16 => Target_site
- NetU16 => Target_host
- String => Filename
- String => Reference name
DIGUY_CUSTOM_PDU_ID_XC_LOAD_SCENARIO_COMPLETE
- Contents: string
- Meaning: Indicates scenario has finished loading
DIGUY_CUSTOM_PDU_ID_XC_MERGE_SCENARIO
- Contents:
- NetU16 => Target_site
- NetU16 => Target_host
- NetFlt32 => Time of Day
- NetFlt32[3] => Refx, Refy, Refz
- NetFlt32[3] => x, y, z
- NetFlt32[3] => w,r,p
- String => Filename
- String => Reference name
DIGUY_CUSTOM_PDU_ID_XC_MERGE_SCENARIO_COMPLETE
- Contents: string
- Meaning: Indicates scenario has finished loading
DIGUY_CUSTOM_PDU_ID_XC_SET_TIN_TOD
DIGUY_CUSTOM_PDU_ID_XC_TIME_NOW
- Contents:
- NetFlt32 => seconds since midnight
- NetFlt32 => seconds to smooth
- Meaning: call diguyScenario::set_sync_info()
DIGUY_CUSTOM_PDU_ID_XC_CONTROL
- Contents:
- NetU16 => Target_site
- NetU16 => Target_host
- String => Command ("RUN", "STOP", "RESET", "FF", "REWIND")
DIGUY_CUSTOM_PDU_ID_XC_TRIGGER_SCRIPT
- Contents:
- NetU16 => Target_site
- NetU16 => Target_host
- String Script name
DIGUY_CUSTOM_PDU_ID_XC_EVAL_SCRIPT
- Contents:
- NetU16 => Target_site
- NetU16 => Target_host
- String => Script text
DIGUY_CUSTOM_PDU_ID_XC_SET_FF_SPEED
- Contents:
- NetU16 => Target_site
- NetU16 => Target_host
- NetFlt32 => Speed multiple
DIGUY_CUSTOM_PDU_ID_XC_TRIGGER_SIGNAL
- Contents:
- NetU16 => Target_site
- NetU16 => Target_host
- String => Signal to trigger
DIGUY_CUSTOM_PDU_ID_XC_RESET_SCENARIO
- Contents:
- NetU16 => Target_site
- NetU16 => Target_host
DIGUY_CUSTOM_PDU_ID_XC_ENTER_SLAVE_MODE
- Contents:
- NetU16 => Target_site
- NetU16 => Target_host
DIGUY_CUSTOM_PDU_ID_XC_EXIT_SLAVE_MODE
- Contents:
- NetU16 => Target_site
- NetU16 => Target_host
DIGUY_CUSTOM_PDU_ID_VARIABLE_STATE
- Contents:
- NetU16 => Target_site
- NetU16 => Target_host
- String => variable
- String => value
DIGUY_CUSTOM_PDU_ID_SAVE_SCENARIO
- Contents:
- NetU16 => Target_site
- NetU16 => Target_host
- NetU16 => use_user_name
- String => file name
DIGUY_CUSTOM_PDU_ID_SAVE_SCENARIO_COMPLETE
DIGUY_CUSTOM_PDU_ID_AI_SEND_MESSAGE_TO_CHARACTER
- Contents:
- NetU16 => Target_site
- NetU16 => Target_host
- NetU16 => target AI network number
- String => sender
- String => message_type
- String => message
- String => message_params
- Meaning: call
message_type,
message,
message_params);
on character with diguyCharacter::get_network_entity_number() == target AI network number
DIGUY_CUSTOM_PDU_ID_AI_SEND_MESSAGE_TO_GROUP
- Contents:
- String => group_name
- String => sender
- String => message_type
- String => message
- String => message_params
- Meaning: call
message_type,
message,
message_params);
DIGUY_CUSTOM_PDU_ID_AI_BROADCAST_MESSAGE
- Contents:
- String => sender
- NetFlt32 => radius
- String => message_type
- String => message
- String => message_params
- Meaning: call
radius,
message_type,
message,
message_params);
Where character is the sender of message.
DIGUY_CUSTOM_PDU_ID_AI_BROADCAST_MESSAGE_TO_GROUP
- Contents:
- String => sender
- String => group_name
- NetFlt32 => radius
- String => message_type
- String => message
- String => message_params
- Meaning: call
radius,
message_type,
message,
message_params);
Where character is the sender of message.
DIGUY_CUSTOM_PDU_ID_BEGIN_APPEARANCE_EFFECT
- Contents:
- String => appearance effect
- bool => flag if theres extended data
- Optional extended data:
- NetFlt32 => override scale
- NetFlt32[3] => override_offset x, y, z
- NetFlt32 => override duration
- Meaning: call
override_offset_x, override_offset_y, override_offset_z,
override_duration,
or
DIGUY_CUSTOM_PDU_ID_END_APPEARANCE_EFFECT ( Gradual Stop )
- Contents:
- String => appearance_effect_name
- Meaning: call
DIGUY_CUSTOM_PDU_ID_STOP_APPEARANCE_EFFECT ( Instant Stop )
- Contents:
- String => appearance_effect_name
- Meaning: call
DIGUY_CUSTOM_PDU_ID_SET_SCENE_OBJECT_BIT
- Contents:
- bool => true false
- Meaning: call
DIGUY_CUSTOM_PDU_ID_BROADCAST_EXERCISE_DATETIME
internal use only
- Contents:
- NetU16 => Target_site
- NetU16 => Target_host
- NetU16[7] => year, month, day, hour, minute, second, msec
- Meaning: call bdiScenario::set_network_datetime(network_datetime);
DIGUY_CUSTOM_PDU_ID_REQUEST_EXERCISE_DATETIME_BROADCAST
Unused
DIGUY_CUSTOM_PDU_ID_SET_SHAPE_VARIATION
- Contents:
- complicated: a series of NetU16 ( link index ), NetU16 (shape index ) followed by a slightly compressed chunk of pixel data. should probably only happen once per character.
int offset = 0;
short link_index = 0;
while(pdu->pullShort(link_index, offset) == 0)
{
short shape_index = 0;
pdu->pullShort(shape_index, offset);
bdiLink * link = character->get_link_at_index(link_index);
if(link)
{
bdiShape * shape = link->get_shape(shape_index);
if(!shape->get_unique_ramp_data())
{
const unsigned char * data_blob = NULL;
int bytes_read;
if(pdu->pullUnsignedData(data_blob, offset, bytes_read) == 0)
{
unsigned char * data_blob_copy = new unsigned char [shape->get_unique_ramp_data_size()*4 ];
int q;
for(q = 0; q < bytes_read/3; q++)
{
data_blob_copy[q*4+3] = 255;;
}
for( ; q < shape->get_unique_ramp_data_size(); q++)
{
data_blob_copy[q*4] = 128;
data_blob_copy[q*4+1] = 128;
data_blob_copy[q*4+2] = 128;
data_blob_copy[q*4+3] = 255;;
}
shape->set_unique_ramp_data(data_blob_copy);
}
}
}
}
DIGUY_CUSTOM_PDU_ID_EXECUTE_GESTURE
- Contents:
- String => gesture_name
- Long => reps
- NetFlt32 => overall_duration
- NetFlt32 => channel_A_weight
- Meaning: call diguyCharacter::execute_gesture(gesture_name,reps, overall_duration, channel_A_weight);
DIGUY_CUSTOM_PDU_ID_CHARACTER_SCALE
- Contents:
- NetFlt32[3] => scale x,y,z
- Meaning: call diguyCharacter::set_scale(x,y,z);
DIGUY_CUSTOM_PDU_ID_PLUGIN_RESERVED0 DIGUY_CUSTOM_PDU_ID_PLUGIN_RESERVED9
| Enumerator |
|---|
| DIGUY_CUSTOM_PDU_ID_ESCAPE_RESERVED |
|
| DIGUY_CUSTOM_PDU_ID_SET_CHAR_TYPE |
|
| DIGUY_CUSTOM_PDU_ID_SET_CHAR_APPEARANCE |
|
| DIGUY_CUSTOM_PDU_ID_SET_CHAR_ACTION |
|
| DIGUY_CUSTOM_PDU_ID_SET_CHAR_VISIBLE |
|
| DIGUY_CUSTOM_PDU_ID_SET_CHAR_PAUSED |
|
| DIGUY_CUSTOM_PDU_ID_SET_SCENARIO_FRAME |
|
| DIGUY_CUSTOM_PDU_ID_SET_SCENARIO_PLAYBACK_MODE |
|
| DIGUY_CUSTOM_PDU_ID_LOAD_SCENARIO_CAMERA |
|
| DIGUY_CUSTOM_PDU_ID_RESET |
|
| DIGUY_CUSTOM_PDU_ID_HAIL |
|
| DIGUY_CUSTOM_PDU_ID_LOAD_SCENARIO_FILE |
|
| DIGUY_CUSTOM_PDU_ID_SET_CAMERA_DETAILS |
|
| DIGUY_CUSTOM_PDU_ID_XC_LOAD_SCENARIO |
|
| DIGUY_CUSTOM_PDU_ID_XC_LOAD_SCENARIO_COMPLETE |
|
| DIGUY_CUSTOM_PDU_ID_XC_MERGE_SCENARIO |
|
| DIGUY_CUSTOM_PDU_ID_XC_MERGE_SCENARIO_COMPLETE |
|
| DIGUY_CUSTOM_PDU_ID_XC_SET_TIN_TOD |
|
| DIGUY_CUSTOM_PDU_ID_XC_TIME_NOW |
|
| DIGUY_CUSTOM_PDU_ID_XC_CONTROL |
|
| DIGUY_CUSTOM_PDU_ID_XC_TRIGGER_SCRIPT |
|
| DIGUY_CUSTOM_PDU_ID_XC_EVAL_SCRIPT |
|
| DIGUY_CUSTOM_PDU_ID_XC_SET_FF_SPEED |
|
| DIGUY_CUSTOM_PDU_ID_XC_TRIGGER_SIGNAL |
|
| DIGUY_CUSTOM_PDU_ID_XC_RESET_SCENARIO |
|
| DIGUY_CUSTOM_PDU_ID_XC_ENTER_SLAVE_MODE |
|
| DIGUY_CUSTOM_PDU_ID_XC_EXIT_SLAVE_MODE |
|
| DIGUY_CUSTOM_PDU_ID_VARIABLE_STATE |
|
| DIGUY_CUSTOM_PDU_ID_SAVE_SCENARIO |
|
| DIGUY_CUSTOM_PDU_ID_SAVE_SCENARIO_COMPLETE |
|
| DIGUY_CUSTOM_PDU_ID_AI_SEND_MESSAGE_TO_CHARACTER |
|
| DIGUY_CUSTOM_PDU_ID_AI_SEND_MESSAGE_TO_GROUP |
|
| DIGUY_CUSTOM_PDU_ID_AI_BROADCAST_MESSAGE |
|
| DIGUY_CUSTOM_PDU_ID_AI_BROADCAST_MESSAGE_TO_GROUP |
|
| DIGUY_CUSTOM_PDU_ID_BEGIN_APPEARANCE_EFFECT |
|
| DIGUY_CUSTOM_PDU_ID_END_APPEARANCE_EFFECT |
|
| DIGUY_CUSTOM_PDU_ID_STOP_APPEARANCE_EFFECT |
|
| DIGUY_CUSTOM_PDU_ID_SET_SCENE_OBJECT_BIT |
|
| DIGUY_CUSTOM_PDU_ID_BROADCAST_EXERCISE_DATETIME |
|
| DIGUY_CUSTOM_PDU_ID_REQUEST_EXERCISE_DATETIME_BROADCAST |
|
| DIGUY_CUSTOM_PDU_ID_SET_SHAPE_VARIATION |
|
| DIGUY_CUSTOM_PDU_ID_EXECUTE_GESTURE |
|
| DIGUY_CUSTOM_PDU_ID_CHARACTER_SCALE |
|
| DIGUY_CUSTOM_PDU_ID_PLUGIN_RESERVED0 |
|
| DIGUY_CUSTOM_PDU_ID_PLUGIN_RESERVED1 |
|
| DIGUY_CUSTOM_PDU_ID_PLUGIN_RESERVED2 |
|
| DIGUY_CUSTOM_PDU_ID_PLUGIN_RESERVED3 |
|
| DIGUY_CUSTOM_PDU_ID_PLUGIN_RESERVED4 |
|
| DIGUY_CUSTOM_PDU_ID_PLUGIN_RESERVED5 |
|
| DIGUY_CUSTOM_PDU_ID_PLUGIN_RESERVED6 |
|
| DIGUY_CUSTOM_PDU_ID_PLUGIN_RESERVED7 |
|
| DIGUY_CUSTOM_PDU_ID_PLUGIN_RESERVED8 |
|
| DIGUY_CUSTOM_PDU_ID_PLUGIN_RESERVED9 |
|
| DIGUY_CUSTOM_PDU_ID_COUNT |
|