Wysłany: 2014-11-07, 23:23
decha94
Wiek: 31 Na forum: 4866 dni Posty: 3
Witam mam problem gdyz na moim serverze RACE/DM gdy wszyscy gracze zgina i zostanie ostatni to odrazu zmienia sie mapa a chcia? bym zeby mapa zmienia?a sie dopiero gdy zginie ostatni gracz, niestety nigdzie nie moge tego znalesc i prosze was o pomoc pozdrawiam
Wysłany: 2014-11-08, 08:08
Iggy
#admin
Wiek: 26 Na forum: 4596 dni Posty: 3469
Nick w MP: Iggy
Piwa : 1716
Wysłany: 2014-11-09, 20:52
Gonzales
Wiek: 32 Na forum: 5463 dni Posty: 64
Nick w MP: Thorus
Piwa : 696
Spr?buj utworzy? warunek np. za pomoc? p?tli, kt?ry sprawdza status gracza, je?eli s? wszyscy zabici to funkcj? SendRconCommand (czy jako? tak) zmie? map?
Wysłany: 2014-11-11, 00:40
decha94
Wiek: 31 Na forum: 4866 dni Posty: 3
wystarczy?o pogrzebac w destructionderby.lua ale teraz tak juz na dm mozna grac i mapa sie zmienai dopiero jak ostatni grac zginie ale zato na dd jak zostanei jedna osoba to trzeba dac enter zeby mapa sie zmienila, jakis pomysl na ten fant bo mi juz brak pomys??w
Kod: DestructionDerby = setmetatable({}, RaceMode)
DestructionDerby.__index = DestructionDerby
DestructionDerby:register('Destruction derby')
function DestructionDerby:isApplicable()
return not RaceMode.checkpointsExist() and RaceMode.getMapOption('respawn') == 'none'
end
function DestructionDerby:getPlayerRank(player)
return #getActivePlayers()
end
-- Copy of old updateRank
function DestructionDerby:updateRanks()
for i,player in ipairs(g_Players) do
if not isPlayerFinished(player) then
local rank = self:getPlayerRank(player)
if not rank or rank > 0 then
setElementData(player, 'race rank', rank)
end
end
end
-- Make text look good at the start
if not self.running then
for i,player in ipairs(g_Players) do
setElementData(player, 'race rank', '' )
setElementData(player, 'checkpoint', '' )
end
end
end
function endTheMap()
RaceMode.endMap()
end
function DestructionDerby:onPlayerWasted(player)
if isActivePlayer(player) then
self:handleFinishActivePlayer(player)
if getActivePlayerCount() <= 0 then
endTheMap()
else
TimerManager.createTimerFor("map",player):setTimer(clientCall, 2000, 1, player, 'Spectate.start', 'auto')
end
end
RaceMode.setPlayerIsFinished(player)
showBlipsAttachedTo(player, false)
end
function DestructionDerby:onPlayerQuit(player)
if isActivePlayer(player) then
self:handleFinishActivePlayer(player)
if getActivePlayerCount() <= 0 then
endTheMap()
end
end
end
function checkForHunter(number,sort,model)
if #getElementsByType("player") <= 0 then return end
local activePlayers = getActivePlayers()
if #activePlayers == 1 then
local vehicle = getPedOccupiedVehicle(activePlayers[1])
if getElementModel(vehicle) == 425 then setElementHealth(activePlayers[1],0)
end
end
end
addEvent('onPlayerPickUpRacePickup',true)
addEventHandler("onPlayerPickUpRacePickup",getRootElement(),checkForHunter)
function DestructionDerby:handleFinishActivePlayer(player)
-- Update ranking board for player being removed
if not self.rankingBoard then
self.rankingBoard = RankingBoard:create()
self.rankingBoard:setDirection( 'up', getActivePlayerCount() )
end
local timePassed = self:getTimePassed()
self.rankingBoard:add(player, timePassed)
-- Do remove
finishActivePlayer(player)
-- Update ranking board if one player left
local activePlayers = getActivePlayers()
if #activePlayers == 2 then
triggerClientEvent ( "savetag3",getRootElement(),_getPlayerName(player))
end
if #activePlayers == 1 then
triggerClientEvent ( "savetag2",getRootElement(),_getPlayerName(player))
end
if #activePlayers == 0 then
self.rankingBoard:add(activePlayers[1], timePassed)
triggerClientEvent ( "savetag",getRootElement(),_getPlayerName(player))
triggerEvent("peds",getRootElement())
--triggerEvent("onPlayerDestructionDerbyWin", getRootElement(), player)
--saveDeathPlayer(activePlayers[1])
--addPodiumPlayer(activePlayers[1])
local timeravviato = false
if timeravviato == false then
setTimer (checkForHunter , 100, 0, player )
timeravviato = true
end
end
if #activePlayers == 1 then
--showMessage(getPlayerName(activePlayers[1]) .. ' pwned you all!', 171, 7, 7)
triggerClientEvent ( "Winnertext", getRootElement(), activePlayers[1] )
triggerEvent("onPlayerDestructionDerbyWin", getRootElement(), activePlayers[1])
local car = getPedOccupiedVehicle(activePlayers[1])
if car then
local model = getElementModel(car)
if model == 425 then
setElementHealth(activePlayers[1],0)
end
end
end
-- Update ranking board for player being removed
-- Do remove
local rank = self:getPlayerRank(player)
finishActivePlayer(player)
if rank and rank > 1 then
triggerEvent( "onPlayerFinishDD",player,tonumber( rank ) )
end
-- Update ranking board if one player left
local activePlayers = getActivePlayers()
if #activePlayers == 1 then
self.rankingBoard:add(activePlayers[1], timePassed)
alivePlayers = getAlivePlayers ()
showMessage(getPlayerName(activePlayers[1]) .. ' is the final survivor!', 0, 255, 0)
triggerEvent( "onPlayerWinDD",activePlayers[1] )
end
end
------------------------------------------------------------
-- activePlayerList stuff
--
function isActivePlayer( player )
return table.find( g_CurrentRaceMode.activePlayerList, player )
end
function addActivePlayer( player )
table.insertUnique( g_CurrentRaceMode.activePlayerList, player )
end
function removeActivePlayer( player )
table.removevalue( g_CurrentRaceMode.activePlayerList, player )
end
function finishActivePlayer( player )
table.removevalue( g_CurrentRaceMode.activePlayerList, player )
table.insertUnique( g_CurrentRaceMode.finishedPlayerList, _getPlayerName(player) )
end
function getFinishedPlayerCount()
return #g_CurrentRaceMode.finishedPlayerList
end
function getActivePlayerCount()
return #g_CurrentRaceMode.activePlayerList
end
function getActivePlayers()
if #getElementsByType("player") > 0 then
return g_CurrentRaceMode.activePlayerList
else
return false
end
end
Wysłany: 2014-11-11, 11:15
Gonzales
Wiek: 32 Na forum: 5463 dni Posty: 64
Nick w MP: Thorus
Piwa : 696
Skoro to dotyczy LUA to czemu jest to w dziale Pawn?
Wysłany: 2014-11-11, 11:58
decha94
Wiek: 31 Na forum: 4866 dni Posty: 3
niemam poj?cia mod to przeni?s? ;/
Tagi: jak :: wyłączyc :: zmiane :: mapy
Anonymous
Na forum: 245 dni
Posty: 1
Anonymous Koniecznie zajrzyj na: