Jump to content

Killmessages


Klesh

Recommended Posts

Hi community i try to do this script, is about when you kill some zombie this appears on screen like when you kill a player

Player-----Weapon------Zombie

I try to modify it the resource with a lot of functions but works, the function with i work is zombieWashted (), but nothing.

Here is the resouce i was try modify:

addEvent ("onClientPlayerKillMessage",true) 
function onClientPlayerKillMessage ( killer,weapon,wr,wg,wb,kr,kg,kb,width,resource ) 
    if wasEventCancelled() then return end 
    outputKillMessage ( source, wr,wg,wb,killer,kr,kg,kb,weapon,width,resource ) 
end 
addEventHandler ("onClientPlayerKillMessage",getRootElement(),onClientPlayerKillMessage) 
  
function outputKillMessage ( source, wr,wg,wb,killer,kr,kg,kb,weapon,width,resource ) 
    if not iconWidths[weapon] then  
        if type(weapon) ~= "string" then 
            weapon = 999  
        end 
    end 
    local killerName 
    local wastedName 
    if not tonumber(wr) then wr = 255 end 
    if not tonumber(wg) then wg = 255 end 
    if not tonumber(wb) then wb = 255 end 
    if not tonumber(kr) then kr = 255 end 
    if not tonumber(kg) then kg = 255 end 
    if not tonumber(kb) then kb = 255 end 
    if ( source ) then 
        if isElement ( source ) then 
            if getElementType ( source ) == "player" then  
                wastedName = getPlayerName ( source ) 
            else  
            outputDebugString ( "outputKillMessage - Invalid 'wasted' player specified",0,0,0,100) 
            return false end 
        elseif type(source) == "string" then 
            wastedName = source 
        end 
    else  
        outputDebugString ( "outputKillMessage - Invalid 'wasted' player specified",0,0,0,100) 
    return false end 
    if ( killer ) then 
        if isElement ( killer ) then 
            if getElementType ( killer ) == "player" then 
                killerName = getPlayerName ( killer ) 
            else  
                outputDebugString ( "outputKillMessage - Invalid 'killer' player specified",0,0,0,100) 
            return false end 
        elseif type(killer) == "string" then 
            killerName = killer 
        else 
            killerName = "" 
        end 
    else killerName = "" end 
    --create the new text 
    if not killerName then 
        killerName = "" 
    end 
    return outputMessage ( {killerName, {"padding",width=3}, {"icon",id=weapon}, 
        {"padding",width=3},{"color",r=wr,g=wg,b=wb}, wastedName}, 
        kr,kg,kb ) 
end 
  

Client-Side

local config = { 
["lines"] = 5, 
["startY"] = 0.35, 
["textHeight"] = 16, 
["iconHeight"] = 20, 
["iconSpacing"] = 4, 
["defaultWeapon"] = 255, 
["fadeTime"] = 5000, 
["startFade"] = 15000, 
["align"] = "right", 
["startX"] = -10 
} 
local default = { 
["lines"] = 5, 
["startY"] = 0.25, 
["textHeight"] = 16, 
["iconHeight"] = 20, 
["iconSpacing"] = 4, 
["defaultWeapon"] = 255, 
["fadeTime"] = 5000, 
["startFade"] = 15000, 
["align"] = "right", 
["startX"] = -10 
} 
  
local vehicleIDs = { [50]=true,[49]=true,[31]=true,[38]=true,[52]=true } 
function KillMessages_onPlayerWasted ( totalammo, killer, killerweapon, bodypart ) 
    ---These are special checks for certain kill types 
    local usedVehicle 
    if killerweapon == 19 and isElement(killer) then --rockets 
        killerweapon = killer and getElementType ( killer ) == "player" and getPedWeapon(killer) 
        if not killerweapon then 
            killerweapon = 51 
        end 
    elseif vehicleIDs[killerweapon] then --heliblades/rammed 
        if ( isElement(killer) and getElementType ( killer ) == "vehicle" ) then 
            usedVehicle = getElementModel ( killer ) 
            killer = getVehicleOccupant ( killer, 0 ) 
        end 
    elseif ( killerweapon == 59 and isElement(killer) ) then 
        if ( getElementType ( killer ) == "player" ) then 
            local vehicle = getPedOccupiedVehicle(killer) 
            if ( vehicle ) then 
                usedVehicle = getElementModel ( vehicle ) 
            end 
        end 
    end 
    --finish this 
    -- Got a killer? Print the normal "* X died" if not 
    if ( killer and isElement(killer) and getElementType ( killer ) == "player" ) then 
        local kr,kg,kb = getPlayerNametagColor  ( killer ) 
        if getPlayerTeam" class="kw2">getPlayerTeam" class="kw2">getPlayerTeam ( killer ) then 
            kr,kg,kb = getTeamColor ( getPlayerTeam" class="kw2">getPlayerTeam ( killer ) ) 
        end 
        -- Suicide? 
        if (source == killer) then 
            if not killerweapon then killerweapon = 255 end 
            local triggered = triggerEvent ( "onPlayerKillMessage", source,false,killerweapon,bodypart ) 
            --outputDebugString ( "Cancelled: "..tostring(triggered) ) 

Server-Side

Thanks for any Help nad the commnuity.

Link to comment
addEvent("onZombieWasted") 
addEventHandler( "onZombieWasted", getRootElement(), 
function (killer) 
killerName = getPlayerName(killer) 
weapon = getPedWeapon(killer) 
wr, wg, wb = getPlayerNametagColor(killer) 
exports.killmessages:outputMessage ( {killerName,{"padding",width=3},{"icon",id=weapon or 0},{"padding",width=3},{"color",r=255,g=0,b=0},"Zombie"},getRootElement(),wr,wg,wb ) 
end) 

It should work (tested).

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