Сейчас 07:34:02 Вторник, 30 апреля, 2024 год
[ x ] Главная ⇒ Форум ⇐ RSS Файлы Cтатьи Картинки В о й т и   или   з а р е г и с т р и р о в а т ь с я


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 2 из 2
  • «
  • 1
  • 2
Модератор форума: PUVer, SirNikolas, Ty3uK  
Форум о Warcraft 3 » Раздел для картостроителей » Вопросы по картостроению » Действие повторяется два раза
Действие повторяется два раза
KartohaДата: Четверг, 24 Февраля 2011, 16:15:43 | Сообщение # 26
10 уровень
Группа: Ветераны
Сообщений: 2851
Награды: 1
Блокировки:
lawson, у меня есть версия почему это происходит. Попробуй изменить функцию InitTrig_HeroUserBuy на:
Code
function InitTrig_HeroUserBuy takes nothing returns nothing  
local trigger tt
set gg_trg_HeroUserBuy = CreateTrigger()
set tt = gg_trg_UserBuy
call TriggerRegisterAnyUnitEventBJ(tt, EVENT_PLAYER_UNIT_SELL)  
call TriggerAddCondition(tt, Condition( function Trig_HeroUserBuy_Conditions ) )  
call TriggerAddAction(tt, function Trig_HeroUserBuy_Actions )  
endfunction

Если все получится, объясню свою версию подробно, пока просто попробуй сделать это.
 

lawsonДата: Четверг, 24 Февраля 2011, 16:42:12 | Сообщение # 27
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
Ща попробую. Хотя при чем тут это?!

Добавлено (24-02-2011, 16:42)
---------------------------------------------
не совершенно не помогло. Да не это здесь не причем. Действия не зависят от названия триггера.


Nic nie wiem bo mam chuj.
редактирую посты! ВСЕ!
 

KartohaДата: Четверг, 24 Февраля 2011, 16:48:59 | Сообщение # 28
10 уровень
Группа: Ветераны
Сообщений: 2851
Награды: 1
Блокировки:
lawson, причем тут название, нету действия set gg_trg_название триггера которое присутствует в любом триггере, покажи как ты сделал.
 

lawsonДата: Четверг, 24 Февраля 2011, 16:56:33 | Сообщение # 29
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
Вот так и сделал.


Nic nie wiem bo mam chuj.
редактирую посты! ВСЕ!
 

Manko_OДата: Четверг, 24 Февраля 2011, 18:09:53 | Сообщение # 30
7 уровень
Группа: Проверенные
Сообщений: 296
Награды: 0
Репутация: 23
Блокировки:
Вставил к себе твой код,пишет 1 раз. Единственное не понял что вот это
Code
set PlayerHero[GetPlayerId(p)] = u
 

lawsonДата: Четверг, 24 Февраля 2011, 19:07:14 | Сообщение # 31
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
Quote (Manko_O)
пишет 1 раз

Ты видел скрины? я сам не понимаю что случилось

set PlayerHero[GetPlayerId(p)] = u - это для того чтоб записать героя в перменную чтоб потом использовать юнитов в модах.


Nic nie wiem bo mam chuj.
редактирую посты! ВСЕ!
 

RehanДата: Четверг, 24 Февраля 2011, 23:35:24 | Сообщение # 32
6 уровень
Группа: Проверенные
Сообщений: 247
Награды: 0
Репутация: 79
Блокировки:
lawson, не уж-то самые простые действия в игре, которые срабатывают лишь по несколько раз за всё время обязательно нужно писать на jass?
Мы в нём не разбираемся но вполне очевидно, что дело в двойном срабатывании действия запуска.
Можешь сделать таким образом - если значение переменной игрока стоит по умолчанию - продолжить выполнения кода, если переменная игрока не по умолчанию - остановить выполнение кода. Таким образом у тебя будет предохранитель, не позволяющий действиям выполняться по несколько раз подряд на одного игрока.

Добавлено (24-02-2011, 23:35)
---------------------------------------------
Таким образом когда код будет выполняться в первый раз - значение переменной [индекс = id игрока] примет значение, отличное от значения по умолчанию, после чего код запуститься во второй раз, он увидит что переменная с индексом id игрока уже установлена и он прекратить дальнейшее выполнение действий триггера.


Требуются тестеры, обращайтесь.
 

lawsonДата: Пятница, 25 Февраля 2011, 12:01:17 | Сообщение # 33
Группа: Проверенные
Сообщений: 3482
Награды: 0
Репутация: 974
Блокировки:
Quote (Rehan)
и он прекратить дальнейшее выполнение действий триггера

Это называеться - мы не ищим легкий путей!
нет это бред к тому же уже все сделал.


Nic nie wiem bo mam chuj.
редактирую посты! ВСЕ!
 

RehanДата: Пятница, 25 Февраля 2011, 13:01:12 | Сообщение # 34
6 уровень
Группа: Проверенные
Сообщений: 247
Награды: 0
Репутация: 79
Блокировки:
Quote (lawson)
Это называеться - мы не ищим легкий путей! нет это бред к тому же уже все сделал.

Это ты бред, и если для тебя это нелёгкий путь то ты бред дважды. В дальнейшем следи за своим языком.


Требуются тестеры, обращайтесь.
 

Форум о Warcraft 3 » Раздел для картостроителей » Вопросы по картостроению » Действие повторяется два раза
  • Страница 2 из 2
  • «
  • 1
  • 2
Поиск:

Copyright © 2006 - 2024 Warcraft3FT.info При копировании материалов c сайта ставьте, пожалуйста, активную обратную ссылку на нас • Design by gReeB04ki ©
Хостинг от uCoz