MSE 2.5.2 and Showcase Catchup (#18)

* Updated to MSE 2.5.2
* Added Assassin's Creed Memory Corridor
* Added Bloomburrow Borderless Anime
* Added Bloomburrow Woodland
* Added Compleated Planeswalkers
* Added Duskmourn Paranormal
* Added Kamigawa Neon
* Added Kamigawa Ninja
* Added Kamigawa Samurai
* Added Innistrad Fang
* Added Theros Constellation
* Added Capenna Art Deco
* Added Capenna Golden Age
* Added Capenna Skyscraper
* Added Doctor Who TARDIS
* Added Dominaria Stained Glass
* Added Eldraine Enchanting Tales
* Added Fallout PipBoy
* Added Ikoria Crystal
* Added Innistrad Double Feature
* Added Innistrad Equinox
* Added Ixalan Treasures
* Added Ixalan Legends
* Added Ixalan Caverns
* Added Lord of the Rings Ring
* Added Lord of the Rings Scroll
* Added Ravnica City Mural
* Added Ravnica Dossier
* Added Tarkir Dragon Wing
* Added Thunder Junction Breaking News
* Added Thunder Junction Vault
* Added Thunder Junction Wanted Poster
* Added Unfinity Of Tomorrow
* Added Unfinity Attractions
* Added Secret Lair Baseball
* Added revamped option to Amonkhet Invocations
* Added UB stamp compatibility to old showcase frames
* Added foils and popouts modules
* Add foil_mask blending system
* Fixes #57
This commit is contained in:
GenevensiS
2024-09-23 21:11:14 +02:00
committed by GitHub
parent 8fd810b1d3
commit 206de32133
3117 changed files with 61236 additions and 27952 deletions

View File

@@ -26,5 +26,9 @@ Pack containing nearly all public Magic templates for MSE, except outdated ones.
# CardConjurer
Some template images are provided by [CardConjurer](https://cardconjurer.com/):
Praetor Showcase, JP Mystical Archive, PT Box for Mystical Archives
* Innistrad Double Feature
* JP Mystical Archive, PT Box for Mystical Archives
* New Capenna Art Deco, Golden Age, Skyscraper Showcases
* Praetor Showcase
* Theros Constellations
* Unfinity Attractions

Binary file not shown.

View File

@@ -1,59 +1,137 @@
MSE Template Packs 1.3.0 Showcase Catchup (PRERELEASE)
HOUSEKEEPING
• Custom Watermarks will need to be moved to magic-mainframe-extras from magic-watermarks!
• I have created a tool at https://mse-editor.neocities.org/ which you can upload MSE files to in order to patch their data. Not all sets will need this, but it will stop your console from blowing up with harmless warnings the first time you load sets
MSE 2.5
Genevensis and Hagan have been doing excellent work at getting MSE compiled and edited lately, and so this update also has us upgrading from MSE 2.1.2 all the way to MSE 2.5.1! What does that mean for you?
UI Updates:
• When selecting Games or Templates, there is now a search bar that allows you to filter templates.
• Added the ability to underline text via Ctrl+U or the [u]U[/u] buttom on the top panel.
• The template canvas now takes DPI into account, so high res templates will no longer be massively larger than other templates. They will still export at full size.
• Symbol files will no longer complain about dependencies.
Image Updates:
• The Image Importer now has buttons to vertically and/or horizontally center input art.
• In Edit -> Preferences -> Internal, you can now set a scale at which new images are imported into MSE. This lets you save images at double size, so they don't turn into pixely messes when you zoom out. In this same tab there is also an option to store images with their file extension, to make external editing of MSE files easier.
• The Export and View zooms are now seperate options.
• MSE can now find ".jpeg" and ".tiff" images.
Template Development Updates:
• Extra card data is now available for template development under `extra_card.field_name` and `extra_card_style.field_name.style_name`!
• The built-in functions `width_of(image)` and `height_of(image)` have been added.
• The built-in function `to_card_image(card[, zoom:100, angle:0])` has been added, so Export templates can now edit card images, to do things like split DFC images.
• Stylesheets can now define `card regions`, with properties `name:, x:, y:, width:, height:`. These can be accessed in the array stylesheet.card_regions to help the script decide how to split images with multiple regions.
• The built-in function `get_card_styling(card)` has been added, which returns the card.styling object which was not properly accessible in export templates.
• The built-in function `to_date` now accepts "now" as a parameter.
• Added combine modes "greater than N" and "smaller than N", where N is multiples of 5 between 0 and 255. These apply to pixels which have all their RGB values greater/smaller than N. The main use case for this is applying textures to text; An example texture `set_combine("texture.png", combine:"greater than 160")` layered over text will be masked to only appear over white and light gray pixels. This works best when the text is on a high contrast background, otherwise the texture may be applied to the background.
• Right margin now works, with the same 10x divisor than left margin has.
Export templates
• Fixed a bug where Export Templates with many options didn't have a scrollbar.
• Multi-selecting cards in the Export list now lets you check/uncheck all selected cards.
• Export templates can now write to subdirectories.
Bug Fixes:
• Fixed a bug where some Unicode, such as Kanji and Cryllic characters, were unable to be typed.
• Fixed a bug where the Add Multiple Cards scripts didn't load until you switched to another tab first.
• Fixed a bug where long typelines would get squished during printing.
SHOWCASE FRAMES
The main focus of this update was catching up on all the Showcase frames that Genevensis had been working on. As you'll see, it grew past that a bit, but the Full and M15 Packs now contain...
• (New) Assassin's Creed Memory Corridor
• (New) Bloomburrow Borderless Anime
• (New) Bloomburrow Woodland
• (New) Duskmourn Paranormal
• (New) Kamigawa Neon
• (New) Kamigawa Ninja
• (New) Kamigawa Samurai
• (New) Innistad Fang (Crimson Vow)
• (New) Theros Constellation
Updated: These frames were previously released, but have gotten some updates, including combining the HD frames and 375x523 frames thanks to MSE 2.5. If you used the HD frames, use the neocities link to convert your set files so they will use the proper template.
• Capenna Art Deco & Art Deco Walker
• Capenna Golden Age
• Capenna Skyscraper
• Doctor Who TARDIS
• Dominaria Stained Glass
• Eldraine Enchanting Tales
• Fallout PipBoy
• Ikoria Crystal
• Innistrad Double Feature & Double Feature Walker
• Innistrad Equinox (Midnight Vow)
• Ixalan Treasures
• Ixalan Legends
• Ixalan Caverns
• Lord of the Rings Ring
• Lord of the Rings Scroll & Scroll Saga
• Ravnica City Mural
• Ravnica Dossier
• Tarkir Dragon Wing
• Thunder Junction Breaking News
• Thunder Junction Vault
• Thunder Junction Wanted Poster
• Unfinity Showcase of Tomorrow
• Unfinity Attractions
• Secret Lair Baseball Cards
• Amonkhet Invocations now has a setting for "revamped mode" to use the modified layout used in March of the Machine.
• Fallout PipBoy can now select different sections on the HUD.
• Thunder Junction Breaking News now supports the Cruel Ultimatum frame for all colors.
MAGIC MODULES
Genevensis has figured out a powerful tool for template building, which has been added to the pack as magic-modules.mse-include
magic-modules will allow any template to very easily gain access to complicated field behavior, such as...
MAGIC MODULE ROLLOUT
[todo applicable frames]
Frames can now use Standard, Acorn, Universes Beyond, Heart, and Alchemy stamps!
• Frames can also add the Alchemy name symbols, which apply in CARDNAME!
• Frames can add styling options to change their casting cost mana symbols, apply custom fonts, or use the rarity recolor and offset options.
• Frames can use Genevensis's Corners tech for square, diagonal, aliased, or pixel curve corners.
• Frames can use the expanded credit suite, which allows up to 4 spots around the art credit to add additional symbols for Mechanics, Flavor Text, Frame, etc.
• Frames can use the updated OCR fields, which have UB Copyright, The List icon, and the new card numbering code (see Parititons below).
Genevensis has figured out a powerful tool for template building: magic-modules.mse-include. magic-modules will allow frames to access complicated field definitions, which can be updated across all frames at once. Some exciting things magic-modules has allowed us to add already:
M15 frames can now use Standard, Acorn, Universes Beyond, Heart, Alchemy, and even Custom stamps! Set fields have been added to define a set's default stamp shape, and the stamping logic (such as Universes Beyond having all cards stamped, but using a non-holo stamp for non rare cards). This also lets you disable stamps, so the "use holofoil stamps" option has been removed from nearly all templates. Some templates will also have a copy of these options in their Styling options, so you can have a normally stamped set that uses Universes Beyond stamping only on the PipBoy Frame, for example.
• M15 frames can use the expanded credit suite, which allows up to 4 spots around the art credit to add additional symbols for Mechanics, Flavor Text, Frame, and additional Artists.
• M15 frames now use the updated OCR fields, which have UB Copyright, The List icon, and the new card numbering code (see Parititons below).
All frames can also add the Alchemy name symbols, which also appear in the CARDNAME atom!
All frames can now use Genevensis's Corners tech for square, diagonal, aliased, or pixel curve corners.
• Frames can now easily add styling options to change their casting cost mana symbols, apply custom fonts, or use the rarity recolor and offset options.
• Frames can use the loyalty module to painlessly make Planeswalker versions of frames.
• Frames can use the symbols module to include transform symbols, which now lets you to select Modal DFC icons.
• The watermarks module now simplifies watermarks to one script instead of three include files.
There is a tool at https://mse-editor.neocities.org/ to help convert frames that have had some minor backend changes due to the big code updates.
• The watermarks module now simplifies watermarks to one script instead of three include files. REMINDER: If you have custom watermarks, you will now need to move these to the magic-mainframe-extras folder rather than magic-watermarks!
You can run your set on the neocities tool to clean up warnings due to code changes: Most of them are completely harmless and will stop showing up once you save. The main data that could be lost is Lesson/Transform symbols on M15 Mainframe and Mainframe DFC.
PARTITIONS
Card number partitioning is a script I've been kicking around for months, and we've finally got all the knots sorted out!
• Cards can now be put into partitions 0-9 and A-Z, which will change how the automatic sorter sorts them. This allows MSE to handle things like overcounted cards, and face commanders being listed before everything else.
• Cards are in Partition A by default. Paritions 0-9 sort before these cards, Partitions B-Z sort after them. Cards within the same partition sort under the normal logic (color then alphabetical).
• Partitions N-Z by default are "over-partition", and their cards won't be counted in the set's total. There is a set option for displaying these cards in the "301/300" or "301" format. There is also a set option for changing the "last main partition" that does not have this effect, default "M".
• Currently this is supported on M15 Mainframe and Adventures. Other frames can now add the card field "parition select" to access a card's partition.
• Normally the selector for this is put over the automated card number. You can click there to select a new parition for a card.
• Additionally, there is a set option for defining the card number style, "0001", "0001/0099", "001", "001/099", "1", and "1/99"
ADVENTURE OVERHAUL
• Adventures can now customize both halves of the textbox, allowing for two pages.
• Added support for flat pages and pages with only a nameline and no typeline.
• Added "page decorations," images that layer over pages that can be added to magic-mainframe-extras.
PARTITIONS
Cards can now be put into partitions 0-9 and A-Z, which will change how the automatic sorter sorts them. This allows MSE to handle things like overcounted cards, and face commanders being listed before everything else.
Cards are in Partition A by default. Paritions 0-9 sort before these cards, Partitions B-Z sort after them. Cards within the same partition sort under the normal logic (color then alphabetical).
Partitions N-Z by default are "over-partition", and their cards won't be counted in the set's total. There is a set option for displaying these cards in the "301/300" or "301" format. There is also a set option for changing the "last main partition" that does not have this effect, default "M".
Currently this is supported on M15 Mainframe and Adventures. Other frames can now add the card field "parition select" to access a card's partition.
Normally this is put over the automated card number. You can click there to select a new parition for a card.
Additionally, there is a set option for defining the card number style, "0001", "0001/0099", "001", "001/099", "1", and "1/99"
MAINFRAME SUITE UPDATES
Mainframe templates now have "Custom Border", which allows you to use a trim frame akin to Vehicle or Nyx with images from magic-mainframe-extras. This can be either a single image, which will use the form "image.png", or use color blending, which will take the form "-color-image.png" and use images wimage.png, uimage.png, etc.
Mainframe templates now automatically apply the Nyx frame to enchantments. This is controlled by the new Set option "auto nyx".
Mainframe templates can now provide an alternate image source to use for Nyx via the "alternate nyx" Set option. This can be from magic-mainframe-extras (with "folder/image.png" using "folder/wimage.png", "folder/uimage.png" etc), or use "star", a built in alternate from TVP's Altered Plus. More built-in will likely be added in future.
• M15 Mainframe, M15 Adventures, and M15 Sagas now support Universes Beyond, which default to automated on cards with triangle stamps.
M15 Sagas and Mainframe DFC now support Cases.
M15 Sagas and Mainframe DFC now allow for customization of Class Level Bars, adding bars without arrows, the Case line, and the ability to provide a custom image from magic-mainframe-extras.
• Mainframe DFC now supports planeswalkers with 5 and 6 abilities.
• Mainframe DFC now has an option to remove the backface rarity.
• Mainframe DFC's Saga and Clear frames now have proper circles around their transform icon.
• "Snap chapter to box" options now update automatically, without needing a closing comma.
• M15 Mainframe's Lesson frame is now accessed by clicking the big square to the left of the name, with the empty tombstone/alchemy box moving further left. Note you will need to re-assign Lesson symbols, either with the neocities patcher or doing it by hand.
• M15 Mainframe now has Miracle support for Legendary, FNM, Inverted, Conspiracy, and Universes Beyond frames.
• M15 Mainframe now has an option to prevent trim frames like Snow and Nyx from covering the Devoid texture.
• Mainframe Planes has been updated to the version of the frame from MOM. The old frame is retained behind a style option. The code has been updated so the two textboxes are connected, and it now automates the divider.
OTHER UPDATES
Added Custom Border to M15 Mainframe, Mainframe DFC, and Adventure, which allows defining a trim frame similar to Vehicle or Nyx with images from magic-mainframe-extras
Mainframe frames now automatically apply the Nyx frame to enchantments. This can be disabled, or be given a folder of alternate images from magic-mainframe-extras with the Auto Nyx setting in the Set tab.
• Keywords and types for MKM, PIP, OTJ, MH3, BLB, and DSK have been added.
• Added Capenna, DND, Desparked, Judge Academy, MLP, Shooting Star, Transformers, and hi-res mana symbol watermarks.
• Added support for Custom Watermarks up to a maximum size of 1024x1024. Watermarks that aren't 500x500 will still need to include their height and width.
• Split the "blend with colors" watermark option into one that applies to custom watermarks and one that applies to default watermarks.
• Reorganized the Set tab into something hopefully easier to navigate.
The Set tab has been reorganized into something hopefully easier to navigate.
"Alias as CARDNAME" has been replaced with "CARDNAME replacement", which will let you choose between CARDNAME taking the card's name, the card's alias, or the card's types (as seen in Foundations cards).
• Keywords and types have been updated through Duskmourn.
• Added the keyword utility handle_action_rt(to:"name", "Action"). This can be used to add "To {name}," before the reminder text when it isn't right next to the keyword, such as handle_action_rt(to:"forage", "Exile"). capitalization matters here.
• Added the keyword utility handle_merged_rt("Normal", moved:"Alternate"). This can be used to add clarifying text when reminder text is merged, like in [card]Cache Grab[/card]. Unlike the previous, this only changes during reminder text merges, not any distance from the keyword.
Added the up and down triangles as mainframe transform options.
• Added support for dungeons with 8 levels.
Added option to remove backface rarity symbol to Mainframe DFC.
Added option to remove the colored name banner from Unstable Basics.
Added Miracle support to M15 Mainframe's Legendary, FNM, Inverted, and Conspiracy frames.
• Added an option to prevent trim frames like Snow and Nyx from covering the Devoid texture.
Clear and Saga DFCs now have a proper circle around the transform node.
• Classes can now use level bars without arrows, a basic line, or a custom image.
• Cases are now supported on M15 Sagas and Mainframe DFC.
• 6 ability planeswalkers are now supported on Mainframe DFC.
• "Alias as CARDNAME" has been replaced with "CARDNAME replacement", which will let you choose between CARDNAME taking the card's name, the card's alias, or the card's types (as seen in Foundations cards)
Bloomburrow's Pawprint symbol has been added as [J].
• Added Capenna, DND, Desparked, Judge Academy, MLP, Shooting Star, Transformers, and hi-res mana symbol watermarks.
Custom Watermarks can now have a maximum size of 1024x1024, and no longer need to define their height and width.
The "blend with colors" watermark option has been split into one that applies to custom watermarks and one that applies to default watermarks.
Transform icons now include and default to the Up and Down triangles. Modal DFC icons are now selectable, and on DFCs will attempt to make the card a modal DFC when you do so.
• Added an option to Unstable Basics to remove the colored name banner.
Added eighth level support to M15 Dungeons.
• Added omni and polyamory flags to Pride Pinlines.
BUG FIXES
@@ -63,7 +141,6 @@ BUG FIXES
• Fixed many template warnings across the template packs.
• Fixed a bug with custom italic font.
• Fixed a bug with token custom font using the wrong fonts.
• Snap chapter to box now updates without closing commas.
TEMPLATE CLEANUP
• magic-mainframe-extras examples have been cleaned up and moved into one folder. The repo now has a .gitignore for this so it's easier to run MSE off the repo.
@@ -73,3 +150,4 @@ TEMPLATE CLEANUP
• Redudant with M15 Mainframe: M15 Clear, M15 Custom, M15 Metropolis, Mined & Mined Planeshifted, M15 Miracle, M15 Nyx, M15 Planeshifted & Planeshifted Leveler, M15 Vehicles, Vehicles
• Redundant with Mainframe Tokens: M15 Tokens
• Redundant with CN2 Styles and M15 Mainframe: TTK Conspiracy
• Again, there is a tool at https://mse-editor.neocities.org/ to help convert these frames to their current ones.

View File

@@ -1,6 +1,6 @@
mse version: 2.0.0
full name: Magic The Gathering, card blend utilities
version: 2015-05-23
version: 2024-09-19
# This file doesn't do anything, other files in this directory can be included
# in game/style files:

View File

@@ -1095,49 +1095,52 @@ spotlight_watermark_blend := {
if type_name(input) == type_name("string") and contains(input, match:".png,") then (
array := split_text(input+",,", match:",")
input := array.0
l := min(to_number(array.1),500)
h := min(to_number(array.2),500)
)
wmc := watermark_colors(face:face)
c1 := wmc.0 + (if contains(face, match:"land") then "l") + "spotlight.png"
c2 := wmc.1 + (if contains(face, match:"land") then "l") + "spotlight.png"
wmdir := watermark_include + "/spotlight/"
if (h != 500 or l != 500) then (
wmdir := wmdir + "1024/"
custom_img := to_image(input)
l := width_of(custom_img)
h := height_of(custom_img)
wm := ""
if l > 1024 or h > 1024 then (
trace("Maximum custom watermark dimensions are 1024x1024.")
)else(
wmdir := watermark_include + "/spotlight/"
c1 := crop(wmdir+c1, height:h, width:l, offset_x:0, offset_y:0)
c2 := crop(wmdir+c2, height:h, width:l, offset_x:0, offset_y:0)
)else(
c1 := wmdir + c1
c2 := wmdir + c2
mask := input
wm := set_alpha(
alpha: alpha
input:
linear_blend(
image1:
masked_blend(
light: custom_img
dark: c1
mask: mask
)
image2:
masked_blend(
light: custom_img
dark: c2
mask: mask
)
x1: 0.4, y1: 0
x2: 0.6, y2: 0
)
)
)
mask := input
set_alpha(
alpha: alpha
input:
linear_blend(
image1:
masked_blend(
light: input
dark: c1
mask: mask
)
image2:
masked_blend(
light: input
dark: c2
mask: mask
)
x1: 0.4, y1: 0
x2: 0.6, y2: 0
)
)
}@(h:500,l:500,face:1,alpha:0.2)
wm
}@(face:1,alpha:0.2)
shadow_watermark_blend := {
set_combine(
combine:"shadow",
set_alpha(
alpha: 0.5,
alpha: alpha,
drop_shadow(
offset_x: -0.01,
offset_y: 0.03,
@@ -1151,13 +1154,13 @@ shadow_watermark_blend := {
)
)
)
}
}@(alpha:0.5)
glow_watermark_blend := {
set_combine(
combine:"glow",
set_alpha(
alpha: 0.3,
alpha: alpha,
drop_shadow(
offset_x: -0.01,
offset_y: 0.03,
@@ -1171,13 +1174,18 @@ glow_watermark_blend := {
)
)
)
}
}@(alpha:0.3)
watermark_blend :=
{
dark_textbox := (face == 1 and invert_watermark())
or (face == 2 and invert_watermark2())
or (face == 3 and invert_watermark3())
shadow_alpha := 0.5
glow_alpha := 0.3
backup := if custom then set.blend_with_colors else set.use_blended_watermarks
option := styling.watermark_render or else backup
dark_textbox := (face == 1 and invert_watermark_1())
or (face == 2 and invert_watermark_2())
or (face == 3 and invert_watermark_3())
if option == "inverted" then dark_textbox := not dark_textbox
invert_base_image := false
if dark_textbox then
(
@@ -1185,12 +1193,19 @@ watermark_blend :=
spotlight_alpha := dark_spotlight_alpha
invert_base_image := true
)
backup := if custom then set.blend_with_colors else set.use_blended_watermarks
option := styling.watermark_render or else backup
user_alpha := styling.watermark_opacity_percentage or else ""
user_alpha := if user_alpha != "" then get_alpha_percentage(user_alpha, default: -1.0) else -1.0
if user_alpha >= 0.0 then
(
alpha := user_alpha
spotlight_alpha := user_alpha
shadow_alpha := user_alpha
glow_alpha := user_alpha
)
if colored then set_alpha(alpha: alpha, input)
else if option == "yes" or option == "blend with colors" then spotlight_watermark_blend(h:h, l:l, face:face, alpha: spotlight_alpha, input)
else if option == "shadow" then shadow_watermark_blend(input)
else if option == "glow" then glow_watermark_blend(input)
else if option == "shadow" then shadow_watermark_blend(input, alpha: shadow_alpha)
else if option == "glow" then glow_watermark_blend(input, alpha: glow_alpha)
else if invert_base_image then set_alpha(alpha: alpha, invert_image(input))
else set_alpha(alpha: alpha, input)
}@(h:500,l:500,colored:false,face:1,alpha:0.25,spotlight_alpha:0.75,dark_alpha:0.25,dark_spotlight_alpha:0.35,custom:false)

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

View File

@@ -0,0 +1,821 @@
mse version: 2.1.2
game: magic
short name: Counter Sheet
full name: Punch-Out Counters
icon: card_sample.png
position hint: 999
version: 2024-05-20
depends on:
package: magic.mse-game
version: 2014-06-25
depends on:
package: magic-modules.mse-include
version: 2024-05-20
depends on:
package: magic-mana-large.mse-symbol-font
version: 2007-09-23
depends on:
package: magic-mana-small.mse-symbol-font
version: 2007-09-23
depends on:
package: magic-mainframe-extras.mse-include
version: 2007-09-23
card width: 744
card height: 1039
card dpi: 297
### blanks by GenevensiS
### code by GenevensiS
############################################################## Extra scripts
init script:
card_shape := { "counter" }
card_full_name := { value }
card_full_name_default := { "Counter Sheet" }
has_identity := { false }
has_identity_2 := { false }
is_promo := { styling.promo }
is_unsorted := { styling.remove_from_autocount }
symbol_offset := { offset(input, counter: counter, entity: "symbol") }
text_offset := { offset(input, counter: counter, entity: "text") }
offset :=
{
field := styling[entity + "_" + counter + "_offsets"] or else ""
split := split_comma(field)
if length(split) > input and split[input] != "" and split[input] != "-" then clamp(split[input], maximum:500, minimum:-500) else 0
}
information_offset_top_1 := { 10 }
############################################################## Extra style options
styling field:
type: boolean
name: hide name text
description: Make the nameline visible to edit it, then turn it back invisible.
initial: yes
styling field:
type: color
name: background color
description: Use the specified color for the background.
choice:
name: black
color: rgb(0,0,0)
choice:
name: white
color: rgb(255,255,255)
initial: black
styling field:
type: color
name: inner line color
description: Use the specified color for the inner lines.
choice:
name: black
color: rgb(0,0,0)
choice:
name: white
color: rgb(255,255,255)
choice:
name: canon
color: rgb(158,47,62)
initial: rgb(158,47,62)
styling field:
type: color
name: outer line color
description: Use the specified color for the outer lines.
choice:
name: black
color: rgb(0,0,0)
choice:
name: white
color: rgb(255,255,255)
choice:
name: canon
color: rgb(36,155,209)
initial: rgb(36,155,209)
styling field:
type: color
name: symbol color
description: Use the specified color for the symbols.
choice:
name: black
color: rgb(0,0,0)
choice:
name: white
color: rgb(255,255,255)
initial: white
styling field:
type: color
name: text color
description: Use the specified color for the texts.
choice:
name: black
color: rgb(0,0,0)
choice:
name: white
color: rgb(255,255,255)
initial: white
styling field:
type: text
name: symbol 1 custom image location
description: The location of a PNG image inside magic-mainframe-extras.mse-include, to be used for the top left symbol.
styling field:
type: text
name: symbol 1 offsets
description: Formatted as "left,top,width,height". Moves and stretches the top left symbol by that many pixels.
styling field:
type: text
name: text 1 offsets
description: Formatted as "left,top,width,height". Moves and stretches the top left text box by that many pixels.
styling field:
type: text
name: symbol 2 custom image location
description: The location of a PNG image inside magic-mainframe-extras.mse-include, to be used for the top right symbol.
styling field:
type: text
name: symbol 2 offsets
description: Formatted as "left,top,width,height". Moves and stretches the top right symbol by that many pixels.
styling field:
type: text
name: text 2 offsets
description: Formatted as "left,top,width,height". Moves and stretches the top right text box by that many pixels.
styling field:
type: text
name: symbol 3 custom image location
description: The location of a PNG image inside magic-mainframe-extras.mse-include, to be used for the middle left symbol.
styling field:
type: text
name: symbol 3 offsets
description: Formatted as "left,top,width,height". Moves and stretches the middle left symbol by that many pixels.
styling field:
type: text
name: text 3 offsets
description: Formatted as "left,top,width,height". Moves and stretches the middle left text box by that many pixels.
styling field:
type: text
name: symbol 4 custom image location
description: The location of a PNG image inside magic-mainframe-extras.mse-include, to be used for the middle right symbol.
styling field:
type: text
name: symbol 4 offsets
description: Formatted as "left,top,width,height". Moves and stretches the middle right symbol by that many pixels.
styling field:
type: text
name: text 4 offsets
description: Formatted as "left,top,width,height". Moves and stretches the middle right text box by that many pixels.
styling field:
type: text
name: symbol 5 custom image location
description: The location of a PNG image inside magic-mainframe-extras.mse-include, to be used for the bottom left symbol.
styling field:
type: text
name: symbol 5 offsets
description: Formatted as "left,top,width,height". Moves and stretches the bottom left symbol by that many pixels.
styling field:
type: text
name: text 5 offsets
description: Formatted as "left,top,width,height". Moves and stretches the bottom left text box by that many pixels.
styling field:
type: text
name: symbol 6 custom image location
description: The location of a PNG image inside magic-mainframe-extras.mse-include, to be used for the bottom right symbol.
styling field:
type: text
name: symbol 6 offsets
description: Formatted as "left,top,width,height". Moves and stretches the bottom right symbol by that many pixels.
styling field:
type: text
name: text 6 offsets
description: Formatted as "left,top,width,height". Moves and stretches the bottom right text box by that many pixels.
styling field:
type: package choice
name: overlay
description: Should there be an overlay applied, such as foil?
match: magic-overlay-*.mse-include
required: false
include file: /magic-modules.mse-include/information/styling_fields
styling field:
type: boolean
name: use ancestral mana symbols
description: Enables ancestral's modified generic mana.
initial: no
styling field:
type: boolean
name: use guild mana symbols
description: Use the Ravnica guild symbols instead of the official half/half circles for hybrid mana.
initial: no
styling field:
type: choice
name: tap symbol
description: What tap and untap symbols should be used on cards?
choice: modern
choice: old
choice: diagonal T
initial: modern
styling field:
type: package choice
name: mana symbols
description: Symbol font used.
match: magic-mana-*.mse-symbol-font
initial: magic-mana-small.mse-symbol-font
styling field:
type: text
name: text font
description: Font used for the rule text. Hover your mouse over the font file to see it's details, and write it's Title here.
############################################################## Card fields
include file: /magic-modules.mse-include/corners/card_fields
card style:
name:
left: 30
top: 10
right: 714
height: 50
z index: 1000
alignment: middle center shrink-overflow
font:
name: Beleren Bold
size: 30
color: { if styling.hide_name_text then rgba(0,0,0,0) else styling.text_color }
level 1 text:
left: { 128 + text_offset(0, counter: 1) - text_offset(2, counter: 1) }
top: { 196 + text_offset(1, counter: 1) - text_offset(3, counter: 1) }
width: { 175 + 2*text_offset(2, counter: 1) }
height: { 59 + 2*text_offset(3, counter: 1) }
z index: 400
alignment: middle center shrink-overflow
font:
name: { if styling.text_font == "" then "HanleyPro-Sans" else styling.text_font }
size: 18
scale down to: 6
color: { styling.text_color }
symbol font:
name: { styling.mana_symbols }
size: 18
scale down to: 6
line height hard: 1.1
line height line: 1.6
line height soft: 0.75
line height hard max: 1.3
line height line max: 1.7
line height soft max: 0.75
level 2 text:
left: { 441 + text_offset(0, counter: 2) - text_offset(2, counter: 2) }
top: { 196 + text_offset(1, counter: 2) - text_offset(3, counter: 2) }
width: { 175 + 2*text_offset(2, counter: 2) }
height: { 59 + 2*text_offset(3, counter: 2) }
z index: 400
alignment: middle center shrink-overflow
font:
name: { if styling.text_font == "" then "HanleyPro-Sans" else styling.text_font }
size: 18
scale down to: 6
color: { styling.text_color }
symbol font:
name: { styling.mana_symbols }
size: 18
scale down to: 6
line height hard: 1.1
line height line: 1.6
line height soft: 0.75
line height hard max: 1.3
line height line max: 1.7
line height soft max: 0.75
level 3 text:
left: { 128 + text_offset(0, counter: 3) - text_offset(2, counter: 3) }
top: { 508 + text_offset(1, counter: 3) - text_offset(3, counter: 3) }
width: { 175 + 2*text_offset(2, counter: 3) }
height: { 59 + 2*text_offset(3, counter: 3) }
z index: 400
alignment: middle center shrink-overflow
font:
name: { if styling.text_font == "" then "HanleyPro-Sans" else styling.text_font }
size: 18
scale down to: 6
color: { styling.text_color }
symbol font:
name: { styling.mana_symbols }
size: 18
scale down to: 6
line height hard: 1.1
line height line: 1.6
line height soft: 0.75
line height hard max: 1.3
line height line max: 1.7
line height soft max: 0.75
level 4 text:
left: { 441 + text_offset(0, counter: 4) - text_offset(2, counter: 4) }
top: { 508 + text_offset(1, counter: 4) - text_offset(3, counter: 4) }
width: { 175 + 2*text_offset(2, counter: 4) }
height: { 59 + 2*text_offset(3, counter: 4) }
z index: 400
alignment: middle center shrink-overflow
font:
name: { if styling.text_font == "" then "HanleyPro-Sans" else styling.text_font }
size: 18
scale down to: 6
color: { styling.text_color }
symbol font:
name: { styling.mana_symbols }
size: 18
scale down to: 6
line height hard: 1.1
line height line: 1.6
line height soft: 0.75
line height hard max: 1.3
line height line max: 1.7
line height soft max: 0.75
level 5 text:
left: { 128 + text_offset(0, counter: 5) - text_offset(2, counter: 5) }
top: { 820 + text_offset(1, counter: 5) - text_offset(3, counter: 5) }
width: { 175 + 2*text_offset(2, counter: 5) }
height: { 59 + 2*text_offset(3, counter: 5) }
z index: 400
alignment: middle center shrink-overflow
font:
name: { if styling.text_font == "" then "HanleyPro-Sans" else styling.text_font }
size: 18
scale down to: 6
color: { styling.text_color }
symbol font:
name: { styling.mana_symbols }
size: 18
scale down to: 6
line height hard: 1.1
line height line: 1.6
line height soft: 0.75
line height hard max: 1.3
line height line max: 1.7
line height soft max: 0.75
level 6 text:
left: { 441 + text_offset(0, counter: 6) - text_offset(2, counter: 6) }
top: { 820 + text_offset(1, counter: 6) - text_offset(3, counter: 6) }
width: { 175 + 2*text_offset(2, counter: 6) }
height: { 59 + 2*text_offset(3, counter: 6) }
z index: 400
alignment: middle center shrink-overflow
font:
name: { if styling.text_font == "" then "HanleyPro-Sans" else styling.text_font }
size: 18
scale down to: 6
color: { styling.text_color }
symbol font:
name: { styling.mana_symbols }
size: 18
scale down to: 6
line height hard: 1.1
line height line: 1.6
line height soft: 0.75
line height hard max: 1.3
line height line max: 1.7
line height soft max: 0.75
counter:
left: { 144 + symbol_offset(0, counter: 1) - symbol_offset(2, counter: 1) }
top: { 88 + symbol_offset(1, counter: 1) - symbol_offset(3, counter: 1) + (if card.counter == "+1/+1" or card.counter == "-1/-1" then 35 else 0) }
width: { 143 + 2*symbol_offset(2, counter: 1) }
height: { 143 + 2*symbol_offset(3, counter: 1) }
z index: 300
popup style: in place
render style: image
include file: /magic.mse-game/counters/menu_choice_images
choice images:
custom: { if contains(styling.symbol_1_custom_image_location, match: ".png") then "/magic-mainframe-extras.mse-include/" + styling.symbol_1_custom_image_location else "/magic-modules.mse-include/counters/none.png" }
image: { counter_image(field: 1) }
counter 2:
left: { 457 + symbol_offset(0, counter: 2) - symbol_offset(2, counter: 2) }
top: { 88 + symbol_offset(1, counter: 2) - symbol_offset(3, counter: 2) + (if card.counter_2 == "+1/+1" or card.counter_2 == "-1/-1" then 35 else 0) }
width: { 143 + 2*symbol_offset(2, counter: 2) }
height: { 143 + 2*symbol_offset(3, counter: 2) }
z index: 300
popup style: in place
render style: image
include file: /magic.mse-game/counters/menu_choice_images
choice images:
custom: { if contains(styling.symbol_2_custom_image_location, match: ".png") then "/magic-mainframe-extras.mse-include/" + styling.symbol_2_custom_image_location else "/magic-modules.mse-include/counters/none.png" }
image: { counter_image(field: 2) }
counter 3:
left: { 144 + symbol_offset(0, counter: 3) - symbol_offset(2, counter: 3) }
top: { 400 + symbol_offset(1, counter: 3) - symbol_offset(3, counter: 3) + (if card.counter_3 == "+1/+1" or card.counter_3 == "-1/-1" then 35 else 0) }
width: { 143 + 2*symbol_offset(2, counter: 3) }
height: { 143 + 2*symbol_offset(3, counter: 3) }
z index: 300
popup style: in place
render style: image
include file: /magic.mse-game/counters/menu_choice_images
choice images:
custom: { if contains(styling.symbol_3_custom_image_location, match: ".png") then "/magic-mainframe-extras.mse-include/" + styling.symbol_3_custom_image_location else "/magic-modules.mse-include/counters/none.png" }
image: { counter_image(field: 3) }
counter 4:
left: { 457 + symbol_offset(0, counter: 4) - symbol_offset(2, counter: 4) }
top: { 400 + symbol_offset(1, counter: 4) - symbol_offset(3, counter: 4) + (if card.counter_4 == "+1/+1" or card.counter_4 == "-1/-1" then 35 else 0) }
width: { 143 + 2*symbol_offset(2, counter: 4) }
height: { 143 + 2*symbol_offset(3, counter: 4) }
z index: 300
popup style: in place
render style: image
include file: /magic.mse-game/counters/menu_choice_images
choice images:
custom: { if contains(styling.symbol_4_custom_image_location, match: ".png") then "/magic-mainframe-extras.mse-include/" + styling.symbol_4_custom_image_location else "/magic-modules.mse-include/counters/none.png" }
image: { counter_image(field: 4) }
counter 5:
left: { 144 + symbol_offset(0, counter: 5) - symbol_offset(2, counter: 5) }
top: { 712 + symbol_offset(1, counter: 5) - symbol_offset(3, counter: 5) + (if card.counter_5 == "+1/+1" or card.counter_5 == "-1/-1" then 35 else 0) }
width: { 143 + 2*symbol_offset(2, counter: 5) }
height: { 143 + 2*symbol_offset(3, counter: 5) }
z index: 300
popup style: in place
render style: image
include file: /magic.mse-game/counters/menu_choice_images
choice images:
custom: { if contains(styling.symbol_5_custom_image_location, match: ".png") then "/magic-mainframe-extras.mse-include/" + styling.symbol_5_custom_image_location else "/magic-modules.mse-include/counters/none.png" }
image: { counter_image(field: 5) }
counter 6:
left: { 457 + symbol_offset(0, counter: 6) - symbol_offset(2, counter: 6) }
top: { 712 + symbol_offset(1, counter: 6) - symbol_offset(3, counter: 6) + (if card.counter_6 == "+1/+1" or card.counter_6 == "-1/-1" then 35 else 0) }
width: { 143 + 2*symbol_offset(2, counter: 6) }
height: { 143 + 2*symbol_offset(3, counter: 6) }
z index: 300
popup style: in place
render style: image
include file: /magic.mse-game/counters/menu_choice_images
choice images:
custom: { if contains(styling.symbol_6_custom_image_location, match: ".png") then "/magic-mainframe-extras.mse-include/" + styling.symbol_6_custom_image_location else "/magic-modules.mse-include/counters/none.png" }
image: { counter_image(field: 6) }
#### Pasted from information module
set code:
angle: { if face_is_rotated(1) then -90 else 0 }
left:
script:
if face_is_rotated(1) then
(
24 * face_coordinates_map(1).width/523 + face_coordinates_map(1).left - information_offset_top_1()
) else (
24 * face_coordinates_map(1).width/375 + face_coordinates_map(1).left + information_codes_offset_left_1()
)
top:
script:
if face_is_rotated(1) then
(
24 * face_coordinates_map(1).height/375 + face_coordinates_map(1).top + information_codes_offset_left_1()
) else (
499 * face_coordinates_map(1).height/523 + face_coordinates_map(1).top + information_offset_top_1()
)
width:
script:
if face_is_rotated(1) then
(
40 * face_coordinates_map(1).width/523
) else (
40 * face_coordinates_map(1).width/375
)
height:
script:
if face_is_rotated(1) then
(
if information_disabled_1() then 0 else 10 * face_coordinates_map(1).height/375
) else (
if information_disabled_1() then 0 else 10 * face_coordinates_map(1).height/523
)
visible: { not information_disabled_1() }
alignment: middle left
font:
name: Relay-Medium
size: { 7 * face_coordinates_map(1).height/(if face_is_rotated(1) then 375 else 523) }
color: { styling.copyright_text_color or else set.copyright_text_color }
weight: bold
z index: 900
set language:
angle: { if face_is_rotated(1) then -90 else 0 }
left:
script:
if face_is_rotated(1) then
(
14 * face_coordinates_map(1).width/523 + face_coordinates_map(1).left - information_offset_top_1()
) else (
24 * face_coordinates_map(1).width/375 + face_coordinates_map(1).left + information_codes_offset_left_1()
)
top:
script:
if face_is_rotated(1) then
(
24 * face_coordinates_map(1).height/375 + face_coordinates_map(1).top + information_codes_offset_left_1()
) else (
509 * face_coordinates_map(1).height/523 + face_coordinates_map(1).top + information_offset_top_1()
)
width:
script:
if face_is_rotated(1) then
(
code := if is_masterpiece() then set.masterpiece_set_code else set.set_code
if card.additional_credit_brush == "none" or (not set.adaptive_language_height) or code == "" then 0
else 40 * face_coordinates_map(1).width/523
) else (
code := if is_masterpiece() then set.masterpiece_set_code else set.set_code
if card.additional_credit_brush == "none" or (not set.adaptive_language_height) or code == "" then 0
else 40 * face_coordinates_map(1).width/375
)
height:
script:
if face_is_rotated(1) then
(
if information_disabled_1() then 0 else 10 * face_coordinates_map(1).height/375
) else (
if information_disabled_1() then 0 else 10 * face_coordinates_map(1).height/523
)
visible: { not information_disabled_1() }
alignment: middle left
font:
name: Relay-Medium
size: { 7 * face_coordinates_map(1).height/(if face_is_rotated(1) then 375 else 523) }
color: { styling.copyright_text_color or else set.copyright_text_color }
weight: bold
z index: 900
card code:
angle: { if face_is_rotated(1) then -90 else 0 }
left:
script:
if face_is_rotated(1) then
(
34 * face_coordinates_map(1).width/523 + face_coordinates_map(1).left - information_offset_top_1()
) else (
24 * face_coordinates_map(1).width/375 + face_coordinates_map(1).left + information_codes_offset_left_1()
)
top:
script:
if face_is_rotated(1) then
(
24 * face_coordinates_map(1).height/375 + face_coordinates_map(1).top + information_codes_offset_left_1()
) else (
489 * face_coordinates_map(1).height/523 + face_coordinates_map(1).top + information_offset_top_1()
)
width:
script:
if face_is_rotated(1) then
(
120 * face_coordinates_map(1).width/523
) else (
120 * face_coordinates_map(1).width/375
)
height:
script:
if face_is_rotated(1) then
(
if information_disabled_1() then 0 else 10 * face_coordinates_map(1).height/375
) else (
if information_disabled_1() then 0 else 10 * face_coordinates_map(1).height/523
)
visible: { not information_disabled_1() }
alignment: middle left
font:
name: Relay-Medium
size: { 7 * face_coordinates_map(1).height/(if face_is_rotated(1) then 375 else 523) }
color: { styling.copyright_text_color or else set.copyright_text_color }
weight: bold
z index: 900
partition select:
angle: { if face_is_rotated(1) then -90 else 0 }
left:
script:
if face_is_rotated(1) then
(
34 * face_coordinates_map(1).width/523 + face_coordinates_map(1).left - information_offset_top_1()
) else (
24 * face_coordinates_map(1).width/375 + face_coordinates_map(1).left + information_codes_offset_left_1()
)
top:
script:
if face_is_rotated(1) then
(
24 * face_coordinates_map(1).height/375 + face_coordinates_map(1).top + information_codes_offset_left_1()
) else (
489 * face_coordinates_map(1).height/523 + face_coordinates_map(1).top + information_offset_top_1()
)
width:
script:
if not use_auto_numbers() then 0
else if face_is_rotated(1) then
(
35 * face_coordinates_map(1).width/523
) else (
35 * face_coordinates_map(1).width/375
)
height:
script:
if face_is_rotated(1) then
(
if information_disabled_1() then 0 else 10 * face_coordinates_map(1).height/375
) else (
if information_disabled_1() then 0 else 10 * face_coordinates_map(1).height/523
)
visible: { not information_disabled_1() and use_auto_numbers() }
popup style: menu
render style: hidden
z index: 1100
copyright:
angle: { if face_is_rotated(1) then -90 else 0 }
right:
script:
if face_is_rotated(1) then
(
(if card.pt != "" or card.loyalty != "" then 21 + information_secondary_offset_pt_left_1() else if card.secondary_copyright != "" then 23 else 33) * face_coordinates_map(1).width/523 +
face_coordinates_map(1).left - information_offset_top_1()
) else (
351 * face_coordinates_map(1).width/375 + face_coordinates_map(1).left + information_copyright_offset_right_1()
)
top:
script:
if face_is_rotated(1) then
(
351 * face_coordinates_map(1).height/375 + face_coordinates_map(1).top + information_copyright_offset_right_1()
) else (
(if card.pt != "" or card.loyalty != "" then 502 + information_copyright_offset_pt_top_1() else if card.secondary_copyright != "" then 500 else 490) * face_coordinates_map(1).height/523 +
face_coordinates_map(1).top + information_offset_top_1()
)
width:
script:
if face_is_rotated(1) then
(
if set.automatic_copyright then 0 else 140 * face_coordinates_map(1).width/523
) else (
if set.automatic_copyright then 0 else 140 * face_coordinates_map(1).width/375
)
height:
script:
if face_is_rotated(1) then
(
if information_disabled_1() then 0 else 10 * face_coordinates_map(1).height/375
) else (
if information_disabled_1() then 0 else 10 * face_coordinates_map(1).height/523
)
visible: { not information_disabled_1() }
alignment: middle right shrink-overflow
font:
name: MPlantin
size: { 6.5 * face_coordinates_map(1).height/(if face_is_rotated(1) then 375 else 523) }
color: { styling.copyright_text_color or else set.copyright_text_color }
weight: bold
z index: 900
auto copyright:
angle: { if face_is_rotated(1) then -90 else 0 }
right:
script:
if face_is_rotated(1) then
(
(if card.pt != "" or card.loyalty != "" then 21 + information_secondary_offset_pt_left_1() else if card.secondary_copyright != "" then 23 else 33) * face_coordinates_map(1).width/523 + face_coordinates_map(1).left - information_offset_top_1()
) else (
351 * face_coordinates_map(1).width/375 + face_coordinates_map(1).left + information_copyright_offset_right_1()
)
top:
script:
if face_is_rotated(1) then
(
351 * face_coordinates_map(1).height/375 + face_coordinates_map(1).top + information_copyright_offset_right_1()
) else (
(if card.pt != "" or card.loyalty != "" then 502 + information_copyright_offset_pt_top_1() else if card.secondary_copyright != "" then 500 else 490) * face_coordinates_map(1).height/523 + face_coordinates_map(1).top + information_offset_top_1()
)
width:
script:
if face_is_rotated(1) then
(
if set.automatic_copyright then 140 * face_coordinates_map(1).width/523 else 0
) else (
if set.automatic_copyright then 140 * face_coordinates_map(1).width/375 else 0
)
height:
script:
if face_is_rotated(1) then
(
if information_disabled_1() then 0 else 10 * face_coordinates_map(1).height/375
) else (
if information_disabled_1() then 0 else 10 * face_coordinates_map(1).height/523
)
visible: { not information_disabled_1() }
alignment: middle right shrink-overflow
font:
name: MPlantin
size: { 6.5 * face_coordinates_map(1).height/(if face_is_rotated(1) then 375 else 523) }
color: { styling.copyright_text_color or else set.copyright_text_color }
weight: bold
z index: 900
secondary copyright:
angle: { if face_is_rotated(1) then -90 else 0 }
left:
script:
if face_is_rotated(1) then
(
33 * face_coordinates_map(1).width/523 + face_coordinates_map(1).left - information_offset_top_1()
) else (
needed := (255 + information_secondary_offset_pt_left_1() - if length(card.secondary_copyright) > 9 then 45 else if length(card.secondary_copyright) > 6 then 25 else if length(card.secondary_copyright) > 4 then 10 else 0) * face_coordinates_map(1).width/375 + face_coordinates_map(1).left
aligned := 351 * face_coordinates_map(1).width/375 + information_copyright_offset_right_1() - (if set.automatic_copyright then card_style.auto_copyright.content_width else card_style.copyright.content_width) + face_coordinates_map(1).left
max(min(needed, aligned), 211 * face_coordinates_map(1).width/375)
)
top:
script:
if face_is_rotated(1) then
(
211 * face_coordinates_map(1).height/375 + face_coordinates_map(1).top + information_copyright_offset_right_1()
) else (
490 * face_coordinates_map(1).height/523 + face_coordinates_map(1).top + information_offset_top_1()
)
width:
script:
if face_is_rotated(1) then
(
140 * face_coordinates_map(1).width/523
) else (
needed := (255 + information_secondary_offset_pt_left_1() - if length(card.secondary_copyright) > 9 then 45 else if length(card.secondary_copyright) > 6 then 25 else if length(card.secondary_copyright) > 4 then 10 else 0) * face_coordinates_map(1).width/375 + face_coordinates_map(1).left
aligned := 351 * face_coordinates_map(1).width/375 + information_copyright_offset_right_1() - (if set.automatic_copyright then card_style.auto_copyright.content_width else card_style.copyright.content_width) + face_coordinates_map(1).left
left := max(min(needed, aligned), 211 * face_coordinates_map(1).width/375)
right := (if card.pt != "" then 279 + information_secondary_offset_pt_left_1() else if card.loyalty != "" then 295 + information_secondary_offset_pt_left_1() else 351) * face_coordinates_map(1).width/375 + face_coordinates_map(1).top + information_copyright_offset_right_1()
right - left
)
height:
script:
if face_is_rotated(1) then
(
if information_disabled_1() then 0 else 10 * face_coordinates_map(1).height/375
) else (
if information_disabled_1() then 0 else 10 * face_coordinates_map(1).height/523
)
visible: { not information_disabled_1() }
alignment: { if card.pt != "" or card.loyalty != "" then "middle left shrink-overflow" else "middle right shrink-overflow" }
font:
name: MPlantin
size: { 6.5 * face_coordinates_map(1).height/(if face_is_rotated(1) then 375 else 523) }
color: { styling.copyright_text_color or else set.copyright_text_color }
weight: bold
z index: 900
############################################################## Extra card fields
extra card field:
type: color
name: background
editable: false
save value: false
show statistics: false
script: styling.background_color
extra card field:
type: color
name: inner lines
editable: false
save value: false
show statistics: false
script: styling.inner_line_color
extra card field:
type: color
name: outer lines
editable: false
save value: false
show statistics: false
script: styling.outer_line_color
extra card field:
type: choice
name: foil layer
editable: false
save value: false
show statistics: false
choice: foil layer
extra card style:
background:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 0
inner lines:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 100
mask: inner_lines_mask.png
outer lines:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 200
mask: outer_lines_mask.png
foil layer:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 3000
visible: { styling.overlay != "none" and styling.overlay != "" }
render style: image
image: { if styling.overlay == "" then "" else styling.overlay + "/overlay.png" }

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.1 KiB

View File

@@ -38,7 +38,6 @@ card dpi: 150
init script:
# Load scripts for image box
include file: /magic-default-image.mse-include/scripts
include file: /magic-modules.mse-include/crowns/init_script
# Should hybrids have a grey name?
mask_hybrid_with_land := { styling.grey_hybrid_name }

View File

@@ -43,7 +43,6 @@ init script:
#### Load scripts
include file: /magic-default-image.mse-include/scripts
include file: /magic-pride.mse-include/scripts
include file: /magic-modules.mse-include/crowns/init_script
#### Blend settings
# Should hybrids have a grey name?
@@ -443,6 +442,7 @@ init script:
crowns_folder := {
"/magic-modules.mse-include/crowns/375/" + (if is_planeshifted() then "shifted/" else "")
}
module_brawl_crown_template := { "/magic-modules.mse-include/crowns/375/brawl/" + (if input == "a" then "c" else input) + "crown.png" }
crown_main := {
if is_clear() or clear_tops()
then template_prefix["crown"] + "xcrown.png"

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 98 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

View File

@@ -0,0 +1,529 @@
mse version: 2.1.2
game: magic
short name: Attractions
full name: Unfinity Attractions
icon: card_sample.png
position hint: 099
version: 2024-05-20
depends on:
package: magic.mse-game
version: 2014-06-25
depends on:
package: magic-mana-large.mse-symbol-font
version: 2007-09-23
depends on:
package: magic-mana-small.mse-symbol-font
version: 2007-09-23
depends on:
package: magic-modules.mse-include
version: 2024-05-20
depends on:
package: magic-mainframe-extras.mse-include
version: 2007-09-23
card width: 744
card height: 1039
card dpi: 297
### blanks by Card Conjurer and GenevensiS
### code by GenevensiS
############################################################## Extra scripts
init script:
swap_fonts_pt_default :=
[
name: {"Beleren Bold"},
size: {28.0},
color: {"black"},
vertical: {0},
italic: {"Beleren Bold"}
]
swap_fonts_body_default :=
[
name: {"MPlantin"},
size: {24.0},
color: {"black"},
vertical: {0},
italic: {"MPlantin-Italic"}
]
swap_fonts_type_default :=
[
name: {"Beleren Bold"},
size: {26.0},
color: {"white"},
vertical: {0},
italic: {"Beleren Bold"}
]
casting_cost_offset_top_1 := { 3 }
casting_cost_offset_left_1 := { -55 }
swap_fonts_name_default :=
[
name: {"Beleren Bold"},
size: {29.0},
color: {"white"},
vertical: {0},
italic: {"Beleren Bold"}
]
information_secondary_offset_pt_left_1 := { -8 }
card_shape := { if styling.count_as == "normal card" then "normal" else styling.count_as }
template_prefix :=
[
identity: "/magic-modules.mse-include/indicators/"
]
template_suffix :=
[
identity: "identity.png"
]
template := { template_prefix[type] + input + template_suffix[type] }
land_template := { template_prefix[type] + (if input == "a" then "c" else input) + template_suffix[type] }
has_identity := { styling.color_indicator_dot }
has_identity_2 := { false }
is_promo := { styling.promo }
is_unsorted := { styling.remove_from_autocount }
is_crowned := { styling.legend_crown == "yes" or (styling.legend_crown == "if legendary" and lang_setting("is_legendary")(card.super_type)) }
chop_top := { split := split_comma(styling.chop_text_box); if length(split) > 0 and split.0 != "" then clamp(split.0, maximum: 1500, minimum: -1500) else 0 }
chop_bot := { split := split_comma(styling.chop_text_box); if length(split) > 1 and split.1 != "" then clamp(split.1, maximum: 1500, minimum: -1500) else 0 }
popout_left := { split := split_comma(styling.popout_image_coordinates); if length(split) > 3 and split.0 != "" then clamp(split.0, maximum: 1500, minimum: -500) else 0 }
popout_top := { split := split_comma(styling.popout_image_coordinates); if length(split) > 3 and split.1 != "" then clamp(split.1, maximum: 2000, minimum: -500) else 0 }
popout_width := { split := split_comma(styling.popout_image_coordinates); if length(split) > 3 and split.2 != "" then clamp(split.2, maximum: 1500, minimum: 0) else 0 }
popout_height := { split := split_comma(styling.popout_image_coordinates); if length(split) > 3 and split.3 != "" then clamp(split.3, maximum: 2000, minimum: 0) else 0 }
left_type_margin :=
{
if has_identity() then 100 else 63
}
right_type_margin :=
{
744 - (if set.shorten_types_for_rarity then clamp(rarity_left_1()-5, minimum: 375, maximum: 682) else 682)
}
center_text :=
{
(
styling.center_text == "short text only"
and not contains(match:"\n", card.rule_text)
and remove_tags(card.flavor_text) == ""
and card_style.text.content_lines <= 2
)
or styling.center_text == "always"
}
############################################################## Extra style options
styling field:
type: text
name: popout image coordinates
description: The coordinates for the popout image field, formatted as "left,top,width,height". Used to make the illustration jump in front of the frame.
styling field:
type: boolean
name: stretch image to whole card
description: Make the image span the whole card instead of just the visible part. Use this to help make popout effects.
initial: no
styling field:
type: text
name: nameline opacity percentage
description: Set the opacity percentage for the nameline. Opaque is 100, transparent is 0, default is 70.
styling field:
type: boolean
name: center name
description: Center the name text on the card?
initial: yes
styling field:
type: text
name: typeline opacity percentage
description: Set the opacity percentage for the typeline. Opaque is 100, transparent is 0, default is 70.
styling field:
type: boolean
name: center type
description: Center the type text on the card?
initial: no
include file: /magic-modules.mse-include/texts/styling_fields
styling field:
type: choice
name: count as
description: What should this card be counted as by the autocount script and stats page?
choice: normal card
choice: token
choice: emblem
choice: designation
choice: counter
choice: rulestip
choice: checklist
initial: normal card
include file: /magic-modules.mse-include/rarities/styling_fields
include file: /magic-modules.mse-include/indicators/styling_fields
include file: /magic-modules.mse-include/watermarks/styling_fields
styling field:
type: package choice
name: overlay
description: Should there be an overlay applied, such as foil?
match: magic-overlay-*.mse-include
required: false
styling field:
type: choice
name: border
description: Use a border?
choice: yes
choice: only copyright
choice: no
initial: only copyright
include file: /magic-modules.mse-include/information/styling_fields
include file: /magic-modules.mse-include/symbol-fonts/styling_fields
include file: /magic-modules.mse-include/fonts/styling_fields
############################################################## Card fields
include file: /magic-modules.mse-include/casting-costs/card_fields
include file: /magic-modules.mse-include/rarities/card_fields
include file: /magic-modules.mse-include/indicators/card_fields
include file: /magic-modules.mse-include/information/card_fields
include file: /magic-modules.mse-include/stamps/card_fields
include file: /magic-modules.mse-include/corners/card_fields
include file: /magic-modules.mse-include/watermarks/card_fields
include file: /magic-modules.mse-include/separators/card_fields
card style:
############################# Background stuff
border color:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 100
visible: { styling.border != "no" }
mask: { "border" + (if styling.border == "only copyright" then "_borderless" else "") + "_mask.png" }
############################# Name line
name:
left: { 110 + (if styling.center_name and card_style.casting_cost.content_width != 0 then card_style.casting_cost.content_width + 7 else 0) }
top: { 56 + name_font_vertical() }
right: { 634 - (if card_style.casting_cost.content_width == 0 then 0 else card_style.casting_cost.content_width + 7) }
height: 52
z index: 900
alignment: { if styling.center_name then "middle center shrink-overflow" else "middle left shrink-overflow" }
font:
name: { name_font() }
italic name: { name_font_italic() }
size: { name_font_size() }
scale down to: 8
color: { name_font_color() }
############################# Image
image:
left: { if styling.stretch_image_to_whole_card or styling.border != "yes" then 0 else 30 }
top: { if styling.stretch_image_to_whole_card or styling.border != "yes" then 0 else 30 }
width: { if styling.stretch_image_to_whole_card or styling.border != "yes" then stylesheet.card_width else 684 }
height: { if styling.stretch_image_to_whole_card or styling.border == "no" then stylesheet.card_width else 917 }
z index: 0
mainframe image:
left: { popout_left() }
top: { popout_top() }
width: { popout_width() }
height: { popout_height() }
z index: 1010
############################# Card type
type:
left: { (if styling.center_type then max(left_type_margin(), right_type_margin()) else left_type_margin()) }
top: { 587 + type_font_vertical() }
right: { 744 - (if styling.center_type then max(left_type_margin(), right_type_margin()) else right_type_margin()) }
height: 54
z index: 900
alignment: { if styling.center_type then "middle center shrink-overflow" else "middle left shrink-overflow" }
font:
name: { type_font() }
italic name: { type_font_italic() }
size: { type_font_size() }
scale down to: 8
color: { type_font_color() }
separator color: red
############################# Text box
text:
left: { if center_text() then 85 else 68 }
top: { 660 + chop_top() + body_font_vertical() }
right: 659
bottom: { 948 - (if is_stamped() then 8 else 0) - chop_bot() }
z index: 900
line height hard: { if is_modal(card.rule_text) then 0.9 else 1.2 }
line height line: 1.5
line height soft: 0.9
line height hard max: { if is_modal(card.rule_text) then 1.0 else 1.3 }
line height line max: 1.6
alignment: { if center_text() then "middle center" else "middle left" }
font:
name: { body_font() }
italic name: { body_font_italic() }
size: { body_font_size() }
scale down to: 12
color: { body_font_color() }
symbol font:
name: { styling.text_box_mana_symbols }
size: { body_font_size() }
scale down to: 12
############################# PT
pt:
left: 557
top: { 932 + pt_font_vertical() }
width: 91
height: 46
z index: 900
alignment: center middle shrink-overflow
font:
name: { pt_font() }
size: { pt_font_size() }
color: { pt_font_color() }
separator color: red
############################################################## Extra card fields
extra card field:
type: choice
name: pt box
editable: false
save value: false
show statistics: false
choice: pt box
extra card field:
type: choice
name: card stamp rim
editable: false
save value: false
show statistics: false
choice: card stamp rim
extra card field:
type: color
name: card stamp border
script: card.border_color
editable: false
save value: false
show statistics: false
extra card field:
type: choice
name: card image
script: card.border_color
editable: false
save value: false
show statistics: false
extra card field:
type: choice
name: light 1
show statistics: false
choice: lit
choice: unlit
initial: unlit
extra card field:
type: choice
name: light 2
show statistics: false
choice: lit
choice: unlit
initial: unlit
extra card field:
type: choice
name: light 3
show statistics: false
choice: lit
choice: unlit
initial: unlit
extra card field:
type: choice
name: light 4
show statistics: false
choice: lit
choice: unlit
initial: unlit
extra card field:
type: choice
name: light 5
show statistics: false
choice: lit
choice: unlit
initial: unlit
extra card field:
type: choice
name: light 6
show statistics: false
choice: lit
choice: unlit
initial: lit
extra card field:
type: choice
name: nameline
editable: false
save value: false
show statistics: false
choice: nameline
extra card field:
type: choice
name: typeline
editable: false
save value: false
show statistics: false
choice: typeline
extra card field:
type: choice
name: foil layer
editable: false
save value: false
show statistics: false
choice: foil layer
extra card style:
pt box:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 810
visible: { card.pt != "" }
render style: image
image: pt.png
card stamp rim:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 610
render style: image
image: { if is_stamped() then "stamp_rim.png" else "non_stamp_rim.png" }
card stamp border:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 600
visible: { is_stamped() and styling.border != "no" }
mask: border_stamp_mask.png
card image:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 110
render style: image
image: card.png
light 1:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 720
popup style: in place
render style: image
choice images:
lit: { "light_1.png" }
unlit: { "" }
mask: light_1_mask.png
light 2:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 720
popup style: in place
render style: image
choice images:
lit: { "light_2.png" }
unlit: { "" }
mask: light_2_mask.png
light 3:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 720
popup style: in place
render style: image
choice images:
lit: { "light_3.png" }
unlit: { "" }
mask: light_3_mask.png
light 4:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 720
popup style: in place
render style: image
choice images:
lit: { "light_4.png" }
unlit: { "" }
mask: light_4_mask.png
light 5:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 720
popup style: in place
render style: image
choice images:
lit: { "light_5.png" }
unlit: { "" }
mask: light_5_mask.png
light 6:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 720
popup style: in place
render style: image
choice images:
lit: { "light_6.png" }
unlit: { "" }
mask: light_6_mask.png
nameline:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 120
render style: image
image: { set_alpha("nameline.png", alpha: get_alpha_percentage(styling.nameline_opacity_percentage, default: 70)) }
typeline:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 120
render style: image
image: { set_alpha("typeline.png", alpha: get_alpha_percentage(styling.typeline_opacity_percentage, default: 70)) }
foil layer:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 1050
visible: { styling.overlay != "none" and styling.overlay != "" }
render style: image
image: { if styling.overlay == "" then "" else styling.overlay + "/overlay.png" }

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 180 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 231 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 180 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 292 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 268 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 274 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 248 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 187 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 644 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 747 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 644 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 644 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

View File

@@ -0,0 +1,276 @@
mse version: 2.1.2
game: magic
short name: Compleated
full name: Planeswalkers
icon: card_sample.png
position hint: 017
version: 2024-09-20
depends on:
package: magic.mse-game
version: 2014-06-25
depends on:
package: magic-mana-large.mse-symbol-font
version: 2007-09-23
depends on:
package: magic-mana-small.mse-symbol-font
version: 2007-09-23
depends on:
package: magic-modules.mse-include
version: 2024-05-20
depends on:
package: magic-mainframe-extras.mse-include
version: 2007-09-23
card width: 750
card height: 1046
card dpi: 300
############################################################## Extra scripts
init script:
template_prefix := [
card: "card/",
stamp: "stamp/",
identity: "/magic-modules.mse-include/indicators/"
]
template_suffix := [
card: "card.png",
stamp: "stamp.png",
identity: "identity.png"
]
template := { template_prefix[type] + input + template_suffix[type] }
land_template := { template_prefix[type] + input + template_suffix[type] }
is_promo := { styling.promo }
is_unsorted := { styling.remove_from_autocount }
swap_fonts_name_default := [
name: {"Beleren Bold"},
italic: {""},
color: {"black"},
vertical: {0},
size: {30}
]
swap_fonts_type_default := [
name: {"Beleren Bold"},
italic: {""},
color: {"black"},
vertical: {0},
size: {26}
]
swap_fonts_body_default := [
name: {"MPlantin"},
italic: {"MPlantin-Italic"},
color: {styling.rule_text_color},
vertical: {0},
size: {28}
]
include file: /magic-modules.mse-include/loyalty/init_script
loyalty_textbox_mask := {"loyalty_mask.png"}
loyalty_textbox_background_image :=
{
color := if instance <= 1 then (styling.textbox_color or else rgb(255,255,255)) else (styling["textbox_color_" + instance] or else rgb(255,255,255))
alpha := if instance <= 1 then (styling.textbox_opacity_percentage or else "60") else (styling["textbox_opacity_percentage_" + instance] or else "70")
set_alpha(
recolor_image(
"/magic-modules.mse-include/loyalty/color.png",
color: color
),
alpha: get_alpha_percentage(
alpha,
default: 60
)
)
}
foil_mask_added_sections := {
output := []
if card.loyalty != "" then output := output + ["foil_mask_loyalty.png"]
output
}@(face:1)
foil_mask_removed_sections := {
output := []
if is_stamped() then output := output + ["foil_mask_round.png"]
output
}@(face:1)
typeline_offset_top_1 := {-72}
nameline_offset_top_1 := {-16}
############################################################## Extra style options
include file: /magic-modules.mse-include/popouts/styling_fields
include file: /magic-modules.mse-include/texts/styling_fields
styling field:
type: choice
name: number of textboxes
description: Number of textboxes for abilities and passives. MODIFY CONTENTS OF TEXTBOXES IF THIS HAS TROUBLE UPDATING AFTER BEING CHANGED.
choice: automatic
choice: 1
choice: 2
choice: 3
choice: 4
choice: 5
choice: 6
choice: 7
choice: 8
initial: automatic
styling field:
type: text
name: move separators
description: Moves the limits between abilities down by this many pixels. Use negatives to move up. Formatted as "1,2,3,4,5"
styling field:
type: text
name: move loyalty costs
description: Moves loyalty costs down by this many pixels. Use negatives to move up. Formatted as "1,2,3,4,5,6"
styling field:
type: text
name: textbox opacity percentage
description: Set the opacity percentage for textboxes. Opaque is 100, transparent is 0, default is 60.
styling field:
type: color
name: textbox color
description: Use the specified color for the textbox background.
choice:
name: gray
color: rgb(170,170,170)
choice:
name: black
color: rgb(0,0,0)
choice:
name: white
color: rgb(255,255,255)
initial: rgb(170,170,170)
styling field:
type: text
name: stripes opacity percentage
description: Set the opacity percentage for stripes separating abilities. Opaque is 100, transparent is 0, default is 40.
styling field:
type: color
name: stripes color
description: Use the specified color for the textbox background.
choice:
name: grey
color: rgb(225,225,225)
choice:
name: black
color: rgb(0,0,0)
choice:
name: white
color: rgb(255,255,255)
initial: rgb(225,225,225)
styling field:
type: color
name: rule text color
description: Use the specified color for the rule text.
choice:
name: black
color: rgb(0,0,0)
choice:
name: white
color: rgb(255,255,255)
initial: rgb(0,0,0)
include file: /magic-modules.mse-include/rarities/styling_fields
include file: /magic-modules.mse-include/watermarks/styling_fields
include file: /magic-modules.mse-include/information/styling_fields
include file: /magic-modules.mse-include/foils/styling_fields
include file: /magic-modules.mse-include/symbol-fonts/styling_fields
include file: /magic-modules.mse-include/fonts/styling_fields
############################################################## Card fields
include file: /magic-modules.mse-include/namelines/card_fields
include file: /magic-modules.mse-include/popouts/card_fields
include file: /magic-modules.mse-include/typelines/card_fields
include file: /magic-modules.mse-include/watermarks/card_fields
include file: /magic-modules.mse-include/stamps/card_fields
include file: /magic-modules.mse-include/information/card_fields
include file: /magic-modules.mse-include/foils/card_fields
include file: /magic-modules.mse-include/loyalty/card_fields
include file: /magic-modules.mse-include/corners/card_fields
card style:
############################# Background stuff
border color:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 500
mask: border_mask.png
card color:
left: 0
top: 0
width: { stylesheet.card_width }
height: { stylesheet.card_height }
z index: 200
popup style: in place
render style: image
image: { module_card() }
mask: card/frame_mask.png
############################# Image
image:
left: { if styling.stretch_art_to_whole_card then 0 else 56 }
top: { if styling.stretch_art_to_whole_card then 0 else 103 }
width: { if styling.stretch_art_to_whole_card then stylesheet.card_width else 644 }
height: { if styling.stretch_art_to_whole_card then stylesheet.card_height else 856 }
z index: 100
############################# Text box
text:
left: 92
top: { 586 + chop_top() + body_font_vertical() }
right: { 698 - chop_right() }
bottom: { 958 - chop_bottom() - if is_stamped() then 7 else 0 }
z index: 900
padding left: 12
padding right: 8
line height hard: { if is_modal(card.rule_text) then 0.9 else 1.2 }
line height line: 1.5
line height soft: 0.9
line height hard max: { if is_modal(card.rule_text) then 1.0 else 1.3 }
line height line max: 2.2
alignment:
script:
if styling.center_text == "always"
then "middle center"
else "middle left"
font:
name: { body_font() }
italic name: { body_font_italic() }
size: { body_font_size() }
color: { body_font_color() }
scale down to: 12
symbol font:
name: { styling.text_box_mana_symbols }
size: { body_font_size() }
scale down to: 12
############################################################## Extra card fields
extra card field:
type: choice
name: stamp backing
script: card.card_color
editable: false
save value: false
extra card field:
type: color
name: stamp border
script: card.border_color
editable: false
save value: false
extra card style:
stamp backing:
left: 318
top: 920
width: 114
height: 70
z index: 840
render style: image
image: { module_stamp() }
visible: { is_stamped() }
stamp border:
left: 318
top: 920
width: 114
height: 70
z index: 840
visible: { is_stamped() }
mask: stamp/border_mask.png

View File

@@ -1,7 +1,7 @@
mse version: 2.0.0
game: magic
short name: Emblems
full name: Cajun style
full name: Cajun style Mainframe Emblems
installer group: magic/m15 style/emblems
icon: card-sample.png
position hint: 090

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

Some files were not shown because too many files have changed in this diff Show More