03:53
ОбновитьСмайлыУправление мини-чатом
МИНИ-ЧАТ
Главная страница!

 



 
          





Рекомендуем:





Последние Файлы GTA 4 Последние Файлы GTA-MP Реклама
Скрипт GTA 4 элементы Watch... 07.09.2014
Ferrari 360 Spider [EPM con... 13.12.2013
Porsche Cayenne Turbo 2012 ... 13.12.2013
Shelby Terlingua Mustang v1... 13.12.2013
Hamann Lamborghini Gallardo... 27.10.2013
[GM] The Big PEN1:LS v2.00 ... 04.12.2017
Dgun (AvnanceRP,SampRP,Dimo... 19.03.2016
SAMP скрипт SX Events (MySQ... 03.03.2016
Карта ASL мэрия для SAMP се... 03.03.2016
AIM для SA-MP 0.3.7 22.02.2016
  • Страница 1 из 1
  • 1
Модератор форума: PrettySweetie  
Форум SAMP о мультиплеерах для GTA. »   » Вопросы и проблемы » [Решено] Не вызываются client event
[Решено] Не вызываются client event
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%, что попадёшь, в последний момент дуновение ветра может сменить его траекторию.
Только продолжая свой путь, ты можешь зацепиться за жизнь так, что успеешь сделать всё, что задумал. Главное ставить себе цели, которые тебя волную.
Будь не тем, кем пытается сделать тебя жизнь, а тем, кем пытаешься сделать себя ты. Тогда жизнь поможет стать тем, кем хочешь.
Форум SAMP о мультиплеерах для GTA. »   » Вопросы и проблемы » [Решено] Не вызываются client event
  • Страница 1 из 1
  • 1
Поиск:





 


 


 
Хостинг от uCoz samp.at.ua