StUNt71 Posted January 29, 2012 Share Posted January 29, 2012 Решил свою проблему другим способом. Link to comment
StUNt71 Posted January 30, 2012 Share Posted January 30, 2012 (edited) Есть функция, чтобы получить целое число при делении и остаток? Догадываюсь в math. может быть? ----------- Первое нашёл. math.fmod (x, y) Возвращает остаток от деления x на y. ----------- Целое можно и так получить: local c = (a - math.fmod(a, 10)) / 10 Edited January 30, 2012 by Guest Link to comment
_Vincent_ Posted January 30, 2012 Share Posted January 30, 2012 Теперь надо целое число? math.floor попробуй. Link to comment
StUNt71 Posted January 30, 2012 Share Posted January 30, 2012 math.floor (x) Возвращает наибольшее целое число, меньшее или равное x. (Округление «вниз») ---- Мне надо при делении целое число. Всё я уже нашёл решение. P.S.: Сам спросил, сам ответил. Link to comment
el_motoblock Posted January 31, 2012 Share Posted January 31, 2012 Как можно убрать окошко гуя типа как это: ? guiWindw = guiCreateWindow(0.365,0.7283,0.4888,0.1783,"Text",true) если это не канает. guiSetVisible(guiWindw, false) Дебаг молчит Заранее спс Link to comment
MX_Master Posted January 31, 2012 Author Share Posted January 31, 2012 если надо только визуально скрыть то guiSetAlpha ( элемент, 0 ) Link to comment
Kernell Posted January 31, 2012 Share Posted January 31, 2012 destroyElement можно. Но тогда нужно будет заново создавать GUI-окно. Кстати почему та функция не работает? Может Вы создали локальную переменную, а функцию вызываете за пределами области видимости? Link to comment
el_motoblock Posted January 31, 2012 Share Posted January 31, 2012 Клиентский скрипт вот: function CreateSelectorWindow() wdwselector = guiCreateWindow(0.365,0.7283,0.4888,0.1783,"Select Your Skin",true) --guiSetAlpha(wdwselector,0.69999998807907) guiWindowSetMovable(wdwselector,false) guiWindowSetSizable(wdwselector,false) btnLeft = guiCreateButton(0.023,0.3832,0.1918,0.3364,"<---",true,wdwselector) btnSelect = guiCreateButton(0.2404,0.3832,0.1918,0.3364,"OK",true,wdwselector) guiSetFont(btnSelect,"default-bold-small") btnRight = guiCreateButton(0.4578,0.3832,0.1918,0.3364,"--->",true,wdwselector) btnRand = guiCreateButton(0.7826,0.3832,0.1918,0.3364,"Random",true,wdwselector) guiSetVisible(wdwselector, false) end function selectorenable () CreateSelectorWindow() addEventHandler("onClientGUIClick", btnLeft, clientSkinLeft, false) addEventHandler("onClientGUIClick", btnSelect, clientSkinSelect, false) addEventHandler("onClientGUIClick", btnRight, clientSkinRight, false) addEventHandler("onClientGUIClick", btnRight, clientSkinRand, false) addEventHandler("onClientGUIClick", btnRand, clientSkinRand, false) if (wdwselector ~= nil) then guiSetVisible(wdwselector, true) triggerServerEvent("FrontCamera", getLocalPlayer()) end showCursor(true) end addEventHandler("onClientResourceStart", getRootElement(), selectorenable) --addCommandHandler("skin", selectorenable, false, false) function clientSkinSelect(button) showCursor(false) triggerServerEvent("SkinSelected", getLocalPlayer()) guiSetVisible(wdwselector, false) guiSetVisible(btnLeft, false) guiSetVisible(btnSelect, false) guiSetVisible(btnRight, false) guiSetVisible(btnRand, false) local sound_click = playSound("click.wav") setSoundVolume(sound_click, 0.-- s8) --> -- set the sound volume to 50% end function clientSkinRight(button) local sound_click = playSound("click.wav") setSoundVolume(sound_click, 0.7) triggerServerEvent("SkinRight", getLocalPlayer()) end function clientSkinLeft(button) local sound_click = playSound("click.wav") setSoundVolume(sound_click, 0.-- s8) --> triggerServerEvent("SkinLeft", getLocalPlayer()) end function clientSkinRand(button) local sound_click = playSound("click.wav") setSoundVolume(sound_click, 0.-- s8) --> triggerServerEvent("SkinRand", getLocalPlayer()) end Чужой скинселектор вставил в гейммод свой, в оригинале он был отдельный и вызвался через консоль (https://community.multitheftauto.com/index.php?p= ... ils&id=593) Link to comment
MX_Master Posted January 31, 2012 Author Share Posted January 31, 2012 От нас то че ннада? Link to comment
el_motoblock Posted February 1, 2012 Share Posted February 1, 2012 Клиентский скрипт вот: function CreateSelectorWindow() wdwselector = guiCreateWindow(0.365,0.7283,0.4888,0.1783,"Select Your Skin",true) --guiSetAlpha(wdwselector,0.69999998807907) guiWindowSetMovable(wdwselector,false) guiWindowSetSizable(wdwselector,false) btnLeft = guiCreateButton(0.023,0.3832,0.1918,0.3364,"<---",true,wdwselector) btnSelect = guiCreateButton(0.2404,0.3832,0.1918,0.3364,"OK",true,wdwselector) guiSetFont(btnSelect,"default-bold-small") btnRight = guiCreateButton(0.4578,0.3832,0.1918,0.3364,"--->",true,wdwselector) btnRand = guiCreateButton(0.7826,0.3832,0.1918,0.3364,"Random",true,wdwselector) guiSetVisible(wdwselector, false) end function selectorenable () CreateSelectorWindow() addEventHandler("onClientGUIClick", btnLeft, clientSkinLeft, false) addEventHandler("onClientGUIClick", btnSelect, clientSkinSelect, false) addEventHandler("onClientGUIClick", btnRight, clientSkinRight, false) addEventHandler("onClientGUIClick", btnRight, clientSkinRand, false) addEventHandler("onClientGUIClick", btnRand, clientSkinRand, false) if (wdwselector ~= nil) then guiSetVisible(wdwselector, true) triggerServerEvent("FrontCamera", getLocalPlayer()) end showCursor(true) end addEventHandler("onClientResourceStart", getRootElement(), selectorenable) --addCommandHandler("skin", selectorenable, false, false) function clientSkinSelect(button) showCursor(false) triggerServerEvent("SkinSelected", getLocalPlayer()) guiSetVisible(wdwselector, false) guiSetVisible(btnLeft, false) guiSetVisible(btnSelect, false) guiSetVisible(btnRight, false) guiSetVisible(btnRand, false) local sound_click = playSound("click.wav") setSoundVolume(sound_click, 0.-- s8) --> -- set the sound volume to 50% end function clientSkinRight(button) local sound_click = playSound("click.wav") setSoundVolume(sound_click, 0.7) triggerServerEvent("SkinRight", getLocalPlayer()) end function clientSkinLeft(button) local sound_click = playSound("click.wav") setSoundVolume(sound_click, 0.-- s8) --> triggerServerEvent("SkinLeft", getLocalPlayer()) end function clientSkinRand(button) local sound_click = playSound("click.wav") setSoundVolume(sound_click, 0.-- s8) --> triggerServerEvent("SkinRand", getLocalPlayer()) end Чужой скинселектор вставил в гейммод свой, в оригинале он был отдельный и вызвался через консоль (https://community.multitheftauto.com/index.php?p= ... ils&id=593) Не убирается окошко GUI после выбора скина Link to comment
MX_Master Posted February 1, 2012 Author Share Posted February 1, 2012 функцию selectorenable(), с идущим за ним addEventHandler, переместить в конец кода. также заменить addEventHandler("onClientResourceStart", getRootElement(), selectorenable) на addEventHandler("onClientResourceStart", resourceRoot, selectorenable) Link to comment
el_motoblock Posted February 1, 2012 Share Posted February 1, 2012 А можно ли тут сделать динамическую камеру, чтобы смотрела на игрока на лицо и смотрела на него даже если он переместился куда нить, вобщем чтобы следовала за игроком смотря на него с переди? Суть в том, что скрипт бывает грузится первее гейммода и получается что камера устанавливается где-то в поле, в деревне, а игрок появляется где надо на спавнпоинте function camf() local px,py,pz = getElementPosition( source ) local rot = setPedRotation(source, 1) setCameraMatrix( source, px, py+2, pz, px, py, pz) end addEvent("FrontCamera", true) addEventHandler("FrontCamera", getRootElement(), camf) function selected() fadeCamera(source, true) setCameraTarget(source, source) outputChatBox("Skin selected!!!", source) end addEvent("SkinSelected", true) addEventHandler("SkinSelected", getRootElement(), selected) function skinright() local skin = getPedSkin(source) if (skin == 0) then setPedSkin(client, 7) elseif (skin == 7) then setPedSkin(client, 9) elseif (skin == 41) then setPedSkin(client, 43) elseif (skin == 64) then setPedSkin(client, 66) elseif (skin == 85) then setPedSkin(client, 87) elseif(skin == 118) then setPedSkin(client, 120) elseif(skin == 148) then setPedSkin(client, 150) elseif(skin == 207) then setPedSkin(client, 209) elseif(skin == 238) then setPedSkin(client, 240) elseif(skin == 264) then setPedSkin(client, 274) elseif(skin == 288) then setPedSkin(client, 0) else setPedSkin(source, skin+1) end end addEvent("SkinRight", true) addEventHandler("SkinRight", getRootElement(), skinright) function skinleft() local skin = getPedSkin(source) if (skin == 7) then setPedSkin(client, 0) elseif (skin == 9) then setPedSkin(client, 7) elseif (skin == 43) then setPedSkin(client, 41) elseif (skin == 66) then setPedSkin(client, 64) elseif (skin == 87) then setPedSkin(client, 85) elseif(skin == 120) then setPedSkin(client, 118) elseif(skin == 150) then setPedSkin(client, 148) elseif(skin == 209) then setPedSkin(client, 207) elseif(skin == 240) then setPedSkin(client, 238) elseif(skin == 274) then setPedSkin(client, 264) elseif(skin == 0) then setPedSkin(client, 288) else setPedSkin(source, skin-1) end end addEvent("SkinLeft", true) addEventHandler("SkinLeft", getRootElement(), skinleft) function skinrand() local skin = getPedSkin(source) --setPedSkin(client, math.random(312)) setPedSkin(source, math.random(312)) end addEvent("SkinRand", true) addEventHandler("SkinRand", getRootElement(), skinrand) Link to comment
StUNt71 Posted February 5, 2012 Share Posted February 5, 2012 Стоит делать много своих событий вместо функций? Link to comment
MX_Master Posted February 5, 2012 Author Share Posted February 5, 2012 Стоит делать много своих событий вместо функций? глупо юзать отвертку для забивания гвоздей Link to comment
el_motoblock Posted February 6, 2012 Share Posted February 6, 2012 Стоит делать много своих событий вместо функций? глупо юзать отвертку для забивания гвоздей Если не знать про молоток то можно и отвёрткой - только за другую сторону взять и шансы забить гвоздь удвоятся. Link to comment
TwiX! Posted February 6, 2012 Share Posted February 6, 2012 Можно ли сделать бан по аккаунту.. /banacc мой код не работает function banPlayerCommand ( theClient, command, bannedName, reason ) -- The function header and where source is defined local bannedAcc = getPlayerAccount ( bannedName ) if bannedAcc then addBan ( nil, bannedAcc, nil, theClient, "TEST" ) outputChatBox ( "ban: " .. bannedAcc .. " successfully banned", theClient ) else outputChatBox ( "ban: Account "..bannedAcc.." was not found", theClient ) end end addCommandHandler ( "bann", banPlayerCommand ) Link to comment
Kenix Posted February 6, 2012 Share Posted February 6, 2012 1)2 аргумент в функции addBan это строка. 2) bannedName это строка, а не элемент, ты не сможешь получить аккаунт. Link to comment
_Vincent_ Posted February 6, 2012 Share Posted February 6, 2012 local bannedAcc = getPlayerAccount ( bannedName ) local bannedAcc = getPlayerAccount ( getPlayerFromName( bannedName )) Link to comment
TwiX! Posted February 6, 2012 Share Posted February 6, 2012 у меня нет представлений тогда как сделать это я перепробывал кучу вариантов.. не один из них не работает, local bannedAcc = getPlayerAccount ( getPlayerFromName( bannedName )) мне нужно чтобы он банил если даже игрок оффлайн banPlayer не работает тоже если я заменю getPlayerAccount на getAccountName ничего не изменится Link to comment
Kenix Posted February 6, 2012 Share Posted February 6, 2012 banPlayer ты не можешь юзать т.к требует элемента игрока на сервере. Аккаунт можешь банить только мта сообщества.( т.е не игрока с аккаунтом на сервере ) Смотри в аргументах. function banPlayerCommand ( player, command, ip, serial, reason ) -- The function header and where source is defined if addBan ( ip, nil , serial, player, reason or '' ) then outputChatBox ( "ban: success", player ) end end addCommandHandler ( "bann", banPlayerCommand ) Тока так если или написать свою систему. Link to comment
TwiX! Posted February 6, 2012 Share Posted February 6, 2012 banPlayer ты не можешь юзать т.к требует элемента игрока на сервере.Аккаунт можешь банить только мта сообщества.( т.е не игрока с аккаунтом на сервере ) Смотри в аргументах. function banPlayerCommand ( player, command, ip, serial, reason ) -- The function header and where source is defined if addBan ( ip, nil , serial, player, reason or '' ) then outputChatBox ( "ban: success", player ) end end addCommandHandler ( "bann", banPlayerCommand ) Тока так если или написать свою систему. короче это бредовая идея.. проще на баг трекере запросить функцию Link to comment
Kenix Posted February 6, 2012 Share Posted February 6, 2012 Скорее аргумент, а не функцию. Link to comment
TwiX! Posted February 6, 2012 Share Posted February 6, 2012 ссылку найти не могу, где попросить аргумент можно Link to comment
Other Languages Moderators Disinterpreter Posted February 8, 2012 Other Languages Moderators Share Posted February 8, 2012 Здравствуйте! Помогите искал и немог найти эту анимацию: Link to comment
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now