Еще одну вещь нашел (ну, как нашел, трудно не обнаружить) - не работала, во всяком случае в том раунде, кнопка "Flush".
0
Спойлер

Автор: kokoko-kud-kudah · 03.10.2013, 21:38 · 43 сообщений

Она работает, только необходимо, чтобы отсеки с вирусом и стаканчиком были занятыkokoko-kud-kudah (05 October 2013 - 21:57) писал: писал:Еще одну вещь нашел (ну, как нашел, трудно не обнаружить) - не работала, во всяком случае в том раунде, кнопка "Flush".

kokoko-kud-kudah (03 October 2013 - 11:38) писал: писал:Хочу, чтобы
превратилось в
----------->Спойлер
А теперь, для тех кто в танке и тех, кто does not speak English, mother fucker:
пусть вместо более чем 360 кликов (гораздо более!), чтобы довести уровень облучения до 3600 RADS, будет возможность просто ввести необходимое количество в специальном окне, и это количество прибавится к уже имеющемуся. Вот.

kokoko-kud-kudah (03 October 2013 - 11:38) писал: писал:Хочу, чтобы
[картинка1]
превратилось в
[картинка2]
----------->Спойлер
А теперь, для тех кто в танке и тех, кто does not speak English, mother fucker:
пусть вместо более чем 360 кликов (гораздо более!), чтобы довести уровень облучения до 3600 RADS, будет возможность просто ввести необходимое количество в специальном окне, и это количество прибавится к уже имеющемуся. Вот.
Если сделал - хорошо. Оно не будет мешать, просто и с той кнопкой было хорошо жить. Там 3600 рад набирать не надо, хватает и 100.LethalGhost (10 October 2013 - 03:36) писал: писал:Я сделал эту штуку (с ограничениями и тп), но мне тут говорят, что это изменение не нужно.

Мы тут провели эксперимент...LethalGhost (10 October 2013 - 03:36) писал: писал:Я сделал эту штуку (с ограничениями и тп), но мне тут говорят, что это изменение не нужно.

Окей. Я не слишком опытен в этом, ограничение 10 - 150 на ввод, это нормально?Volik (10 October 2013 - 03:44) писал: писал:Если сделал - хорошо. Оно не будет мешать, просто и с той кнопкой было хорошо жить. Там 3600 рад набирать не надо, хватает и 100.
Думаю да. Но на данный момент людей интересуют немножко другие новости. Каковы успехи в починке передачи через воздух?LethalGhost (10 October 2013 - 03:59) писал: писал:Окей. Я не слишком опытен в этом, ограничение 10 - 150 на ввод, это нормально?


Хорошо, проверю...Volik (13 October 2013 - 04:28) писал: писал:Посоны, а ларчик-то просто открывался.
Всё дело в том, что аирборну нужен один симптом для распространения - Anima.
Ни Колдлингтонс, ни какие-нибудь другие, а именно Anima. И хорошие рейты на распространение. Потестите кто-нибудь вирусы с этим симптомом, пожалуйста.

Из Гитхаба.rjkz7123 (13 October 2013 - 08:07) писал: писал:Хорошо, проверю...
А откуда информация?


