Jump to content

تعديل


Recommended Posts

سلام عليكم اليوم عملت مود

اليدخل السرفر يجيلو في الشات قام اللاعب بتسجيل دخوله

انا عامل اليجي اسم اللاعب

وما بتعمل في الشات خالص

من ساعت ما حتيت كود getplayername

function arabs( ) -- الوظيفة 
    outputChatBox("* [RentSysteam]" .. getPlayerName(player)) Has logged in | قام بتسجيل دخوله") --s  ستلاحظ بـ أن كلمة " مرحباً بك " ظهرت في الشات عند دخول الاعب  
end 
addEventHandler("onPlayerJoin", root, arabs) -- .الحدث مع اسم الوظيفة 
 
Link to comment

كيف؟

كلنت

------------------------------------------ 
--            TopBarChat                -- 
------------------------------------------ 
-- Developer: Braydon Davis             -- 
-- File: c.lua                          -- 
-- Copyright 2013 (C) Braydon Davis     -- 
-- All rights reserved.                 --   
------------------------------------------ 
-- Script Version: 1.4                  -- 
------------------------------------------ 
  
  
local maxMessages = 5;      -- The max messages that will show (on each bar) 
local DefaultTime = 8;      -- The max time each message will show if time isn't defined. 
  
------------------------------------------ 
-- For scripters only                   -- 
------------------------------------------ 
local sx_, sy_ = guiGetScreenSize ( ) 
local sx, sy = sx_/1280, sy_/720 -- you got xXMADEXx's resolution :3 plz no hak mi 
local DefaultPos = true; 
local messages_top = { } 
local messages_btm = { } 
  
function sendClientMessage ( msg, r, g, b, pos, time ) 
    -- Msg: String 
    -- R: Int (0-255) 
    -- G: Int (0-255) 
    -- B: Int (0-255) 
    -- Pos: Boolean 
    -- Time: Int 
    if ( not msg ) then return false end 
  
    if ( pos == nil ) then pos = DefaultPos end 
    local r, g, b = r or 255, g or 255, b or 255 
    local time = tonumber ( time ) or DefaultTime 
    local data = {  
        message = msg, 
        r = r, 
        g = g, 
        b = b, 
        alpha=0, 
        locked=true, 
        rTick = getTickCount ( ) + (time*1000) 
    } 
    --> Scripters note:  
        --> The remove and intro fades are handled in the render event 
    if ( pos == true or pos == "top" ) then 
        table.insert ( messages_top, data ) 
        return true 
    elseif ( pos == false or pos == "bottom" ) then 
        table.insert ( messages_btm, data ) 
        return true 
    end 
    return false 
end  
addEvent ( getResourceName ( getThisResource ( ) )..":sendClientMessage", true ) 
addEventHandler ( getResourceName ( getThisResource ( ) )..":sendClientMessage", root, sendClientMessage ) 
  
