Jump to content

Считывание со строчки


Recommended Posts

Как сделать чтобы взяло в переменные числа в определенных рядах из одной строчки и показало в чате:

--[id], model , Slot, Name, Ammo, Price, Damage 
wpShopTable = { 
    {0, 0, "Unarmed", 1, 0, "5-25"}, 
    {1, 0, "Brass Knuckles", 1, 5, "5-25"}, 
    {2, 1, "Golf Club", 1, 5, "10-25"}, 
    {3, 1, "Nightstick", 1, 5, "10-25"}, 
    {4, 1, "Knife", 1, 20, "10-25"}, 
    {5, 1, "Baseball Bat", 1, 5, "10-25"}, 
    {6, 1, "Shovel", 1, 5, "10-25"}, 
    {7, 1, "Pool Cue", 1, 5, "10-25"}, 
    {8, 1, "Katana", 1, 50, "10-25"}, 
    {9, 1, "Chainsaw", 1, 250, "25-100"}, 
    {22, 2, "Pistol", 17, 170, 25}, 
    {23, 2, "Silenced Pistol", 17, 180, 40}, 
    {24, 2, "Desert Eagle", 7, 100, 70}, 
    {25, 3, "Shotgun", 1, 20, 10}, 
    {26, 3, "Sawn-Off Shotgun", 2, 50, 10}, 
    {27, 3, "SPAZ-12", 7, 70, 15}, 
    {28, 4, "Uzi", 50, 500, 20}, 
    {29, 4, "MP5", 30, 300, 25}, 
    {32, 4, "TEC-9", 50, 500, 20}, 
    {30, 5, "AK-47", 30, 600, 30}, 
    {31, 5, "M4", 50, 1000, 30}, 
    {33, 6, "Country Rifle", 1, 25, 75}, 
    {34, 6, "Sniper Rifle", 1, 30, 125}, 
    {35, 7, "Rocket Launcher", 1, 100, 75}, 
    {36, 7, "Heat-Seeking RPG", 1, 120, 75}, 
    {37, 7, "Flamethrower", 50, 500, 25}, 
    {38, 7, "Minigun", 500, 5000, 140}, 
    {16, 8, "Grenade", 1, 70, 75}, 
    {17, 8, "Tear Gas", 1, 50, 75}, 
    {18, 8, "Molotov Cocktails", 1, 60, 75}, 
    {39, 8, "Satchel Charges", 1, 100, 75}, 
    {41, 9, "Spraycan", 500, 200, 1}, 
    {42, 9, "Fire Extinguisher", 500, 200, 1}, 
    {43, 9, "Camera", 36, 100, 0}, 
    {10, 10, "Long Dil**", 1, 5, "10-25"}, 
    {11, 10, "Short Dil**", 1, 5, "10-25"}, 
    {12, 10, "Vibra***", 1, 5, "10-25"}, 
    {14, 10, "Flowers", 1, 5, "10-25"}, 
    {15, 10, "Cane", 1, 5, "10-25"}, 
    {44, 11, "NV Googles", 1, 50, 0}, 
    {45, 11, "IR Goorles", 1, 50, 0}, 
    {46, 11, "Parachute", 1, 100, 0}, 
    {40, 12, "Satchel Detonator", 1, 0, 0} 
} 
  
wpShopWin1 = guiCreateWindow(492, 207, 500, 394, "|Weapon_Shop|", false) 
guiWindowSetSizable(wpShopWin1, false) 
  
wpShopGridlist1 = guiCreateGridList(10, 25, 481, 313, false, wpShopWin1) 
guiGridListAddColumn(wpShopGridlist1, "ID", 0.1) 
guiGridListAddColumn(wpShopGridlist1, "Slot", 0.05) 
guiGridListAddColumn(wpShopGridlist1, "Name", 0.45) 
guiGridListAddColumn(wpShopGridlist1, "Damage", 0.1) 
guiGridListAddColumn(wpShopGridlist1, "Ammo", 0.14) 
guiGridListAddColumn(wpShopGridlist1, "Price", 0.14) 
wpShopBtnBuy = guiCreateButton(114, 348, 328, 27, "Buy", false, wpShopWin1) 
guiSetProperty(wpShopBtnBuy, "NormalTextColour", "FFAAAAAA") 
wpShopBtnClose = guiCreateButton(10, 348, 61, 27, "Close", false, wpShopWin1) 
guiSetProperty(wpShopBtnClose, "NormalTextColour", "FFAAAAAA") 
guiSetVisible(wpShopWin1, false) 
  
