mse version: 0.3.8
game: magic
short name: Dynamic Style
full name: AF's Dynamic Style
icon: card-sample.png
position hint: 490
installer group: magic/dynamic style

version: 2009-10-06
depends on: 
	package: magic.mse-game
	version: 2008-06-02
depends on:
	package: magic-future-common.mse-include
	version: 2008-05-21
depends on: 
	package: magic-watermarks.mse-include
	version: 2007-09-23
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

card background: white
card width: 375
card height: 523
card dpi: 150
############################################################## Acknowledgements
#Images: Art_Freak (aka: artfreakwiu, Comic_Book_Guy, CBG)
#Foil scripts: Pichoro and Shiv2503
############################################################## Extra scripts

init script:
	template_suffix := [card: "card.jpg", pt: "pt.png"]
	template      := { input + template_suffix[type] }
	
	# Colored lands are generated by scripting.
	land_template := {
		masked_blend(
			mask: "multicolor_blend_{type}.png",
			dark: ( "cl" + template_suffix[type] ),
			light: ( if input == "c" or input == "a" then "cl" + template_suffix[type] else input + template_suffix[type] ),
		)
	}
	
	card_left_bracket := {
		if card.card_color=="white" then "w-l-bracket.png" else
		if card.card_color=="blue" then "u-l-bracket.png" else
		if card.card_color=="black" then "b-l-bracket.png" else
		if card.card_color=="red" then "r-l-bracket.png" else
		if card.card_color=="green" then "g-l-bracket.png" else
		if card.card_color=="multicolor" then "m-l-bracket.png" else
		if card.card_color=="artifact" then "a-l-bracket.png" else
		"l-l-bracket.png"
	}
	
	card_right_bracket := {
		if card.card_color=="white" then "w-r-bracket.png" else
		if card.card_color=="blue" then "u-r-bracket.png" else
		if card.card_color=="black" then "b-r-bracket.png" else
		if card.card_color=="red" then "r-r-bracket.png" else
		if card.card_color=="green" then "g-r-bracket.png" else
		if card.card_color=="multicolor" then "m-r-bracket.png" else
		if card.card_color=="artifact" then "a-r-bracket.png" else
		"l-r-bracket.png"
	}
	
	# Use the normal tap symbol
	mana_t := {
		if      styling.tap_symbol == "old"        then "old"
		else if styling.tap_symbol == "diagonal T" then "older"
		else                                            "new"
	}
	
	# Use guild mana symbols?
	guild_mana := { styling.use_guild_mana_symbols }
	

############################################################## Set info fields
set info style:
	symbol:
		variation:
			name: invertedcommon
			border radius: 0.10
			fill type: solid
			fill color:   rgb(255,255,255)
			border color: rgb(0,0,0)

############################################################## Extra style options

styling field:
	type: boolean
	name: extended art
	description: Should the card feature extended art like on planeswalkers?
	initial: no
styling field:
	type: choice
	name: power toughness font
	description: What font should be used for the P/T boxes?
	choice: Amienne
	choice: Brush Script Std
	choice: Matrix
	choice: MatrixRegularSmallCaps
	choice: MPlantin
	choice: Times New Roman
	initial: MatrixRegularSmallCaps
styling field:
	type: choice
	name: illustrator font
	description: What font should be used for the illustrator line?
	choice: Brush Script Std
	choice: MatrixRegularSmallCaps
	initial: Brush Script Std
styling field:
	type: boolean
	name: justified text
	description: Should rules text be justified?
	initial: yes
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?
	initial: modern
	choice: modern
	choice: old
	choice: diagonal T
styling field:
	type: package choice
	name: text box mana symbols
	match: magic-mana-*.mse-symbol-font
	initial: magic-mana-small.mse-symbol-font
styling field:
	type: choice
	name: center text
	description: When to center text (short text only means only on one-line cards with no flavor text)
	choice: always
	choice: short text only
	choice: never
	initial: never
styling field:
	type: boolean
	name: inverted common symbol
	description: Should the common rarity symbol be inverted, like in Coldsnap?
	initial: no
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: overlay combine type
	description: What type of combine should the overlay use? Only works if overlay is enabled.
	choice: normal
	choice: add
	choice: subtract
	choice: stamp
	choice: difference
	choice: negation
	choice: multiply
	choice: darken
	choice: lighten
	choice: color dodge
	choice: color burn
	choice: screen
	choice: overlay
	choice: hard light
	choice: soft light
	choice: reflect
	choice: glow
	choice: freeze
	choice: heat
	choice: and
	choice: or
	choice: xor
	choice: shadow
	choice: symmetric overlay