function dxDrawNotificationBar ( ) 
    local doRemove = { top = { }, bottom = { } }    -- This is used so it prevents the next message from flashing 
     
  
    -- Top Message Bar 
    for i, v in pairs ( messages_top ) do 
        local i = i - 1 
        if ( not v.locked ) then 
            v.alpha = v.alpha - 3 
            if ( v.alpha <= 20 ) then 
                table.insert ( doRemove.top, i+1 ) 
            end 
            messages_top[i+1].alpha = v.alpha 
        else 
            if ( v.alpha < 160 ) then 
                v.alpha = v.alpha + 1 
                messages_top[i+1].alpha = v.alpha 
            end 
            if ( v.rTick <= getTickCount ( ) ) then 
                v.locked = false 
                messages_top[i+1].locked=false 
            end 
        end 
        dxDrawRectangle ( (sx_/2-530/2), i*25, 530, 25, tocolor ( 0, 0, 0, v.alpha ) ) 
        dxDrawText ( tostring ( v.message ), 0, i*25, sx_, (i+1)*25, tocolor ( v.r, v.g, v.b, v.alpha*1.59375 ), sy*1, "default-bold", "center", "center") 
    end  
    if ( #messages_top > maxMessages and messages_top[1].locked ) then 
        messages_top[1].locked = false 
    end  
  
    -- Bottom Message Bar 
    for i, v in pairs ( messages_btm ) do 
        if ( not v.locked ) then 
            v.alpha = v.alpha - 3 
            if ( v.alpha <= 20 ) then 
                table.insert ( doRemove.bottom, i ) 
            end 
            messages_btm[i].alpha = v.alpha 
        else 
            if ( v.alpha < 160 ) then 
                v.alpha = v.alpha + 1 
                messages_btm[i].alpha = v.alpha 
            end 
            if ( v.rTick <= getTickCount ( ) ) then 
                v.locked = false 
                messages_btm[i].locked=false 
            end 
        end 
        dxDrawRectangle ( (sx_/2-530/2), sy_-(i*25), 530, 25, tocolor ( 0, 0, 0, v.alpha ) ) 
        dxDrawText ( tostring ( v.message ), 0, sy_-(i*25), sx_, sy_-((i-1)*25), tocolor ( v.r, v.g, v.b, v.alpha*1.59375 ), sy*1, "default-bold", "center", "center") 
    end  
    if ( #messages_btm > maxMessages and messages_btm[1].locked ) then 
        messages_btm[1].locked = false 
    end  
  
    -- handle message removes 
    if ( #doRemove.top > 0 )then 
        for i, v in pairs ( doRemove.top ) do 
            table.remove ( messages_top, v ) 
        end 
    end 
    if ( #doRemove.bottom > 0 ) then 
        for i, v in pairs ( doRemove.bottom ) do 
            table.remove ( messages_btm, v ) 
        end 
    end 
end 
addEventHandler ( "onClientRender", root, dxDrawNotificationBar ) 
  
  
------------------------------ 
-- For development          -- 
------------------------------ 
addCommandHandler ( 'rt', function ( ) 
    for i=1, 5 do  
        sendClientMessage ( "Testing - Index ".. tostring ( i ), 255, 255, 255, false ) 
        sendClientMessage ( "Testing - Index ".. tostring ( i ), 255, 255, 255, true ) 
    end 
end ) 

سرفر

-

------------------------------------------ 
--            TopBarChat                -- 
------------------------------------------ 
-- Developer: Braydon Davis             -- 
-- File: s.lua                          -- 
-- Copyright 2013 (C) Braydon Davis     -- 
-- All rights reserved.                 -- 
------------------------------------------ 
local rName = getResourceName ( getThisResource ( ) ) 
function sendClientMessage ( msg, who, r, g, b, pos, time ) 
    if ( msg and who ) then 
        if ( isElement ( who ) ) then 
            triggerClientEvent ( who, rName..":sendClientMessage", who, msg, r, g, b, pos, time ) 
            return true 
        else return false end 
    else return false end 
end 
  
addEventHandler ( "onPlayerJoin", root, function ( ) 
    sendClientMessage ( '* '..getPlayerName ( source )..'has join the [Alex]', root, 48, 144, 199, true) 
end ) 
  
addEventHandler ( 'onPlayerQuit', root, function ( tp, reason, respons ) 
    if ( tp == 'Kicked' or tp == 'Banned' ) then 
        msg = '['..tp..' - '..respons..'] ('..reason..')' 
    else 
        msg = '['..tp..']' 
    end 
    sendClientMessage ( "* "..getPlayerName ( source ).." has quit. "..msg, root, 255, 100, 100, true) 
end ) 

Link to comment

المفروض ذا شئ سهل تسويه

اول شئ تضيف انشاء الخط

Font = dxCreateFont("font.ttf", 13) 

وبعدين تضيفه بالتكست دراو

dxDrawText ( tostring ( v.message ), 0, i*25, sx_, (i+1)*25, tocolor ( v.r, v.g, v.b, v.alpha*1.59375 ), sy*1,Font or "default-bold", "center", "center", false, false, false, true, false) 

لاتنسي تضيف الخط بالميتا

Link to comment
------------------------------------------ 
--            TopBarChat                -- 
------------------------------------------ 
-- Developer: Braydon Davis             -- 
-- File: c.lua                          -- 
-- Copyright 2013 (C) Braydon Davis     -- 
-- All rights reserved.                 --  
------------------------------------------ 
-- Script Version: 1.4                  -- 
------------------------------------------ 
  
  
local maxMessages = 5;      -- The max messages that will show (on each bar) 
local DefaultTime = 8;      -- The max time each message will show if time isn't defined. 
  
------------------------------------------ 
-- For scripters only                   -- 
------------------------------------------ 
local sx_, sy_ = guiGetScreenSize ( ) 
local sx, sy = sx_/1280, sy_/720 -- you got xXMADEXx's resolution :3 plz no hak mi 
local DefaultPos = true; 
local messages_top = { } 
local messages_btm = { } 
  
 local Font_0 = dxCreateFont("font.ttf",10) 
  
  
function sendClientMessage ( msg, r, g, b, pos, time ) 
    -- Msg: String 
    -- R: Int (0-255) 
    -- G: Int (0-255) 
    -- B: Int (0-255) 
    -- Pos: Boolean 
    -- Time: Int 
    if ( not msg ) then return false end 
  
    if ( pos == nil ) then pos = DefaultPos end 
    local r, g, b = r or 255, g or 255, b or 255 
    local time = tonumber ( time ) or DefaultTime 
    local data = { 
        message = msg, 
        r = r, 
        g = g, 
        b = b, 
        alpha=0, 
        locked=true, 
        rTick = getTickCount ( ) + (time*1000) 
    } 
    --> Scripters note: 
        --> The remove and intro fades are handled in the render event 
    if ( pos == true or pos == "top" ) then 
        table.insert ( messages_top, data ) 
        return true 
    elseif ( pos == false or pos == "bottom" ) then 
        table.insert ( messages_btm, data ) 
        return true 
    end 
    return false 
end 
addEvent ( getResourceName ( getThisResource ( ) )..":sendClientMessage", true ) 
addEventHandler ( getResourceName ( getThisResource ( ) )..":sendClientMessage", root, sendClientMessage ) 
  
function dxDrawNotificationBar ( ) 
    local doRemove = { top = { }, bottom = { } }    -- This is used so it prevents the next message from flashing 
    
  
    -- Top Message Bar 
    for i, v in pairs ( messages_top ) do 
        local i = i - 1 
        if ( not v.locked ) then 
            v.alpha = v.alpha - 3 
            if ( v.alpha <= 20 ) then 
                table.insert ( doRemove.top, i+1 ) 
            end 
            messages_top[i+1].alpha = v.alpha 
        else 
            if ( v.alpha < 160 ) then 
                v.alpha = v.alpha + 1 
                messages_top[i+1].alpha = v.alpha 
            end 
            if ( v.rTick <= getTickCount ( ) ) then 
                v.locked = false 
                messages_top[i+1].locked=false 
            end 
        end 
        dxDrawRectangle ( (sx_/2-530/2), i*25, 530, 25, tocolor ( 0, 0, 0, v.alpha ) ) 
        dxDrawText ( tostring ( v.message ), 0, i*25, sx_, (i+1)*25, tocolor ( v.r, v.g, v.b, v.alpha*1.59375 ), sy*1, Font_0, "center", "center") 
    end 
    if ( #messages_top > maxMessages and messages_top[1].locked ) then 
        messages_top[1].locked = false 
    end 
  
    -- Bottom Message Bar 
    for i, v in pairs ( messages_btm ) do 
        if ( not v.locked ) then 
            v.alpha = v.alpha - 3 
            if ( v.alpha <= 20 ) then 
                table.insert ( doRemove.bottom, i ) 
            end 
            messages_btm[i].alpha = v.alpha 
        else 
            if ( v.alpha < 160 ) then 
                v.alpha = v.alpha + 1 
                messages_btm[i].alpha = v.alpha 
            end 
            if ( v.rTick <= getTickCount ( ) ) then 
                v.locked = false 
                messages_btm[i].locked=false 
            end 
        end 
        dxDrawRectangle ( (sx_/2-530/2), sy_-(i*25), 530, 25, tocolor ( 0, 0, 0, v.alpha ) ) 
        dxDrawText ( tostring ( v.message ), 0, sy_-(i*25), sx_, sy_-((i-1)*25), tocolor ( v.r, v.g, v.b, v.alpha*1.59375 ), sy*1,Font_0, "center", "center") 
    end 
    if ( #messages_btm > maxMessages and messages_btm[1].locked ) then 
        messages_btm[1].locked = false 
    end 
  
    -- handle message removes 
    if ( #doRemove.top > 0 )then 
        for i, v in pairs ( doRemove.top ) do 
            table.remove ( messages_top, v ) 
        end 
    end 
    if ( #doRemove.bottom > 0 ) then 
        for i, v in pairs ( doRemove.bottom ) do 
            table.remove ( messages_btm, v ) 
        end 
    end 
end 
addEventHandler ( "onClientRender", root, dxDrawNotificationBar ) 
  
  
------------------------------ 
-- For development          -- 
------------------------------ 
addCommandHandler ( 'rt', function ( ) 
    for i=1, 5 do 
        sendClientMessage ( "Testing - Index ".. tostring ( i ), 255, 255, 255, false ) 
        sendClientMessage ( "Testing - Index ".. tostring ( i ), 255, 255, 255, true ) 
    end 
end ) 

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