… | |
… | |
83 | client::play_sound (faceidx sound, int dx, int dy) |
83 | client::play_sound (faceidx sound, int dx, int dy) |
84 | { |
84 | { |
85 | if (!sound) |
85 | if (!sound) |
86 | return; |
86 | return; |
87 | |
87 | |
88 | if (this->sound) |
|
|
89 | { |
|
|
90 | // gcfclient compatibility |
|
|
91 | |
|
|
92 | packet sl ("sound"); |
|
|
93 | |
|
|
94 | sl << uint8 (dx) |
|
|
95 | << uint8 (dy) |
|
|
96 | << uint16 (sound) |
|
|
97 | << uint8 (SOUND_NORMAL); |
|
|
98 | |
|
|
99 | send_packet (sl); |
|
|
100 | } |
|
|
101 | else if (fx_want [FT_SOUND]) |
88 | if (fx_want [FT_SOUND]) |
102 | { |
89 | { |
103 | // cfplus |
90 | // cfplus |
104 | send_face (sound); |
91 | send_face (sound); |
105 | flush_fx (); |
92 | flush_fx (); |
106 | |
93 | |
… | |
… | |
116 | |
103 | |
117 | *len = sl.cur - len; // patch in group length |
104 | *len = sl.cur - len; // patch in group length |
118 | |
105 | |
119 | send_packet (sl); |
106 | send_packet (sl); |
120 | } |
107 | } |
|
|
108 | else if (this->sound) |
|
|
109 | { |
|
|
110 | // gcfclient compatibility |
|
|
111 | // fetch compatibility sound index first |
|
|
112 | |
|
|
113 | packet sl ("sound"); |
|
|
114 | |
|
|
115 | sl << uint8 (dx) |
|
|
116 | << uint8 (dy) |
|
|
117 | << uint16 (sound) |
|
|
118 | << uint8 (SOUND_NORMAL); |
|
|
119 | |
|
|
120 | send_packet (sl); |
|
|
121 | } |
121 | } |
122 | } |
122 | |
123 | |