Архив сообщества
2011 — 2019
Аватар Evolet

Что и как мне это сделать? Dream Maker

Автор: Evolet · 05.04.2015, 06:39 · 52 сообщений

Сообщений в теме: 52

Evolet#3

Хочу унифицировать и подстроить под свой лад.

И вопросом как раз будет - где мне достать свежий репозиторий Гринцов?

Скопировать ссылку
intercross#5
Evolet (04 April 2015 - 22:02) писал:

Хочу унифицировать и подстроить под свой лад.

И вопросом как раз будет - где мне достать свежий репозиторий Гринцов?

https://bitbucket.or...ons/ntstation13

Скопировать ссылку
intercross#9
Evolet (06 April 2015 - 03:29) писал:

Не, дрим мейкер очень изи оказывается.

Ну да, по сравнению с разными более популярными языками, ДМ чертовски дружественен к кодеру. Главная же проблема со станцией это понять: где, что и как работает. Но в ДМе есть и подводные камни. К примеру наследование и переопределение метода в рамках одно класса.

Изображение

Данный код вернёт "BA", а если поменять методы местами, то не сможет собраться. Увы, ДМ страдает проблемой си-подобных языков и очень зависит от порядка.

А в какой нибудь решётке компилятор бы послал тебя при попытке переопределить метод дважды в одном классе.

Скопировать ссылку
intercross#10

К слову: если убрать вызов родительского метода "..()", то выйдет только "B", хотя это более очевидно, но тем не менее показывает важность вызова родительского класса при наследовании.

Скопировать ссылку
Polymorph#11

Подраздел с кодингом, как и всё остальное, мне шепард забанил, поэтому спрошу сюда:

Как оперировать элементами листа вот такого вот типа (вместо циферок я собираюсь вставить пути на создаваемые объекты)? Объявляю как глобальную переменную, при попытке пощупать его элементы в том же месте (оторванном от мобов, объектов и прочих атомов), срёт мне ошибками повторного объявления. Что я делаю не так?

var/planet_type[2]
planet_type[1] = 1
planet_type[2] = 2

Скрытый текст

Содержимое спойлера отсутствует в сохранённом тексте.

game\space bodies\bodies.dm:3:error: 2: value not allowed here game\space bodies\bodies.dm:3:error: planet_type: value not allowed here game\space bodies\bodies.dm:3:error: : duplicate definition game\space bodies\bodies.dm:3:error: 2: duplicate definition game\space bodies\bodies.dm:3:error: =: duplicate definition

Скопировать ссылку
PlIn#12

Polymorph (02 November 2015 - 23:16) писал:

Попробуй

var/list/planet_type = list(1, 2)
Скопировать ссылку
Polymorph#13
Plin (03 November 2015 - 00:11) писал:

Попробуй

А к элементам при таком объявлении как обращаться?

U.P.D: Тащемта разобрался с первым вариантом объявления (который я нахожу лично для себя привычнее, почему и спрашивал за него), хуёнд требовал запихивать обращение к элементам листа в моба, объект или прок, а так они оба аналогичны друг другу.

Скопировать ссылку
Polymorph#14

Как вернуть/отобразить координаты мышеклика? Не пиксельX/пиксельY иконки на которую тыкнули, как написано в референсах, а сами координаты. Напишите кодэ, пожалуйста.

Скопировать ссылку
MineSheep#15
Polymorph (05 November 2015 - 11:56) писал:

Как вернуть/отобразить координаты мышеклика? Не пиксельX/пиксельY иконки на которую тыкнули, как написано в референсах, а сами координаты. Напишите кодэ, пожалуйста.

У obj есть proc'a, которая вызывается после клика

afterattack(var/atom/target, var/mob/living/user, flag, params)

target - собственно, то по чему кликнули, тут же можно взять координаты

Скопировать ссылку
PlIn#16
Polymorph (05 November 2015 - 11:56) писал:

Как вернуть/отобразить координаты мышеклика? Не пиксельX/пиксельY иконки на которую тыкнули, как написано в референсах, а сами координаты. Напишите кодэ, пожалуйста.

Я не знаю, но это вроде работает:

