mse version: 0.3.8
game: magic
short name: Tokens
full name: Modern style
installer group: magic/new style/tokens
icon: card-sample.png
position hint: 007

version: 2010-07-25
depends on:
	package: magic.mse-game
	version: 2008-06-02
depends on:
	package: magic-future-common.mse-include
	version: 2007-09-23
depends on:
	package: magic-mana-small.mse-symbol-font
	version: 2007-09-23
depends on:
	package: magic-embossedletters.mse-symbol-font
	version: 2007-09-23

card width: 375
card height: 523
card dpi: 150
# By Pichoro
############################################################## Extra scripts
init script:
	# Should hybrids have a grey name?
	mask_hybrid_with_land := { styling.grey_hybrid_typeline }
	
	# What should the textbox look like?
	text_shape := {
		if card.rule_text == ""
		   and card.flavor_text == "<i-flavor></i-flavor>" then "0" # no textbox
		else if styling.one_textline_tokens
		   and card_style.text.content_lines == 2
		   and card.flavor_text == "<i-flavor></i-flavor>" then "1" # small textbox
		else "2" # large textbox
	}
	
	template_suffix := [card0: "card0.jpg", card1: "card1.jpg", card2: "card2.jpg", pt: "pt.png"]
	land_note := [card0: "l", card1: "l", card2: "l", pt: ""]
	template      := { input + template_suffix[type] }
	land_template := { (if input == "a" then "c" else input) + land_note[type] + template_suffix[type] }
	
	# 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 }
	
	# We have no land template
	font_colors_white := { input == "b" or input == "l" }
	
	# AE replacement shouldn't happen in the title, or else MSE compresses the symbol
	name_filter := { input }
	
	paintbrush_color := { if font_white() then "white" else "black" }
	
	card_shape := { "token" }

############################################################## 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
styling field:
	type: boolean
	name: grey hybrid typeline
	description: Use a grey background for the type line on hybrid cards. This is done on real cards.
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: 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: 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: boolean
	name: one textline tokens
	description: Should token frames with a single line for text be enabled?
	initial: no
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: short text only
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 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-small.mse-symbol-font/mana_t.png
			old:        /magic-mana-small.mse-symbol-font/mana_t_old.png
			diagonal T: /magic-mana-small.mse-symbol-font/mana_t_older.png
	one textline tokens:
		render style: both
		choice images:
			yes: rcard1.jpg
			no:  rcard2.jpg
	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
		z index: 4
	card color:
		left: 0
		top: 0
		width: 375
		height: 523
		z index: 0
		render style: image
		popup style: in place
		image: { color_background(type:"card" + text_shape(), base_hybrid:card_hybrid) }
	###################C######### Name line
	name:
		left:
			{ if card_style.name.content_width > 269 then 50
			else card_style.name.content_width * -0.5 + 184.5 }
		top: 23
		width:
			{ if card_style.name.content_width > 269 then 275
			   else card_style.name.content_width + 6 }
		height: 28
		alignment: bottom center justify-all
		padding bottom: -2
		padding top: 2
		z index: 2
		symbol font:
			name: magic-embossedletters
			size: 22
			alignment: bottom center
		always symbol: true
	############################# Image
	image:
		left: 30
		top: { if text_shape() == 2 or text_shape() == 1 then 58 else 59 }
		width: 315
		height:
			{ if      text_shape() == "0" then 366
			  else if text_shape() == "1" then 349
			  else                             288 }
		mask: { "imagemask{text_shape()}.png" }
		z index: 1
	################H############ Card type
	type:
		left: 35
		top:
			{if      text_shape() == "0" then 432
			 else if text_shape() == "1" then 414
			 else 353}
		width: { 308 - max(22,card_style.rarity.content_width) }
		height: 20
		alignment: top shrink-overflow
		z index: 1
		padding top: 2
		padding bottom: 4
		padding right: 2
		font:
			name: Matrix
			size: 15
			color: rgb(0,0,0)
			separator color: rgb(128,128,128)
	rarity:
		right: 342
		top:
			{ if      text_shape() == "0" then 432
			  else if text_shape() == "1" then 414
			  else                             353 }
		width: 44
		height: 22
		z index: 2
		alignment: middle right
		render style: image
		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: 31
		top:
			{ if      text_shape() == "0" then 300
			  else if text_shape() == "1" then 443
			  else                             388}
		width: 311
		height: 
			{ if   text_shape() == "1" then 27
			  else                          80 }
		font:
			name: MPlantin
			italic name: MPlantin-Italic
			size: 14
			scale down to: 10
			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
				   card_style.text.content_lines <= 2 and
				   not contains(match:",", card.rule_text) and
				   not contains(match: ".", card.rule_text) and
				   not contains(match: ";", card.rule_text) and
				   not contains(match: ":", card.rule_text) and
				   not contains(match: "!", card.rule_text) and
				   not contains(match: "?", card.rule_text) and
				   card.flavor_text == "<i-flavor></i-flavor>") or
				   styling.center_text == "always"
				then "middle center shrink-overflow"
				else "middle left shrink-overflow"
		z index: 1
		padding left:   6
		padding top:    2
		padding right:  4
		padding bottom: 2
		line height hard: 1.2
		line height line: 1.5
		line height soft: 0.9
	############################# PT
	pt:
		z index: 2
		left:
			{ if text_shape() == "2" then 288
			  else                        284 }
		top:
			{ if text_shape() == "2" then 471
			  else                        466 }
		width:	60
		height:	28
		alignment: center middle shrink-overflow
		font:
			name: ModMatrix
			size: 17
			weight: bold
			color: rgb(0,0,0)
			separator color: rgb(200,0,0)
	############################# Copyright stuff
	illustrator:
		left: 58
		top : 479
		width: 215
		height: 16
		z index: 1
		font:
			name: Matrix
			size: 11
			weight: bold
			color: { font_color(card.card_color) }
	copyright line:
		left: 30
		top : 493
		width: 247
		height: 12
		z index: 1
		font:
			name: MPlantin
			size: 6.5
			color: { font_color(card.card_color) }
