Skip to content

Commit

Permalink
Merge pull request #759 from RalseiDreemuurr/codding
Browse files Browse the repository at this point in the history
Добавление новых языков и книг для них
  • Loading branch information
MrCat15352 authored Jun 21, 2024
2 parents 0757929 + b17ffe6 commit b0684b6
Show file tree
Hide file tree
Showing 10 changed files with 237 additions and 5 deletions.
8 changes: 7 additions & 1 deletion code/modules/surgery/organs/tongue.dm
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,13 @@
/datum/language/moffic,
/datum/language/sylvan,
/datum/language/shadowtongue,
/datum/language/ratvar
/datum/language/ratvar,
// [CELADON-ADD] - CELADON_ITEMS
/datum/language/elysm,
/datum/language/alquadim,
/datum/language/thayoss,
/datum/language/fuyo
// [/CELADON-ADD]
))

/obj/item/organ/tongue/Initialize(mapload)
Expand Down
7 changes: 4 additions & 3 deletions mod_celadon/items/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

#### Список PRов:

- https://github.com/MysticalFaceLesS/Shiptest/pulls/#####
- https://github.com/CeladonSS13/Shiptest/pull/759
<!--
Ссылки на PRы, связанные с модом:
- Создание
Expand Down Expand Up @@ -30,7 +30,8 @@ ID мода: CELADON_ITEMS

### Изменения *кор кода*

- Отсутствуют
- `code/modules/surgery/organs/tongue.dm`
-`var/static/list/languages_possible_base = typecacheof`
<!--
Если вы редактировали какие-либо процедуры или переменные в кор коде,
они должны быть указаны здесь.
Expand Down Expand Up @@ -77,7 +78,7 @@ ID мода: CELADON_ITEMS

### Авторы:

MrCat15352, MysticalFaceLesS
MrCat15352, MysticalFaceLesS, RalseiDreemuurr
<!--
Здесь находится твой никнейм
Если работал совместно - никнеймы тех, кто помогал.
Expand Down
2 changes: 1 addition & 1 deletion mod_celadon/items/_items.dm
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,6 @@
/// Строковое описание для модпака. Может использоваться для списка глаголов модпака в качестве описания.
desc = "Модпак добавляет новую одежду и оружие."
/// Строка с авторами этого модпака.
author = "MrCat15352, MysticalFaceLesS"
author = "MrCat15352, MysticalFaceLesS, RalseiDreemuurr"

///**********************************************************************///
2 changes: 2 additions & 0 deletions mod_celadon/items/_items.dme
Original file line number Diff line number Diff line change
Expand Up @@ -22,5 +22,7 @@
#include "code/external_wears.dm"
#include "code/scarfes.dm"
#include "code/accessories.dm"
#include "code/books.dm"
#include "code/languages.dm"

#endif
147 changes: 147 additions & 0 deletions mod_celadon/items/code/books.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,147 @@
/obj/item/elysm_manual
name = "Book of Elysm"
desc = "The book's cover reads: \"The national language of the Republic of Elysium, which is a mixture of Ard al-Elysm Almaveud and newly arrived settlers speaking a variation of Arabic 2378 Sol\""
icon = 'mod_celadon/items/icons/obj/book.dmi'
lefthand_file = 'mod_celadon/items/icons/mob/inhands/books_lefthand.dmi'
righthand_file = 'mod_celadon/items/icons/mob/inhands/books_righthand.dmi'
icon_state = "elysm_book"

/obj/item/elysm_manual/attack_self(mob/living/user)
if(!isliving(user))
return

if(user.has_language(/datum/language/elysm))
to_chat(user, "<span class='boldwarning'>You start skimming through [src], but you already know Elysm.</span>")
return

to_chat(user, "<span class='boldannounce'>You start skimming through [src], and suddenly your mind is filled with arabic symbols.</span>")
user.grant_language(/datum/language/elysm, TRUE, TRUE, LANGUAGE_MIND)


/obj/item/elysm_manual/attack(mob/living/M, mob/living/user)
if(!istype(M) || !istype(user))
return
if(M == user)
attack_self(user)
return

playsound(loc, "punch", 25, TRUE, -1)

if(M.stat == DEAD)
M.visible_message("<span class='danger'>[user] smacks [M]'s lifeless corpse with [src].</span>", "<span class='userdanger'>[user] smacks your lifeless corpse with [src].</span>", "<span class='hear'>You hear smacking.</span>")
else if(M.has_language(/datum/language/elysm))
M.visible_message("<span class='danger'>[user] beats [M] over the head with [src]!</span>", "<span class='userdanger'>[user] beats you over the head with [src]!</span>", "<span class='hear'>You hear smacking.</span>")
else
M.visible_message("<span class='notice'>[user] teaches [M] by beating [M.p_them()] over the head with [src]!</span>", "<span class='boldnotice'>As [user] hits you with [src], arabic symbols flow through your mind.</span>", "<span class='hear'>You hear smacking.</span>")
M.grant_language(/datum/language/elysm, TRUE, TRUE, LANGUAGE_MIND)

