Jump to content

مشكلة في حفظ التيم


MuhannaDx

Recommended Posts

السسلام عليكم ورحمة الله وبركاتهه

وش المشكلة بـهالمود م يحفظ التيم الي انا فيه

لمن اطلع واخش يقلي م عندك م يحفظ

local RT = createTeam ( "Red", 255, 0, 0 ) 
local GT = createTeam ( "Green", 0, 255, 0 ) 
local BT = createTeam ( "Blue", 0, 0, 255 ) 
local YT = createTeam ( "Yellow", 255, 255, 0 ) 
  
function Quit () 
local TeamMe = getPlayerTeam ( source ) 
local AccountP = getPlayerAccount ( source ) 
    if ( TeamMe ) then 
        if ( isGuestAccount ( source ) ) then 
        else 
        setAccountData ( AccountP, "TeamYou", TeamMe ) 
        end 
    end 
end 
addEventHandler ( "onPlayerQuit", root, Quit ) 
  
function Login ( _, AccountPC ) 
local TeamYouY = getAccountData ( AccountPC, "TeamYou" ) 
    if ( TeamYouY ) then 
    setPlayerTeam ( source, TeamYouY ) 
    end 
end 
addEventHandler ( "onPlayerLogin", root, Login ) 

Link to comment
السسلام عليكم ورحمة الله وبركاتهه

وش المشكلة بـهالمود م يحفظ التيم الي انا فيه

لمن اطلع واخش يقلي م عندك م يحفظ

local RT = createTeam ( "Red", 255, 0, 0 ) 
local GT = createTeam ( "Green", 0, 255, 0 ) 
local BT = createTeam ( "Blue", 0, 0, 255 ) 
local YT = createTeam ( "Yellow", 255, 255, 0 ) 
  
function Quit () 
local TeamMe = getPlayerTeam ( source ) 
local AccountP = getPlayerAccount ( source ) 
    if ( TeamMe ) then 
        if ( isGuestAccount ( source ) ) then 
        else 
        setAccountData ( AccountP, "TeamYou", TeamMe ) 
        end 
    end 
end 
addEventHandler ( "onPlayerQuit", root, Quit ) 
  
function Login ( _, AccountPC ) 
local TeamYouY = getAccountData ( AccountPC, "TeamYou" ) 
    if ( TeamYouY ) then 
    setPlayerTeam ( source, TeamYouY ) 
    end 
end 
addEventHandler ( "onPlayerLogin", root, Login ) 

، مو سترنق userdata تقبل السترنق فقط لازم تحفظ الداتا باسم التيم مو التيم نفسه لأن العناصر نوعها Account Data الـ

. :roll: بغض النظر عن الأخطاء إلي عندك

Edited by Guest
Link to comment

الأكاونت داتا يحفظ سترنق فقط، ما تقدر تحفظ المنت تيم في اكاونت داتا

لازم تجيب اسم التيم من المنت التيم و تحفظ الأسم حق التيم

و إذا تبي تجيب المنت التيم تجيبه من الأسم حق التيم المحفوظ بالأكاونت داتا

getTeamName -- اسم التيم من المنت التيم 

getTeamFromName -- المنت التيم من اسم التيم 

+

يحتاج المنت اكاونت مو المنت لاعب isGuestAccount فنكشن

Link to comment
الأكاونت داتا يحفظ سترنق فقط، ما تقدر تحفظ المنت تيم في اكاونت داتا

لازم تجيب اسم التيم من المنت التيم و تحفظ الأسم حق التيم

و إذا تبي تجيب المنت التيم تجيبه من الأسم حق التيم المحفوظ بالأكاونت داتا

getTeamName -- اسم التيم من المنت التيم 

getTeamFromName -- المنت التيم من اسم التيم 

+

يحتاج المنت اكاونت مو المنت لاعب isGuestAccount فنكشن

مشكور صار يحفظ

لاكن لمن اخرج وازيد اخش

لمن اسوي ريستارات للمود مافي تيم لازم اخرج وازيد ادخل

