X-Git-Url: http://deadsoftware.ru/gitweb?p=d2df-sdl.git;a=blobdiff_plain;f=src%2Fgame%2Fg_netmsg.pas;h=a7ff31a9639fe68fdf2efdae7e308b54a1683a5d;hp=abe7278a5a42267f06c0df26db3658604193af66;hb=ef4db75afec0dcd71f0bbe75b5f0b20537c8eac1;hpb=1bddfaf7b6421f1659a6f211dfdb1dfaef5d5173 diff --git a/src/game/g_netmsg.pas b/src/game/g_netmsg.pas index abe7278..a7ff31a 100644 --- a/src/game/g_netmsg.pas +++ b/src/game/g_netmsg.pas @@ -644,7 +644,7 @@ procedure MH_SEND_Everything(CreatePlayers: Boolean = False; ID: Integer = NET_E begin result := false; // don't stop MH_SEND_PanelState(pan.guid, ID); // anyway, to sync mplats - if (pan.GetTextureCount > 1) then MH_SEND_PanelTexture(pan.guid, pan.LastAnimLoop, ID); + if (pan.CanChangeTexture) then MH_SEND_PanelTexture(pan.guid, pan.LastAnimLoop, ID); end; var @@ -778,7 +778,7 @@ begin begin g_Console_Add(Txt, True); e_WriteLog('[Chat] ' + b_Text_Unformat(Txt), TMsgType.Notify); - g_Sound_PlayEx('SOUND_GAME_RADIO'); + g_Game_ChatSound(b_Text_Unformat(Txt)); end else if Mode = NET_CHAT_TEAM then @@ -788,13 +788,13 @@ begin begin g_Console_Add(#18'[Team] '#2 + Txt, True); e_WriteLog('[Team Chat] ' + b_Text_Unformat(Txt), TMsgType.Notify); - g_Sound_PlayEx('SOUND_GAME_RADIO'); + g_Game_ChatSound(b_Text_Unformat(Txt)); end else if (gPlayer1.Team = TEAM_BLUE) and (Team = TEAM_BLUE) then begin g_Console_Add(#20'[Team] '#2 + Txt, True); e_WriteLog('[Team Chat] ' + b_Text_Unformat(Txt), TMsgType.Notify); - g_Sound_PlayEx('SOUND_GAME_RADIO'); + g_Game_ChatSound(b_Text_Unformat(Txt)); end; end; end @@ -803,7 +803,7 @@ begin Name := g_Net_ClientName_ByID(ID); g_Console_Add('-> ' + Name + ': ' + Txt, True); e_WriteLog('[Tell ' + Name + '] ' + b_Text_Unformat(Txt), TMsgType.Notify); - g_Sound_PlayEx('SOUND_GAME_RADIO'); + g_Game_ChatSound(b_Text_Unformat(Txt), False); end; end; @@ -1410,7 +1410,7 @@ begin begin g_Console_Add(Txt, True); e_WriteLog('[Chat] ' + b_Text_Unformat(Txt), TMsgType.Notify); - g_Sound_PlayEx('SOUND_GAME_RADIO'); + g_Game_ChatSound(b_Text_Unformat(Txt)); end else if (Mode = NET_CHAT_TEAM) and (gPlayer1 <> nil) then begin @@ -1419,7 +1419,7 @@ begin if gPlayer1.Team = TEAM_BLUE then g_Console_Add(b_Text_Format('\b[Team] ') + Txt, True); e_WriteLog('[Team Chat] ' + b_Text_Unformat(Txt), TMsgType.Notify); - g_Sound_PlayEx('SOUND_GAME_RADIO'); + g_Game_ChatSound(b_Text_Unformat(Txt)); end; end else g_Console_Add(Txt, True); @@ -2364,17 +2364,9 @@ begin TP := g_Map_PanelByGUID(PGUID); if (TP <> nil) then begin - if Loop = 0 then - begin - // switch texture - TP.SetTexture(Tex, Loop); - TP.SetFrame(Fr, Cnt); - end - else - begin - // looped or non-looped animation - TP.NextTexture(Loop); - end; + // switch texture + TP.SetTexture(Tex, Loop); + TP.SetFrame(Fr, Cnt); end; end; @@ -2464,16 +2456,19 @@ begin if gTriggers[I].ClientID = SID then with gTriggers[I] do begin - if SPlaying then + if Sound <> nil then begin - if tgcLocal then - Sound.PlayVolumeAt(X+(Width div 2), Y+(Height div 2), tgcVolume/255.0) + if SPlaying then + begin + if tgcLocal then + Sound.PlayVolumeAt(X+(Width div 2), Y+(Height div 2), tgcVolume/255.0) + else + Sound.PlayPanVolume((tgcPan-127.0)/128.0, tgcVolume/255.0); + Sound.SetPosition(SPos); + end else - Sound.PlayPanVolume((tgcPan-127.0)/128.0, tgcVolume/255.0); - Sound.SetPosition(SPos); - end - else - if Sound.IsPlaying then Sound.Stop; + if Sound.IsPlaying then Sound.Stop; + end; SoundPlayCount := SCount; end; @@ -3019,10 +3014,10 @@ var mapDataMsg: TMapDataMsg; begin e_WriteLog('NET: Received map request from ' + - DecodeIPV4(C.Peer.address.host), TMsgType.Notify); + DecodeIPV4(C^.Peer.address.host), TMsgType.Notify); mapDataMsg := CreateMapDataMsg(MapsDir + gGameSettings.WAD, gExternalResources); - peer := NetClients[C.ID].Peer; + peer := NetClients[C^.ID].Peer; MapDataMsgToBytes(payload, mapDataMsg); g_Net_SendData(payload, peer, True, NET_CHAN_DOWNLOAD); @@ -3041,7 +3036,7 @@ var begin FileName := ExtractFileName(M.ReadString()); e_WriteLog('NET: Received res request: ' + FileName + - ' from ' + DecodeIPV4(C.Peer.address.host), TMsgType.Notify); + ' from ' + DecodeIPV4(C^.Peer.address.host), TMsgType.Notify); if not IsValidFilePath(FileName) then begin @@ -3049,7 +3044,7 @@ begin exit; end; - peer := NetClients[C.ID].Peer; + peer := NetClients[C^.ID].Peer; if gExternalResources.IndexOf(FileName) > -1 then begin