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

Нужен кодер (оплачиваемое мороженое)

Автор: Voidwort · 06.04.2012, 02:21 · 23 сообщений

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

Voidwort#1

Привет,

У Анимуса, как обычно, огромные проблемы с кодерами. Так что если у желающих ковыряться в коде есть свободное время - пишите. Что требуется - мерджить код пару-тройку раз в неделю, изредка написать что мелкое али критический баг подправить.

SVN репозиторий вайта: http://code.google.c.../animusstation/

GIT репозиторий блэка: https://github.com/A...on/Baystation12

Платим в виде поощрения и благодарности - деньгами, малыми, в размере где-то месячного запаса пива.

Заинтересованных личностей прошу писать на voidwort@gmail.com.

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

Не понял исправления пакмена (ты скорее его некомпилируемым сделал, а фиксить там нечего было). Окна ещё раньше бэйцы исправили, и исправление было сразу закинуто на гит. Если бы не косяк с апдейтилкой, то давно бы было исправлено. Пока вроде всё, к остальному претензий нет.

Скопировать ссылку
Editor TEH Chaos-neutral#12

Чуть-чуть кастрировал код - необязательно было назначать переменную E, если перед этим была проверка на тип. Можно было напрямую O:uses--

Тупо забыл поставить двоеточие.

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

Про двоеточие то знаю. Однако лучше всё же переменную более конкретно определять. Это спасает от ошибок в будущем.

Причина немного похожа на нежелание многих использовать GO TO в коде.

Алсо, всегда проверяй на компилируемость перед заливанием. Особенно если заливаешь напрямую в репозиторий анимуса, а не в промежуточный.

Скопировать ссылку
Editor TEH Chaos-neutral#15
Цитата

Однако лучше всё же переменную более конкретно определять. Это спасает от ошибок в будущем.

Скажи, какая может быть ошибка в этом коде, где много пользуюсь двоеточием?

Getargets()
	var/turf/targets = list()
	targets = getline(src,targeter)
	shot(targets,range)

Shot(targets,range)
	var/turf/center
	var/atom/deletable = list()
	for(center in targets)
		var/obj/effect/distortion/D = new /obj/effect/distortion(center) //Auto set-up
		for(deletable in range(range,center)
			if(ismob(deletable))
				if(deletable:health > 90)
					deletable << "\red \bold Your body is distorted in your eyes!"
					deletable:take_organ_damage(rand(90,140))
					deletable:stunned += 40
				else
					deletable << "\blue A distortion around you gibbed you..."
					deletable:gib()
			else
				del(deletable)
		sleep(1) //For effect of stream
		del(D)
	EnergyReturn() //Метод, возвращающий энергию в энерго-сеть
	log_admin("Blue space distortion cannon exploded in [src.loc]")
	explosion(src.loc,3,2,1,5)
	del(src)
Скопировать ссылку
MIK517#16

Конкретно здесь не вижу ошибок. Как я уже сказал, использование двоеточия не является неправильным, оно просто ухудшает читаемость кода и в последствии может привести к ошибкам.

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

Скопировать ссылку
Editor TEH Chaos-neutral#18

Плохо, что ошибок не видишь

shot() и Shot() - первая

log_admin("Blue space distortion cannon exploded in [src.loc]") - src.loc вернет не зону, а тайл - правильный вариант src.loc.loc

Недочет

Getargets()
   var/turf/targets = list()
   targets = getline(src,targeter) //targets назначать было не обязательно
   shot(targets,range) //более сжатый вариант - Shot(getline(src,targeter),range) - нечитаемо, да?
Скопировать ссылку
MIK517#21

Ты зря пытаешься сравнивать внимательность к подобного рода ошибкам человека, только что копавшегося в коде станции, и человека, для которого предоставленный тобой отрывок является единственным просмотренным представителем буёндокода за последний месяц.

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

Обратно в Сервер