Jump to content

need help [Limit]


Tesco

Recommended Posts

Hello, i want to limit create account, i need only peoples can make a 3 characters, not a 10000 or more

script:

local mysql = exports.mysql 
  
function newCharacter_create(characterName, characterDescription, race, gender, skin, height, weight, age, languageselected, month, day, location) 
    if not (checkValidCharacterName(characterName)) then 
        triggerClientEvent(client, "accounts:characters:new", client, 1, 1) -- State 1:1: error validating data 
        return 
    end 
  
    if not (race > -1 and race < 3) then 
        triggerClientEvent(client, "accounts:characters:new", client, 1, 2) -- State 1:2: error validating data 
        return 
    end 
     
    if not (gender == 0 or gender == 1) then 
        triggerClientEvent(client, "accounts:characters:new", client, 1, 3) -- State 1:3: error validating data 
        return 
    end 
     
    if not skin then 
        triggerClientEvent(client, "accounts:characters:new", client, 1, 4) -- State 1:4: error validating data 
        return 
    end 
     
    if not (height < 201 and height > 149) then 
        triggerClientEvent(client, "accounts:characters:new", client, 1, 5) -- State 1:5: error validating data 
        return 
    end 
     
    if not (weight < 200 and weight > 49) then 
        triggerClientEvent(client, "accounts:characters:new", client, 1, 6) -- State 1:6: error validating data 
        return 
    end 
     
    if not (age > 15 and age < 101) then 
        triggerClientEvent(client, "accounts:characters:new", client, 1, 7) -- State 1:7: error validating data 
        return 
    end 
     
    if not tonumber(languageselected) then 
        triggerClientEvent(client, "accounts:characters:new", client, 1, -- s8) --> -- State 1:8: error validating data 
        return 
    end 
     
     
    characterName = string.gsub(tostring(characterName), " ", "_") 
     
    --[[if #characterDescription < 50 or #characterDescription > 128 then 
    triggerClientEvent(client, "accounts:characters:new", client, 1, 9) -- State 1:9: error validating data 
        return 
    end 
    characterDescription = mysql:escape_string(characterDescription)]] 
     
    local mQuery1 = mysql:query("SELECT charactername FROM characters WHERE charactername='" .. mysql:escape_string(characterName) .. "'") 
    if (mysql:num_rows(mQuery1)>0) then  
        mysql:free_result(mQuery1) 
        triggerClientEvent(client, "accounts:characters:new", client, 2, 1) -- State 2:1: Name already in use 
        return 
    end 
    mysql:free_result(mQuery1) 
     
    local accountID = getElementData(client, "account:id") 
    local accountUsername = getElementData(client, "account:username") 
    local fingerprint = md5(mysql:escape_string(characterName) .. accountID .. race .. gender .. age) 
     
    if month == "Janvāris" then 
        month = 1 
    end 
     
    local walkingstyle = 128 
    if gender == 1 then 
        walkingstyle = 129 
    end 
     
    local id = mysql:query_insert_free("INSERT INTO `characters` SET `charactername`='" .. mysql:escape_string(characterName).. "', `x`='"..location[1].."', `y`='"..location[2].."', `z`='"..location[3].."', `rotation`='"..location[4].."', `interior_id`='"..location[5].."', `dimension_id`='"..location[6].."', `lastarea`='"..exports.global:toSQL(location[7]).."', `gender`='" .. mysql:escape_string(gender) .. "', `skincolor`='" .. mysql:escape_string(race) .. "', `weight`='" .. mysql:escape_string(weight) .. "', `height`='" .. mysql:escape_string(height) .. "', `description`='', `account`='" .. mysql:escape_string(accountID) .. "', `skin`='" .. mysql:escape_string(skin) .. "', `age`='" .. mysql:escape_string(age) .. "', `fingerprint`='" .. mysql:escape_string(fingerprint) .. "', `lang1`='" .. mysql:escape_string(languageselected) .. "', `lang1skill`='100', `currLang`='1' , `month`='" .. mysql:escape_string(month or "1") .. "', `day`='" .. mysql:escape_string(day or "1").."', `walkingstyle`='" .. mysql:escape_string(walkingstyle).."' " ) 
     
     
    if (id) then --  
        exports.logs:dbLog("ac"..tostring(accountID), 27, { "ac"..tostring(accountID), "ch" .. id } , "Created" ) 
  
        exports.anticheat:changeProtectedElementDataEx(client, "dbid", id, false) 
        exports.global:giveItem( client, 16, skin ) 
        exports.global:giveItem( client, 17, 1 ) 
        -- ID CARD 
        exports.global:giveItem( client, 152, characterName..";"..(gender==0 and "Vīrietis" or "Sieviete")..";"..exports.global:numberToMonth(month or 1).." "..exports.global:formatDate(day or 1)..", "..exports.global:getBirthYearFromAge(age)..";"..fingerprint) 
        -- Briefcase 
        if exports.global:giveItem( client, 160, 1 ) then 
            triggerEvent("artifacts:toggle", client, client, "briefcase") 
        end 
  
        --Make a new phone and give it to player 
        local attempts = 0 
        local itemValue = 1 
        while true do 
            -- generate a larger phone number if we're totally out of numbers and/or too lazy to perform more than 20+ checks. 
            attempts = attempts + 1 
            itemValue = math.random(311111, attempts < 20 and 899999 or 8999999) 
             
            local mysqlQ = mysql:query("SELECT `phonenumber` FROM `phones` WHERE `phonenumber` = '" .. itemValue .. "'") 
            if mysql:num_rows(mysqlQ) == 0 then 
                mysql:free_result(mysqlQ) 
                break 
            end 
            mysql:free_result(mysqlQ) 
        end 
        exports.global:giveItem( client, 2, itemValue ) 
  
        exports.anticheat:changeProtectedElementDataEx(client, "dbid") 
        triggerClientEvent(client, "accounts:characters:new", client, 3, tonumber(id)) -- State 3:: Spic win! 
    else 
        triggerClientEvent(client, "accounts:characters:new", client, 2, 2) -- State 2:2: Failed to update database 
    end 
end 
addEventHandler("accounts:characters:new", getRootElement(), newCharacter_create) 

Link to comment
Guest
This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...