client/Click(object,location,control,params)
var/list/p = params2list(params)
var/text = p["screen-loc"]
var/x = text2num(text)
text = copytext(text, findtext(text, ":") + 1)
var/xoff = text2num(text)
text = copytext(text, findtext(text, ",") + 1)
var/y = text2num(text)
text = copytext(text, findtext(text, ":") + 1)
var/yoff = text2num(text)
world << "[(x - 1) * world.icon_size + xoff], [(y - 1) * world.icon_size + yoff]"
Скопировать ссылку
Polymorph#17
Plin (05 November 2015 - 13:39) писал:

Я не знаю, но это

работает:

Спасибо, как раз интересовало, как это через ПарамсТуЛист сделать.

Скопировать ссылку
Polymorph#18

Скрытый текст

Чо я делаю не так? Прок дабблклика не имеет доступа к переменной, которую я объявил вот так вот: obj/ship/var/master=0

Ну и я вообще без идей, почему так происходит.

Скопировать ссылку
PlIn#19
Polymorph (07 November 2015 - 09:46) писал:

Чо я делаю не так? Прок дабблклика не имеет доступа к переменной, которую я объявил вот так вот: obj/ship/var/master=0

Ну и я вообще без идей, почему так происходит.

Очевидно вместо /obj/ship/M у тебя выходит хуйня.

http://www.byond.com...m/proc/DblClick

Скопировать ссылку
Polymorph#20

реально, сидел пол дня над хуитой. Копировал по памяти с кодэ станции бездумно, даж не удосужился заглянуть в референсы. Биг спс, переписал, сделал циклы для объекта в координате клика, всё работает как надо.

Скопировать ссылку
PlIn#21
Polymorph (07 November 2015 - 10:18) писал:

реально, сидел пол дня над хуитой. Копировал по памяти с кодэ станции бездумно, даж не удосужился заглянуть в референсы. Биг спс, переписал, сделал циклы для объекта в координате клика, всё работает как надо.

А чо пилишь, если не секрет?

Скопировать ссылку
Polymorph#22
Plin (07 November 2015 - 14:21) писал:

А чо пилишь, если не секрет?

<<Реалтаймовую стратежку, помесь рейнджеров, моо2 и прочих космических игрушек, в которой одни игроки берут на себя руководство развивающимися империями, а другие эдакими fleet-командерами, предлагающими свои услуги этим империям и получающие определённый депозит с их ввп. И механику всему этому, чтобы не олололо баланс как во всяких моба-донатопарашах, а раундовую систему с передачей империй другим игрокам (подогнать так, чтобы среднераунд от нескольких часов до нескольких суток шёл), а флиткомандеры могли объебывать своих нанимателей, ударяться в пиратство, сливать технологии и деньги другим империям, организовывать собственные космическо-банановые республики, за пределами действия сенсоров своей империи индетефицировать другие корабли своими руками, чтобы были ситуации, когда корабли одной и той же империи посыпали друг друга всевозможными средствами уничтожения, попутно переругиваясь в эфире в духе "ТЫ КТО ТАКОЙ НАХУЙ", всякие там артефакты, раскидываемые по космосу и способные дать неплохие преимущества тому, кто их найдёт, даже отдельному командиру, который может решить повертеть всех на хую. И ещё много чего моя голова родила, надо диздок оформить, как генератор допишу.>>

Скрытый текст

Содержимое спойлера отсутствует в сохранённом тексте.

Скопировать ссылку
PlIn#23
Polymorph (08 November 2015 - 01:58) писал:

<<

Ты там ебанулся это на бионде делать?

Скопировать ссылку
tizit#24
Polymorph (08 November 2015 - 01:58) писал:

<<

Лучше тетрис или тетрисоподобное накодь, потому что надо отработать какие-то базовые кодофичи, чтобы они работали и кодились без проблем, а потом уже что-то ещё делать. И после закодивания тетриса лучше понимаешь объем работы.

Скопировать ссылку
Polymorph#25

Хуле возникаете, генератор вселенной, корабли и базовые проки для взаимодействия их с миром накодил буквально за пару дней. В буонд вникаю в процессе. Переписывать куски говнокода, если я открываю способ сделать это лучше, мне не лень, если чо.

Plin (08 November 2015 - 02:46) писал:

Ты там ебанулся это на бионде делать?

Он больше всего под данную задачу подходит,  ёбана.

Скопировать ссылку

Обратно в Dream Maker