From bc1b3e23dd8f7bc8e123382f1a29ef83c08a0f96 Mon Sep 17 00:00:00 2001 From: Kyle <41976328+ImKyle4815@users.noreply.github.com> Date: Sun, 21 Mar 2021 20:33:15 -0700 Subject: [PATCH] loyalty --- img/frames/planeswalker/maskLoyalty.png | Bin 0 -> 16402 bytes img/frames/planeswalker/maskLoyaltyThumb.png | Bin 0 -> 2467 bytes js/creator-10.js | 2 +- js/frames/packMysticalArchive.js | 25 ++++++++++--------- js/frames/packPlaneswalkerBorderless.js | 2 +- js/frames/packPlaneswalkerNickname.js | 2 +- js/frames/packPlaneswalkerRegular.js | 2 +- js/frames/packPlaneswalkerTall.js | 2 +- 8 files changed, 18 insertions(+), 17 deletions(-) create mode 100644 img/frames/planeswalker/maskLoyalty.png create mode 100644 img/frames/planeswalker/maskLoyaltyThumb.png diff --git a/img/frames/planeswalker/maskLoyalty.png b/img/frames/planeswalker/maskLoyalty.png new file mode 100644 index 0000000000000000000000000000000000000000..1210336f22ff52b6ef6d30b6d40f743f2de87d0f GIT binary patch literal 16402 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 O1n+m)_tRcV%>Mv1X+Q^u!VPraQfH*B$!L@{ zCDYim&B&6ajD46ngygvH{eJI<`{91N&-=Xp_xfo>p59lxhmab<+<0^-}_8CFBTITU8qfNpFfnR8Jj?&Ky^t`x_1$ZiN3MycXayedv3tf$-Jk*&~&FP`x zALeYt+{5d&2R!ZD3}GTcFJw1fc8YGmyDWS?o3y#G^v`nC(g3^o6-sVGI3BmoB8ql_Nqb$sEcT4x95O_q``xC$HwyUw@ z&kbl}R6(^M(!6aNMA=mYpkCED9TNo8AD}AGn%=TJS;vVyDn3e+?*V@35~trmIYJ?% zYUcH5AIfvJlrQWk4aoPnd2@)$44jHtfz23{9+M0o+ZeoR zQKEjE@0s%p%O`jm`KY4{ZmF`Tptb?q!E9KigfsCIkrSMLh<@!Fh=D2G^IVC%KS!?I54lkUJ&`DklufMiyObA)oDXlQc%q*HE+xT99V1Vf40el1p8yvL~8fpDz*gGXbO2^{?U1zs=Ay zJ_Gt#;38={m#^W!RFhR^@9^Wn_)IDQmezY?+rckATAFXP^n_qsMx*jxd85`@Ise;I zyg%QDA;I619x=bgrtdh33qu5oVWB%T1ck;DoM=2nfa1%?F5NpwqDQJvw~Q*a4CE9C zm}j)aWEs=(ey%2Z>CmPk=&kxBtU8xtAYpY6*@Ziy*J1Jdm4^5mW8C>>Q*JF_gNJA$4)^|SDmAi#80%Drc}j6-jU_d_DBL(wKi(x%2pO_+|RCRAM&c4#Q1@SFh^ zl+Ec+2=5fIja(O2%mI0~Xw0eiqqS3ShWc0w;V<*PY-SAHk7D0on?JTgow?{t%_O|_S=m*;m@G70YIp}PJMg=O->YiKE4eK4+ zknHco25p-;tMo1Fc3^{phtC|ygjiQJGW>xX5{ocKYf~>kTCP%RFv?^FeL%i{J>w%D@XN=_RYuLn*D_u9P%P=j9gWsy10rJ z>rE@e9|wKiE;KDX)}e?t8-&?$Y(HZ+T=E%tMgoanvRSJ^)%&-8?781nT})7I64CPi zk`yQrU1PmCfS@u}N8*9GvD_|&C%=4I{&Dm=kyegcbc}-6_N||t!vl6a$#Yd`O zV+Mf>j^{l$0|08bA36T7)xBNvnzMmUgGg(^z(f+p^hp{E)A!D;_>JTKWE~~wmsE_8 z#?ZHHJuY4L-%HDh4}{oP4_Q@O%!`hoviYM-3S`URu^086d>V^Dw%SB?jWEd#lwFS8 zerj|p$v{PZt`pS~LSWm6W`N!K;<6-{W|O6eJO91>Ex_%$HA=OpUDVU>e#2~lQq?>V zQtalX(tbSla&w341O^tc{m!hyzOW~DuVDb1wJLdUci-`a_vL+E&9CTF<9l&K;cmlW s>+tbSivTQI(QLwdGR|v1J*0&fl%eg(l;{N>J_5kh_&VyPk$b{F0CY{d8~^|S literal 0 HcmV?d00001 diff --git a/js/creator-10.js b/js/creator-10.js index fdc1fd2f..48f00fb6 100644 --- a/js/creator-10.js +++ b/js/creator-10.js @@ -718,7 +718,7 @@ function writeText(textObject, targetContext) { currentX = savedTextXPosition; } } else if (possibleCode.includes('ptshift')) { - if (card.frames.findIndex(element => element.name.toLowerCase().includes('power/toughness')) >= 0 || card.version.includes('planeswalker') || card.version == 'commanderLegends' || card.version == 'm21') { + if (card.frames.findIndex(element => element.name.toLowerCase().includes('power/toughness')) >= 0 || card.version.includes('planeswalker') || ['commanderLegends', 'm21', 'mysticalArchive'].includes(card.version)) { ptShift[0] = scaleWidth(parseFloat(possibleCode.replace('ptshift', '').split(',')[0])); ptShift[1] = scaleHeight(parseFloat(possibleCode.split(',')[1])); } diff --git a/js/frames/packMysticalArchive.js b/js/frames/packMysticalArchive.js index 8065beb5..d418ae67 100644 --- a/js/frames/packMysticalArchive.js +++ b/js/frames/packMysticalArchive.js @@ -1,28 +1,29 @@ //Create objects for common properties across available frames -var masks = [{src:'/img/frames/m15/regular/m15MaskPinline.png', name:'Pinline'}, {src:'/img/frames/m15/regular/m15MaskTitle.png', name:'Title'}, {src:'/img/frames/m15/regular/m15MaskType.png', name:'Type'}, {src:'/img/frames/m15/regular/m15MaskRules.png', name:'Rules'}, {src:'/img/frames/m15/regular/m15MaskFrame.png', name:'Frame'}, {src:'/img/frames/m15/regular/m15MaskBorder.png', name:'Border'}]; -var bounds = {x:0.7573, y:0.8848, width:0.188, height:0.0733}; +var masks = []//[{src:'/img/frames/m15/regular/m15MaskPinline.png', name:'Pinline'}]; //defines available frames availableFrames = [ - {name:'White Frame', src:'/img/frames/m15/regular/m15FrameW.png', masks:masks}, - {name:'Blue Frame', src:'/img/frames/m15/regular/m15FrameU.png', masks:masks}, - {name:'Black Frame', src:'/img/frames/m15/regular/m15FrameB.png', masks:masks}, - {name:'Red Frame', src:'/img/frames/m15/regular/m15FrameR.png', masks:masks}, - {name:'Green Frame', src:'/img/frames/m15/regular/m15FrameG.png', masks:masks}, - {name:'Multicolored Frame', src:'/img/frames/m15/regular/m15FrameM.png', masks:masks}, - {name:'Artifact Frame', src:'/img/frames/m15/regular/m15FrameA.png', masks:masks}, - {name:'Land Frame', src:'/img/frames/m15/regular/m15FrameL.png', masks:masks} + {name:'White Frame', src:'/img/frames/mysticalArchive/w.png', masks:masks}, + {name:'Blue Frame', src:'/img/frames/mysticalArchive/u.png', masks:masks}, + {name:'Black Frame', src:'/img/frames/mysticalArchive/b.png', masks:masks}, + {name:'Red Frame', src:'/img/frames/mysticalArchive/r.png', masks:masks}, + {name:'Green Frame', src:'/img/frames/mysticalArchive/g.png', masks:masks}, + {name:'Multicolored Frame', src:'/img/frames/mysticalArchive/m.png', masks:masks}, + {name:'Artifact Frame', src:'/img/frames/mysticalArchive/a.png', masks:masks}, + {name:'Land Frame', src:'/img/frames/mysticalArchive/c.png', masks:masks}, + {name:'Power/Toughness', src:'/img/frames/mysticalArchive/pt.png', bounds:{x:0.7014, y:0.8924, width:0.222, height:0.0520}} ]; //disables/enables the "Load Frame Version" button document.querySelector('#loadFrameVersion').disabled = false; //defines process for loading this version, if applicable document.querySelector('#loadFrameVersion').onclick = async function() { + notify("To change the color of your mana cost, use {manacolor#}, but replace '#' with your desired color. 'white', 'blue', 'black', 'red', and 'green', as well as hex/html color codes are currently supported.", 15) //resets things so that every frame doesn't have to await resetCardIrregularities(); //sets card version card.version = 'mysticalArchive'; loadScript('/js/frames/manaSymbolsOutline.js'); //art bounds - card.artBounds = {x:0, y:0.1129, width:1, height:0.4429}; + card.artBounds = {x:0, y:0.1205, width:1, height:0.7539}; autoFitArt(); //set symbol bounds card.setSymbolBounds = {x:0.9213, y:0.5910, width:0.12, height:0.0410, vertical:'center', horizontal: 'right'}; @@ -35,7 +36,7 @@ document.querySelector('#loadFrameVersion').onclick = async function() { mana: {name:'Mana Cost', text:'', y:0.0613, width:0.9292, height:71/2100, oneLine:true, size:71/1638, align:'right', manaCost:true, manaSpacing:0, manaPrefix:'outline', manaSymbolColor:'white'}, title: {name:'Title', text:'', x:0.0854, y:0.0522, width:0.8292, height:0.0543, oneLine:true, font:'belerenb', size:0.0381}, type: {name:'Type', text:'', x:0.0854, y:0.5664, width:0.8292, height:0.0543, oneLine:true, font:'belerenb', size:0.0324}, - rules: {name:'Rules Text', text:'', x:0.086, y:0.6303, width:0.828, height:0.2875, size:0.0362}, + rules: {name:'Rules Text', text:'', x:0.0934, y:0.6303, width:0.8134, height:0.2875, size:0.0362}, pt: {name:'Power/Toughness', text:'', x:0.7928, y:0.902, width:0.1367, height:0.0372, size:0.0372, font:'belerenbsc', oneLine:true, align:'center'} }); } diff --git a/js/frames/packPlaneswalkerBorderless.js b/js/frames/packPlaneswalkerBorderless.js index 0ecbff7a..eadda64d 100644 --- a/js/frames/packPlaneswalkerBorderless.js +++ b/js/frames/packPlaneswalkerBorderless.js @@ -1,5 +1,5 @@ //Create objects for common properties across available frames -var masks = [{src:'/img/frames/planeswalker/regular/planeswalkerMaskPinline.png', name:'Pinline'}, {src:'/img/frames/planeswalker/regular/planeswalkerMaskTitle.png', name:'Title'}, {src:'/img/frames/planeswalker/regular/planeswalkerMaskType.png', name:'Type'}, {src:'/img/frames/planeswalker/regular/planeswalkerMaskBorder.png', name:'Border'}]; +var masks = [{src:'/img/frames/planeswalker/regular/planeswalkerMaskPinline.png', name:'Pinline'}, {src:'/img/frames/planeswalker/regular/planeswalkerMaskTitle.png', name:'Title'}, {src:'/img/frames/planeswalker/regular/planeswalkerMaskType.png', name:'Type'}, {src:'/img/frames/planeswalker/regular/planeswalkerMaskBorder.png', name:'Border'}, {src:'/img/frames/planeswalker/maskLoyalty.png', name:'Loyalty'}]; //defines available frames availableFrames = [ {name:'White Frame', src:'/img/frames/planeswalker/borderless/w.png', masks:masks}, diff --git a/js/frames/packPlaneswalkerNickname.js b/js/frames/packPlaneswalkerNickname.js index 4480041e..84be2d1f 100644 --- a/js/frames/packPlaneswalkerNickname.js +++ b/js/frames/packPlaneswalkerNickname.js @@ -1,5 +1,5 @@ //Create objects for common properties across available frames -var masks = [{src:'/img/frames/planeswalker/regular/planeswalkerMaskPinline.png', name:'Pinline'}, {src:'/img/frames/planeswalker/regular/planeswalkerMaskTitle.png', name:'Title'}, {src:'/img/frames/planeswalker/regular/planeswalkerMaskType.png', name:'Type'}, {src:'/img/frames/planeswalker/regular/planeswalkerMaskBorder.png', name:'Border'}]; +var masks = [{src:'/img/frames/planeswalker/regular/planeswalkerMaskPinline.png', name:'Pinline'}, {src:'/img/frames/planeswalker/regular/planeswalkerMaskTitle.png', name:'Title'}, {src:'/img/frames/planeswalker/regular/planeswalkerMaskType.png', name:'Type'}, {src:'/img/frames/planeswalker/regular/planeswalkerMaskBorder.png', name:'Border'}, {src:'/img/frames/planeswalker/maskLoyalty.png', name:'Loyalty'}]; //defines available frames availableFrames = [ {name:'White Frame', src:'/img/frames/planeswalker/nickname/planeswalkerNicknameFrameW.png', masks:masks}, diff --git a/js/frames/packPlaneswalkerRegular.js b/js/frames/packPlaneswalkerRegular.js index 2b4af2f3..ca2291b5 100644 --- a/js/frames/packPlaneswalkerRegular.js +++ b/js/frames/packPlaneswalkerRegular.js @@ -1,5 +1,5 @@ //Create objects for common properties across available frames -var masks = [{src:'/img/frames/planeswalker/regular/planeswalkerMaskPinline.png', name:'Pinline'}, {src:'/img/frames/planeswalker/regular/planeswalkerMaskTitle.png', name:'Title'}, {src:'/img/frames/planeswalker/regular/planeswalkerMaskType.png', name:'Type'}, {src:'/img/frames/planeswalker/regular/planeswalkerMaskFrame.png', name:'Frame'}, {src:'/img/frames/planeswalker/regular/planeswalkerMaskBorder.png', name:'Border'}]; +var masks = [{src:'/img/frames/planeswalker/regular/planeswalkerMaskPinline.png', name:'Pinline'}, {src:'/img/frames/planeswalker/regular/planeswalkerMaskTitle.png', name:'Title'}, {src:'/img/frames/planeswalker/regular/planeswalkerMaskType.png', name:'Type'}, {src:'/img/frames/planeswalker/regular/planeswalkerMaskFrame.png', name:'Frame'}, {src:'/img/frames/planeswalker/regular/planeswalkerMaskBorder.png', name:'Border'}, {src:'/img/frames/planeswalker/maskLoyalty.png', name:'Loyalty'}]; //defines available frames availableFrames = [ {name:'White Frame', src:'/img/frames/planeswalker/regular/planeswalkerFrameW.png', masks:masks}, diff --git a/js/frames/packPlaneswalkerTall.js b/js/frames/packPlaneswalkerTall.js index 6cee3ef8..81968230 100644 --- a/js/frames/packPlaneswalkerTall.js +++ b/js/frames/packPlaneswalkerTall.js @@ -1,5 +1,5 @@ //Create objects for common properties across available frames -var masks = [{src:'/img/frames/planeswalker/tall/planeswalkerTallMaskPinline.png', name:'Pinline'}, {src:'/img/frames/planeswalker/regular/planeswalkerMaskTitle.png', name:'Title'}, {src:'/img/frames/planeswalker/tall/planeswalkerTallMaskType.png', name:'Type'}, {src:'/img/frames/planeswalker/tall/planeswalkerTallMaskFrame.png', name:'Frame'}, {src:'/img/frames/planeswalker/regular/planeswalkerMaskBorder.png', name:'Border'}]; +var masks = [{src:'/img/frames/planeswalker/tall/planeswalkerTallMaskPinline.png', name:'Pinline'}, {src:'/img/frames/planeswalker/regular/planeswalkerMaskTitle.png', name:'Title'}, {src:'/img/frames/planeswalker/tall/planeswalkerTallMaskType.png', name:'Type'}, {src:'/img/frames/planeswalker/tall/planeswalkerTallMaskFrame.png', name:'Frame'}, {src:'/img/frames/planeswalker/regular/planeswalkerMaskBorder.png', name:'Border'}, {src:'/img/frames/planeswalker/maskLoyalty.png', name:'Loyalty'}]; //defines available frames availableFrames = [ {name:'White Frame', src:'/img/frames/planeswalker/tall/planeswalkerTallW.png', masks:masks},