forked from NebulaSS13/Nebula
-
Notifications
You must be signed in to change notification settings - Fork 9
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Adding runestone crafting and very barebones anima material definitions.
- Loading branch information
1 parent
7d410f7
commit 107f3bf
Showing
21 changed files
with
585 additions
and
10 deletions.
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
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
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
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
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
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
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 @@ | ||
#define ANIMA_SPELL_AOE "aoe" | ||
#define ANIMA_SPELL_MELEE "melee" | ||
#define ANIMA_SPELL_RANGED "ranged" | ||
|
||
/decl/modpack/anima | ||
name = "Anima Content" |
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,13 @@ | ||
#ifndef MODPACK_ANIMA | ||
#define MODPACK_ANIMA | ||
// BEGIN_INCLUDE | ||
#include "_anima.dm" | ||
#include "anima_materials.dm" | ||
#include "anima_stack.dm" | ||
#include "runestones.dm" | ||
#include "spell_archetypes.dm" | ||
#include "spell_datum.dm" | ||
#include "spell_effect.dm" | ||
#include "spellscribing.dm" | ||
// END_INCLUDE | ||
#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,65 @@ | ||
/decl/material/solid/anima | ||
name = "anima" | ||
solid_name = "crystalline anima" | ||
uid = "mat_anima" | ||
opacity = 0.7 | ||
color = COLOR_GRAY40 | ||
abstract_type = /decl/material/solid/anima | ||
uid = "mat_anima_generic" | ||
var/anima_type = "unaspected" | ||
var/runestone_glow_intensity = 0.3 | ||
/// Simple spells that can be scribed onto runestones or cast on the fly. | ||
var/list/cantrips | ||
/// Spell used when a blank is cracked. | ||
var/decl/runestone_spell_archetype/undirected_spell | ||
/// Skill used for general spell knowledge. | ||
var/arcana_skill = SKILL_SCIENCE // TODO: arcana or magic skill | ||
|
||
/decl/material/solid/anima/Initialize() | ||
name = "[anima_type] anima" | ||
solid_name = "crystalline [anima_type] anima" | ||
liquid_name = "molten [anima_type] anima" | ||
gas_name = "gaseous [anima_type] anima" | ||
for(var/spell in cantrips) | ||
cantrips -= spell | ||
cantrips |= GET_DECL(spell) | ||
undirected_spell = GET_DECL(undirected_spell) | ||
return ..() | ||
|
||
/decl/material/solid/anima/proc/get_spells() | ||
return list() | ||
|
||
/decl/material/solid/anima/proc/get_cantrips_by_effect_type(mob/user, effect_type) | ||
// TODO: check arcana_skill on user | ||
for(var/decl/runestone_spell_archetype/cantrip in cantrips) | ||
if(cantrip.has_effect_type(effect_type)) | ||
LAZYDISTINCTADD(., cantrip) | ||
|
||
/decl/material/solid/anima/air | ||
anima_type = "air" | ||
color = COLOR_SKY_BLUE | ||
runestone_glow_intensity = 0.6 | ||
uid = "mat_anima_air" | ||
|
||
/decl/material/solid/anima/fire | ||
anima_type = "fire" | ||
color = COLOR_ORANGE | ||
runestone_glow_intensity = 0.6 | ||
cantrips = list( | ||
/decl/runestone_spell_archetype/flash, | ||
/decl/runestone_spell_archetype/flare | ||
) | ||
undirected_spell = /decl/runestone_spell_archetype/flare | ||
uid = "mat_anima_fire" | ||
|
||
/decl/material/solid/anima/water | ||
anima_type = "water" | ||
color = COLOR_CYAN | ||
runestone_glow_intensity = 0.6 | ||
uid = "mat_anima_water" | ||
|
||
/decl/material/solid/anima/stone | ||
anima_type = "stone" | ||
color = COLOR_SILVER | ||
runestone_glow_intensity = 0.6 | ||
uid = "mat_anima_stone" |
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,57 @@ | ||
/obj/item/stack/material/anima | ||
name = "blanks" | ||
desc = "Crystalline anima, cut into rough, unworked rounds and ready for etching." | ||
singular_name = "blank" | ||
plural_name = "blanks" | ||
icon_state = "anima" | ||
icon = 'mods/content/anima/icons/anima_blank.dmi' | ||
plural_icon_state = "anima-mult" | ||
max_icon_state = "anima-max" | ||
stack_merge_type = /obj/item/stack/material/anima | ||
crafting_stack_type = /obj/item/stack/material/anima | ||
material_alteration = MAT_FLAG_ALTERATION_COLOR | MAT_FLAG_ALTERATION_NAME | MAT_FLAG_ALTERATION_DESC | ||
max_amount = 5 | ||
|
||
/obj/item/stack/material/anima/mapped/fire | ||
amount = 1 | ||
material = /decl/material/solid/anima/fire | ||
is_spawnable_type = TRUE | ||
|
||
/obj/item/stack/material/anima/mapped/fire/five | ||
name = "5 fire anima blanks" | ||
amount = 5 | ||
|
||
/obj/item/stack/material/anima/mapped/water | ||
amount = 1 | ||
material = /decl/material/solid/anima/water | ||
is_spawnable_type = TRUE | ||
|
||
/obj/item/stack/material/anima/mapped/water/five | ||
name = "5 water anima blanks" | ||
amount = 5 | ||
|
||
/obj/item/stack/material/anima/mapped/air | ||
amount = 1 | ||
material = /decl/material/solid/anima/air | ||
is_spawnable_type = TRUE | ||
|
||
/obj/item/stack/material/anima/mapped/air/five | ||
name = "5 air anima blanks" | ||
amount = 5 | ||
|
||
/obj/item/stack/material/anima/mapped/stone | ||
amount = 1 | ||
material = /decl/material/solid/anima/stone | ||
is_spawnable_type = TRUE | ||
|
||
/obj/item/stack/material/anima/mapped/stone/five | ||
name = "5 stone anima blanks" | ||
amount = 5 | ||
|
||
/decl/stack_recipe/anima | ||
abstract_type = /decl/stack_recipe/anima | ||
craft_stack_types = /obj/item/stack/material/anima | ||
required_material = /decl/material/solid/anima | ||
|
||
/decl/stack_recipe/anima/runestone | ||
result_type = /obj/item/runestone |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Oops, something went wrong.