

KS
#42
Отправлено 28 August 2014 - 00:06
1.Как запилить чтобы это производилось само собой
3.Как сделать проверку на достижение цели в Walk_To?
#43
Отправлено 28 August 2014 - 00:19
2. Можешь заставить его выбирать рандомное направление и делать рандомное количество шагов. Например так: "сделай rand(3,6) шагов в любом направлении, goto 1"
3. if (target_turf = walker.loc)......
#44
Отправлено 28 August 2014 - 00:41
Еще 1 вопрос, как сделать одноразовые Verb ?
#46
Отправлено 30 August 2014 - 21:38
var/hp = 50
var/manna = 100
name = "Легионер"
Как заспавнить этого же легионера, но с увеличенным ХП и другим name?
#47
Отправлено 30 August 2014 - 21:49
В синтаксисе у процессов есть СКОБКИ "( )".
В них пишутся аргументы.
При объявлении процесса можно в скобках var'ать свои аргументы.
Например так
/mob/legioner
New(loc, var/HP, var/Name)
..()
hp = hp; name = Name
#48
Отправлено 30 August 2014 - 22:20
Jarlo (30 August 2014 - 21:49) писал:
В синтаксисе у процессов есть СКОБКИ "( )".
В них пишутся аргументы.
При объявлении процесса можно в скобках var'ать свои аргументы.
Например так
/mob/legioner
New(loc, var/HP, var/Name)
..()
hp = hp; name = Name
#49
Отправлено 30 August 2014 - 23:16
#50
Отправлено 31 August 2014 - 01:09
#51
Отправлено 31 August 2014 - 01:51
Поэтому сразу парочка реквестов.
1- Как можно сделать НПС торговца? Сама суть, можно без кода
2- Стоит ли разделять металлы на железо\медь и прочее?
3- Наложение спрайтов друг на друга. (Не обязательно, в F1 вроде бы расписано понятно)
4- как сделать смерть и респавн: через определенное время или через определенного NPC?
6- Подкиньте идеи различной магии.
#52
Отправлено 04 September 2014 - 20:25
2. Стоит.
3. Оверлеи. В Ф1 посмотри, да.
4. Решись как сделать. И вообще, какой? С сохранением инвентаря моба или как? Вообще, используй sleep(), spawn().
И все же, если, скажем, тот же легионер умер, то просто создай нового через какой-то объект. Алтарь, может быть. Но опять же, стратегия? Ты уже придумал как вести счет ресурсам и мобам? Ах, да. Циклы.
5. ???
6. И опять. Не понятно, РТС это или РПГ какая.
Но посмотри в спеллы. Есть полезный фаерболл, есть мисл. Тоже можно посмотреть, полезно. Делай через view().
Опять же, если стратегия и есть различные маги. Допустим, маг огня, какого-нибудь. Тогда, вот:
1) Магический факел.
2) Огненная стрела.
3) Огненный дождь.
Сначала сделай свой-чужой. Раздели на группы. Цвета, например. Будут красные и синие, допустим. Есть у иконок rgb. Смотри в Ф1. Это все надо для исключения массовых убийств среди своих. Хотя, это может быть весело.
1) Проще простого. Если маг в темноте, активирует этот верб. Самому магу просто изменяешь переменную luminosity. Можно еще col_rbg сделать, если имеется цветное освещение. Спустя секунд 20-30, возвращаешь на свои места. Вот. Ну затрата маны и прочее - мелочи и тут дураку понятно.
2) Смотри мисл или фаерболл у того же мага. Можно сделать по такому принципу, а можно чуть иначе, прожектайлом. Тут и нужно свой-чужой, чтобы не проебаться и, маг же моб, ему надо пометить цели, по которым НЕ надо стрелять. И когда пометишь, он будет выборочно в зоне видимости(view) всех херачить этим, вот. Ну, как поджигать цель, говорить не нужно? Лучше сделать свою симуляцию огня на мобе. Это довольно просто, если изучил декременты.
3) Веселая такая штука. Ну, при активации, наносит урон и поджигает всех вокруг, кроме самого мага. Используй range(), чтобы указать радиус. Добавляй различные эффекты. Можно сделать создание объектов в зоне удара с определенными спрайтами. Как только ударят, удаляются. Ну ты понял, да? В общем... Забавнее сделать этот дождь рандомным. Тогда используй еще и prob().
Спеллы делай через верб. Можно и на интерфейсе запилить какую-нибудь красивую книжку, из которой вываливается еще ряд иконок при щелчке. И тогда можно как в скуриме, ну знаешь, поджечь руки и метнуть огонь, а можно просто их поджечь и разжечь... Короче, это сложнее и я так пытаюсь сделать, но так краше. НО! У тебя же стратегия или вроде того, а значит мобам нужны именно вербы.
Такие дела. Вообще, рекомендую послушать других людей, но если поможет хоть как-то, то хорошо.
ONLY COWARDS LIVE FOREVER
Рыбалочка#53
Отправлено 05 September 2014 - 12:28
#54
Отправлено 05 September 2014 - 13:25
Есть такая у мира переменная, как timeofday. Т.е. время СЕЙЧАС.
/mob/soldier
№/proc/Death()
Могу предложить добавить в список StuffToRespawn (сделать игре автотикер, который каждые пять \ десять \ минуту будет чекать этот лист), но это говнокод, лучше придумай вариант эффективнее.
№№Died = true
№№TimeOfDeath = world.timeofday
№/proc/Respawn()
№№if(timeofday > TimeOfDeath + 10*secondstorespawn)
№№№Died = false
#55
Отправлено 26 September 2014 - 19:41
http://vk.com/doc972...849772d01&api=1
#56
Отправлено 27 September 2014 - 18:24
/mob/player/hero
New(loc, var/CKEY)
..()
ckey = CKEY
new /obj/hud/armor_tors(src)
obj/hud/armor_tors
layer =MOB_LAYER
icon = 'hud.dmi'
icon_state = "hero_tors"
New(client/C)
screen_loc="17,16"
C.screen+=src
Вот тут тупо.
У штанишек при спавне аргумент - клиент. А ты ему МОБА даешь как аргумент, присмотрись. Тут рантайм. Вместо выделенного нужно поставить "client".
2)
usr << "Извените...
3) Не уверен, что тебе нужен отдельный кусок интерфейса под выбор класса. Поразмысли над тегом <A>, процессами клиента browse() и Topic()
4)move_selected_to() зациклен.
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных