Damien_LOL | Дата: Вторник, 17.06.2014, 23:08 | Сообщение # 1 |
Освоившийся
Группа:
Продвинутые
Сообщений: 133
Награды: 3
Город: Екатеринбург
Репутация: 8
Замечания: 0%
Статус:
| Пишу скрипт покупки авто, хочу чтобы данные о машине грузились в GridList из бд, после загрузки gui вызываю серверное событие, вызывается, считывает данные. ПОсле этого пытаюсь отправить сохраненную таблицу с инфой обратно на клиент для заполнения GridList, клиентское событие не вызывается, но функция triggerClientEvent возвращает тру. Вот код
Сервер: [pwn]local sellcars = {} local amountsellcars = 1
function buyMode(markerHit,matchingDimension) if (matchingDimension) then -- Make sure the player is in the same dimension as the marker (so they're actually going into it). trigger1 = triggerClientEvent ( "onBuyMode", getRootElement()) if trigger1 then outputDebugString("onBuyMode succesful") end end end addEventHandler("onPlayerMarkerHit",getRootElement(),buyMode)
function getRows() outputDebugString("getRows started") local db_host = get("db_host") local db_user = get("db_user") local db_pass = get("db_pass") local db_name = get("db_name") local db = mysql_connect(db_host,db_user,db_pass,db_name) local result = mysql_query(db,"SELECT * FROM sell_cars") local row = mysql_fetch_row(result) while row do sellcars[amountsellcars] = {} sellcars[amountsellcars].carid = row[2] sellcars[amountsellcars].price = row[3] sellcars[amountsellcars].model = row[4] row = mysql_fetch_row(result) amountsellcars = amountsellcars + 1 end amountsellcars = amountsellcars - 1 trigger = triggerClientEvent("onFillTable",getRootElement(),sellcars,amountsellcars) if trigger then outputDebugString("onFillTable succesful") end end addEvent("onLoadGUI",true) addEventHandler("onLoadGUI",getRootElement(),getRows)[/pwn]
Клиент: [pwn]function createGUI() buycar_window = guiCreateWindow(0.00, 0.00, 0.25, 1.00, "ПОКУПКА МАШИНЫ", true) guiWindowSetSizable(buycar_window, false) guiWindowSetMovable (buycar_window, false )
carlist_buycarwindow = guiCreateGridList(0.02, 0.01, 0.96, 0.91, true, buycar_window) local model = guiGridListAddColumn(carlist_buycarwindow, "Модель", 0.3) local price = guiGridListAddColumn(carlist_buycarwindow, "Цена", 0.3) local id = guiGridListAddColumn(carlist_buycarwindow, "ID", 0.3)
buy_buycarwindow = guiCreateButton(0.16, 0.93, 0.26, 0.04, "Купить", true, buycar_window) cancel_buycarwindow = guiCreateButton(0.54, 0.93, 0.26, 0.04, "Отмена", true, buycar_window) guiSetProperty(buycar_window, "Visible", "false")
addEventHandler("onClientGUIClick", cancel_buycarwindow, hideBuyMode, false) end
addEventHandler("onClientResourceStart", getResourceRootElement(getThisResource()), function () createGUI() triggerServerEvent( "onLoadGUI", getLocalPlayer()) end )
local buyCarRow = {} function fillTable(sellcars,amount) local i = 1 while i>=amount do buyCarRow[i] = guiGridListAddRow(carlist_buycarwindow) guiGridListSetItemText(carlist_buycarwindow,buyCarRow[i],id,sellcars[i].carid,false,false) guyGridListSetItemText(carlist_buycarwindow,buyCarRow[i],model,sellcars[i].model,false,false) guiGridListSetItemText(carlist_buycarwindow,buyCarRow[i],price,sellcars[i].price,false,false) i = i + 1 end end addEvent("onFillTable",true) addEventHandler("onFillTable",getResourceRootElement(getThisResource()),fillTable)
function showBuyMode() guiSetVisible(buycar_window,true) showCursor(true) guiSetInputEnabled(true) end addEvent("onBuyMode",true) addEventHandler("onBuyMode",getResourceRootElement(getThisResource()),showBuyMode)
function hideBuyMode() showCursor(false) guiSetInputEnabled(false) guiSetVisible(buycar_window,false) end[/pwn]
Уже всю голову сломал в чем дело, помогите пожалуйста!Добавлено (17.06.2014, 23:08) --------------------------------------------- Решено. Не заметил небольшую опечатку в добавлении обработчика
Http://vk.com/minusdot.team
Сообщение отредактировал Damien_LOL - Вторник, 17.06.2014, 22:42 |
|
|
|
AXE | Дата: Среда, 18.06.2014, 00:16 | Сообщение # 2 |
Группа:
Администратор
Сообщений: 6575
Награды: 156
Город: Ильичёвск
Репутация: 3907
Статус:
| Решено. Не заметил небольшую опечатку в добавлении обработчика
Love will set you free! Не совсем понятно что будет дальше, но ведь так во всём, даже бросая ровно в корзину бумагу, будучи уверенным на все 100%, что попадёшь, в последний момент дуновение ветра может сменить его траекторию. Только продолжая свой путь, ты можешь зацепиться за жизнь так, что успеешь сделать всё, что задумал. Главное ставить себе цели, которые тебя волную. Будь не тем, кем пытается сделать тебя жизнь, а тем, кем пытаешься сделать себя ты. Тогда жизнь поможет стать тем, кем хочешь.
|
|
|
|