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


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: PUVer, SirNikolas, Ty3uK  
Форум о Warcraft 3 » Раздел для картостроителей » Вопросы по картостроению » Нельзя носить более одного меча
Нельзя носить более одного меча
InvisibleCatэДата: Понедельник, 16 Апреля 2012, 12:51:50 | Сообщение # 1
3 уровень
Группа: Пользователи
Сообщений: 40
Награды: 0
Репутация: 8
Блокировки:
Как не пробовал такое сделать, не получается. Герой просто выкидывает все предметы. В поиске тоже искал, не нашел. Дайте пожалуйста ссылку или пример.
 

Lucky_EleVeNДата: Понедельник, 16 Апреля 2012, 13:08:22 | Сообщение # 2
6 уровень
Группа: Проверенные
Сообщений: 201
Награды: 0
Репутация: 62
Блокировки:
Вопрос уточни
 

InvisibleCatэДата: Понедельник, 16 Апреля 2012, 13:09:55 | Сообщение # 3
3 уровень
Группа: Пользователи
Сообщений: 40
Награды: 0
Репутация: 8
Блокировки:
Quote (Lucky_EleVeN)
Вопрос уточни

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

vov68Дата: Понедельник, 16 Апреля 2012, 13:19:40 | Сообщение # 4
10 уровень
Группа: Проверенные
Сообщений: 1329
Награды: 3
Блокировки:
я тут одному объяснил, что надо делать проверку по слотам, и если будет два одинаковых меча, то только тогда один удалить.

когда проходит событие - юнит получает предмет, то данный предмет считается уже в слоте. ПОНЯТНО!!!


Зачем делать для других новые карты...
... лучше устроить коту божественный почесон. :)
 

InvisibleCatэДата: Понедельник, 16 Апреля 2012, 13:23:02 | Сообщение # 5
3 уровень
Группа: Пользователи
Сообщений: 40
Награды: 0
Репутация: 8
Блокировки:
Цикл A от 1 до 6
если предмет в слоте A = Мой меч
то удалить предмет
иначе ???

Но, как тогда у героя удалятся все мечи такого типа.

vov68, в твоем посте нету никакого смысла. Я это и так знаю, что когда юнита получил предмет, то он уже есть в слоте.
 

vov68Дата: Понедельник, 16 Апреля 2012, 13:33:00 | Сообщение # 6
10 уровень
Группа: Проверенные
Сообщений: 1329
Награды: 3
Блокировки:
Quote (InvisibleCatэ)
если предмет в слоте A = Мой меч
то удалить предмет

не удалить, а поставить В=В+1
а перед циклом В=0, чтоб шел отсчёт всегда от нуля
и после цикла, если В больше 1, то удалить меч такого-то типа.

тебе ж сказали, что меч уже в слоте... ;) и если их два то один удаляем и возвращаем деньгу. :p


Зачем делать для других новые карты...
... лучше устроить коту божественный почесон. :)


Сообщение отредактировал vov68 - Понедельник, 16 Апреля 2012, 13:34:52
 

InvisibleCatэДата: Понедельник, 16 Апреля 2012, 13:37:07 | Сообщение # 7
3 уровень
Группа: Пользователи
Сообщений: 40
Награды: 0
Репутация: 8
Блокировки:
Так?
Установить Int_A = 0
Цикл A от 1 до 6
если предмет у trig unit в слоте A = Меч(2)
то Установить Int_A = Int_A + 1
удалить предмет в слоте A у trig unit
добавить золото для владелец trig unit 1000 ?
иначе ...
добавить предмет Меч(2) для trig unit
 

vov68Дата: Понедельник, 16 Апреля 2012, 13:53:39 | Сообщение # 8
10 уровень
Группа: Проверенные
Сообщений: 1329
Награды: 3
Блокировки:
немного не так

установить Int_Меч=0
цикл А от 1 до 6
если предмет у манипулирующего юнита в слоте А равен по типу Меч(2)
то, делай - первое - Int_Меч=Int_Меч +1
- второе - если Int_Меч больше 1, то делай - первое - удалить предмет из слота А
- второе - вернуть владельцу манипулирующего юнита золото

