H1TM4N Posted October 28, 2012 Share Posted October 28, 2012 Объясни поконкретнее... Что ты вобще хочешь? Я про прицел. Та точка куда летят пули. Ее можно двигать скриптом? Если да, какая функция? Link to comment
Other Languages Moderators Disinterpreter Posted October 28, 2012 Other Languages Moderators Share Posted October 28, 2012 Двигать прицел? ИМХО не логично. Link to comment
H1TM4N Posted October 28, 2012 Share Posted October 28, 2012 Двигать прицел? ИМХО не логично. а я не об этом и говорю. Link to comment
Flaker Posted October 28, 2012 Share Posted October 28, 2012 Это? https://wiki.multitheftauto.com/wiki/SetPedAimTarget Link to comment
H1TM4N Posted October 28, 2012 Share Posted October 28, 2012 Это?https://wiki.multitheftauto.com/wiki/SetPedAimTarget я не понял что делает эта функция. ничего не происходит. уточнаяю: как созданного педа нацелить на игрока, чтобы прицел педа попадал именно в игрока (лево/право/низ/верх). Link to comment
Vamp1r Posted October 28, 2012 Share Posted October 28, 2012 Это?https://wiki.multitheftauto.com/wiki/SetPedAimTarget я не понял что делает эта функция. ничего не происходит. уточнаяю: как созданного педа нацелить на игрока, чтобы прицел педа попадал именно в игрока (лево/право/низ/верх). Функция устанавливает педу цель по координатам. Используй https://wiki.multitheftauto.com/wiki/GetPedBonePosition для того, чтобы узнать координаты кости к которой нужно целиться Link to comment
Kernell Posted October 30, 2012 Share Posted October 30, 2012 Внимательнее читать нужно, господа Note: If you wish to make a ped shoot you must use this in conjunction with an equipped weapon and setPedControlState. Link to comment
N1kS Posted October 30, 2012 Share Posted October 30, 2012 Code: local team1name local team2name function _f2(commandname, name1, name2) name1 = team1name name2 = team2name outputChatBox("Team 1 name: "..team1name.." Team 2 name: "..team2name, source) end addCommandHandler("stn", _f2) Идея: присваивать 2 текстовым переменных значение. Но ЛУА ругается, что не может им присвоить, т.к они nil. Link to comment
DakiLLa Posted October 30, 2012 Share Posted October 30, 2012 Возможно, наоборот? team1name = name1 team2name = name2 Link to comment
Flaker Posted October 30, 2012 Share Posted October 30, 2012 Code: local team1name local team2name function _f2(commandname, name1, name2) name1 = team1name name2 = team2name outputChatBox("Team 1 name: "..team1name.." Team 2 name: "..team2name, source) end addCommandHandler("stn", _f2) Идея: присваивать 2 текстовым переменных значение. Но ЛУА ругается, что не может им присвоить, т.к они nil. Советую основы кодинга почитать: http://ilovelua.narod.ru/about_lua.html Link to comment
el_motoblock Posted October 30, 2012 Share Posted October 30, 2012 function showWeaponShopWindow() guiSetInputEnabled(true) guiSetVisible ( WeaponShop_window_1, true ) showCursor ( true ) end addCommandHandler("wpshop",showWeaponShopWindow) function closeWeaponShopWindow() guiSetInputEnabled(false) guiSetVisible ( WeaponShop_window_1, false ) showCursor ( false ) end addCommandHandler("wpclose",closeWeaponShopWindow) function bindWeapShopKeys() bindKey ( "b", "down", wpshop ) end setTimer ( bindWeapShopKeys, 1000, 1) addEventHandler ( "onClientGUIClick", WeaponShop_button_51, closeWeaponShopWindow ) guiSetInputEnabled(false) guiSetVisible ( WeaponShop_window_1, false ) showCursor ( false ) не могу забиндить, команды работают, только бинд не хочет Link to comment
Flaker Posted October 30, 2012 Share Posted October 30, 2012 function showWeaponShopWindow() guiSetInputEnabled(true) guiSetVisible ( WeaponShop_window_1, true ) showCursor ( true ) end addCommandHandler("wpshop",showWeaponShopWindow) function closeWeaponShopWindow() guiSetInputEnabled(false) guiSetVisible ( WeaponShop_window_1, false ) showCursor ( false ) end addCommandHandler("wpclose",closeWeaponShopWindow) function bindWeapShopKeys() bindKey ( "b", "down", wpshop ) end setTimer ( bindWeapShopKeys, 1000, 1) addEventHandler ( "onClientGUIClick", WeaponShop_button_51, closeWeaponShopWindow ) guiSetInputEnabled(false) guiSetVisible ( WeaponShop_window_1, false ) showCursor ( false ) не могу забиндить, команды работают, только бинд не хочет У тебя бинд на команду чтоль? bindKey ( "b", "down", wpshop ) Он на функцию должен быть! Пробуй так: bindKey ( "b", "down", showWeaponShopWindow ) Link to comment
Scripting Moderators Sarrum Posted October 30, 2012 Scripting Moderators Share Posted October 30, 2012 Ну или bindKey ( "b", "down", "wpshop" ) Link to comment
el_motoblock Posted October 31, 2012 Share Posted October 31, 2012 спасибо, оба способа работают, раньше делал на функцию, но не работало(скорее всего неправильно написал). Ещё один вопрос. function consoleGive ( thePlayer, commandName, weaponID, ammo, minusMoney ) local status = giveWeapon ( thePlayer, weaponID, ammo, true ) -- attempt to give the weapon, forcing it as selected weapon local minusMoney = givePlayerMoney ( thePlayer, ??? ) if ( not status ) then -- if it was unsuccessful outputConsole ( "Failed to give weapon.", thePlayer ) -- tell the player end end addCommandHandler ( "give", consoleGive ) Как сделать так чтобы сделать на команду: /give <патроны> <вычитаемые деньги> мне это нужно для бинда комманд на кнопки в магазине оружия Заранее спасибо, выложу в комьюнити, укажу имена хелперов. Link to comment
Flaker Posted October 31, 2012 Share Posted October 31, 2012 Примерно это хотел?: function consoleGive ( thePlayer, commandName, weaponID, ammo ) local status = giveWeapon ( thePlayer, tonumber(weaponID), tonumber(ammo), true ) -- attempt to give the weapon, forcing it as selected weapon takePlayerMoney ( thePlayer, 500 ) if ( not status ) then -- if it was unsuccessful outputConsole ( "Failed to give weapon.", thePlayer ) -- tell the player end end addCommandHandler ( "give", consoleGive) Link to comment
Kenix Posted October 31, 2012 Share Posted October 31, 2012 Создай таблицу с оружием WeaponData = { [ 30 ] = { iMoney = 2000, iAmmo = 250 }; [ 31 ] = { iMoney = 1900, iAmmo = 250 }; -- ... } Link to comment
el_motoblock Posted November 1, 2012 Share Posted November 1, 2012 сделал так function consoleGive ( thePlayer, commandName, weaponID, ammo, minusMoney ) local giveWeapon ( thePlayer, weaponID, ammo, true ) -- attempt to give the weapon, forcing it as selected weapon local takePlayerMoney (thePlayer, tonumber (minusMoney)) end addCommandHandler ( "give", consoleGive ) при наборе give 35 200 2000, получил гранатомет с 200 ракетами, но деньги так и не вычло. Как исправить? чтоб деньги вычитало. Link to comment
Flaker Posted November 1, 2012 Share Posted November 1, 2012 Во первых, не надо local перед вызовом функций Во вторых учись дебагать самостоятельно, с помощью outputChatBox. (Ну или outputDebugString) Вот попробуй этот код, и проверь, что он выводит в чат. function consoleGive ( thePlayer, commandName, weaponID, ammo, minusMoney ) outputChatBox(tostring(weaponID).." "..tostring(ammo).." "..tostring(minusMoney)) giveWeapon ( thePlayer, weaponID, ammo, true ) -- attempt to give the weapon, forcing it as selected weapon takePlayerMoney ( thePlayer, tonumber (minusMoney) ) end addCommandHandler ( "give", consoleGive ) Link to comment
Kenix Posted November 1, 2012 Share Posted November 1, 2012 viewtopic.php?f=141&t=40703 Link to comment
el_motoblock Posted November 2, 2012 Share Posted November 2, 2012 Вот попробуй этот код, и проверь, что он выводит в чат. function consoleGive ( thePlayer, commandName, weaponID, ammo, minusMoney ) outputChatBox(tostring(weaponID).." "..tostring(ammo).." "..tostring(minusMoney)) giveWeapon ( thePlayer, weaponID, ammo, true ) -- attempt to give the weapon, forcing it as selected weapon takePlayerMoney ( thePlayer, tonumber (minusMoney) ) end addCommandHandler ( "give", consoleGive ) ввел /25 1 200; вышло сообщение 25 1 200 получил ружьё с 2мя патронами вместо 1го, деньги вычитаются правильно. Баг с удвоением исправил giveWeapon ( thePlayer, weaponID, (ammo/2), true ) debugscript 3 на данный скрипт не ругается, проблема решена, спасибо. Но на клиентской стороне я пытался привязать эту команду к кнопке, но ничего не выходит addEventHandler ( "onClientGUIClick", WeaponShop_button_15, "give 22 200 200" ) в дебагскрипт 3 пишет: WARNING: _wpshop\wp_client.lua: 102: Bad argument @ 'addEventHandler' [Expected function at argument 3, got string 'give 22 200 200'] Link to comment
Memory Posted November 2, 2012 Share Posted November 2, 2012 Здравствуйте, можете помочь сделать скрипт, чтобы при команде, например, /setmap, в файл maps.xml посылалось название карты, в которой играет игрок. Link to comment
Kenix Posted November 2, 2012 Share Posted November 2, 2012 Вот попробуй этот код, и проверь, что он выводит в чат. function consoleGive ( thePlayer, commandName, weaponID, ammo, minusMoney ) outputChatBox(tostring(weaponID).." "..tostring(ammo).." "..tostring(minusMoney)) giveWeapon ( thePlayer, weaponID, ammo, true ) -- attempt to give the weapon, forcing it as selected weapon takePlayerMoney ( thePlayer, tonumber (minusMoney) ) end addCommandHandler ( "give", consoleGive ) ввел /25 1 200; вышло сообщение 25 1 200 получил ружьё с 2мя патронами вместо 1го, деньги вычитаются правильно. Баг с удвоением исправил giveWeapon ( thePlayer, weaponID, (ammo/2), true ) debugscript 3 на данный скрипт не ругается, проблема решена, спасибо. Но на клиентской стороне я пытался привязать эту команду к кнопке, но ничего не выходит addEventHandler ( "onClientGUIClick", WeaponShop_button_15, "give 22 200 200" ) в дебагскрипт 3 пишет: WARNING: _wpshop\wp_client.lua: 102: Bad argument @ 'addEventHandler' [Expected function at argument 3, got string 'give 22 200 200'] 3 аргумент это функция, а у тебя строка ... Тебе даже дебаг подсказывает. Link to comment
el_motoblock Posted November 3, 2012 Share Posted November 3, 2012 А возможно ли вписать туда серверную функцию и с этими цифрами? Как нить так, не знаю как это интерпретировать addEventHandler ( "onClientGUIClick", WeaponShop_button_15, consoleGive ( thePlayer, commandName, weaponID, ammo, minusMoney) ) Link to comment
_Vincent_ Posted November 3, 2012 Share Posted November 3, 2012 handlerFunction: The handler function you wish to call when the event is triggered. This function will be passed all of the event's parameters as arguments, but it isn't required that it takes all of them. handlerFunction: Функция-обработчик, которую вы желаете вызывать при срабатывании события. Этой функции в качестве аргументов будут переданы все параметры события, но необязательно их всех получать. Просто стараюсь прояснить. Кажется, что оно итак все передаст, вам лишь следует нужные вам указать в самой функции (function funcName(thePlayer, ...)) и т.д., только порядок мб будет как-то отличаться. А если с клиента на сервер, то вроде бы нужны триггеры. А вообще я что-то раньше обычного проснулся и мне нечего делать Link to comment
Lex128 Posted November 3, 2012 Share Posted November 3, 2012 А возможно ли вписать туда серверную функцию и с этими цифрами?Как нить так, не знаю как это интерпретировать addEventHandler ( "onClientGUIClick", WeaponShop_button_15, consoleGive ( thePlayer, commandName, weaponID, ammo, minusMoney) ) Ну можно ведь сделать так, если в лоб: addEventHandler ( "onClientGUIClick", WeaponShop_button_15, function() executeCommandHandler ( "give", "22 200 200") end) дароу винц 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