Volik (13 October 2013 - 08:17) писал: писал:Из Гитхаба.
https://github.com/S...irus2/effect.dm
Нужно стоять вплотную к заражённому субъекту когда он кашляет. Должно работать, ибо на бее работает.
Яяясно, пошел кашлять на раздетых ассистентов...LethalGhost (15 October 2013 - 09:58) писал: писал:Весь код заражения Анимой, с описанием.
/datum/disease2/effect/coughname = "Anima Syndrome" //Имя синдрома
stage = 2
activate(var/mob/living/carbon/mob,var/multiplier) //Эта штука вызывается, при активацииmob.say("*cough")//Моб кашляет
for(var/mob/living/carbon/M in view(1,mob)) //По очереди берем каждого моба, из стоящих в соседних клетках с больным. Интересная вещь, похоже это происходит, только если больной может видеть текущего моба.if(airborne_can_reach(get_turf(mob), get_turf(M))) //Проверка, могут ли "микробы" достать до этих мобов*for (var/datum/disease2/disease/V in mob.virus2) //Проходим по всем вирусам больногоif(V.spreadtype == "Airborne") //Если у вируса тип передачи - воздухinfect_virus2(M,V) //Происходит заражение этим вирусом моба**
*Проверка могут ли микробы достать до выбраного моба
proc/airborne_can_reach(turf/source, turf/target)var/obj/dummy = new(source) //Создается объект, в том месте, где стоит моб
dummy.flags = FPRINT | TABLEPASS //Созданному объекту добавляется возможность проходить сквозь столы
dummy.pass_flags = PASSTABLE //Тоже, что и в строке выше
for(var/i=0, i<5, i++) if(!step_towards(dummy, target)) break //Созданный объект сдвигается к больному, максимум на 5 шагов
var/rval = (dummy.loc in range(1,target)) //Если объект оказался в соседней клетке с больным rval станет равной единице, иначе нулю
del dummy //Объект созданный во второй строке удаляется
return rval //Функция возвращает значение rval. Суть - ответ на вопрос, находится ли моб в пяти шагах или менее от больного.
**Заражение:
/proc/infect_virus2(var/mob/living/carbon/M,var/datum/disease2/disease/disease,var/forced = 0)if(!istype(disease)) return //Если болезнь не является болезнью, выходим
if(!istype(M)) //Если моб не является мобом, выходимreturn
if ("[disease.uniqueID]" in M.virus2) //Если вирус уже есть в мобеreturn
// if one of the antibodies in the mob's body matches one of the disease's antigens, don't infect
if(M.antibodies & disease.antigen != 0) return //Если в мобе есть антитела или антиген выходим.
if(prob(disease.infectionchance) || forced) //Проверка вероятности заражения. Если делают укол, то вероятность 100%, иначе - одна десятая рейтинга вируса из ста.// certain clothes can prevent an infection
if(!forced && !get_infection_chance(M)) return //Если это не укол, то идет проверка защиты от одежды***
var/datum/disease2/disease/D = disease.getcopy() //Создается копия вируса больного.
D.minormutate() //Проводят некие махинации с вирусом.
M.virus2["[D.uniqueID]"] = D //Вирус добавляется заражаемому мобу.
***Проверка одежды
//Returns 1 if mob can be infected, 0 otherwise. Checks his clothing.
proc/get_infection_chance(var/mob/living/carbon/M)var/score = 0 //Создается переменная (далее защита).
if (!istype(M)) return 0 //Если проверяемый моб не является мобом пишем, что одежда закрывает моба
if(istype(M, /mob/living/carbon/human)) //Если моб является человеком делаем:if(M:gloves) score += 5 //Если на нем есть перчатки добавим 5 к защите
if(istype(M:wear_suit, /obj/item/clothing/suit/space)) score += 10 //Если на мобе есть скафандр добавим 10 к защите
if(istype(M:wear_suit, /obj/item/clothing/suit/bio_suit)) score += 10 //Если костюм био защиты - тоже добавим 10
if(istype(M:head, /obj/item/clothing/head/helmet/space)) score += 5 //Если шлем от скафандра добавим 5
if(istype(M:head, /obj/item/clothing/head/bio_hood)) score += 5 //Тоже со шлемом био защитыif(M.wear_mask) //Если у моба есть любая маска (или другой предмет в слоте маски):score += 5 //Добавим 5 к защите
if(istype(M:wear_mask, /obj/item/clothing/mask/surgical) && !M.internal) score += 10 //Если на мобе хирургическая маска и он дышит воздухом не из баллона добавить 10 к защите
if(M.internal) score += 10//Если моб дышит воздухом из баллона добавить 10 к защитеif(score >= 30) return 0 //Если защита набралась больше или ровно 30 - одежда защищает
else if(score == 25 && prob(99)) return 0 //Если защита равна 25, есть шанс 99 из 100, что одежда защищает
else if(score == 20 && prob(95)) return 0 //Если защита равна 20, есть шанс 95 из 100
else if(score == 15 && prob(75)) return 0 //Если защита 15, то 75 из 100
else if(score == 10 && prob(55)) return 0 //При защите равной 10, шанс защиты 55 из 100
else if(score == 5 && prob(35)) return 0 //При защите 5, шанс 35 из 100
return 1 //Если до сих пор не выяснились шансы, то одежда не защитит


Там нет всех фич беевской... Но вообще лучше поставить на блек ТГшную, да.Jarlo (17 October 2013 - 07:05) писал: писал:Берите с тг, там все работает как надо.

Зачем нужны фичи, если основа вирусологии, передача через воздух, не работает?Volik (17 October 2013 - 21:04) писал: писал:Там нет всех фич беевской... Но вообще лучше поставить на блек ТГшную, да.
