Jump to content

Общий мини "HELP ME" топик по скриптингу


Recommended Posts

nikitafloy,

Если бы внимательно занимались изучением Lua

Откуда Вам знать, как я изучаю Lua?

Ты сам написал, как ты изучаешь Lua. )))

не получается вычитать все по Lua, прочитал только азы с сайта "i love lua".)

http://ilovelua.narod.ru/about_lua.html

Здесь этого нет, да и ты не мог знать что я читал и где.

Link to comment

Не знаю, поможите ли Вы мне...

Суть такая - игрок дрифтует, попадает на 1 место по счету, если его счет > рекордного и должен получить деньги, но из его данных экспортируется только имя (GetPlayerFromName(player)), т.к. для скрипта только это нужно - имя попадает в запись со счетом. Соответственно, я не могу дать деньги имени. Как мне экспортировать тот самый 'thePlayer' ('player')?

local player = getLocalPlayer() - так задается тот самый 'player' в клиенте, как это сделать в server?

Link to comment

Если ты действительно хочешь понять Lua, то тебе придется читать как можно больше документации, я тебе давал ссылку, где находится сборка всех документаций обязательных к прочтению. Сам же ведь яму роешь.

Link to comment
Если ты действительно хочешь понять Lua, то тебе придется читать как можно больше документации, я тебе давал ссылку, где находится сборка всех документаций обязательных к прочтению. Сам же ведь яму роешь.

ОК, хорошо, завтра примусь читать.

Вроде бы все просто - бери и делай как указано в wiki.

Link to comment
Если ты действительно хочешь понять Lua, то тебе придется читать как можно больше документации, я тебе давал ссылку, где находится сборка всех документаций обязательных к прочтению. Сам же ведь яму роешь.

ОК, хорошо, завтра примусь читать.

Вроде бы все просто - бери и делай как указано в wiki.

Это хреновый путь. Я, помнится, просто читая и переделывая образцы, поначалу думал, что thePlayer - это предпопределенная переменная, ну и прочий бред. Надо осмыслять все, что есть в коде, понимать что и откуда берется.

Учить синтаксис языка - очень хорошо, но на одном синтаксисе не выехать.

Link to comment

Ок, у меня набралось немного вопросов.

1. Почему данный скрипт не работает, какие в нем косяки? Раньше он работал ОК.

local url = "http://yp.shoutcast.com/sbin/tunein-station.pls?id=1588890&play_status=1" 
local speak = { 
{1049.6, 2324.4, 11.3}, 
{1053, 2304.9, 11.3} 
} 
  
function playTheSound( ) 
    for k, i in ipairs ( speak ) do 
        local a, b = unpack ( i ) 
        playSound3D ( url, i ) 
        setSoundMaxDistance ( url, 40 ) 
    end 
end 
addEventHandler( "onClientResourceStart", resourceRoot, playTheSound ) 

2. Изучил и решил сделать подобное, но с поправками - viewtopic.php?f=141&t=63040

Есть 2 педа - охрана, когда их начинают бить и сносят 10 хп, то они начинают стрелять по игроку, но как направить на них цель педа? Читал про кулшейп, не понял какую из тем вики мне стоило бы почитать. Все на английском, в общем у меня в голове хаус.

Вот что имею на данный момент:

Клиент

local circlearea = createColCircle ( 1053, 2304.9, 200 ) 
  
function PedFire ( ped, player ) 
    if ( player == getLocalPlayer() ) == ( circlearea ) then 
        setPedAimTarget(ped, getLocalPlayer()) 
        setPedControlState(ped, "aim_weapon", true) 
        setPedControlState(ped, "fire", true) 
    end 
end 
  
addEvent( "onColShapeHit", true ) 
addEventHandler ( "onColShapeHit", getRootElement(), PedFire ) 

Сервер:

x = 1053 
y = 2304.9 
z = 11.3 
x1 = 1055.7 
y1 = 2304.8 
z1 = 11.3 
  
        ped = createPed (164, x, y, z, 180) 
        ped1 = createPed (163, x1, y1, z1, 180) 
     
    function giveWeapSec (  ) 
        if (getElementHealth(ped, ped1) > 0) then 
            giveWeapon ( ped, 31, 50, true ) 
            giveWeapon ( ped1, 31, 50, true ) 
        end 
    end 
     
    function giveArmHeal (  ) 
            setElementHealth (ped, 200) 
            setElementHealth (ped1, 200) 
            setElementFrozen (ped, true) 
            setElementFrozen (ped1, true) 
    end 
     
    function fire (  ) 
    if (getElementHealth(ped) < 190) then 
    triggerClientEvent("onColShapeHit", getRootElement(), ped) 
        end 
    end 
     