عشان يجي التيم

هل فيه حدث اذا سويت ريستارات للمود ؟ الملف سيرفر

ودورت فإيفنت السيرفر م لقيت

الا لمن اشغل المود واطفي المود

و onResourcePreStart مدري وش فائدته

الزبده ابي حتى لمن اسوي ريستارات للمود بدون م اخرج و ادخل يجيني التيم

Link to comment

local RT = createTeam ( "Red", 255, 0, 0 ) 
local GT = createTeam ( "Green", 0, 255, 0 ) 
local BT = createTeam ( "Blue", 0, 0, 255 ) 
local YT = createTeam ( "Yellow", 255, 255, 0 ) 
  
function Quit () 
local TeamPlayer = getPlayerTeam ( source ) 
local TeamPlayerName = getTeamName ( TeamPlayer ) 
local AccountP = getPlayerAccount ( source ) 
    if ( TeamPlayerName ) then 
    setAccountData ( AccountP, "TeamYou", TeamPlayerName ) 
    end 
end 
addEventHandler ( "onPlayerQuit", root, Quit ) 
  
function Login ( _, AccountPC ) 
local GeTData = getAccountData ( AccountPC, "TeamYou" ) 
local SeTTeam = getTeamFromName ( GeTData ) 
    if ( SeTTeam ) then 
    setPlayerTeam ( source, SeTTeam ) 
    end 
end 
addEventHandler ( "onPlayerLogin", root, Login ) 
  
  
Link to comment
onResourceStart حدث
getElementsByType -- سوي لوب على جميع اللاعبين الي بالسيرفر 

م عرفت @@ واذا سويت لوب وبعدين ^ ؟

getPlayerAccount -- > if not isGuestAccount then -- > getAccountData --> if Account Data then --> getTeamFromName --> if The Team then --> setPlayerTeam --> :fadein:

يب يب بضبطها بعدين لاكن ابي لمن اسوي ريستارات للمود يجي التيم عطول للاعبين

لازم اطلع واخش عشان يجي لاكن لو خليته شغال ودخلت يجيني ابي لمن اسوي ريستارتت

Link to comment

يب يب بضبطها بعدين لاكن ابي لمن اسوي ريستارات للمود يجي التيم عطول للاعبين

لازم اطلع واخش عشان يجي لاكن لو خليته شغال ودخلت يجيني ابي لمن اسوي ريستارتت

عشان لما يطفي السكربت تسوي لوب على جميع اللاعبين وتحفظ اسم التيم حقهم onResourceStop استخدم حدث

وسوو لوب على جميع اللاعبين وجيب تيمهم المحفوظ وعطهم اياه onResourceStart استخدم حدث +

. عشان لما يسجل خروج تحفظ تيمه ولما يدخل الحساب مرة ثانية تعطيه اياه onPlayerLogout حدث +

Link to comment

يب يب بضبطها بعدين لاكن ابي لمن اسوي ريستارات للمود يجي التيم عطول للاعبين

لازم اطلع واخش عشان يجي لاكن لو خليته شغال ودخلت يجيني ابي لمن اسوي ريستارتت

عشان لما يطفي السكربت تسوي لوب على جميع اللاعبين وتحفظ اسم التيم حقهم onResourceStop استخدم حدث

وسوو لوب على جميع اللاعبين وجيب تيمهم المحفوظ وعطهم اياه onResourceStart استخدم حدث +

. عشان لما يسجل خروج تحفظ تيمه ولما يدخل الحساب مرة ثانية تعطيه اياه onPlayerLogout حدث +

الصراحه يوم قريت شرحك حسيته سهل

لاكن اول مرة استعمل اللوب صراحهه

فين الخطا ؟

function ResourceSTOP() 
    for id, PLAYERs in ipairs ( getElementsByType ( "player" ) ) do 
    local TeamPlayerF = getPlayerTeam ( player ) 
    local TeamPlayerNameF = getTeamName ( TeamPlayerF ) 
    end 
