Class: S2A_INFO2_Packet
- Inherits:
-
Object
- Object
- S2A_INFO2_Packet
- Includes:
- S2A_INFO_BasePacket
- Defined in:
- lib/steam/packets/s2a_info2_packet.rb
Overview
The S2A_INFO2_Packet class represents the response to a A2S_INFO request sent to a Source server.
Constant Summary
Constants included from SteamPacket
SteamPacket::A2M_GET_SERVERS_BATCH2_HEADER, SteamPacket::A2S_INFO_HEADER, SteamPacket::A2S_PLAYER_HEADER, SteamPacket::A2S_RULES_HEADER, SteamPacket::A2S_SERVERQUERY_GETCHALLENGE_HEADER, SteamPacket::C2M_CHECKMD5_HEADER, SteamPacket::M2A_SERVER_BATCH_HEADER, SteamPacket::M2C_ISVALIDMD5_HEADER, SteamPacket::M2S_REQUESTRESTART_HEADER, SteamPacket::RCON_GOLDSRC_CHALLENGE_HEADER, SteamPacket::RCON_GOLDSRC_NO_CHALLENGE_HEADER, SteamPacket::RCON_GOLDSRC_RESPONSE_HEADER, SteamPacket::S2A_INFO2_HEADER, SteamPacket::S2A_INFO_DETAILED_HEADER, SteamPacket::S2A_LOGSTRING_HEADER, SteamPacket::S2A_PLAYER_HEADER, SteamPacket::S2A_RULES_HEADER, SteamPacket::S2C_CHALLENGE_HEADER, SteamPacket::S2C_CONNREJECT_HEADER, SteamPacket::S2M_HEARTBEAT2_HEADER
Instance Attribute Summary
Attributes included from S2A_INFO_BasePacket
Instance Method Summary collapse
-
#initialize(data) ⇒ S2A_INFO2_Packet
constructor
Creates a S2A_INFO2 response object based on the data received.
Methods included from S2A_INFO_BasePacket
Methods included from SteamPacket
Constructor Details
#initialize(data) ⇒ S2A_INFO2_Packet
Creates a S2A_INFO2 response object based on the data received.
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/steam/packets/s2a_info2_packet.rb', line 15 def initialize(data) super S2A_INFO2_HEADER, data @protocol_version = @content_data.byte @server_name = @content_data.cstring @map_name = @content_data.cstring @game_directory = @content_data.cstring @game_description = @content_data.cstring @app_id = @content_data.short @number_of_players = @content_data.byte @max_players = @content_data.byte @number_of_bots = @content_data.byte @dedicated = @content_data.byte.chr @operating_system = @content_data.byte.chr @password_needed = @content_data.byte == 1 @secure = @content_data.byte == 1 @game_version = @content_data.cstring extra_data_flag = @content_data.byte @server_port = @content_data.short unless extra_data_flag & 0x80 == 0 unless extra_data_flag & 0x10 == 0 @server_id = @content_data.long | (@content_data.long << 32) end unless extra_data_flag & 0x40 == 0 @tv_port = @content_data.short @tv_name = @content_data.cstring end @server_tags = @content_data.cstring unless extra_data_flag & 0x20 == 0 generate_info_hash end |