setTimer ( giveWeapSec, 50, 0) 
setTimer ( giveArmHeal, 50, 1) 
setTimer ( fire, 50, 0) 
  

Link to comment
Ок, у меня набралось немного вопросов.

1. Почему данный скрипт не работает, какие в нем косяки? Раньше он работал ОК.

local url = "http://yp.shoutcast.com/sbin/tunein-station.pls?id=1588890&play_status=1" 
local speak = { 
{1049.6, 2324.4, 11.3}, 
{1053, 2304.9, 11.3} 
} 
  
function playTheSound( ) 
    for k, i in ipairs ( speak ) do 
        local a, b = unpack ( i ) 
        playSound3D ( url, i ) 
        setSoundMaxDistance ( url, 40 ) 
    end 
end 
addEventHandler( "onClientResourceStart", resourceRoot, playTheSound ) 

local a, b = unpack ( i ) 
playSound3D ( url, i ) 
setSoundMaxDistance ( url, 40 ) 

Сами хоть поняли что делаете?

Link to comment
Ок, у меня набралось немного вопросов.

1. Почему данный скрипт не работает, какие в нем косяки? Раньше он работал ОК.

local url = "http://yp.shoutcast.com/sbin/tunein-station.pls?id=1588890&play_status=1" 
local speak = { 
{1049.6, 2324.4, 11.3}, 
{1053, 2304.9, 11.3} 
} 
  
function playTheSound( ) 
    for k, i in ipairs ( speak ) do 
        local a, b = unpack ( i ) 
        playSound3D ( url, i ) 
        setSoundMaxDistance ( url, 40 ) 
    end 
end 
addEventHandler( "onClientResourceStart", resourceRoot, playTheSound ) 

local a, b = unpack ( i ) 
playSound3D ( url, i ) 
setSoundMaxDistance ( url, 40 ) 

Сами хоть поняли что делаете?

Да. Мне помогали с этим скриптом и он когда-то работал.

Link to comment

Логика скрипта полностью не верна, и это не может работать вообще (я не верю вам, что это работало).

Вы распаковываете переменную i которая содержит массив из 3 чисел, далее заносите только 2 числа в переменные a и b, но ничего с ними не делаете. Далее вы передаёте опять ту же таблицу в playSound3D вторым аргументом - как тут что-то будет работать?

Ещё раз повторю вопрос: вы сами понимаете что делаете? Или под фразой "мне помогали" имеется ввиду "написали за меня" ?

Link to comment

Пытался реализовать систему материалов для банд и застопорился от незнания. Вот что получилось. Извините с телефона.

function BuyMaterial(material)

addevent("brpMaterialBuyClient",root,BuyMaterial)

if material = 1,20 then

--а что неизвестно

else

outputchatbox("Введите число от 1 до 20",client)

end

end ну вот это серверная часть на клиентской гуи пикап. Ещё бы хотел реализовать покупку за материалы 2 материала бита 5 материалов шотган амуниция по 1.

Link to comment
Логика скрипта полностью не верна, и это не может работать вообще (я не верю вам, что это работало).

Вы распаковываете переменную i которая содержит массив из 3 чисел, далее заносите только 2 числа в переменные a и b, но ничего с ними не делаете. Далее вы передаёте опять ту же таблицу в playSound3D вторым аргументом - как тут что-то будет работать?

Ещё раз повторю вопрос: вы сами понимаете что делаете? Или под фразой "мне помогали" имеется ввиду "написали за меня" ?

Скрипт переписали более правильнее и короче, я потом сам переделывал, как понял. Вот и получился ломаный пластилин.

unpack ( i ) 

Здесь я подразумевал, что переменные распаковываются в некую коробку i, которой можно манипулировать, хотя сейчас я вспомнил, что там были указаны - коробка i и ее элементы через запятую, но я посчитал, что должно быть по другому, к чему я и пришел - dont work.

А спросить у того человека я не мог, потому что он редко отвечает, т.к. работает саппортом у хостера и сам делает скрипты на заказ, поэтому решил взять всю инициативу на себя. НО как бы не писали, что Lua учится за пару дней, я в это сейчас не верю, потому что я уже около месяца изучаю Lua и до сих пор чего-то не допонимаю. Вот поспешил и людей насмешил...

Link to comment
НО как бы не писали, что Lua учится за пару дней, я в это сейчас не верю, потому что я уже около месяца изучаю Lua и до сих пор чего-то не допонимаю. Вот поспешил и людей насмешил...

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

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