styling style:
	use guild mana symbols:
		choice images:
			yes: /magic-mana-small.mse-symbol-font/mana_guild_rg.png
			no:  /magic-mana-small.mse-symbol-font/mana_rg.png
	tap symbol:
		render style: both
		choice images:
			modern:     /magic-mana-large.mse-symbol-font/mana_t.png
			old:        /magic-mana-large.mse-symbol-font/mana_t_old.png
			diagonal T: /magic-mana-large.mse-symbol-font/mana_t_older.png
	center text:
		render style: both
		choice images:
			always:          /magic.mse-game/icons/center-all-text.png
			short text only: /magic.mse-game/icons/center-short-text.png
			never:           /magic.mse-game/icons/center-no-text.png
	inverted common symbol:
		choice images:
			no:  { symbol_variation(symbol: set.symbol, variation: "common") }
			yes: { symbol_variation(symbol: set.symbol, variation: "invertedcommon") }

############################################################## Card fields
card style:
	############################# Background stuff
	border color:
		left: 0
		top : 0
		width:	375
		height:	523
		radius: 18
		left width:   17
		right width:  17
		top width:    17
		bottom width: 18
		mask: border-mask.png
		z index: -1
	card color:
		left:	0
		top:	0
		width:	375
		height:	523
		z index: -2
		render style: image
		popup style: in place
		image: { card_background() }

	############################# Name line
	name:
		left:   20
		top :   20
		width: 335
		height: 17
		alignment: middle center shrink-overflow
		padding bottom: 0
		z index: 2
		font:
			name: MatrixRegularSmallCaps
			size: 24
			color: rgb(0,0,0)
			shadow color: rgb(255,255,255)
			shadow displacement x: 0
			shadow displacement y: 0
			shadow blur: 0
	casting cost:
		left: 90
		top : 40
		width: 200
		height: 12
		z index: 1
		alignment: middle center shrink-overflow
		font:
			name: { styling.illustrator_font }
			size: 10
			color: rgb(0,0,0)
	type symbol:
		left: 18
		top: 299
		width: 30
		height: 30
		z index: 1
		render style: image
		choice images:
			artifact: sym-a.png
			creature: sym-c.png
			enchantment: sym-e.png
			instant: sym-i.png
			land: sym-l.png
			multitype: sym-h.png
			sorcery: sym-s.png
			planeswalker: sym-p.png

	############################# Image
	image:
		left:	18
		top:	50
		width:	341
		height:	{ if styling.extended_art=="yes" then 435 else 258 }
		z index: 1
		mask: { if styling.extended_art=="yes" then "extended_mask.png" else "image-mask.png" }

	############################# Card type

	type:
		left: 49
		top : 307
		width: 275
		height: 14
		alignment: middle center
		z index: 2
		padding top: 2
		font:
			name: MatrixRegularSmallCaps
			size: 11.5
			color: rgb(0,0,0)
			separator color: rgb(128,128,128)

	rarity:
		right: 355
		top : 299
		width: 30
		height: 30
		z index: 1
		render style: image
		alignment: middle center
		choice images:
			# Images based on the set symbol
			basic land:
				script:
					if styling.inverted_common_symbol then symbol_variation(symbol: set.symbol, variation: "invertedcommon")
					else symbol_variation(symbol: set.symbol, variation: "common")
			common:
				script:
					if styling.inverted_common_symbol then symbol_variation(symbol: set.symbol, variation: "invertedcommon")
					else symbol_variation(symbol: set.symbol, variation: "common")
			uncommon:   script: symbol_variation(symbol: set.symbol, variation: "uncommon")
			rare:       script: symbol_variation(symbol: set.symbol, variation: "rare")
			mythic rare:       script: symbol_variation(symbol: set.symbol, variation: "mythic rare")
			special:    script: symbol_variation(symbol: set.symbol, variation: "special")

	############################# Text box
	text:
		left: 45
		top : 330
		width: 285
		height: 135
		font:
			name: MPlantin
			italic name: MPlantin-Italics
			size: 14
			scale down to: 6
			color: rgb(0,0,0)
		symbol font:
			name: { styling.text_box_mana_symbols }
			size: 14
		alignment:
			script:
				if (styling.center_text == "short text only" and
				   not contains(match:"\n", card.rule_text) and
				   card.flavor_text == "<i-flavor></i-flavor>" and
				   card_style.text.content_lines <= 2) or
				   styling.center_text == "always"
				then "middle center"
				else ( if styling.justified_text=="yes" then "middle justify" else "middle left" )
		z index: 2
		padding left:   2
