forked from Baystation12/Baystation12
-
Notifications
You must be signed in to change notification settings - Fork 76
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Возвращает старый культ и даёт ему реворки по балансу (#3208)
Co-authored-by: UEDCommander <[email protected]>
- Loading branch information
1 parent
3c5ab11
commit 2b77e94
Showing
17 changed files
with
381 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,4 @@ | ||
author: LordNest | ||
changes: | ||
- {maptweak: Верне. Зачем? Почему? Узнаете в следующих сериях} | ||
- {maptweak: Верне. Зачем и почему - узнаете в следующих сериях} | ||
delete-after: true |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,65 @@ | ||
|
||
#### Список PRов: | ||
|
||
- https://github.com/SierraBay/SierraBay12/pull/##### | ||
<!-- | ||
Ссылки на PRы, связанные с модом: | ||
- Создание | ||
- Большие изменения | ||
--> | ||
|
||
<!-- Старый культ Сьерры 220. --> | ||
## Мод-пример | ||
|
||
ID мода: 220_CULT | ||
<!-- | ||
220_CULT | ||
--> | ||
|
||
### Описание мода | ||
|
||
Этот мод служит примером для разработчиков и существует лишь для того, | ||
чтобы его можно было легко скопировать и вставить в другое место. | ||
<!-- | ||
Реверт старого культа + добавление новых фич и фишек. Старые руны и талисманы, а также новые способы играться за культистов! | ||
--> | ||
|
||
### Изменения *кор кода* | ||
|
||
- `Отсутствуют` | ||
<!-- | ||
Отсутствуют | ||
--> | ||
|
||
### Оверрайды | ||
|
||
- `Отсутствуют` | ||
<!-- | ||
Отсутствуют | ||
--> | ||
|
||
### Дефайны | ||
|
||
- `Отсутствуют` | ||
<!-- | ||
Отсутствуют | ||
--> | ||
|
||
### Используемые файлы, не содержащиеся в модпаке | ||
|
||
- `icons/obj/cult.dmi (спрайт ножа хелл-хантера)` | ||
<!-- | ||
Будь то немодульный файл или модульный файл, который не содержится в папке, | ||
принадлежащей этому конкретному моду, он должен быть упомянут здесь. | ||
Хорошими примерами являются иконки или звуки, которые используются одновременно | ||
несколькими модулями, или что-либо подобное. | ||
--> | ||
|
||
### Авторы: | ||
|
||
- `Vipo24` | ||
<!-- | ||
Здесь находится твой никнейм | ||
Если работал совместно - никнеймы тех, кто помогал. | ||
В случае порта чего-либо должна быть ссылка на источник. | ||
--> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
/singleton/modpack/cultsierra | ||
name = "Культ 220 Сьерры" | ||
desc = "Культ, который существовал до СьерраБея, переезжает на новый билд. Более опасный, более страшный. Кровь богу крови!" | ||
author = "Vipo24" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
#ifndef MODPACK_220_CULT | ||
#define MODPACK_220_CULT | ||
|
||
#include "_220_cult.dm" | ||
|
||
// Далее просто включай свой код | ||
// #include "code/something.dm" | ||
#include "code/cult_items.dm" | ||
#include "code/runes.dm" | ||
#include "code/airlock.dm" | ||
#include "code/talisman.dm" | ||
#include "code/ritual.dm" | ||
#include "code/talisman/burn.dm" | ||
#include "code/talisman/wrath.dm" | ||
#include "code/talisman/stun.dm" | ||
#include "code/talisman/emp.dm" | ||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
/obj/machinery/door/airlock/use_tool(obj/item/C, mob/living/user, list/click_params) | ||
|
||
if (istype(C, /obj/item/paper/talisman/emp)) //220_cult - обязательная строчка для взаимодействия талисмана со шлюзом | ||
return | ||
|
||
return ..() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
/obj/item/reagent_containers/glass/bucket/wood/cult/New() | ||
..() | ||
reagents.add_reagent(/datum/reagent/hell_water, 120) | ||
update_icon() | ||
|
||
|
||
/obj/item/device/flashlight/flashdark/stone | ||
name = "hellstone shard" | ||
desc = "The stone is blacker than the night itself, it seems to dim all the light around." | ||
icon = 'mods/220_cult/icons/obj/hellstone.dmi' | ||
icon_state = "hellstone" | ||
item_state = "electronic" | ||
activation_sound = null | ||
|
||
/obj/item/clothing/glasses/tacgoggles/cult | ||
name = "hell goggles" | ||
desc = "Its look equally funny and frightening." | ||
item_icons = list(slot_glasses_str = 'mods/220_cult/icons/mob/onmob/onmob_eyes.dmi') | ||
icon = 'mods/220_cult/icons/obj/clothing/obj_eyes.dmi' | ||
icon_state = "hg" | ||
item_state = "hg" | ||
off_state = "hg_off" | ||
darkness_view = 5 | ||
|
||
/obj/item/clothing/glasses/tacgoggles/cult/Initialize() | ||
. = ..() | ||
overlay = GLOB.global_hud.thermal |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
/datum/antagonist/cultist/Initialize() | ||
. = ..() | ||
global.Tier1Runes = list( | ||
/mob/proc/convert_rune, | ||
/mob/proc/teleport_rune, | ||
/mob/proc/tome_rune, | ||
/mob/proc/wall_rune, | ||
/mob/proc/ajorney_rune, | ||
/mob/proc/defile_rune, | ||
/mob/proc/stun_imbue, | ||
/mob/proc/emp_imbue, | ||
/mob/proc/cult_communicate, | ||
/mob/proc/obscure, | ||
/mob/proc/reveal, | ||
/mob/proc/burn_imbue | ||
) | ||
|
||
global.Tier2Runes = list( | ||
/mob/proc/armor_rune, | ||
/mob/proc/offering_rune, | ||
/mob/proc/drain_rune, | ||
/mob/proc/emp_rune, | ||
/mob/proc/massdefile_rune, | ||
/mob/proc/wrath_imbue, | ||
/mob/proc/hellhunter_rune, | ||
/mob/proc/hellbucket_rune, | ||
/mob/proc/hellstone_rune | ||
) | ||
|
||
global.Tier3Runes = list( | ||
/mob/proc/weapon_rune, | ||
/mob/proc/shell_rune, | ||
/mob/proc/bloodboil_rune, | ||
/mob/proc/confuse_rune, | ||
/mob/proc/revive_rune | ||
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,107 @@ | ||
/mob/proc/wrath_imbue() | ||
set category = "Cult Magic" | ||
set name = "Imbue: Wrath Burning" | ||
|
||
make_rune(/obj/rune/imbue/wrath, cost = 15) | ||
|
||
/obj/rune/imbue/wrath | ||
cultname = "wrath burning imbue" | ||
papertype = /obj/item/paper/talisman/wrath | ||
|
||
/mob/proc/burn_imbue() | ||
set category = "Cult Magic" | ||
set name = "Imbue: Burning" | ||
|
||
make_rune(/obj/rune/imbue/burn) | ||
|
||
/obj/rune/imbue/burn | ||
cultname = "burning imbue" | ||
papertype = /obj/item/paper/talisman/burn | ||
|
||
/mob/proc/hellbucket_rune() | ||
set category = "Cult Magic" | ||
set name = "Rune: Summon HellWater" | ||
|
||
make_rune(/obj/rune/hellbucket, cost = 15) | ||
|
||
/obj/rune/hellbucket | ||
cultname = "summon hellwater" | ||
|
||
/obj/rune/hellbucket/cast(mob/living/user) | ||
new /obj/item/reagent_containers/glass/bucket/wood/cult(get_turf(src)) | ||
speak_incantation(user, "N[pick("'","`")]ath chsz'rchesh tza'jink'tumakes!") | ||
visible_message("<span class='notice'>\The [src] disappears with a flash of red light.</span>", "You hear a pop.") | ||
qdel(src) | ||
|
||
/mob/proc/hellhunter_rune() | ||
set category = "Cult Magic" | ||
set name = "Rune: Summon HellHunter equip" | ||
|
||
make_rune(/obj/rune/hellhunter, cost = 15, tome_required = 1) | ||
|
||
/obj/rune/hellhunter | ||
cultname = "summon hellhunter equip" | ||
|
||
/obj/rune/hellhunter/cast(mob/living/user) | ||
new /obj/item/device/flashlight/flashdark/stone(get_turf(src)) | ||
new /obj/item/clothing/glasses/tacgoggles/cult(get_turf(src)) | ||
new /obj/item/material/knife/ritual(get_turf(src)) | ||
speak_incantation(user, "N[pick("'","`")]ath chip'ayiayan auyana!") | ||
visible_message("<span class='notice'>\The [src] disappears with a flash of red light.</span>", "You hear a pop.") | ||
qdel(src) | ||
|
||
/mob/proc/hellstone_rune() | ||
set category = "Cult Magic" | ||
set name = "Rune: HellStone" | ||
|
||
make_rune(/obj/rune/hellstone, cost = 15, tome_required = 1) | ||
|
||
/obj/rune/hellstone | ||
cultname = "summon hellstone" | ||
|
||
/obj/rune/hellstone/cast(mob/living/user) | ||
new /obj/item/device/flashlight/flashdark/stone(get_turf(src)) | ||
speak_incantation(user, "N[pick("'","`")]akkakkaya'iyakaiya!") | ||
visible_message("<span class='notice'>\The [src] disappears with a flash of red light.</span>", "You hear a pop.") | ||
qdel(src) | ||
|
||
/obj/rune/blood_boil | ||
cultname = "blood boil" | ||
strokes = 4 | ||
var/spamcheck = 0 | ||
|
||
/obj/rune/blood_boil/cast(mob/living/user) | ||
var/list/mob/living/cultists = get_cultists() | ||
if(length(cultists) < 3) | ||
return fizzle() | ||
|
||
if(spamcheck) | ||
return | ||
|
||
for(var/mob/living/M in cultists) | ||
M.say("Dedo ol[pick("'","`")]btoh!") | ||
// твик старой руны - больше не позволено спамить кликами для инста-килла, но куковать у руны долго всё ещё опасно | ||
spamcheck = 1 | ||
sleep(40) | ||
spamcheck = 0 | ||
|
||
var/list/mob/living/previous = list() | ||
var/list/mob/living/current = list() | ||
while(length(cultists) >= 3) | ||
cultists = get_cultists() | ||
for(var/mob/living/carbon/M in viewers(src)) | ||
if(iscultist(M)) | ||
continue | ||
current |= M | ||
var/obj/item/nullrod/N = locate() in M | ||
if(N) | ||
continue | ||
M.take_overall_damage(5, 5) | ||
if(!(M in previous)) | ||
if(M.should_have_organ(BP_HEART)) | ||
to_chat(M, SPAN_DANGER("Your blood boils!")) | ||
else | ||
to_chat(M, SPAN_DANGER("You feel searing heat inside!")) | ||
previous = current.Copy() | ||
current.Cut() | ||
sleep(10) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
/obj/item/paper/talisman/use_after(atom/target, mob/living/user, click_parameters) | ||
if (!can_invoke(target, user)) | ||
return TRUE | ||
|
||
// Null rods block the talisman's effect but still consume it | ||
var/obj/item/nullrod/nullrod = locate() in target | ||
if (nullrod) | ||
user.visible_message( | ||
SPAN_DANGER("\The [user] invokes \the [src] at \the [target]!"), | ||
SPAN_DANGER("You invoke \the [talisman_name] talisman at \the [target], but it fails and falls to dust!"), | ||
) | ||
else | ||
user.visible_message( | ||
SPAN_DANGER("\The [user] invokes \the [src] at \the [target]!"), | ||
SPAN_DANGER("You invoke \the [talisman_name] talisman at \the [target]!") | ||
) | ||
admin_attack_log(user, target, "Used a talisman ([type]).", "Was victim of a talisman ([type]).", "used a talisman ([type]) on") | ||
invoke(target, user) | ||
//user.say("Talisman [talisman_name]!", all_languages[LANGUAGE_CULT]) // нет мы не будем кричать одновременно разные кричалки на культистском | ||
user.setClickCooldown(DEFAULT_ATTACK_COOLDOWN) | ||
user.do_attack_animation(target) | ||
if (talisman_sound) | ||
playsound(src, talisman_sound, 100, 1) | ||
qdel(src) | ||
return TRUE |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
/obj/item/paper/talisman/burn | ||
talisman_name = "burning" | ||
talisman_desc = "ignites a mob, which is useful for disposing of bodies, or heavily damages a silicon mob" | ||
valid_target_type = list( | ||
/mob/living/carbon, | ||
/mob/living/silicon, | ||
/mob/living/simple_animal | ||
) | ||
|
||
/obj/item/paper/talisman/burn/invoke(mob/living/target, mob/user) | ||
if(!iscultist(user)) | ||
return | ||
var/obj/item/nullrod/nrod = locate() in target | ||
if(nrod) | ||
return | ||
else | ||
if(issilicon(target)) | ||
target.apply_damage(50, DAMAGE_BURN) | ||
else if(iscarbon(target)) | ||
var/mob/living/carbon/C = target | ||
C.adjust_fire_stacks(rand(1,3)) | ||
C.IgniteMob() | ||
user.unEquip(src) | ||
qdel(src) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
/obj/item/paper/talisman/emp | ||
|
||
talisman_name = "emp" | ||
talisman_desc = "invokes a localized EMP effect on the target. Can be used on machinery or mobs" | ||
talisman_sound = 'sound/effects/EMPulse.ogg' | ||
valid_target_type = list( | ||
/mob, | ||
/obj/machinery, | ||
/obj/machinery/door | ||
) | ||
/obj/item/paper/talisman/emp/invoke(atom/target, mob/user) | ||
user.say("Ta'gh fara[pick("'","`")]qha fel d'amar det!", all_languages[LANGUAGE_CULT]) | ||
user.visible_message("<span class='danger'>\The [user] invokes \the [src] at [target].</span>", "<span class='danger'>You invoke \the [src] at [target].</span>") | ||
target.emp_act(1) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
/obj/item/paper/talisman/stun // понерфленная, но не сломленная (раньше было 30 секунд стана типо чтооо) | ||
talisman_name = "stun" | ||
talisman_desc = "temporarily stuns a targeted mob with a blinding and disorienting flash of light" | ||
talisman_sound = 'sound/weapons/flash.ogg' | ||
valid_target_type = list( | ||
/mob/living/carbon, | ||
/mob/living/silicon, | ||
/mob/living/simple_animal | ||
) | ||
/obj/item/paper/talisman/stun/invoke(mob/living/target, mob/living/user) | ||
user.say("Dream Sign: Evil Sealing Talisman!", all_languages[LANGUAGE_CULT]) //TODO: never change this shit | ||
if(issilicon(target)) | ||
target.Weaken(2) // 4 секунды - хорошо комбинировать с ЭМИ! | ||
target.silent += 5 // 10 секунд молчания | ||
else if(iscarbon(target)) | ||
var/mob/living/carbon/C = target | ||
C.silent += 5 // 10 секунд молчания | ||
C.Weaken(4) // 8 секунд | ||
C.Stun(3) // 6 секунд | ||
else | ||
var/obj/item/device/flash/flash = new(src) | ||
flash.do_flash(target) | ||
qdel(flash) | ||
admin_attack_log(user, target, "Used a stun talisman.", "Was victim of a stun talisman.", "used a stun talisman on") |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
/obj/item/paper/talisman/wrath | ||
talisman_name = "wrath burning" | ||
talisman_desc = "deals heavy damage and shocks mob, while you invoke the talisman magic" | ||
valid_target_type = list( | ||
/mob/living/carbon, | ||
/mob/living/silicon, | ||
/mob/living/simple_animal | ||
) | ||
|
||
/obj/item/paper/talisman/wrath/invoke(mob/living/target, mob/user) | ||
if(!iscultist(user)) | ||
return | ||
user.say("Ощути гнев моего Бога!") | ||
var/obj/item/nullrod/nrod = locate() in target | ||
if(nrod) | ||
user.visible_message("<span class='danger'>\The [user] invokes \the [src] at [target], but they are unaffected.</span>", "<span class='danger'>You invoke \the [src] at [target], but they are unaffected.</span>") | ||
return | ||
else | ||
user.visible_message("<span class='danger'>\The [user] invokes \the [src] at [target].</span>", "<span class='danger'>You invoke \the [src] at [target].</span>") | ||
|
||
if(issilicon(target)) | ||
target.apply_damage(30, DAMAGE_BRUTE) | ||
target.apply_damage(30, DAMAGE_BURN) | ||
else if(iscarbon(target)) | ||
var/mob/living/carbon/C = target | ||
C.apply_damage(25, DAMAGE_BRUTE) | ||
C.apply_damage(25, DAMAGE_SHOCK) | ||
admin_attack_log(user, target, "Used a wrathburning talisman.", "Was victim of a wrathburning talisman.", "used a wrathburning talisman on") | ||
user.unEquip(src) | ||
qdel(src) |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Oops, something went wrong.