end 
addEventHandler ( "onResourceStop", resourceRoot, ResourceSTOP ) 
  
function ResourceSTART() 
    for id, PLAYERs in ipairs ( getElementsByType ( "player" ) ) do 
    local SeTTeamF = getTeamFromName ( TeamPlayerF ) 
    end 
end 
addEventHandler ( "onResourceStart", resourceRoot, ResourceSTART ) 

Link to comment

local RT = createTeam ( "Red", 255, 0, 0 ) 
local GT = createTeam ( "Green", 0, 255, 0 ) 
local BT = createTeam ( "Blue", 0, 0, 255 ) 
local YT = createTeam ( "Yellow", 255, 255, 0 ) 
  
function Quit () 
local TeamPlayer = getPlayerTeam ( source ) 
local TeamPlayerName = getTeamName ( TeamPlayer ) 
local AccountP = getPlayerAccount ( source ) 
    if ( TeamPlayerName ) then 
    setAccountData ( AccountP, "TeamYou", TeamPlayerName ) 
    end 
end 
addEventHandler ( "onPlayerQuit", root, Quit ) 
  
function Login ( _, AccountPC ) 
local GeTData = getAccountData ( AccountPC, "TeamYou" ) 
local SeTTeam = getTeamFromName ( GeTData ) 
    if ( SeTTeam ) then 
    setPlayerTeam ( source, SeTTeam ) 
    end 
end 
addEventHandler ( "onPlayerLogin", root, Login ) 
  
function Start () 
    for _, plrs in ipairs ( getElementsByType ( "player" ) ) do 
    local acc = getPlayerAccount ( v ) 
        if not ( isGuestAccount ( acc ) ) then 
        local GetData = getAccountData ( acc, "TeamYou" ) 
        if ( GetData ) then 
            local Team = getTeamFromName ( GetData ) 
                if ( Team ) then 
                    setPlayerTeam ( plrs, Team ) 
                end 
            end 
        end 
    end 
end 
addEventHandler ( "onResourceStart", root, Start ) 
Link to comment

بقلكم وش الصح فيه وش الخطا

الصح :

1. المود ينشئ ال4تيمات

2. المود لمن تخش تيم وتطلع وتزيد تخش وتدخل حسابك الي اعطوك فيه تيم يعطيك تيم

الخـطأ :

لمن أسوي ريستارت للمود م يجلب لي التيمات لاني محطيه لمن واحد يخرج ويدخل حسابه

المطلوب :

لمن اطفي المود يحفظ التيمات الي اللاعبين فيه

+ لمن اشغله يعطي الاعبين الي عندهم تيمات تيمهم

محاولاتي :

local RT = createTeam ( "Red", 255, 0, 0 ) 
local GT = createTeam ( "Green", 0, 255, 0 ) 
local BT = createTeam ( "Blue", 0, 0, 255 ) 
local YT = createTeam ( "Yellow", 255, 255, 0 ) 
  
function Quit () 
local TeamPlayer = getPlayerTeam ( source ) 
local TeamPlayerName = getTeamName ( TeamPlayer ) 
local AccountP = getPlayerAccount ( source ) 
    if ( TeamPlayerName ) then 
        if not isGuestAccount ( AccountP ) then 
        setAccountData ( AccountP, "TeamYou", TeamPlayerName ) 
        end 
    end 
end 
addEventHandler ( "onPlayerQuit", root, Quit ) 
  
function Login ( _, AccountPC ) 
local GeTData = getAccountData ( AccountPC, "TeamYou" ) 
local SeTTeam = getTeamFromName ( GeTData ) 
    if ( SeTTeam ) then 
    setPlayerTeam ( source, SeTTeam ) 
    end 
end 
addEventHandler ( "onPlayerLogin", root, Login ) 
  
function ResourceStop () 
    for _, ALL in ipairs ( getElementsByType ("player") ) do 
    local AccountT = getPlayerAccount ( ALL ) 
    local TeamPlayerT = getPlayerTeam ( AccountT ) 
    local TeamPlayerNameS = getTeamName ( TeamPlayerT ) 
        if ( TeamPlayerNameS ) then 
        setAccountData ( AccountT, "SaveTeamT", TeamPlayerNameS ) 
        end 
    end 