/obj/item/alquadim_manual
name = "Book of Alquadim-Elysm"
desc = "The book's cover reads: \"The traditional ancient language of the Elysium Republic, originated in Ard al-Elysm Almaveuda, which are representatives of the Arabic language of 2147, isolated for almost 2 centuries\""
icon = 'mod_celadon/items/icons/obj/book.dmi'
lefthand_file = 'mod_celadon/items/icons/mob/inhands/books_lefthand.dmi'
righthand_file = 'mod_celadon/items/icons/mob/inhands/books_righthand.dmi'
icon_state = "alquadim_elysm"

/obj/item/codespeak_manual/attack_self(mob/living/user)
if(!isliving(user))
return

if(user.has_language(/datum/language/alquadim))
to_chat(user, "<span class='boldwarning'>You start skimming through [src], but you already know Alquadim-Elysm.</span>")
return

to_chat(user, "<span class='boldannounce'>You start skimming through [src], and suddenly your mind is filled with arabic symbols.</span>")
user.grant_language(/datum/language/alquadim, TRUE, TRUE, LANGUAGE_MIND)


/obj/item/codespeak_manual/attack(mob/living/M, mob/living/user)
if(!istype(M) || !istype(user))
return
if(M == user)
attack_self(user)
return

playsound(loc, "punch", 25, TRUE, -1)

if(M.stat == DEAD)
M.visible_message("<span class='danger'>[user] smacks [M]'s lifeless corpse with [src].</span>", "<span class='userdanger'>[user] smacks your lifeless corpse with [src].</span>", "<span class='hear'>You hear smacking.</span>")
else if(M.has_language(/datum/language/alquadim))
M.visible_message("<span class='danger'>[user] beats [M] over the head with [src]!</span>", "<span class='userdanger'>[user] beats you over the head with [src]!</span>", "<span class='hear'>You hear smacking.</span>")
else
M.visible_message("<span class='notice'>[user] teaches [M] by beating [M.p_them()] over the head with [src]!</span>", "<span class='boldnotice'>As [user] hits you with [src], arabic symbols flow through your mind.</span>", "<span class='hear'>You hear smacking.</span>")
M.grant_language(/datum/language/alquadim, TRUE, TRUE, LANGUAGE_MIND)

/obj/item/thayos_manual
name = "Book of Thayoss"
desc = "The book's cover reads: \"The national language of the Thayos Interstellar Empire, which is a modification of Japanese 2475\""
icon = 'mod_celadon/items/icons/obj/book.dmi'
lefthand_file = 'mod_celadon/items/icons/mob/inhands/books_lefthand.dmi'
righthand_file = 'mod_celadon/items/icons/mob/inhands/books_righthand.dmi'
icon_state = "thayos_book"

/obj/item/codespeak_manual/attack_self(mob/living/user)
if(!isliving(user))
return

if(user.has_language(/datum/language/thayoss))
to_chat(user, "<span class='boldwarning'>You start skimming through [src], but you already know Thayoss.</span>")
return

to_chat(user, "<span class='boldannounce'>You start skimming through [src], and suddenly your mind is filled with japanese symbols.</span>")
user.grant_language(/datum/language/thayoss, TRUE, TRUE, LANGUAGE_MIND)


/obj/item/codespeak_manual/attack(mob/living/M, mob/living/user)
if(!istype(M) || !istype(user))
return
if(M == user)
attack_self(user)
return

playsound(loc, "punch", 25, TRUE, -1)

if(M.stat == DEAD)
M.visible_message("<span class='danger'>[user] smacks [M]'s lifeless corpse with [src].</span>", "<span class='userdanger'>[user] smacks your lifeless corpse with [src].</span>", "<span class='hear'>You hear smacking.</span>")
else if(M.has_language(/datum/language/thayoss))
M.visible_message("<span class='danger'>[user] beats [M] over the head with [src]!</span>", "<span class='userdanger'>[user] beats you over the head with [src]!</span>", "<span class='hear'>You hear smacking.</span>")
else
M.visible_message("<span class='notice'>[user] teaches [M] by beating [M.p_them()] over the head with [src]!</span>", "<span class='boldnotice'>As [user] hits you with [src], japanese symbols flow through your mind.</span>", "<span class='hear'>You hear smacking.</span>")
M.grant_language(/datum/language/thayoss, TRUE, TRUE, LANGUAGE_MIND)

