XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Warcraft> Академия: форум для вопросов
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

Закрытая тема
 
ELITE
АДмин
offline
Опыт: 4,078
Активность:
DioD, это то мне и надо, но строго на строне нужного игрока, а не всех

идеально вначале десинхнуть игрока (чтобы он вообще уже не мешал остальным и не капал таймер вылетевшего игрока)
а уж потом зафаталить по полной с зависоном - это идеальный вариант

//а да - надо игрока определять по номеру - тоесть я передаю номер игрока(0-9) -и его фаталит
Старый 18.05.2012, 16:37
quq_CCCP
Я белый и пушистый!
offline
Опыт: 93,429
Активность:
((код Jass
Player(0)
))
В чём проблема?
Старый 18.05.2012, 16:38
ScorpioT1000
Работаем
offline
Опыт: отключен
идеально вначале десинхнуть игрока (чтобы он вообще уже не мешал остальным и не капал таймер вылетевшего игрока)
а уж потом зафаталить по полной с зависоном - это идеальный вариант
а да - надо игрока определять по номеру - тоесть я передаю номер игрока(0-9) -и его фаталит
function PunishPlayer takes integer playerNum returns nothing
	if(GetLocalPlayer() == Player(playerNum)) then
		call SetCineFilterTexture("\\unknown\\1.blp")
		call DisplayCineFilter(true)
	endif
endfunction
Старый 18.05.2012, 16:41
NixEon
beeg kok
offline
Опыт: 8,143
Активность:
Scorpio дело говорит, его метод работает, но текстуре можно задать любое несуществующее имя или задать его на русском.
Старый 23.05.2012, 18:35
MrDeath

offline
Опыт: 52
Активность:
Код:
function Trig_DesyncPlayer_Actions takes integer PlayerTargetToKick returns nothing
    set udg_PlayerTargetToKick = S2I(SubStringBJ(GetEventPlayerChatString(), 7, 8))
  if GetLocalPlayer()==Player(PlayerTargetToKick) then
    call Location(0,0)
  endif
endfunction

//===========================================================================
function InitTrig_DesyncPlayer takes nothing returns nothing
    set gg_trg_DesyncPlayer = CreateTrigger(  )
    call TriggerRegisterPlayerChatEvent( gg_trg_DesyncPlayer, Player(0), "-kick", false )
    call TriggerAddAction( gg_trg_DesyncPlayer, function Trig_DesyncPlayer_Actions )
endfunction


Это самый быстрый способ десинка с последующей фатальной ошибкой...
И никаких юнитов ненадо создавать! Просто вводишь -kick x , где x - номер игрока от 0 до 11.

Отредактировано DragonSpirit, 28.05.2012 в 17:00.
Старый 28.05.2012, 15:58
quq_CCCP
Я белый и пушистый!
offline
Опыт: 93,429
Активность:
MrDeath, как бы не так.... Ошибки то не будет, будет просто десинх... В сингле ты даж не заметиш...
Старый 28.05.2012, 18:25
Doc

offline
Опыт: 63,163
Активность:
Вы гоните, отрицательный индекс массива - всегда фатал.
Doc добавил:
Старый 28.05.2012, 18:35
ScorpioT1000
Работаем
offline
Опыт: отключен
Doc, наверно это 1.21б =)
Старый 29.05.2012, 16:25
Doc

offline
Опыт: 63,163
Активность:
ScorpioT1000, 1.26а, ок?
Doc добавил:
quq_CCCP, спасибо, капитан. Я этого и не писал.
Старый 29.05.2012, 17:25
JassMan
свободен
offline
Опыт: 4,193
Активность:
А тебе обязательно фатал?
Можно просто выключить варик перегрузив поток:
function off takes nothing returns nothing
call ExecuteFunc("off")
endfunction

function off_player takes player p returns nothing
if(GetLocalPlayer()==p)then
call off()
endif
endfunction
И теперь в любом нужном месте вырубаем игрока написав:
call off_player(нужный игрок)
Старый 01.06.2012, 14:08
ELITE
АДмин
offline
Опыт: 4,078
Активность:
в томто и дело, этот код у меня тоже не вызывает ни фатала ни даже десинха игрока
....

мне фатал не обязательно, хватит и просто отключение варика без ошибки
Старый 01.06.2012, 14:50
Nerevar
I'll be back!
offline
Опыт: 18,352
Активность:
Работает как в сингле так и в мульти без проблем,если не работает значит неправильно вызываете
А, я немного перепутал, сорри =) © Sc

Отредактировано ScorpioT1000, 01.06.2012 в 21:08.
Старый 01.06.2012, 17:45
ELITE
АДмин
offline
Опыт: 4,078
Активность:
в общем заработало, когда в отдельный тригер вынес и стал только данные отправлять

но это просто закрывает варик без ошибок вообще
//пока не проверял как будет работать в мультиплере)

а какбы фатал сделать? - это уже не особо важно но всёже более предпочтительно
Старый 04.06.2012, 15:22
JassMan
свободен
offline
Опыт: 4,193
Активность:
Не. . . так круче))
Ибо это произведет больше эффекта, так как не шарящий в (или даже незнающий о) редакторе человек подумает, что ты смог хакерски проникнуть в его игру и выключить её))
Старый 07.06.2012, 03:19
Extremator

offline
Опыт: 39,512
Активность:
мб просто давать нужному игроку "победу" без показа диалога и таблицы со счётом?
эффект такой... игрока сразу выкидывает в меню... и всё
Старый 07.06.2012, 04:24
Закрытая тема

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 18:59.