end 
addEventHandler ( "onResourceStop", root, ResourceStop ) 
         
function ResourceStart () 
    for _, ALL in ipairs ( getElementsByType ("player") ) do 
    local GeTDataST = getAccountData ( AccountT, "SaveTeamT" ) 
    local AccountT = getPlayerAccount ( GeTDataST ) 
    local SeTTeamT = getTeamFromName ( AccountT ) 
    setPlayerTeam ( ALL, SeTTeamT ) 
    end 
end 
addEventHandler ( "onResourceStart", root, ResourceStart ) 
  

الحين المود لمن اعطي حد تيم ويخرج ويزيد يدخل ويدخل حسابه يجيله تيمه الي عطيته

لاكن الستوب و الستارت للمود الي انا مسويهم خـطأ ابي حد يقلي عندك خطا فسطر كذا كذا واستعمل كذا كذا طلاسم مابغا :redhotevil: عدلي 4 ساعات ع مود بايخ @@

Link to comment

جرب

addEventHandler('onPlayerQuit',root, function (     ) 
if ( not isGusetAccount ( getPlayerAccount ( source ) ) and getPlayerTeam ( source ) ) then  
setAccountData ( getPlayerAccount ( source ) , 'Save:Team',getTeamName(getPlayerTeam(source)) ) 
        end 
end) 
  
addEventHandler('onPlayerLogin',root, function (    ) 
if ( getAccountData ( getPlayerAccount ( source ) , 'Save:Team' ) ) then 
setPlayerTeam ( source , getAccountData ( source , 'Save:Team' ) ) 
        end 
end)         
  

Link to comment
جرب
addEventHandler('onPlayerQuit',root, function (     ) 
if ( not isGusetAccount ( getPlayerAccount ( source ) ) and getPlayerTeam ( source ) ) then  
setAccountData ( getPlayerAccount ( source ) , 'Save:Team',getTeamName(getPlayerTeam(source)) ) 
        end 
end) 
  
addEventHandler('onPlayerLogin',root, function (    ) 
if ( getAccountData ( getPlayerAccount ( source ) , 'Save:Team' ) ) then 
setPlayerTeam ( source , getAccountData ( source , 'Save:Team' ) ) 
        end 
end)         
  

أخوي ينحفظ المود انا مسويه

لاكن لمن اوقف المود وازيد اشغله م يرجع لازم اسوي حدث onResourceStop - onResourceStart } شف محاولاتي بصفحه1

المود يحفظ وكل شيء بس المشكلة ذي

Link to comment
جرب
addEventHandler('onPlayerQuit',root, function (     ) 
if ( not isGusetAccount ( getPlayerAccount ( source ) ) and getPlayerTeam ( source ) ) then  
setAccountData ( getPlayerAccount ( source ) , 'Save:Team',getTeamName(getPlayerTeam(source)) ) 
        end 
end) 
  
addEventHandler('onPlayerLogin',root, function (    ) 
if ( getAccountData ( getPlayerAccount ( source ) , 'Save:Team' ) ) then 
setPlayerTeam ( source , getAccountData ( source , 'Save:Team' ) ) 
        end 
end)         
  

onPlayerLogin --> getPlayerAccount x --> . استخدم البرامتر الثاني إلي يجي مع الحدث حق حساب اللاعب بدل ما تجيب الحساب حقه

isGusetAccount X --> isGuestAccount .

onPlayerLogin --> getAccountData ( source , 'Save:Team' ) X --> . يطلب حساب getAccountData فنكشن

Link to comment

اللهم طولك ي روح

اقولكم خخخخخخخخخلاص اسحبو ع Quit , Login

خلاص سويتهههههههههها

لاكن لمن اسوي ايقاف للمود ثم اسويله تشغيل

