SetRadarAreaSize: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
Line 1: Line 1:
__NOTOC__  
__NOTOC__
{{Server function}}
This function changes the size of an existing radar area.
This function changes the size of an existing radar area.


Line 22: Line 23:
addEventHandler ( "onPlayerWasted", root, "playerWasted" )
addEventHandler ( "onPlayerWasted", root, "playerWasted" )
function playerWasted ( killer, killerweapon, bodypart )
function playerWasted ( killer, killerweapon, bodypart )
  local victimteam = getPlayerTeam ( source ) -- get the team of the victim
    local victimteam = getPlayerTeam ( source )                 -- get the team of the victim
  local killerteam = getPlayerTeam ( killer ) -- get the team of the killer
    local killerteam = getPlayerTeam ( killer )                 -- get the team of the killer
  if ( killer and killerteam ~= victimteam ) then -- if there is a killer and he is from an opposing team
    if ( killer and killerteam ~= victimteam ) then             -- if there is a killer and he is from an opposing team
      local victimarea = getElementChild ( victimteam, 0 ) -- get the radararea belonging to the victim's team
        local victimarea = getElementChild ( victimteam, 0 )   -- get the radararea belonging to the victim's team
      local x, y = getRadarAreaSize ( victimarea ) -- get the size of the radar area
        local x, y = getRadarAreaSize ( victimarea )           -- get the size of the radar area
      x = x - 5
        x = x - 5
      y = y - 5
        y = y - 5
      setRadarAreaSize ( victimarea, x, y ) -- set a new (smaller) size for the victim's radar area
        setRadarAreaSize ( victimarea, x, y )                   -- set a new (smaller) size for the victim's radar area
  end
    end
end
end
</syntaxhighlight>
</syntaxhighlight>
'''Example 2:''' This example creates a radar area and resets it's size right away:
'''Example 2:''' This example creates a radar area and resets its size right away:
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
aRadarArea = createRadarArea ( 1024, 1024, 30, 140, 255, 255, 0, 85 )
aRadarArea = createRadarArea ( 1024, 1024, 30, 140, 255, 255, 0, 85 )
bool flag = setRadarAreaSize ( aRadarArea, 50, 90 )
bool flag = setRadarAreaSize ( aRadarArea, 50, 90 )
if ( flag ) then
if ( flag ) then
  outputChatBox ( "Radar area size set successfully!" )
    outputChatBox ( "Radar area size set successfully!" )
else
else
  outputChatBox ( "Failed to set radar area size." )
    outputChatBox ( "Failed to set radar area size." )
end
end
</syntaxhighlight>
</syntaxhighlight>

Revision as of 20:57, 15 August 2007

This function changes the size of an existing radar area.

Syntax

bool setRadarAreaSize ( radararea theRadararea, float x, float y )

Required Arguments

  • theRadararea: the radararea element whose size is to be changed.
  • x: the x length of the radar area.
  • y: the y length of the radar area.

Returns

Returns true if the size was set successfully, false if the specified radar area doesn't exist.

Example

Example 1: This example decreases the size of a team's radar area whenever a player from that team dies:

-- assume that team elements exist and that each player belongs to one of them
-- assume that radararea elements exist and that each is a child of one of the teams
addEventHandler ( "onPlayerWasted", root, "playerWasted" )
function playerWasted ( killer, killerweapon, bodypart )
    local victimteam = getPlayerTeam ( source )                 -- get the team of the victim
    local killerteam = getPlayerTeam ( killer )                 -- get the team of the killer
    if ( killer and killerteam ~= victimteam ) then             -- if there is a killer and he is from an opposing team
        local victimarea = getElementChild ( victimteam, 0 )    -- get the radararea belonging to the victim's team
        local x, y = getRadarAreaSize ( victimarea )            -- get the size of the radar area
        x = x - 5
        y = y - 5
        setRadarAreaSize ( victimarea, x, y )                   -- set a new (smaller) size for the victim's radar area
    end
end

Example 2: This example creates a radar area and resets its size right away:

aRadarArea = createRadarArea ( 1024, 1024, 30, 140, 255, 255, 0, 85 )
bool flag = setRadarAreaSize ( aRadarArea, 50, 90 )
if ( flag ) then
    outputChatBox ( "Radar area size set successfully!" )
else
    outputChatBox ( "Failed to set radar area size." )
end

See Also