Jump to content

Вопросы и ответы по MTA.


Recommended Posts

помогите создать скрол окно

в котором по перемещению ползунка двигается текстовая часть

p.s. не понмаю как объяснить

p.s.s. был в вики не до конца понял как делать

Link to comment
  • Other Languages Moderators
помогите создать скрол окно

в котором по перемещению ползунка двигается текстовая часть

p.s. не понмаю как объяснить

p.s.s. был в вики не до конца понял как делать

Спасибо, что за меня написал. Меня это тоже мучало :)

Link to comment
  • Other Languages Moderators

Даже проще чем в pawn :) Я кстати недавно попробовал написать скрипт на павн. Я написал спавн машины, но это был такооой гемор.... паблики - евенты расположены строго по порядку чтоб сделать переменную надо перед делать new а потом в следуйщей строке переменную... Вообщем бред. Но скрипт я написал :)

Link to comment
Спасибо, сделал функцией

Не понимаю, зачем? Есть оператор конкатенации, зачем делать функцию? Не нужно всё делать как в сампе, это глупость, имхо.

Link to comment

А в версии 1.1.1 случайно не добавили возможность замены педов и оружия?, ато у меня есть мои старые поделки - так и хочется их вставить в мта) Если да то подсажите плиз скрипт, или ссылку дайте или исходник.

Link to comment

Решил изменить скрипт ресурса play.

addEventHandler("onResourceStart", resourceRoot, 
    function() 
        resetMapInfo() 
        for i,player in ipairs(getElementsByType("player")) do 
            spawn(player) 
        end 
    end 
) 
  
function spawn(player) 
    if not isElement(player) then return end 
    repeat until spawnPlayer ( player, -1972.3438+math.random(1,5), 138.147+math.random(5,9), 27.69, 270.0, math.random(9,288), 0, 0) 
    fadeCamera(player, true) 
    setCameraTarget(player, player) 
    showChat(player, true) 
end 
  
function respawn(player) 
    if not isElement(player) then return end 
    repeat until spawnPlayer ( player, -1972.3438+math.random(1,5), 138.147+math.random(5,9), 27.69, 270.0, math.random(9,288), 0, 0) 
    fadeCamera(player, true) 
    setCameraTarget(player, player) 
    showChat(player, true) 
end 
  
  
addEventHandler("onPlayerJoin", root, 
    function() 
        spawn(source) 
    end 
) 
  
addEventHandler("onPlayerWasted", root, 
    function() 
        setTimer(respawn, 1800, 1, source) 
    end 
) 

сделал вторую функцию - respawn.

чем в строчке

repeat until spawnPlayer ( player, -1972.3438+math.random(1,5), 138.147+math.random(5,9), 27.69, 270.0, math.random(9,288), 0, 0) 

заменить "math.random(9,288)" - чтобы при респавне оставался предидущий скин?

Link to comment

el_motoblock, например так:

    addEventHandler("onResourceStart", resourceRoot, 
        function() 
            resetMapInfo() 
            for i,player in ipairs(getElementsByType("player")) do 
                spawn(player) 
            end 
        end 
    ) 
      
    function spawn(player) 
        if not isElement(player) then return end 
        repeat until spawnPlayer ( player, -1972.3438+math.random(1,5), 138.147+math.random(5,9), 27.69, 270.0, math.random(9,288), 0, 0) 
        fadeCamera(player, true) 
        setCameraTarget(player, player) 
        showChat(player, true) 
    end  
  
  function respawn(player, skin) 
     if not isElement(player) then return end 
     repeat until spawnPlayer ( player, -1972.3438+math.random(1,5), 138.147+math.random(5,9), 27.69, 270.0, skin, 0, 0) 
      fadeCamera(player, true) 
     setCameraTarget(player, player) 
     showChat(player, true) 
  end 
      
    addEventHandler("onPlayerJoin", root, 
        function() 
            spawn(source) 
        end 
    ) 
  
addEventHandler("onPlayerWasted", root, 
    function() 
        setTimer(respawn, 1800, 1, source, getElementModel(source)) 
    end 
) 

Но лучше все в одну функцию поместить:

    addEventHandler("onResourceStart", resourceRoot, 
        function() 
            resetMapInfo() 
            for i,player in ipairs(getElementsByType("player")) do 
                spawn(player) 
            end 
        end 
    ) 
      
    function spawn(player, skin) 
        if not isElement(player) then return end 
        repeat until spawnPlayer ( player, -1972.3438+math.random(1,5), 138.147+math.random(5,9), 27.69, 270.0, skin or math.random(9,288), 0, 0) 
        fadeCamera(player, true) 
        setCameraTarget(player, player) 
        showChat(player, true) 
    end     
      
    addEventHandler("onPlayerJoin", root, 
        function() 
            spawn(source) 
        end 
    ) 
      
    addEventHandler("onPlayerWasted", root, 
        function() 
            setTimer(spawn, 1800, 1, source, getElementModel(source)) 
        end 
    ) 

Link to comment
Спасибо за помощь! :D

math.random(9,288

А скины же начинаются от 0

Это наверное он таким образом хотел пропустить не действительные скины, только это тоже не корректно, ибо между 9 и 288 есть номера скинов которые пропущены.. Поэтому надо составить таблицу скинов (https://wiki.multitheftauto.com/wiki/All_Skins_Page) и из неё брать случайный скин.

Получится должно что-то вроде этого:

local skins = 
{ 
-- содержимое из [url=https://wiki.multitheftauto.com/wiki/All_Skins_Page]https://wiki.multitheftauto.com/wiki/All_Skins_Page[/url] 
}; 
  
new_skin = skins[ math.random( 1, #skins ) ]; 
  

Link to comment
Спасибо, сделал функцией

Не понимаю, зачем? Есть оператор конкатенации, зачем делать функцию? Не нужно всё делать как в сампе, это глупость, имхо.

cам не знаю, привычка может быть :D

Link to comment

люди что-то я с деревом непониманию вот я сделал событие при загрузки ресурса

addEventHandler ( "onResourceStart", resource, preload ) 
addEventHandler ( "onResourceStop", resource, presave ) 

а он мне типо поварит что ждёт другое

Bad argument @ 'addEventHandler' [Expected element at argument 2, got resource-data] 
  

ну не хочу я его на рес рут делать чтобы тыркался при загрузки нового ресурса нет нехочу

Link to comment
люди что-то я с деревом непониманию вот я сделал событие при загрузки ресурса
addEventHandler ( "onResourceStart", resource, preload ) 
addEventHandler ( "onResourceStop", resource, presave ) 

а он мне типо поварит что ждёт другое

Bad argument @ 'addEventHandler' [Expected element at argument 2, got resource-data] 
  

ну не хочу я его на рес рут делать чтобы тыркался при загрузки нового ресурса нет нехочу

Чем тебя resourceRoot или эквивалентный ему getResourceRootElement ( ) не устраивает? Нельзя на resource цеплять обработчик.

Link to comment
ну не хочу я его на рес рут делать чтобы тыркался при загрузки нового ресурса нет нехочу

Пишите грамотно! Я вот даже не понял что вы пытались сказать.

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