Jump to content

استفسار


Recommended Posts

السلام عليكم

___________________________________-

السؤال الثاني عن

outputChatBox

كيف احدد الكلام يطلع للكل او للاعب اليي شراء او اخذ الشي المحدد

__________________________________-

السؤال الثالث

عندي بوابة ماتفتح الى لقروب معين

كيف اخلي البوابة تفتح من القريب

انا ادري اني اسوي ماركر مخفي وسويت وحطيت

onMarkerHit

و

onMarkerLeave

بس ماضبط

ممكن تشوفون الكود

marker = createMarker ( 226.4, 1873.5, 15.4, "cylinder", 5, 0, 0, 0 ) 
  
local doorState = true 
local x1,y1,z1 = 226.4, 1873.5, 15.4 
local x2,y2,z2 = 226.4, 1871.5, 15.4 
chinaTgate = createObject ( 2930, x1,y1,z1) 
  
function op() 
    moveObject ( chinaTgate, 2000, x2,y2,z2) 
end 
  
function cl() 
    moveObject ( chinaTgate, 800, x1,y1,z1 ) 
end 
  
  
function checkAdmin(player,key,state) 
    if ( state == "down" ) then 
        local accName = getAccountName(getPlayerAccount(player)) 
        local isAdmin = isObjectInACLGroup ("user."..accName, aclGetGroup ( "King-abady" ) ) 
        if ( isAdmin ) then 
            if ( doorState ) then 
                op() 
            else 
                cl() 
            end 
            doorState = not doorState  
        end 
    end 
end 
  
function onStart ( ) 
    for i,v in ipairs(getElementsByType( "player" )) do 
    bindKey(v,"X","down",checkAdmin) 
    end 
    end 
addEventHandler ( "onResourceStart", getResourceRootElement(), onStart ) 
  
  
function onJoin() 
    bindKey(source,"X","down",checkAdmin) 
end 
addEventHandler ( "onPlayerJoin", getRootElement(), onJoin) 
  
addEventHandler("onClientMarkerHit", marker, 
function ( ) 
    bindKey(v,"X","down",checkAdmin) 
end 
) 
  
addEventHandler("onClientMarkerLeave", marker, 
function ( ) 
    unbindKey(v,"X","down",checkAdmin) 
end 
) 
  

Edited by Guest
Link to comment
marker = createMarker ( 226.4, 1873.5, 15.4, "cylinder", 5, 0, 0, 0 ) 
  
local doorState = true 
local x1,y1,z1 = 226.4, 1873.5, 15.4 
local x2,y2,z2 = 226.4, 1871.5, 15.4 
chinaTgate = createObject ( 2930, x1,y1,z1) 
  
function op() 
    moveObject ( chinaTgate, 2000, x2,y2,z2) 
end 
  
function cl() 
    moveObject ( chinaTgate, 800, x1,y1,z1 ) 
end 
  
  
function checkAdmin(player,key,state) 
    if ( state == "down" ) then 
        local accName = getAccountName(getPlayerAccount(player)) 
        local isAdmin = isObjectInACLGroup ("user."..accName, aclGetGroup ( "King-abady" ) ) 
        if ( isAdmin ) then 
            if ( doorState ) then 
                op() 
            else 
                cl() 
            end 
            doorState = not doorState  
        end 
    end 
end 
  
function onStart ( ) 
    for i,v in ipairs(getElementsByType( "player" )) do 
    bindKey(v,"X","down",checkAdmin) 
    end 
    end 
addEventHandler ( "onResourceStart", getResourceRootElement(), onStart ) 
  
  
function onJoin() 
    bindKey(source,"X","down",checkAdmin) 
end 
addEventHandler ( "onPlayerJoin", getRootElement(), onJoin) 
  
addEventHandler("onClientMarkerHit", marker, 
function ( ) 
   checkAdmin () 
end 
) 
  
addEventHandler("onClientMarkerLeave", marker, 
function ( ) 
    checkAdmin () 
end 
) 
  

