Jump to content

[REQ]Local Chat


Recommended Posts

  
chat_range=100 
  
function isPlayerInRangeOfPoint(player,x,y,z,range) 
   local px,py,pz=getElementPosition(player) 
   return ((x-px)^2+(y-py)^2+(z-pz)^2)^0.5<=range 
end 
  
function onChat(player,_,msg) 
  local px,py,pz=getElementPosition(player) 
  local nick=getPlayerName(player) 
  for _,v in ipairs(getElementsByType("player")) do 
    if isPlayerInRangeOfPoint(v,px,py,pz,chat_range) then 
      outputChatBox("[local]"..nick..": #ffffff"..msg,v,30,30,200,true) 
    end 
  end 
end 
  
addCommandHandler("l",onChat) 
  

Link to comment
chat_range=100 
  
addEventHandler("onPlayerJoin",getRootElement(), 
function () 
bindKey(source,"L","down","chatbox","L") 
end) 
  
addEventHandler("onResourceStart",getResourceRootElement(getThisResource()), 
function () 
for index, player in pairs(getElementsByType("player")) do 
bindKey(player,"L","down","chatbox","L") 
  end 
end) 
  
function isPlayerInRangeOfPoint(player,x,y,z,range) 
   local px,py,pz=getElementPosition(player) 
   return ((x-px)^2+(y-py)^2+(z-pz)^2)^0.5<=range 
end 
  
function onChat(player,_,msg) 
  local px,py,pz=getElementPosition(player) 
  local nick=getPlayerName(player) 
  for _,v in ipairs(getElementsByType("player")) do 
    if isPlayerInRangeOfPoint(v,px,py,pz,chat_range) then 
      outputChatBox("[local]"..nick..": #ffffff"..msg,v,30,30,200,true) 
    end 
  end 
end 
addCommandHandler("L",onChat) 

I think that should work.

Link to comment

Try;

  
    chat_range=100 
      
    addEventHandler("onPlayerJoin",getRootElement(), 
    function () 
    bindKey(source,"L","down","chatbox","Local") 
    end) 
      
    addEventHandler("onResourceStart",getResourceRootElement(getThisResource()), 
    function () 
    for index, player in pairs(getElementsByType("player")) do 
    bindKey(player,"L","down","chatbox","Local") 
      end 
    end) 
      
    function isPlayerInRangeOfPoint(player,x,y,z,range) 
       local px,py,pz=getElementPosition(player) 
       return ((x-px)^2+(y-py)^2+(z-pz)^2)^0.5<=range 
    end 
      
    function onChat(player,_,...) 
      local args = { ... } 
      local message = "" 
      for _,arg in ipairs(args) do 
             if message == "" then 
                 message = arg 
             else 
                 message = message .. " " .. arg 
             end 
  
      local px,py,pz=getElementPosition(player) 
      local nick=getPlayerName(player) 
      for _,v in ipairs(getElementsByType("player")) do 
        if isPlayerInRangeOfPoint(v,px,py,pz,chat_range) then 
          outputChatBox("[LOCAL]"..nick..": #ffffff"..message,v,30,30,200,true) 
        end 
      end 
    end 
    addCommandHandler("Local",onChat) 
  
  

Link to comment
chat_range=100 
  
addEventHandler("onPlayerJoin",getRootElement(), 
function () 
bindKey(source,"L","down","chatbox","L") 
end) 
  
addEventHandler("onResourceStart",getResourceRootElement(getThisResource()), 
function () 
for index, player in pairs(getElementsByType("player")) do 
bindKey(player,"L","down","chatbox","L") 
  end 
end) 
  
function isPlayerInRangeOfPoint(player,x,y,z,range) 
   local px,py,pz=getElementPosition(player) 
   return ((x-px)^2+(y-py)^2+(z-pz)^2)^0.5<=range 
end 
  
function onChat(player,_,...) 
  local px,py,pz=getElementPosition(player) 
  local msg = table.concat({...}, " ") 
  local nick=getPlayerName(player) 
  for _,v in ipairs(getElementsByType("player")) do 
    if isPlayerInRangeOfPoint(v,px,py,pz,chat_range) then 
      outputChatBox("[local]"..nick..": #ffffff"..msg,v,30,30,200,true) 
    end 
  end 
end 
addCommandHandler("L",onChat) 

Link to comment

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...