Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

UoKit.com Форумы _ Вопросы по RunUO _ Помогите пожалуйста

Автор: kirill633 19.2.2016, 16:54

Есть несколько вопросов 1) подскажите как сделать к примеру зеленое кольцо арт что бы при выпадении оно рандомно давало к примеру 6,7,8 декс. 2) можно ли как то изменить название города в паблик гейте не трогая клиент?

Или может не менять название а как сделать новую точку я сделал как бы все есть работает но я не знаю как сделать название городу так как там все названия через код

3) как сделать что бы анатомия давала к дэмаге при ударом абилки?

К примеру 100 анатом +1 110 + 5 и 120+20 демаги

Автор: kirill633 19.2.2016, 18:29

4) что бы на артефакте к примеру на тотеме рандомно выпадало 15 хита и 15 дефа

Автор: Juzzver 20.2.2016, 18:35

1) Открываешь скрипт, ищешь где там накладывается 8 дексы.
И вместо числа 8, пишешь: Utility.RandomMinMax(6,8);

2) Чтобы писать название городов текстом, а не брать их из клилока, потребуется создать еще один конструктор для класса PMEntry, который в аргументы будет принимать string , вместо int. Т.е.:
Добавляется поле: private string m_CityName;
Добавляется конструктор:

Код
        public PMEntry( Point3D loc, string city )
        {
            m_Location = loc;
            m_CityName = city;
        }

что позволяет тебе делать запись вида:
Код
new PMEntry( new Point3D( 1438, 1687, 20 ), "Britain Bank" ), // сработает твой новый конструктор
new PMEntry( new Point3D( 4467, 1283, 5 ), 1012003 ) // сработает старый конструктор.


3) Анатоми я и так по умолчанию повышает урон. Если делать еще доп. бонуса для абилок, то заходишь в нужные тебе скрипты с абилками, ищешь формулу, которая отвечает за расчет наносимого дамага, плюсуешь к ней анатомию. К примеру: damage = 20 + (from.Skills[SkillName.Anatomy].Value / 20);
Если будет 100 анатомии, то бонус с неё выйдет = 5 доп дамага.

4) В конструкторе тотема пишешь:
Код
if (Utility.RandomBool())
Attributes.AttackChance = 15;
else
Attributes.DefenceChance = 15;

Автор: kirill633 21.2.2016, 16:17

Большое спасибо все работает но появился ещё вопрос думал смогу сам исходя из 4 вопроса но не вышло можно сделать так к примеру есть декс, стр, инт, деф, хит и сделать так что бы из этих 4 свойств или более рандомно добавлялось 2 или 3

Автор: Juzzver 22.2.2016, 1:01

Цитата
Большое спасибо все работает но появился ещё вопрос думал смогу сам исходя из 4 вопроса но не вышло можно сделать так к примеру есть декс, стр, инт, деф, хит и сделать так что бы из этих 4 свойств или более рандомно добавлялось 2 или 3


Код
switch(Utility.Random(3))
{
case 0: Attributes.BonusStr = 5; break;
case 1: Attributes.BonusDex = 5; break;
case 2: Attributes.BonusInt = 5; break;
case 3: еще что-то...; break;
}


рандом будет выпадать в диапазоне от 0 до 3, в зависимости от чего будет срабатывать тот или иной кейс с параметрами.

Автор: kirill633 22.2.2016, 2:00

Спасибо тоже пригодится но это немного не то я имел в веду что бы на вещь из этих свойств добавило сразу два свойства

Спасибо тоже пригодится но это немного не то я имел в веду что бы на вещь из этих свойств добавило сразу два свойства

Автор: Juzzver 22.2.2016, 4:23

Цитата
Спасибо тоже пригодится но это немного не то я имел в веду что бы на вещь из этих свойств добавило сразу два свойства

Либо так:
Код
if (Utility.RandomBool())
{
Attributes.AttackChance = 15;
Attributes.BonusStr = 5;
}
else
{
Attributes.DefenceChance = 15;
Attributes.BonusStr = 5;
}


Либо так:

Код

switch(Utility.Random(3))
{
case 0:
{
Attributes.BonusStr = 5;
Attributes.BonusDex = 5;
} break;

case 1: { аналогично...  }; break;
case 2: { аналогично...  } break;
case 3: { аналогично...  } break;
}

Автор: Aimed 22.2.2016, 21:51

кейс 3 при Random(3) не сработает. Сам же пишешь что от 0 и до 3 =), а вот 0 будет срабатывать.

Юззверь, Не лень тебе на такие вопросы отвечать???

Автор: Juzzver 23.2.2016, 19:37

Цитата
кейс 3 при Random(3) не сработает. Сам же пишешь что от 0 и до 3 =), а вот 0 будет срабатывать.

Да, ты прав, спасибо.
Цитата
Юззверь, Не лень тебе на такие вопросы отвечать???

Других ведь нет smile.gif

Русская версия Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)