本文整理汇总了C++中NET_Packet::r_float方法的典型用法代码示例。如果您正苦于以下问题:C++ NET_Packet::r_float方法的具体用法?C++ NET_Packet::r_float怎么用?C++ NET_Packet::r_float使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类NET_Packet
的用法示例。
在下文中一共展示了NET_Packet::r_float方法的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1:
void CPhantom::net_Import (NET_Packet& P)
{
// import
R_ASSERT (Remote());
u8 flags;
float health;
P.r_float (health);
SetfHealth (health);
float fDummy;
u32 dwDummy;
P.r_float (fDummy);
P.r_u32 (dwDummy);
P.r_u32 (dwDummy);
P.r_u32 (dwDummy);
P.r_u8 (flags);
float yaw, pitch, bank = 0, roll = 0;
P.r_float /*r_angle8*/ (yaw);
P.r_float /*r_angle8*/ (yaw);
P.r_float /*r_angle8*/ (pitch);
P.r_float /*r_angle8*/ (roll);
id_Team = P.r_u8();
id_Squad = P.r_u8();
id_Group = P.r_u8();
XFORM().setHPB (yaw,pitch,bank);
}
示例2: NetSync
void CInventoryItem::net_Import (NET_Packet& P)
{
P.r_float (m_fCondition) ;
net_update_IItem N ;
N.dwTimeStamp=P.r_u32 ( );
u16 NumItems = 0;
NumItems=P.r_u16 ( );
if (CSE_ALifeInventoryItem::FLAG_NO_POSITION != NumItems)
N.State.position=P.r_vec3 ();
if (!NumItems || (CSE_ALifeInventoryItem::FLAG_NO_POSITION == NumItems)) return;
position_Import (P,N) ;
net_updateData *p = NetSync() ;
if ( !p->NET_IItem.empty() &&
(p->NET_IItem.back().dwTimeStamp>=N.dwTimeStamp))
return;
if (!p->NET_IItem.empty()){
m_flags.set (FInInterpolate, TRUE);
// m_bInterpolate = true;
}
Level().AddObject_To_Objects4CrPr (m_object);
object().CrPr_SetActivated (false);
object().CrPr_SetActivationStep (0);
p->NET_IItem.push_back (N);
while (p->NET_IItem.size() > 2)
{
p->NET_IItem.pop_front ();
};
};
示例3: net_Import
void CCustomMonster::net_Import(NET_Packet& P)
{
R_ASSERT (Remote());
net_update N;
u8 flags;
float health;
P.r_float (health);
SetfHealth (health);
P.r_u32 (N.dwTimeStamp);
P.r_u8 (flags);
P.r_vec3 (N.p_pos);
P.r_float /*r_angle8*/ (N.o_model);
P.r_float /*r_angle8*/ (N.o_torso.yaw);
P.r_float /*r_angle8*/ (N.o_torso.pitch);
P.r_float /*r_angle8*/ (N.o_torso.roll );
id_Team = P.r_u8();
id_Squad = P.r_u8();
id_Group = P.r_u8();
if (NET.empty() || (NET.back().dwTimeStamp<N.dwTimeStamp)) {
NET.push_back (N);
NET_WasInterpolating = TRUE;
}
setVisible (TRUE);
setEnabled (TRUE);
}
示例4:
void CSE_SmartCover::STATE_Read (NET_Packet &tNetPacket, u16 size)
{
inherited1::STATE_Read (tNetPacket, size);
cform_read (tNetPacket);
tNetPacket.r_stringZ (m_description);
m_hold_position_time = tNetPacket.r_float();
if (m_wVersion >= 120) {
m_enter_min_enemy_distance = tNetPacket.r_float();
m_exit_min_enemy_distance = tNetPacket.r_float();
}
if (m_wVersion >= 122)
m_is_combat_cover = tNetPacket.r_u8();
if (m_wVersion >= 128)
m_can_fire = tNetPacket.r_u8();
}
示例5: base
void CSE_ALifeInventoryItem::STATE_Read (NET_Packet &tNetPacket, u16 size)
{
u16 m_wVersion = base()->m_wVersion;
if (m_wVersion > 52)
tNetPacket.r_float (m_fCondition);
State.position = base()->o_Position;
}
示例6: movement
void CAI_Stalker::net_Import (NET_Packet& P)
{
R_ASSERT (Remote());
net_update N;
u8 flags;
P.r_float ();
set_money ( P.r_u32(), false );
float health;
P.r_float (health);
SetfHealth (health);
// fEntityHealth = health;
P.r_u32 (N.dwTimeStamp);
P.r_u8 (flags);
P.r_vec3 (N.p_pos);
P.r_float /*r_angle8*/ (N.o_model);
P.r_float /*r_angle8*/ (N.o_torso.yaw);
P.r_float /*r_angle8*/ (N.o_torso.pitch);
P.r_float /*r_angle8*/ (N.o_torso.roll );
id_Team = P.r_u8();
id_Squad = P.r_u8();
id_Group = P.r_u8();
GameGraph::_GRAPH_ID graph_vertex_id = movement().game_dest_vertex_id();
P.r (&graph_vertex_id, sizeof(GameGraph::_GRAPH_ID));
graph_vertex_id = ai_location().game_vertex_id();
P.r (&graph_vertex_id, sizeof(GameGraph::_GRAPH_ID));
if (NET.empty() || (NET.back().dwTimeStamp<N.dwTimeStamp)) {
NET.push_back (N);
NET_WasInterpolating = TRUE;
}
P.r_float ();
P.r_float ();
P.r_stringZ (m_sStartDialog);
setVisible (TRUE);
setEnabled (TRUE);
}
示例7:
void CAI_Trader::net_Import (NET_Packet& P)
{
R_ASSERT (Remote());
float fDummy;
P.r_float (fDummy);
set_money ( P.r_u32(), false );
setVisible (TRUE);
setEnabled (TRUE);
}
示例8: base
void CSE_ALifeInventoryItem::STATE_Read (NET_Packet &tNetPacket, u16 size)
{
u16 m_wVersion = base()->m_wVersion;
if (m_wVersion > 52)
tNetPacket.r_float (m_fCondition);
if (m_wVersion > 123)
{
load_data (m_upgrades, tNetPacket);
}
State.position = base()->o_Position;
}
示例9:
void SHit::Read_Packet_Cont (NET_Packet Packet)
{
Packet.r_u16 (whoID);
Packet.r_u16 (weaponID);
Packet.r_dir (dir);
Packet.r_float (power);
Packet.r_u16 (boneID);
Packet.r_vec3 (p_in_bone_space);
Packet.r_float (impulse);
aim_bullet = Packet.r_u16()!=0;
hit_type = (ALife::EHitType)Packet.r_u16(); //hit type
if (hit_type == ALife::eHitTypeFireWound)
{
Packet.r_float (ap);
}
if (PACKET_TYPE == GE_HIT_STATISTIC)
{
Packet.r_u32(BulletID);
Packet.r_u32(SenderID);
}
}
示例10: net_Import
void CBaseMonster::net_Import(NET_Packet& P)
{
R_ASSERT (Remote());
net_update N;
u8 flags;
float health;
P.r_float (health);
SetfHealth (health);
P.r_u32 (N.dwTimeStamp);
P.r_u8 (flags);
P.r_vec3 (N.p_pos);
P.r_float /*r_angle8*/ (N.o_model);
P.r_float /*r_angle8*/ (N.o_torso.yaw);
P.r_float /*r_angle8*/ (N.o_torso.pitch);
P.r_float /*r_angle8*/ (N.o_torso.roll );
id_Team = P.r_u8();
id_Squad = P.r_u8();
id_Group = P.r_u8();
GameGraph::_GRAPH_ID l_game_vertex_id = ai_location().game_vertex_id();
P.r (&l_game_vertex_id, sizeof(l_game_vertex_id));
P.r (&l_game_vertex_id, sizeof(l_game_vertex_id));
if (NET.empty() || (NET.back().dwTimeStamp<N.dwTimeStamp)) {
NET.push_back (N);
NET_WasInterpolating = TRUE;
}
// P.r (&m_fGoingSpeed, sizeof(m_fGoingSpeed));
// P.r (&m_fGoingSpeed, sizeof(m_fGoingSpeed));
float f1 = 0;
if (ai().game_graph().valid_vertex_id(l_game_vertex_id)) {
f1 = Position().distance_to (ai().game_graph().vertex(l_game_vertex_id)->level_point());
P.r (&f1, sizeof(f1));
f1 = Position().distance_to (ai().game_graph().vertex(l_game_vertex_id)->level_point());
P.r (&f1, sizeof(f1));
}
else {
P.r (&f1, sizeof(f1));
P.r (&f1, sizeof(f1));
}
setVisible (TRUE);
setEnabled (TRUE);
}
示例11: net_Import
void CAI_Rat::net_Import(NET_Packet& P)
{
R_ASSERT (Remote());
net_update N;
u8 flags;
float health;
P.r_float (health);
SetfHealth (health);
P.r_u32 (N.dwTimeStamp);
P.r_u8 (flags);
P.r_vec3 (N.p_pos);
P.r_angle8 (N.o_model);
P.r_angle8 (N.o_torso.yaw);
P.r_angle8 (N.o_torso.pitch);
P.r_angle8 (N.o_torso.roll );
id_Team = P.r_u8();
id_Squad = P.r_u8();
id_Group = P.r_u8();
GameGraph::_GRAPH_ID t;
P.r (&t, sizeof(t));
P.r (&t, sizeof(t));
ai_location().game_vertex (t);
if (NET.empty() || (NET.back().dwTimeStamp<N.dwTimeStamp)) {
NET.push_back (N);
NET_WasInterpolating = TRUE;
}
setVisible (TRUE);
setEnabled (TRUE);
CEatableItem::net_Import(P);
}
示例12: net_Import_PH_Params
void CPhysicObject::net_Import_PH_Params(NET_Packet& P, net_update_PItem& N, mask_num_items& num_items)
{
//N.State.force.set (0.f,0.f,0.f);
//N.State.torque.set (0.f,0.f,0.f);
//UI().Font().pFontStat->OutSet(100.0f,100.0f);
P.r_vec3 (N.State.force);
//Msg("Import N.State.force.y:%4.6f",N.State.force.y);
P.r_vec3 (N.State.torque);
P.r_vec3 (N.State.position);
//Msg("Import N.State.position.y:%4.6f",N.State.position.y);
P.r_float(N.State.quaternion.x);
P.r_float(N.State.quaternion.y);
P.r_float(N.State.quaternion.z);
P.r_float(N.State.quaternion.w);
N.State.enabled = num_items.mask & CSE_ALifeObjectPhysic::inventory_item_state_enabled;
//UI().Font().pFontStat->OutNext("Import N.State.enabled:%i",int(N.State.enabled));
if (!(num_items.mask & CSE_ALifeObjectPhysic::inventory_item_angular_null)) {
N.State.angular_vel.x = P.r_float();
N.State.angular_vel.y = P.r_float();
N.State.angular_vel.z = P.r_float();
}
else
N.State.angular_vel.set (0.f,0.f,0.f);
if (!(num_items.mask & CSE_ALifeObjectPhysic::inventory_item_linear_null)) {
N.State.linear_vel.x = P.r_float();
N.State.linear_vel.y = P.r_float();
N.State.linear_vel.z = P.r_float();
}
else
N.State.linear_vel.set (0.f,0.f,0.f);
//Msg("Import N.State.linear_vel.y:%4.6f",N.State.linear_vel.y);
N.State.previous_position = N.State.position;
N.State.previous_quaternion = N.State.quaternion;
}
示例13: sizeof
BOOL CSE_Abstract::Spawn_Read (NET_Packet &tNetPacket)
{
u16 dummy16;
// generic
tNetPacket.r_begin (dummy16);
R_ASSERT (M_SPAWN==dummy16);
tNetPacket.r_stringZ (s_name );
string256 temp;
tNetPacket.r_stringZ (temp);
set_name_replace (temp);
tNetPacket.r_u8 (s_gameid );
tNetPacket.r_u8 (s_RP );
tNetPacket.r_vec3 (o_Position );
tNetPacket.r_vec3 (o_Angle );
tNetPacket.r_u16 (RespawnTime );
tNetPacket.r_u16 (ID );
tNetPacket.r_u16 (ID_Parent );
tNetPacket.r_u16 (ID_Phantom );
tNetPacket.r_u16 (s_flags.flags );
// dangerous!!!!!!!!!
if (s_flags.is(M_SPAWN_VERSION))
tNetPacket.r_u16 (m_wVersion);
if (0==m_wVersion) {
tNetPacket.r_pos -= sizeof(u16);
m_wVersion = 0;
return FALSE;
}
if (m_wVersion > 69)
m_script_version = tNetPacket.r_u16();
// read specific data
//client object custom data serialization LOAD
if (m_wVersion > 70) {
u16 client_data_size = (m_wVersion > 93) ? tNetPacket.r_u16() : tNetPacket.r_u8(); //не может быть больше 256 байт
if (client_data_size > 0) {
// Msg ("SERVER:loading:load:%d bytes:%d:%s",client_data_size,ID,s_name_replace ? s_name_replace : "");
client_data.resize (client_data_size);
tNetPacket.r (&*client_data.begin(),client_data_size);
}
else
client_data.clear ();
}
else
client_data.clear ();
if (m_wVersion > 79)
tNetPacket.r (&m_tSpawnID, sizeof(m_tSpawnID));
if (m_wVersion < 112) {
if (m_wVersion > 82)
tNetPacket.r_float ();//m_spawn_probability);
if (m_wVersion > 83) {
tNetPacket.r_u32 ();//m_spawn_flags.assign(tNetPacket.r_u32());
xr_string temp;
tNetPacket.r_stringZ (temp);//tNetPacket.r_stringZ(m_spawn_control);
tNetPacket.r_u32 ();//m_max_spawn_count);
// this stuff we do not need even in case of uncomment
tNetPacket.r_u32 ();//m_spawn_count);
tNetPacket.r_u64 ();//m_last_spawn_time);
}
if (m_wVersion > 84) {
tNetPacket.r_u64 ();//m_min_spawn_interval);
tNetPacket.r_u64 ();//m_max_spawn_interval);
}
}
u16 size;
tNetPacket.r_u16 (size); // size
R_ASSERT3 ((m_tClassID == CLSID_SPECTATOR) || (size > sizeof(size)),"cannot read object, which is not successfully saved :(",name_replace());
STATE_Read (tNetPacket,size);
return TRUE;
}
示例14: check
void CSE_ALifeInventoryItem::UPDATE_Read (NET_Packet &tNetPacket)
{
tNetPacket.r_u8 (m_u8NumItems);
if (!m_u8NumItems) {
//Msg("* Object [%d] has no sync items", this->cast_abstract()->ID);
return;
}
mask_num_items num_items;
num_items.common = m_u8NumItems;
m_u8NumItems = num_items.num_items;
R_ASSERT2 (
m_u8NumItems < (u8(1) << 5),
make_string("%d",m_u8NumItems)
);
/*if (check(num_items.mask,animated))
{
tNetPacket.r_float(m_blend_timeCurrent);
anim_use=true;
}
else
{
anim_use=false;
}*/
{
tNetPacket.r_vec3 (State.force);
tNetPacket.r_vec3 (State.torque);
tNetPacket.r_vec3 (State.position);
base()->o_Position.set (State.position); //this is very important because many functions use this o_Position..
tNetPacket.r_float (State.quaternion.x);
tNetPacket.r_float (State.quaternion.y);
tNetPacket.r_float (State.quaternion.z);
tNetPacket.r_float (State.quaternion.w);
State.enabled = check(num_items.mask,inventory_item_state_enabled);
if (!check(num_items.mask,inventory_item_angular_null)) {
tNetPacket.r_float (State.angular_vel.x);
tNetPacket.r_float (State.angular_vel.y);
tNetPacket.r_float (State.angular_vel.z);
}
else
State.angular_vel.set (0.f,0.f,0.f);
if (!check(num_items.mask,inventory_item_linear_null)) {
tNetPacket.r_float (State.linear_vel.x);
tNetPacket.r_float (State.linear_vel.y);
tNetPacket.r_float (State.linear_vel.z);
}
else
State.linear_vel.set (0.f,0.f,0.f);
/*if (check(num_items.mask,animated))
{
anim_use=true;
}*/
}
prev_freezed = freezed;
if (tNetPacket.r_eof()) // in case spawn + update
{
freezed = false;
return;
}
if (tNetPacket.r_u8())
{
freezed = false;
}
else {
if (!freezed)
#ifdef XRGAME_EXPORTS
m_freeze_time = Device.dwTimeGlobal;
#else
m_freeze_time = 0;
#endif
freezed = true;
}
};