############################################################## Extra card fields
extra card field:
	type: choice
	name: pt box
	script: card.card_color
	editable: false
	save value: false
extra card field:
	type: choice
	name: foil layer
	choice: foil
	save value: false
	editable: false
extra card field:
	type: choice
	name: name box
	choice: black
	editable: false
	save value: false
extra card field:
	type: choice
	name: name box left
	choice: black
	editable: false
	save value: false
extra card field:
	type: choice
	name: name box right
	choice: black
	editable: false
	save value: false
extra card field:
	type: choice
	name: paintbrush
	script: paintbrush_color(card.card_color)
	editable: false
	save value: false
extra card style:
	pt box:
		left:
			{ if text_shape() == "2" then 275
			  else                        271 }
		top:
			{ if text_shape() == "2" then 466
			  else                        461 }
		width:	81
		height:	42
		z index: 1
		visible: { card.pt != "" }
		render style: image
		image: { card_ptbox() }
	foil layer:
		left: 0
		top : 0
		width: 375
		height: 523
		z index: 3
		render style: image
		image: {if styling.overlay == "" then nil else styling.overlay + "/overlay.png"}
	name box:
		left:
			{ if card_style.name.content_width > 275 then 50
			   else card_style.name.content_width * -0.5 + 185.5 }
		top: 26
		width:
			{ if card_style.name.content_width > 275 then 275
			   else card_style.name.content_width + 3}
		height: 35
		z index: 1
		visible: { card.name != "" }
		render style: image
		image: name-mid.png
	name box left:
		right:
			{ if card_style.name.content_width > 275 then 50
			   else card_style.name.content_width * -0.5 + 185.5 }
		top: 26
		width: 15
		height: 35
		z index: 1
		render style: image
		image: name-left.png
	name box right:
		left:
			{ if card_style.name.content_width > 275 then 325
			   else card_style.name.content_width * 0.5 + 187.5 }
		top: 26
		width: 14
		height: 35
		z index: 1
		render style: image
		image: name-right.png
	paintbrush:
		left: 27
		top : 481
		width: 30
		height: 11
		z index: 1
		render style: image
		choice images:
			black: /magic-future-common.mse-include/paintbrush_black.png
			white: /magic-future-common.mse-include/paintbrush_white.png