#		padding top:    2
		padding right:  4
#		padding bottom: 2
		line height hard: 1.2
		line height line: 1.5
		line height soft: 0.9
		line height hard max: 1.3
		line height line max: 1.6

	watermark:
		left: 117
		top : 333
		width: 138
		height: 136
		z index: 1
		render style: image
		alignment: middle center
		include file: /magic-watermarks.mse-include/watermarks

	############################# PT
	pt:
		z index: 4
		left:	295
		top:	{ if styling.power_toughness_font=="Amienne" then 462 else if styling.power_toughness_font=="MatrixRegularSmallCaps" then 460 else 461 }
		width:	33
		height:	20
		alignment: middle center shrink-overflow
		font:
			name: { styling.power_toughness_font }
			size: { if styling.power_toughness_font=="Amienne" then 20 else 17 }
			weight: bold
			color: rgb(0,0,0)
			separator color: rgb(200,0,0)

	############################# Card sorting / numbering
	############################# Copyright stuff

	illustrator:
		left: 90
		top : 467
		width: 200
		height: 12
		z index: 1
		alignment: left shrink-overflow
		font:
			name: { styling.illustrator_font }
			size: 10
			color: rgb(0,0,0)

	copyright line:
		left: 60
		top : 492
		width: 255
		height: 8
		z index: 2
		alignment: middle center shrink-overflow
		font:
			name: MPlantin
			size: 6.5
			color: rgb(0,0,0)
			shadow color: rgb(0,0,0)
			shadow displacement x: 0
			shadow displacement y: 0
			shadow blur: 0

############################################################## Extra card fields
extra card field:
	type: choice
	name: foil layer
	choice: foil
	save value: false
	editable: false
extra card field:
	type: choice
	name: left bracket
	choice: bracket
	editable: false
	save value: false
extra card field:
	type: choice
	name: right bracket
	choice: bracket
	editable: false
	save value: false
extra card field:
	type: choice
	name: pt box
	script: card.card_color
	editable: false
extra card field:
	type: text
	name: duplicate name
	editable: false
	show statistics: false
	default: card.name
extra card field:
	type: text
	name: duplicate copyright line
	editable: false
	show statistics: false
	default: card.copyright_line
extra card field:
	type: choice
	name: paintbrush
	choice: black
	editable: false
	save value: false
extra card style:
	foil layer:
		left: 0
		top : 0
		width: 375
		height: 523
		z index: 5
		render style: image
		image: {if styling.overlay == "" then nil else set_combine(input: styling.overlay + "/overlay.png", combine: styling.overlay_combine_type)}
	left bracket:
		left: { if card_style.casting_cost.content_width > 255 then 60 else ( 187.5 - ( card_style.casting_cost.content_width * 0.5 ) ) }
		top : 42
		width: 8
		height: 22
		z index: 2
		visible: no
		render style: image
		image: { card_left_bracket() }
	right bracket:
		left: { if card_style.casting_cost.content_width > 255 then 308 else ( 187.5 + ( card_style.casting_cost.content_width * 0.5 ) ) }
		top : 42
		width: 8
		height: 22
		z index: 2
		visible: no
		render style: image
		image: { card_right_bracket() }
	pt box:
		left:	278
		top:	457
		width:	55
		height:	26
		z index: 1
		visible: { card.pt != "" }
		render style: image
		image: { card_ptbox() }
	duplicate name:
		left:   20
		top :   20
		width: 335
		height: 17
		alignment: middle center shrink-overflow
		padding bottom: 0
		z index: 1
		font:
			name: MatrixRegularSmallCaps
			size: 24
			color: rgb(255,255,255)
			shadow color: rgb(0,0,0)
			shadow displacement x: 0
			shadow displacement y: 0
			shadow blur: 0
	duplicate copyright line:
		left: 60
		top : 492
		width: 255
		height: 8
		z index: 1
		alignment: middle center shrink-overflow
		font:
			name: MPlantin
			size: 6.5
			color: rgb(0,0,0)
			shadow color: rgb(0,0,0)
			shadow displacement x: 0
			shadow displacement y: 0
			shadow blur: 0
	paintbrush:
		left: 45
		top : 470
		width: 32
		height: 12
		z index: 1
		render style: image
		choice images:
			black: /magic-future-common.mse-include/paintbrush_black.png