ما جربته

Link to comment
marker = createMarker ( 226.4, 1873.5, 15.4, "cylinder", 5, 0, 0, 0 ) 
  
local doorState = true 
local x1,y1,z1 = 226.4, 1873.5, 15.4 
local x2,y2,z2 = 226.4, 1871.5, 15.4 
chinaTgate = createObject ( 2930, x1,y1,z1) 
  
function op() 
    moveObject ( chinaTgate, 2000, x2,y2,z2) 
end 
  
function cl() 
    moveObject ( chinaTgate, 800, x1,y1,z1 ) 
end 
  
  
function checkAdmin(player,key,state) 
    if ( state == "down" ) then 
        local accName = getAccountName(getPlayerAccount(player)) 
        local isAdmin = isObjectInACLGroup ("user."..accName, aclGetGroup ( "King-abady" ) ) 
        if ( isAdmin ) then 
            if ( doorState ) then 
                op() 
            else 
                cl() 
            end 
            doorState = not doorState  
        end 
    end 
end 
  
function onStart ( ) 
    for i,v in ipairs(getElementsByType( "player" )) do 
    bindKey(v,"X","down",checkAdmin) 
    end 
    end 
addEventHandler ( "onResourceStart", getResourceRootElement(), onStart ) 
  
  
function onJoin() 
    bindKey(source,"X","down",checkAdmin) 
end 
addEventHandler ( "onPlayerJoin", getRootElement(), onJoin) 
  
addEventHandler("onClientMarkerHit", marker, 
function ( ) 
   checkAdmin () 
end 
) 
  
addEventHandler("onClientMarkerLeave", marker, 
function ( ) 
    checkAdmin () 
end 
) 
  

ما جربته

ماضبط

Link to comment
مستر سعد اول مرة اسمع به

المهم كلمهه وعلمه اخطائه

لو ابساعد مابعدل على الخرابيط

ابسويه من جديد : )

ياعشوقه ياحلوه انا ماعطيته الكود ذا

وياليت ماتسوي فيها فاهم ياحبيبي

الكل يعرف نفسه

Link to comment
v = ترمز لفنشكن checkAdmin

مالها علاقة

الله يهدي من عطاك كود خرابيط

أنكان كمل جميله

عطاني اياه مستر سعد

طيب ماودك تساعدني في باقي الأشياء ؟؟

يمكن سعد واحد ثاني

Link to comment
  
marker = createMarker ( 226.4, 1873.5, 15.4, "cylinder", 5, 0, 0, 0 ) 
  
isDoorClosed = true  -- وضع قيمة الباب مغلق 
 x1,y1,z1 = 226.4, 1873.5, 15.4 
 x2,y2,z2 = 226.4, 1871.5, 15.4 
chinaTgate = createObject ( 2930, x1,y1,z1) 
  
function op() 
    moveObject ( chinaTgate, 2000, x2,y2,z2) 
end 
  
function cl() 
    moveObject ( chinaTgate, 800, x1,y1,z1 ) 
end 
  
  
function checkAdmin(player) 
 if isObjectInACLGroup ("user."..getAccountName(getPlayerAccount(player)), aclGetGroup ( "King-abady" ) ) then 
        if isDoorClosed == true then -- اذا كان الباب مغلق , يفتحه 
                op() 
                isDoorClosed = false -- يغير قيمة الباب إلى مفتوح بعد فتحه 
            else 
                cl() -- يغلق الباب اذا كان العكس , مفتوح 
            end 
end 
        end 
  
  
function onStart ( ) 
    for i,v in ipairs(getElementsByType( "player" )) do 
    bindKey(v,"X","down",checkAdmin) 
    end 
    end 
addEventHandler ( "onResourceStart", getResourceRootElement(), onStart ) 
  
  
function onJoin() 
    bindKey(source,"X","down",checkAdmin) 
end 
addEventHandler ( "onPlayerJoin", getRootElement(), onJoin) 
  