меч уже в слоте - зачем его добавлять? %)


Зачем делать для других новые карты...
... лучше устроить коту божественный почесон. :)
 

InvisibleCatэДата: Понедельник, 16 Апреля 2012, 15:15:53 | Сообщение # 9
3 уровень
Группа: Пользователи
Сообщений: 40
Награды: 0
Репутация: 8
Блокировки:
Quote (vov68)
меч уже в слоте - зачем его добавлять?

Потому что я все удалил, и добавил один.

Попробовал сделать так, игра зависла при подборе одного предмета. Создало около 999999999999999999 предметов.

Добавлено (16 Апрель 2012, 13:58:23)
---------------------------------------------
Скиньте кто-нибудь наработку пожалуйста.

Добавлено (16 Апрель 2012, 15:15:53)
---------------------------------------------
up.

 

HexingДата: Понедельник, 16 Апреля 2012, 17:24:43 | Сообщение # 10
10 уровень
Группа: Проверенные
Сообщений: 1645
Награды: 1
Репутация: 432
Блокировки:
ok, let's look at jass code example:
Code

callback onUnitPickupItem('item') {
      unit u = GetTriggerUnit();
      int it = GetItemTypeId(GetManipulatedItem());
      item i2;
      int i=0;
      loop {
          i2 = UnitItemInSlot(u, i);
          if(i2!=i1) {
              if(GetItemTypeId(i2) == it) {
                  UnitDropItem(u, i2);
                  i=5;
                  //break = дурной тон
              }
          }
          i++;
          exitwhen(i==6);
      }
      u = null;
      i2 = null;
}


--лучше так--

Code

callback onUnitPickupItem('item') {
      unit u = GetTriggerUnit();
      item i2;
      int i=0;
      loop {
          i2 = UnitItemInSlot(u, i);
          if(i2!=i1) {
              if(GetItemTypeId(i2) == 'item') {
                  UnitDropItem(u, i2);
                  i=5;
                  //break = дурной тон
              }
          }
          i++;
          exitwhen(i==6);
      }
      u = null;
      i2 = null;
}


вместо 'item' - равкод предмета(твоего меча), требуется cjass, если нужно перепишу на jass2, гуи делать не буду, это к гуишникам <_<




Сообщение отредактировал Hexing - Понедельник, 16 Апреля 2012, 17:26:19
 

KartohaДата: Понедельник, 16 Апреля 2012, 17:33:31 | Сообщение # 11
10 уровень
Группа: Ветераны
Сообщений: 2851
Награды: 1
Блокировки:
InvisibleCatэ, если не понятен JASS код, можешь посмотреть наработку на GUI: http://rghost.ru/37613105.
 

InvisibleCatэДата: Понедельник, 16 Апреля 2012, 19:55:52 | Сообщение # 12
3 уровень
Группа: Пользователи
Сообщений: 40
Награды: 0
Репутация: 8
Блокировки:
Kartoha, спасибо. Единственный баг, когда предмет собираешь несколько раз подряд, то бывает по два остаются.
 

KartohaДата: Понедельник, 16 Апреля 2012, 22:08:13 | Сообщение # 13
10 уровень
Группа: Ветераны
Сообщений: 2851
Награды: 1
Блокировки:
InvisibleCatэ, странно, у меня нет такого бага. Дай ка скрин этого триггера со своей карты. Или у тебя баг в моей?
 

Rez23Дата: Вторник, 17 Апреля 2012, 15:02:16 | Сообщение # 14
1 уровень
Группа: Пользователи
Сообщений: 3
Награды: 0
Репутация: 0
Блокировки:
Подскажите пожалуйста триггер, чтобы герой мог таскать с собой только одно оружие, и если он пытается подобрать что-то другое, была бы ошибка мол у героя уже есть оружие или как то так)
 

Форум о Warcraft 3 » Раздел для картостроителей » Вопросы по картостроению » Нельзя носить более одного меча
  • Страница 1 из 1
  • 1
Поиск:

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