م يعطي الاعبين تيماتهم الا لمن يطلعو ويدخلو حساباتهم مرة ثانية

افهممممممو يشيخ @@ من الظهر وانا افهم فيكم

Link to comment

هدي عشان اعصابكـ .. : )

ضيف هذا الكود للاكواد اللي عندكـ :

addEventHandler ( "onResourceStart", resourceRoot, function (   ) 
  for _,v in ipairs ( getElementsByType ( "player") ) do 
    if ( getPlayerAccount ( v ) and not isGuestAccount ( getPlayerAccount ( v ) ) ) then 
      if ( getAccountData ( getPlayerAccount ( v ), 'Save:Team' ) ) then 
        if ( getTeamName ( getAccountData ( getPlayerAccount ( v ), 'Save:Team' ) ) ) then 
            setPlayerTeam ( v, getAccountData ( v, 'Save:Team' ) ) 
        end 
      end 
    end 
  end 
end ) 
Link to comment

أخوي زاحف مشكور ع تفهمك لاكن شوف

function ResourceStop ()  
    for _,v in ipairs(getElementsByType("player")) do  
    local AccountT = getPlayerAccount ( v )  
        if not isGuestAccount ( AccountT ) then 
    local TeamPlayerT = getPlayerTeam ( v )   
    local TeamPlayerNameS = getTeamName ( TeamPlayerT )  
            if ( TeamPlayerNameS ) then  
        setAccountData ( AccountT, "SaveTeamT", TeamPlayerNameS )  
            end  
        end  
    end 
end  
addEventHandler ( "onResourceStop", resourceRoot, ResourceStop )  
   
  
function ResourceStart () 
    for _,v in ipairs ( getElementsByType ( "player" ) ) do 
        if ( getPlayerAccount ( v ) and not isGuestAccount ( getPlayerAccount ( v ) ) ) then 
            if ( getAccountData ( getPlayerAccount ( v ), 'SaveTeamT' ) ) then 
                if ( getTeamName ( getAccountData ( getPlayerAccount ( v ), 'SaveTeamT' ) ) ) then 
                setPlayerTeam ( v, getAccountData ( v, 'SaveTeamT' ) ) 
                end 
            end 
        end 
    end 
end 
addEventHandler ( "onResourceStart", resourceRoot, ResourceStart ) 

WARNING: SaveTeam/Server.lua:50:Bad argument @ "getTeamName" [ Expected team at argument 1, got string "Green" ]

طبعا فنهاية اسم التيم الي اختاره قبل لي قبل م اطفي المود ثم اشغله

Link to comment

ليه ضفت وقت ينطفي ما يحتاج خله زيه ولا تعدل شي :

addEventHandler ( "onResourceStart", resourceRoot, function (   ) 
  for _,v in ipairs ( getElementsByType ( "player") ) do 
    if ( getPlayerAccount ( v ) and not isGuestAccount ( getPlayerAccount ( v ) ) ) then 
      if ( getAccountData ( getPlayerAccount ( v ), 'Save:Team' ) ) then 
        if ( getTeamFromName ( getAccountData ( getPlayerAccount ( v ), 'Save:Team' ) ) ) then 
            setPlayerTeam ( v, getTeamFromName ( getAccountData ( v, 'Save:Team' ) ) ) 
        end 
      end 
    end 
  end 
end ) 
Link to comment

ي زاحف سويت مثل ماتقول

شلت وظيفة وحدث اذا طفى المود

وخليت حدث ووظيفة الخروج وتسجيل الدخول ودخلت كودك نسخ لصق وﻻ عدلت وﻻ شيء

وباقي يقلي خطا بسطر الي يجلب التيم من اسمخ5

Link to comment