addEventHandler("onMarkerHit", marker, --  عند  لمس الماركر يفتح الباب 
function (element) 
if getElementType(element) == "player" then -- يتاكد ماإذا كان ا لشيء الذي لمس ا لماركر لاعب 
player = element 
    checkAdmin(player) 
end 
end 
) 
  
addEventHandler("onMarkerLeave", marker, -- عند الخروج من الماركر يغلق الباب 
function (player) 
    checkAdmin(player)  
end 
) 
  

لم يتم التجريب

Link to comment
مستر سعد اول مرة اسمع به

المهم كلمهه وعلمه اخطائه

لو ابساعد مابعدل على الخرابيط

ابسويه من جديد : )

طيب سوي واحد ثاني او لاتساعد في هاذه الشي اذا تبي ساعدني في ذا

لسؤال الثاني عن

outputChatBox

كيف احدد الكلام يطلع للكل او للاعب اليي شراء او اخذ الشي المحدد

انا عندي لوحة تعطي درع ودم مجانا

والوحة لما تاخذ يطلع الكلام لكل الموجودين في السيرفر

Link to comment
  
marker = createMarker ( 226.4, 1873.5, 15.4, "cylinder", 5, 0, 0, 0 ) 
  
isDoorClosed = true  -- وضع قيمة الباب مغلق 
 x1,y1,z1 = 226.4, 1873.5, 15.4 
 x2,y2,z2 = 226.4, 1871.5, 15.4 
chinaTgate = createObject ( 2930, x1,y1,z1) 
  
function op() 
    moveObject ( chinaTgate, 2000, x2,y2,z2) 
end 
  
function cl() 
    moveObject ( chinaTgate, 800, x1,y1,z1 ) 
end 
  
  
function checkAdmin(player) 
 if isObjectInACLGroup ("user."..getAccountName(getPlayerAccount(player)), aclGetGroup ( "King-abady" ) ) then 
        if isDoorClosed == true then -- اذا كان الباب مغلق , يفتحه 
                op() 
                isDoorClosed = false -- يغير قيمة الباب إلى مفتوح بعد فتحه 
            else 
                cl() -- يغلق الباب اذا كان العكس , مفتوح 
            end 
end 
        end 
  
  
function onStart ( ) 
    for i,v in ipairs(getElementsByType( "player" )) do 
    bindKey(v,"X","down",checkAdmin) 
    end 
    end 
addEventHandler ( "onResourceStart", getResourceRootElement(), onStart ) 
  
  
function onJoin() 
    bindKey(source,"X","down",checkAdmin) 
end 
addEventHandler ( "onPlayerJoin", getRootElement(), onJoin) 
  
addEventHandler("onMarkerHit", marker, --  عند  لمس الماركر يفتح الباب 
function (element) 
if getElementType(element) == "player" then -- يتاكد ماإذا كان ا لشيء الذي لمس ا لماركر لاعب 
player = element 
    checkAdmin(player) 
end 
end 
) 
  
addEventHandler("onMarkerLeave", marker, -- عند الخروج من الماركر يغلق الباب 
function (player) 
    checkAdmin(player)  
end 
) 
  

لم يتم التجريب

مشكور سورا

الكود فيه خطئين

يفتح من بعديد ومن قريب

ومايفتح ويسكر الى مره وحده الي هي اول ماشغل المود

Link to comment
لآنه في الزر مايتحقق من أنه الاعب كان داخل الماركر

لازم تخليه يتحقق من أنه داخل الماركر

isElementWithinMarker.

كذا مثلاً

addEventHandler("onMarkerHit", marker, --  عند  لمس الماركر يفتح الباب 
function (element) 
if getElementType(element) == "player" then -- يتاكد ماإذا كان ا لشيء الذي لمس ا لماركر لاعب 
if isElementWithinMarker (elemenr) == "player" then 
player = element 
    checkAdmin(player) 
    checkAdmin(player) 
end 
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...