Проверка на убийство игрока.

iframe

Известный
Автор темы
40
11
Привет, подскажите, как проверить, убил ли я игрока?
 

MISHAAAAAA4

Потрачен
109
48
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.

iframe

Известный
Автор темы
40
11
CLEO:
0AD2: 4@ = player $PLAYER_CHAR targeted_actor // получения хэндл игрока, взятого в прицел - записывание в переменную 4@

Не, я хочу сделать так, чтобы я просто убил кого-то, и мне на экране вылезло +kill. Вот как я хочу.
Я не хочу принимать его имя, просто чтобы только выводилось +kill.
 
Последнее редактирование:

MISHAAAAAA4

Потрачен
109
48
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Не, я хочу сделать так, чтобы я просто убил кого-то, и мне на экране вылезло +kill. Вот как я хочу.
а, ну тогда просто делай проверку на хэндл и проверку на килл, после чего вывод текста

CLEO:
if 0ad2: 4@ = player $PLAYER_CHAR targeted_actor
  then
  0ad2: 4@ = player $PLAYER_CHAR targeted_actor
if 05e2: $PLAYER_ACTOR kill_actor 4@
  then
  print "+kill" 1337
  end
 end
end
 
  • Нравится
Реакции: noob213

iframe

Известный
Автор темы
40
11
а, ну тогда просто делай проверку на хэндл и проверку на килл, после чего вывод текста

CLEO:
if 0ad2: 4@ = player $PLAYER_CHAR targeted_actor
  then
  0ad2: 4@ = player $PLAYER_CHAR targeted_actor
if 05e2: $PLAYER_ACTOR kill_actor 4@
  then
  print "+kill" 1337
  end
 end
end

Странно. Когда я целюсь на кого-то, включается так называемый "Aim". Актёр начинает за ним следовать, а когда видит, присидает и начинает по нему стрелять.

И Актёр начинает себя вести, как НПС. После убийства, анимация разговора начинается. @MISHAAAAAA4

 

MISHAAAAAA4

Потрачен
109
48
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Странно. Когда я целюсь на кого-то, включается так называемый "Aim". Актёр начинает за ним следовать, а когда видит, присидает и начинает по нему стрелять.

И Актёр начинает себя вести, как НПС. После убийства, анимация разговора начинается. @MISHAAAAAA4

хз шо у тя там, у меня всё работает
дай фулл код
 

iframe

Известный
Автор темы
40
11
хз шо у тя там, у меня всё работает
дай фулл код

C++:
{$CLEO}
0000: NOP



// === MAIN === //

while true
wait 0
if 0ad2: 4@ = player $PLAYER_CHAR targeted_actor
  then
  0ad2: 4@ = player $PLAYER_CHAR targeted_actor
if 05e2: $PLAYER_ACTOR kill_actor 4@
  then
  print"+kill" 1337
  end
 end
end
 

MISHAAAAAA4

Потрачен
109
48
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.

MISHAAAAAA4

Потрачен
109
48
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.

astap_

Известный
Всефорумный модератор
626
597
Вот так правильнее
CLEO:
{$CLEO}
{$INCLUDE SF}
0000:

THREAD 'astap'

WHILE NOT SAMP.Available()
    0001: 0
END
0BE3: raknet setup_incoming_rpc_hook @HOOK
0BDE: pause_thread 0

:HOOK
0BE5: raknet 0@ = get_hook_param PARAM_PACKETID
    IF 0@ == RPC_SCRDEATHMESSAGE
    THEN
        0BE5: raknet 0@ = get_hook_param PARAM_BITSTREAM
        0B2B: samp 2@ = get_player_id_by_actor_handle $PLAYER_ACTOR
    
        0BE7: raknet 1@ = bit_stream_read 0@ type 2 // killer
        IF 003B:   1@ == 2@  // (int)
        THEN
            0BE7: raknet 3@ = bit_stream_read 0@ type 2 // dead id
            ALLOC 4@ 24
            0B36: samp 4@ = get_player_nickname 3@
            CHATMSG "Вы убили игрока: {FFFFFF}%s [%i]" 0xffcc00 4@ 3@
            FREE 4@
        END
    END                        
0BE0: raknet hook_ret TRUE
 
Последнее редактирование:
  • Нравится
Реакции: iframe

iframe

Известный
Автор темы
40
11
предупреждаю, способ дурацкий, но на 100% рабочий
CLEO:
{$CLEO}
{$INCLUDE SF}
0000:

THREAD 'astap'

WHILE NOT SAMP.Available()
    0001: 0
END
0BE1: raknet setup_outcoming_rpc_hook @HOOK
0BDE: pause_thread 0

:HOOK
0BE5: raknet 0@ = get_hook_param PARAM_PACKETID
    IF 0@ == RPC_GIVETAKEDAMAGE
    THEN
        0BE5: raknet 0@ = get_hook_param PARAM_BITSTREAM
     
        0BE7: raknet 1@ = bit_stream_read 0@ type 1 // give/take
        IF 1@ == FALSE
        THEN
            0BE7: raknet 2@ = bit_stream_read 0@ type 2 // id
            IF 8B5C:  samp is_not_player 2@ paused
            THEN
                0BE7: raknet 4@ = bit_stream_read 0@ type 3 // amount 
                0B25: samp 3@ = get_player_health 2@
                0092: 6@ = float 4@ to_integer
                IF 002D:   6@ >= 3@  // (int)
                THEN
                    ALLOC 5@ 24
                    0B36: samp 5@ = get_player_nickname 2@
                    CHATMSG "Вы убили игрока: {FFFFFF}%s[%i]" 0xffcc00 5@ 2@
                    FREE 5@
                END
            END     
        END
    END                             
0BE0: raknet hook_ret TRUE

Фига себе, спасибо. Но я хотел немного другое.

Ладно, всем спасибо!

@MISHAAAAAA4, особенно тебе, что старался мне помочь! Спасибо Огромное.
 

iframe

Известный
Автор темы
40
11
ну я понял. Вместо CHATMSG пишешь SAY "+kill"

Д не, я хотел по другому, но и за это спасибо.

Просто в голове не переваривается, как вы так можете. Хочу тоже научиться также, но не очень получается.