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


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: PUVer, SirNikolas, Ty3uK  
[Вопрос] Дроп нескольких вещей с определённым шансом
ZeromCrouferДата: Воскресенье, 22 Июня 2014, 18:53:00 | Сообщение # 1
7 уровень
Группа: Проверенные
Сообщений: 480
Награды: 0
Репутация: 113
Блокировки:
Вообщем нужно чтобы с шансом 50% падала монета и с 25% вязанка дров и 10% на дроп золотого слитка (дроп третьего предмета еще не ставил, на примере обьяснить)
Монеты падают, вязанка дров - вообще нет, что тут не так



 

SirNikolasДата: Воскресенье, 22 Июня 2014, 18:57:42 | Сообщение # 2
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
Могут ли выпасть несколько предметов одновременно?

 

ZeromCrouferДата: Воскресенье, 22 Июня 2014, 18:59:56 | Сообщение # 3
7 уровень
Группа: Проверенные
Сообщений: 480
Награды: 0
Репутация: 113
Блокировки:
SirNikolas Да, могут.
 

SirNikolasДата: Воскресенье, 22 Июня 2014, 19:55:02 | Сообщение # 4
Группа: Модераторы
Сообщений: 6729
Награды: 1
Репутация: 1867
Блокировки:
Play "morph" animation
Set Flag = False
If
__Random number between 0 and 1 == 0
Then
__Create Счастливая монетка
__Set Flag = True
If
__Random number between 0 and 3 == 0
Then
__Create Вязанка дров
__Set Flag = True
If
__Random number between 0 and 9 == 0
Then
__Create Золотой слиток
__Set Flag = True
If
__Flag
Then
__Play sound

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


 

MelodiaДата: Воскресенье, 22 Июня 2014, 20:36:03 | Сообщение # 5
Группа: Проверенные
Сообщений: 8026
Награды: 5
Репутация: 5051
Блокировки:
муть какая то в 1 опмте, что за странная переменная?

CM wars 1.15
ЭПОХА АНИМИРОВАННЫХ ТРИГГИРАФ ПРЕШЛА
 

ZeromCrouferДата: Воскресенье, 22 Июня 2014, 20:57:20 | Сообщение # 6
7 уровень
Группа: Проверенные
Сообщений: 480
Награды: 0
Репутация: 113
Блокировки:
Melodia целочисленная массив, каждый пункт идет как за 25% шанса дропа
 

MelodiaДата: Воскресенье, 22 Июня 2014, 21:07:04 | Сообщение # 7
Группа: Проверенные
Сообщений: 8026
Награды: 5
Репутация: 5051
Блокировки:
а я 1 скрин не посмотрел :D
а почему не задавать обычную перменную случайному числу и не сравнивать её?


CM wars 1.15
ЭПОХА АНИМИРОВАННЫХ ТРИГГИРАФ ПРЕШЛА
 

ZeromCrouferДата: Воскресенье, 22 Июня 2014, 22:36:50 | Сообщение # 8
7 уровень
Группа: Проверенные
Сообщений: 480
Награды: 0
Репутация: 113
Блокировки:
Melodia уже делал так, но толк тот же - падает только один предмет.
А то что написал SirNikolas я не пойдму некоторых выражений чтобы перевести мне это в гуи язык.

Set Flag = False , а зачем проверка логической?

Random number between 0 and 1 == 0 - случайный номер от 0 до 1 равен 0 , я всё правильно понял?

SirNikolas за звук совет спасибо ;) , а вот в остальном пытаюсь вот разобратся сейчас ...


Сообщение отредактировал ZeromCroufer - Воскресенье, 22 Июня 2014, 23:35:49
 

OverkillsДата: Понедельник, 23 Июня 2014, 00:33:41 | Сообщение # 9
Группа: Проверенные
Сообщений: 1785
Награды: 0
Репутация: 880
Блокировки:
Теперь понятно почему не падает вязанка дров.

Ну, вот давай представим, что переменная "Chest_Drop_Chanse[Случайное 1-4]" равна "1" (т.е. наше 25%), тогда 1-е условие будет выполняться(т.е. счастливая монета), а вот 2-е нет. Потому в первом условии стоит меньше или равно 2, а поскольку 1 - это меньше, чем 2, то первое условие выполнится, а 2-е - нет, потому что 2-е условие рассчитано на то, что число будет либо 3, либо 4.

Вообщем, переделай.

Добавлено (23 Июня 2014, 00:23:16)
---------------------------------------------
И да, делай как сказал Николас.

Добавлено (23 Июня 2014, 00:30:59)
---------------------------------------------
Вот то, что сказал Николас.
На переменную "Loc" и действие "Custom Script" не обращай внимания.
Нужные действия с анимацией добавишь сам.

Добавлено (23 Июня 2014, 00:31:49)
---------------------------------------------
Ой, я там использовал переменную "Flag", так как начитался пост Николаса. Она там не нужна, на нее обращать внимания тоже не стоит.

Добавлено (23 Июня 2014, 00:33:41)
---------------------------------------------

Цитата ZeromCroufer ()
Set Flag = False , а зачем проверка логической?

Это для того, чтобы анимация была только тогда, когда выпадет нужная вещь. Если же нет - убираем проверку логической переменной и ставим нужное действие анимации первым действием в триггере.


 

ReddalerznДата: Понедельник, 23 Июня 2014, 08:41:02 | Сообщение # 10
4 уровень
Группа: Проверенные
Сообщений: 89
Награды: 0
Репутация: 4
Блокировки:
Присвой точку для Chest_drop самым первым действием в триггере, иначе у тебя в 1ом "если" точка присваивается, а во втором нет. В результате вязанка спавнится, но далекоооо...

Сообщение отредактировал Reddalerzn - Понедельник, 23 Июня 2014, 08:45:29
 

ZeromCrouferДата: Понедельник, 23 Июня 2014, 12:10:37 | Сообщение # 11
7 уровень
Группа: Проверенные
Сообщений: 480
Награды: 0
Репутация: 113
Блокировки:
Overkills Спасибо большое за наработку и отдельное за пояснение
Set Flag = False да как по мне это ненужно, сундук открыт ключ ипользован, а сундук может оказатся и просто пустой когда откроешь

Reddalerzn Кстати точно подметил! а то я сделал всё как написано а дроп всё равно 2й и 3й вещей нету, потом переставил Chest_drop в начало действий и вуаля! ))

SirNikolas Еще раз отдельное спасибо за то, что есть такие люди на форуме

Кстати, всем трём + в репутацию за помощь :p

Долго просто мучался с этим, решил написать сюда и рад что помогли
 

  • Страница 1 из 1
  • 1
Поиск:

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