Jump to content

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


Recommended Posts

кусков там мало, поэтому из них все это. Но само просто сделать все эти кадры анимации одной картинкой, а потом просто рисовать разные куски картинки.

cпасибо :)

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

Link to comment

Окай.

function trolltest ( ) 
wantedlevel = getPlayerWantedLevel( source ) 
end 
  
leveltimer = setTimer( trolltest , 5000, 0 ) 
  
  
function setit ( ) 
setPlayerWantedLevel( source, wantedlevel ) 
end 
addEventHandler("onPlayerWasted", getRootElement(), setit) 

Bad Argument(setPlayerWantedLevel)

+ Работать будет?

Link to comment

wantedlevel я так понял глобальная переменная, которая изначально равна nil, поэтому если событие onPlayerWasted сработает раньше таймера где объявляется wantedlevel, то получишь такую ошибку.

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

При спавне игрока ( onPlayerSpawn ) считываешь данные ( getAccountData ) и делаешь с ними что хочешь.

В качестве примера:

function AlterWantedLevel( pPlayer, iLevel ) 
    local pAccount = getPlayerAccount( pPlayer ); 
     
    assert( pAccount and not isGuestAccount( pAccount ), "invalid account" ); 
     
    return setAccountData( pAccount, "wanted_level", iLevel ) and setPlayerWantedLevel( pPlayer, iLevel ); 
end 
  
addEventHandler( "onPlayerSpawn", root, 
    function() 
        local pAccount = getPlayerAccount( source ); 
         
        assert( pAccount and not isGuestAccount( pAccount ), "invalid account" ); 
         
        setPlayerWantedLevel( source, tonumber( getAccountData( pAccount, "wanted_level" ) ) or 0 ); 
    end 
); 
  
addEventHandler( "onPlayerWasted", root,  
    function( iTotalAmmo, pKiller, iKillerWeapon, iBodypart, bStealth ) 
        AlterWantedLevel( pKiller, 1 ); 
    end 
); 

Link to comment
function AlterWantedLevel( pPlayer, iLevel ) 
    local pAccount = getPlayerAccount( pPlayer ); 
     
    assert( pAccount and not isGuestAccount( pAccount ), "invalid account" ); 
     
    return setAccountData( pAccount, "wanted_level", iLevel ) and setPlayerWantedLevel( pPlayer, iLevel ); 
end 
  
addEventHandler( "onPlayerSpawn", root, 
    function() 
        local pAccount = getPlayerAccount( source ); 
         
        assert( pAccount and not isGuestAccount( pAccount ), "invalid account" ); 
         
        setPlayerWantedLevel( source, tonumber( getAccountData( pAccount, "wanted_level" ) ) or 0 ); 
    end 
); 
  
addEventHandler( "onPlayerWasted", root,  
    function( iTotalAmmo, pKiller, iKillerWeapon, iBodypart, bStealth ) 
        AlterWantedLevel( pKiller, 1 ); 
    end 
); 

Как-то всё трудно :D

26,33-Bad Argument

Всё ОК.

Link to comment
function bankrob ( hitPlayer, MatchingDimension ) 
  
    if getElementType( hitPlayer ) == 'player' then 
  
        if source == robmarker then 
  
            if isTimer( robbank ) then 
  
                outputChatBox( "Bank already robbed", hitPlayer, 255, 255, 0)  
  
            end  
  
        else 
  
            outputChatBox ( "****PRESS N TO ROB!.****", hitPlayer, 255, 0, 0, false ) 
  
            bindKey ( hitPlayer,"n", "down",  
  
                function( player ) 
  
                    if isTimer( robbank ) then  
  
                        outputChatBox ( "ERROR", player, 255, 0, 0, false ) 
  
                    else 
  
                        outputChatBox ( "BANK ROBBERY!PROTECT THE ROBBER!", root, 255, 0, 0, false ) 
  
                        setPlayerWantedLevel ( player, 4 ) 
  
                        robbank = setTimer( robb, 10000, 1, player ) 
  
                        
                       robbank1 = setTimer ( bankrob, 10000, 1, player) 
                    end 
  
                end 
  
            )        
  
        end 
  
    end  
  
end 
  
addEventHandler( "onMarkerHit", robmarker, bankrob ) 

Вот,собсна,не работает.Дебаг молчит.

Маркер создаётся,Dimension и Interior меняется.

Link to comment
Вручную как сапёр проверь каждую строку ( хоть это и звучит глупо но это действено ) через функции outputChatBox/outputDebugString и т.п.

Ты уже сам поймёшь где у тебя чё не сходится.

Link to comment
  • Scripting Moderators
Мне что делать не фиг? О_О

Как Я понял-вы не можете помочь,ну ладно.

Трудно добавить в код outputChatBox/outputDebugString и посмотреть, отображается в чате/дебаге текст или нет? pokerface.png

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