Jump to content

Question


xeon17

Recommended Posts

Posted

How i can count players with a elementdata in chat ?

example :

There are 10 players in event , that players have elementdata ''evento''

Posted
local list = 0 
for i, thePlayer in ipairs(getElementsByType("player")) do 
    if isElement(thePlayer) and getElementData(thePlayer,"evento") == true then 
        list = list + 1 
    end 
end 
outputChatBox(list) 

I got it wrong for first time

local list = false 
for i, thePlayer in ipairs(getElementsByType("player")) do 
    if isElement(thePlayer) and getElementData(thePlayer,"evento") == true then 
        local name = getPlayerName(thePlayer) 
        if not list then 
            list = name 
        else 
            list = list..", "..name 
        end 
    end 
end 
outputChatBox(list) 

Posted

I use 5 commands in event , i'll post here one

problem is , it output so much chatbox's how much players are in event and it output the wrong number in chatbox

everything wong :/ how i make it example : You given sawn off to 11 player(s) in event

all there 11 player have a elementdata

  
local list = 0 
function giveWeaponCommand ( thePlayer, cmd, weaponID ) 
    if not (isAllownedPlayer(thePlayer)) then 
        return 
    end 
  
    weaponID = tonumber(weaponID) 
    if not (weaponID) or (weaponID > 46) then 
        outputChatBox("#FFF000[EVENTO]#FFFFFF Invalid weapon ID.", thePlayer, 255,255,255, true) 
        return 
    end 
  
    for _, player in ipairs(getElementsByType("player")) do 
        local isPlayerInEvento = getElementData( player, "Evento" ) 
        if (isPlayerInEvento) then 
            giveWeapon ( player, weaponID, 9999 ) 
  
            setPedStat ( player, 73, 1000 ) 
            setPedStat ( player, 75, 1000 ) 
            setPedStat ( player, 71, 1000 ) 
            setPedStat ( player, 75, 1000 ) 
            setPedStat ( player, 77, 1000 ) 
            setPedStat ( player, 78, 1000 ) 
            list = list + 1 
            outputChatBox("#FFF000[EVENTO]#FFFFFF "..getPlayerName(thePlayer).." Given you a " .. getWeaponNameFromID(weaponID) .. "!", player, 255, 255, 255, true) 
            outputChatBox("#FFF000[EVENTO]#FFFFFF You given " .. getWeaponNameFromID(weaponID) .. "! to "..list.." players", thePlayer, 255, 255, 255, true) 
        end 
    end 
 end 
addCommandHandler ("gweapon", giveWeaponCommand) 
  

Posted
I use 5 commands in event , i'll post here one

problem is , it output so much chatbox's how much players are in event and it output the wrong number in chatbox

everything wong :/ how i make it example : You given sawn off to 11 player(s) in event

all there 11 player have a elementdata

  
local list = 0 
function giveWeaponCommand ( thePlayer, cmd, weaponID ) 
    if not (isAllownedPlayer(thePlayer)) then 
        return 
    end 
  
    weaponID = tonumber(weaponID) 
    if not (weaponID) or (weaponID > 46) then 
        outputChatBox("#FFF000[EVENTO]#FFFFFF Invalid weapon ID.", thePlayer, 255,255,255, true) 
        return 
    end 
  
    for _, player in ipairs(getElementsByType("player")) do 
        local isPlayerInEvento = getElementData( player, "Evento" ) 
        if (isPlayerInEvento) then 
            giveWeapon ( player, weaponID, 9999 ) 
  
            setPedStat ( player, 73, 1000 ) 
            setPedStat ( player, 75, 1000 ) 
            setPedStat ( player, 71, 1000 ) 
            setPedStat ( player, 75, 1000 ) 
            setPedStat ( player, 77, 1000 ) 
            setPedStat ( player, 78, 1000 ) 
            list = list + 1 
            outputChatBox("#FFF000[EVENTO]#FFFFFF "..getPlayerName(thePlayer).." Given you a " .. getWeaponNameFromID(weaponID) .. "!", player, 255, 255, 255, true) 
            outputChatBox("#FFF000[EVENTO]#FFFFFF You given " .. getWeaponNameFromID(weaponID) .. "! to "..list.." players", thePlayer, 255, 255, 255, true) 
        end 
    end 
 end 
addCommandHandler ("gweapon", giveWeaponCommand) 
  

dude thefuck is that for code

Posted (edited)

Move

local list = 0 

exactly before "for" loop, either each time you cast function, list value will be previous.

And move 27 line after loop.

Edited by Guest
Posted
            outputChatBox("#FFF000[EVENTO]#FFFFFF You given " .. getWeaponNameFromID(weaponID) .. "! to "..NUMBER OF PLAYERS WITH ELEMENT DATA ''Evento'' .." players", thePlayer, 255, 255, 255, true) 
  

I think you should understand it now :D

Posted
Move it out of loop, I mean after, either it will output each time and increase each time.

I no understand much about loops , can you give me a extample please :/

Posted
function giveWeaponCommand ( thePlayer, cmd, weaponID ) 
    if not (isAllownedPlayer(thePlayer)) then return end 
  
    weaponID = tonumber(weaponID) 
    if not (weaponID) or (weaponID > 46) then outputChatBox("#FFF000[EVENTO]#FFFFFF Invalid weapon ID.", thePlayer, 255,255,255, true) return end 
  
    local list = 0 
    for _, player in ipairs(getElementsByType("player")) do 
        local isPlayerInEvento = getElementData( player, "Evento" ) 
        if (isPlayerInEvento) then 
            giveWeapon ( player, weaponID, 9999 ) 
  
            setPedStat ( player, 73, 1000 ) 
            setPedStat ( player, 75, 1000 ) 
            setPedStat ( player, 71, 1000 ) 
            setPedStat ( player, 75, 1000 ) 
            setPedStat ( player, 77, 1000 ) 
            setPedStat ( player, 78, 1000 ) 
            outputChatBox("#FFF000[EVENTO]#FFFFFF "..getPlayerName(thePlayer).." Given you a " .. getWeaponNameFromID(weaponID) .. "!", player, 255, 255, 255, true) 
            list = list + 1 
        end 
    end 
    outputChatBox("#FFF000[EVENTO]#FFFFFF You given " .. getWeaponNameFromID(weaponID) .. "! to "..list.." players", thePlayer, 255, 255, 255, true) 
 end 
addCommandHandler("gweapon", giveWeaponCommand) 

I sorted it like I like to.

By the way, shouldn't you make it local on 4 line?

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...