addEventHandler( "onResourceStart", resourceRoot, -- إضافة حدث لما يشتغل السكربت وربطه بالسكربت نفسه فقط 
function() 
    for _, Player in ipairs( getElementsByType( "player" ) --[[ جلب جميع اللاعبين عشان نسوي عليهم لوب ]] ) do -- نسوي لوب على جميع اللاعبين عشان نعطي الكل تيمه 
        local PlayerAccount = getPlayerAccount( Player ) -- نجيب حساب اللاعب 
        if ( not isGuestAccount( PlayerAccount ) ) then -- نتحقق إذا كان حساب اللاعب مسجل في السيرفر 
            local PlayerTeam = getAccountData( Player, "Save:Team" ) -- نجيب الداتا حق أسم التيم من حساب اللاعب 
            if ( PlayerTeam ) then -- نتحقق إذا جاب الداتا 
                local Team = getTeamFromName( PlayerTeam ) -- نجيب التيم من الأسم المحفوظ عند اللاعب 
                if ( Team ) then -- نتحقق إذا جاب التيم 
                    setPlayerTeam( Player, Team ) -- نحط اللاعب في التيم 
                end 
            end 
        end 
    end 
end ) 
  
addEventHandler( "onResourceStop", resourceRoot, -- إضافة حدث لما يطفي السكربت وربطه بالسكربت نفسه فقط 
function() 
    for _, Player in ipairs( getElementsByType( "player" ) --[[ جلب جميع اللاعبين عشان نسوي عليهم لوب ]] ) do -- نسوي لوب على جميع اللاعبين عشان نحفظ تيم كل لاعب 
        local PlayerAccount = getPlayerAccount( Player ) -- نجيب حساب اللاعب 
        if ( not isGuestAccount( PlayerAccount ) ) then -- نتحقق إذا كان الحساب مسجل في السيرفر عشان نحط الداتا عليه 
            local PlayerTeam = getPlayerTeam( Player ) -- نجيب تيم اللاعب 
            if ( PlayerTeam ) then -- نتحقق أنه جاب التيم يعني عنده تيم 
                setAccountData( PlayerAccount, "Save:Team", getTeamName( PlayerTeam ) --[[ نجيب اسم التيم ونحطه في قيمة الداتا ]] ) 
            end 
        end 
    end 
end ) 
Link to comment

شكرا ع تعبك زاحف شكرا ع تعبك كروس شكرا ع تعب كل واحد

لاكن بقولكم كلكم خطـأ !

ولا ضبط معاي المود !

بعطيكم الكودات وكملو ععليها وجربو عندكم واذا تأكدم انه شغال

تعالو عطوني .. والصراحه ادري اني طفشتكم ذذ لاكن منكم انتم تعطوني خطأ ونفس خطاأي كمان ذذ

خذو الكودات

  
local RT = createTeam ( "Red", 255, 0, 0 ) 
local GT = createTeam ( "Green", 0, 255, 0 ) 
local BT = createTeam ( "Blue", 0, 0, 255 ) 
local YT = createTeam ( "Yellow", 255, 255, 0 ) 
  
--- 
  
function Quit () 
local TeamPlayer = getPlayerTeam ( source ) 
local TeamPlayerName = getTeamName ( TeamPlayer ) 
local AccountP = getPlayerAccount ( source ) 
    if ( TeamPlayerName ) then 
        if not isGuestAccount ( AccountP ) then 
        setAccountData ( AccountP, "TeamYou", TeamPlayerName ) 
        end 
    end 
end 
addEventHandler ( "onPlayerQuit", root, Quit ) 
  
function Login ( _, AccountPC ) 
local GeTData = getAccountData ( AccountPC, "TeamYou" ) 
local SeTTeam = getTeamFromName ( GeTData ) 
    if ( SeTTeam ) then 
    setPlayerTeam ( source, SeTTeam ) 
    end 
end 
addEventHandler ( "onPlayerLogin", root, Login ) 
  

الكودات الي انا مسويها مع مساعدة تـابل صحيحه

لاكن باقي ابيها لمن اطفي المود يحفظ تيمات اللاعبين الي عندهم تيم

ويحطهم فأكونت داتا

ولمن اشغل المود عطول يجلبهم ويعطيهم الداتا بـتيمهم

: ابيه يكون شغال : :twisted:

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