function GetWeaponIDFromModelID( iModelID ) 
    for i, v in pairs( WeaponsIds ) do 
        if v == iModelID then 
            return i 
        end 
    end 
    return false 
end 
  
function addRowWPSGUI() 
         -- If the column was successfully created 
                for i, v in ipairs( wpShopTable ) do --Loop through all the players, adding them to the table 
                        local iRow = guiGridListAddRow( wpShopGridlist1 ) 
                        guiGridListSetItemText(wpShopGridlist1, iRow, 1, tostring ( v[1] ), false, false) 
                        guiGridListSetItemText(wpShopGridlist1, iRow, 2, tostring ( v[2] ), false, false) 
                        guiGridListSetItemText(wpShopGridlist1, iRow, 3, tostring ( v[3] ), false, false) 
                        guiGridListSetItemText(wpShopGridlist1, iRow, 4, tostring ( v[6] ), false, false) 
                        guiGridListSetItemText(wpShopGridlist1, iRow, 5, tostring ( v[4] ), false, false) 
                        guiGridListSetItemText(wpShopGridlist1, iRow, 6, "$"..tostring (v[5]), false, false) 
                end 
end 
addEventHandler ( "onClientResourceStart", getRootElement(), addRowWPSGUI ) 
  
function showWPSGUI () 
guiSetVisible(wpShopWin1, true) 
showCursor(true) 
end 
  
function closeWPSGUI ( button ) 
    if button == "left" then 
    guiSetVisible(wpShopWin1, false) 
    showCursor(false) 
    end 
end 
addEventHandler ( "onClientGUIClick", wpShopBtnClose, closeWPSGUI, false ) 
  
addCommandHandler ( "buyweap", showWPSGUI ) 
function bindBuyKey() 
  bindKey ( "b", "down", showWPSGUI )   -- bind the player's F1 down key 
end 
addEventHandler ( "onClientResourceStart", getRootElement(), bindBuyKey ) 
  
function getPropsInRow () 
outputChatBox ( "Оружие " .. v[1] .. " , " .. v[5] .. " патронов, $-" .. v[6] ) 
end 
addEventHandler ( "onClientGUIClick", wpShopBtnBuy, getPropsInRow, false ) 

В конце я указал переменные, но неправильно потомучто я не знаю как правильно захватить их туды

Для более понятного разъяснения скрин:

1d86bf95e435.jpg

Link to comment

c126bbe56922.jpg

хочу чтобы при нажатии кнопки "Buy" инфа считывалась с выделенной строчки и выходила в виде сообщения, я просто не знаю как захватить определенные данные из выделенной строчки

23c14ecfa8f7.png

Link to comment
--[id] = { model , Slot, Name, Ammo, Price, Damage } 
wpShopTable = 
{ 
    [0] = { 0, "Unarmed", 1, 0, "5-25" }; 
    [1] = { 0, "Brass Knuckles", 1, 5, "5-25" }; 
... 
}; 

Получаете ID из строки, переводите в число (tonumber) и получаете таблицу из wpShopTable по ключу ID. Т.е. Data = wpShopTable[ ID ], где Data - ваша таблица с инфой о оружии

Link to comment

в том то и прикол что я не знаю как взять в переменную данные из такой строки - там же как-то и ряд и строку надо вычислять, я не понимаю как такое выделение вообще в скрипте обозначить, можете подсказать примеры из вики или ресов, может вы знаете похожий скрипт который так берет данные, несколько рядов из одной строки. А не, понял

Link to comment

а вот id которые будут в квадратных скобках [] это надо реальные id оружия туда вписывать или просто пронумировать от 0 и далее? это же за скобками и оно не будет считатся за v[число], такой вопрос возник когда в вашем пояснении я увидел различия между своими и вашими строчками:

У вас:

[0] = { 0, "Unarmed", 1, 0, "5-25" }

[X]-------1,2-----------,3,4,5

У меня:

{0, 0, "Unarmed", 1, 0, "5-25"}

1,2,3-------------,4,5,6

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