/obj/item/fuyo_manual
name = "Book of Fuyo"
desc = "The book's cover reads: \"The second language of the Taios Interstellar Empire, which is a modification of Chinese 2475\""
icon = 'mod_celadon/items/icons/obj/book.dmi'
lefthand_file = 'mod_celadon/items/icons/mob/inhands/books_lefthand.dmi'
righthand_file = 'mod_celadon/items/icons/mob/inhands/books_righthand.dmi'
icon_state = "fuyo_book"

/obj/item/codespeak_manual/attack_self(mob/living/user)
if(!isliving(user))
return

if(user.has_language(/datum/language/fuyo))
to_chat(user, "<span class='boldwarning'>You start skimming through [src], but you already know Fuyo.</span>")
return

to_chat(user, "<span class='boldannounce'>You start skimming through [src], and suddenly your mind is filled with chinese symbols.</span>")
user.grant_language(/datum/language/fuyo, TRUE, TRUE, LANGUAGE_MIND)


/obj/item/codespeak_manual/attack(mob/living/M, mob/living/user)
if(!istype(M) || !istype(user))
return
if(M == user)
attack_self(user)
return

playsound(loc, "punch", 25, TRUE, -1)

if(M.stat == DEAD)
M.visible_message("<span class='danger'>[user] smacks [M]'s lifeless corpse with [src].</span>", "<span class='userdanger'>[user] smacks your lifeless corpse with [src].</span>", "<span class='hear'>You hear smacking.</span>")
else if(M.has_language(/datum/language/fuyo))
M.visible_message("<span class='danger'>[user] beats [M] over the head with [src]!</span>", "<span class='userdanger'>[user] beats you over the head with [src]!</span>", "<span class='hear'>You hear smacking.</span>")
else
M.visible_message("<span class='notice'>[user] teaches [M] by beating [M.p_them()] over the head with [src]!</span>", "<span class='boldnotice'>As [user] hits you with [src], chinese symbols flow through your mind.</span>", "<span class='hear'>You hear smacking.</span>")
M.grant_language(/datum/language/fuyo, TRUE, TRUE, LANGUAGE_MIND)
76 changes: 76 additions & 0 deletions mod_celadon/items/code/languages.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
/datum/language/elysm
name = "Elysm"
desc = "The national language of the Republic of Elysium, which is a mixture of Ard al-Elysm Almaveud and newly arrived settlers speaking a variation of Arabic 2378 Sol."
key = "e"
flags = LANGUAGE_HIDE_ICON_IF_NOT_UNDERSTOOD
space_chance = 40
syllables = list(
"", "", "", "", "",
"", "", "", "", "",
"", "", "", "", "",
"", "", "", "", "",
"", "", "", "", "",
"", "", "", "", "",
"", "", "", "", ""
)
icon = "mod_celadon/items/icons/obj/language.dmi"
icon_state = "elysm"
default_priority = 90

/datum/language/alquadim
name = "Alquadim-Elysm"
desc = "The traditional ancient language of the Elysium Republic, originated in Ard al-Elysm Almaveuda, which are representatives of the Arabic language of 2147, isolated for almost 2 centuries."
key = "ae"
flags = LANGUAGE_HIDE_ICON_IF_NOT_UNDERSTOOD
space_chance = 40
syllables = list(
"", "", "", "", "",
"", "", "", "", "",
"", "", "", "", "",
"", "", "", "", "",
"", "", "", "", "",
"", "", "", "", "",
"", "", "", "", ""
)
icon = "mod_celadon/items/icons/obj/language.dmi"
icon_state = "alquadim_elysm"
default_priority = 90

/datum/language/thayoss
name = "Thayoss"
desc = "The national language of the Taios Interstellar Empire, which is a modification of Japanese 2475."
key = "t"
flags = LANGUAGE_HIDE_ICON_IF_NOT_UNDERSTOOD
space_chance = 40
syllables = list(
"", "", "", "",
"", "", "", "",
"", "", "", "",
"", "", "", "",
"", "", "", "",
"", "", "", "",
"", "", "", ""
)
icon = "mod_celadon/items/icons/obj/language.dmi"
icon_state = "thayos"
default_priority = 90

/datum/language/fuyo
name = "Fuyo"
desc = "The second language of the Taios Interstellar Empire, which is a modification of Chinese 2475."
key = "f"
flags = LANGUAGE_HIDE_ICON_IF_NOT_UNDERSTOOD
space_chance = 40
syllables = list(
"", "", "",
"", "", "",
"", "", "艾和",
"", "伊可罗肯", "艾斯",
"", "", "",
"", "艾了", "",
"", "艾姆", "艾弗"
)
icon = "mod_celadon/items/icons/obj/language.dmi"
icon_state = "fuyo"
default_priority = 90

Binary file not shown.
Binary file not shown.
Binary file added mod_celadon/items/icons/obj/book.dmi
Binary file not shown.
Binary file added mod_celadon/items/icons/obj/language.dmi
Binary file not shown.

0 comments on commit b0684b6

Please sign in to comment.