mirror of
https://github.com/chaoticbackup/chaoticbackup.github.io.git
synced 2026-04-26 01:02:54 -05:00
add set number
This commit is contained in:
parent
0e0aa1d341
commit
100d34e704
|
|
@ -1,5 +1,4 @@
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import API from '../SpreadsheetData';
|
|
||||||
|
|
||||||
export function AttackIcon(props) {
|
export function AttackIcon(props) {
|
||||||
const attack = "attack" + ((props.bp && props.bp >= 0) ? "_" + props.bp : "");
|
const attack = "attack" + ((props.bp && props.bp >= 0) ? "_" + props.bp : "");
|
||||||
|
|
@ -15,13 +14,10 @@ export function LocationIcon(props) {
|
||||||
}
|
}
|
||||||
|
|
||||||
export function RarityIcon(props) {
|
export function RarityIcon(props) {
|
||||||
const { set, rarity, iconOnly=false } = props;
|
const { set, rarity, size } = props;
|
||||||
return (
|
return (<>{set !== 'PE1' &&
|
||||||
<span>
|
<img className={size || "icon16"} style={{ verticalAlign: 'middle' }} src={("/public/img/icons/set/" + set + "/" + rarity + ".png").toLowerCase()} />
|
||||||
{set !== 'PE1' && <img className={props.size || "icon16"} style={{ verticalAlign: 'middle' }} src={("/public/img/icons/set/" + set + "/" + rarity + ".png").toLowerCase()} />}
|
}</>);
|
||||||
{!iconOnly && <>{API.sets[props.set]} | {props.rarity}</>}
|
|
||||||
</span>
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export function MugicIcon(props) {
|
export function MugicIcon(props) {
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,8 @@
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
|
import API from '../SpreadsheetData';
|
||||||
import { abilityText } from './abilityText';
|
import { abilityText } from './abilityText';
|
||||||
import { uniqueText } from './uniqueText';
|
import { uniqueText } from './uniqueText';
|
||||||
import { InitiativeIcon } from './_icons';
|
import { InitiativeIcon, RarityIcon } from './_icons';
|
||||||
|
|
||||||
export function Name(props) {
|
export function Name(props) {
|
||||||
const name = props.name.split(",");
|
const name = props.name.split(",");
|
||||||
|
|
@ -18,6 +19,20 @@ export function Name(props) {
|
||||||
</div>);
|
</div>);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function Rarity(props) {
|
||||||
|
const { set, rarity, id = -1 } = props;
|
||||||
|
|
||||||
|
return (
|
||||||
|
<div>
|
||||||
|
<RarityIcon {...props} />
|
||||||
|
{(id === -1)
|
||||||
|
? (<>{API.sets[props.set]} | {props.rarity}</>)
|
||||||
|
: (<>{` ${API.sets[set]} `}<span style={{ fontWeight: 'bold' }}>{`# ${id}`}</span>{` | ${rarity}`}</>)
|
||||||
|
}
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
export function FlavorText({ flavortext }) {
|
export function FlavorText({ flavortext }) {
|
||||||
return (flavortext) ? <div className="flavortext">{flavortext}</div> : <></>;
|
return (flavortext) ? <div className="flavortext">{flavortext}</div> : <></>;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,10 @@
|
||||||
import { Typography } from '@mui/material';
|
import { Typography } from '@mui/material';
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import { Attack } from "../../common/definitions";
|
import { Attack } from "../../common/definitions";
|
||||||
import { AttackIcon, ElementIcon, Name, RarityIcon } from '../../Snippets';
|
import { AttackIcon, ElementIcon, Name } from '../../Snippets';
|
||||||
import { abilityText } from '../../Snippets/abilityText';
|
import { abilityText } from '../../Snippets/abilityText';
|
||||||
import { uniqueText } from '../../Snippets/uniqueText';
|
import { uniqueText } from '../../Snippets/uniqueText';
|
||||||
import { CardBase, CardComponent, Flavor, Unique } from './CardBase';
|
import { CardBase, CardComponent, Flavor, Unique, Rarity } from './CardBase';
|
||||||
|
|
||||||
const AttackCard: CardBase<Attack> = (props) => {
|
const AttackCard: CardBase<Attack> = (props) => {
|
||||||
const { card } = props;
|
const { card } = props;
|
||||||
|
|
@ -22,7 +22,7 @@ const AttackCard: CardBase<Attack> = (props) => {
|
||||||
</>}
|
</>}
|
||||||
left={<>
|
left={<>
|
||||||
<Name name={card.gsx$name} />
|
<Name name={card.gsx$name} />
|
||||||
<RarityIcon size="icon20" set={card.gsx$set} rarity={card.gsx$rarity} />
|
<Rarity {...props} />
|
||||||
<Typography><AttackIcon size="icon20" bp={card.gsx$bp} /> Attack - {card.gsx$bp}</Typography>
|
<Typography><AttackIcon size="icon20" bp={card.gsx$bp} /> Attack - {card.gsx$bp}</Typography>
|
||||||
<Typography>
|
<Typography>
|
||||||
{`${card.gsx$base} | `}
|
{`${card.gsx$base} | `}
|
||||||
|
|
@ -34,6 +34,7 @@ const AttackCard: CardBase<Attack> = (props) => {
|
||||||
</>}
|
</>}
|
||||||
content={<>
|
content={<>
|
||||||
<Name name={card.gsx$name} />
|
<Name name={card.gsx$name} />
|
||||||
|
<Rarity {...props} />
|
||||||
<Typography sx={{ whiteSpace: "pre-line" }}>{ability}</Typography>
|
<Typography sx={{ whiteSpace: "pre-line" }}>{ability}</Typography>
|
||||||
{unique && <Unique>{unique}</Unique>}
|
{unique && <Unique>{unique}</Unique>}
|
||||||
{flavor && <Flavor>{flavor}</Flavor>}
|
{flavor && <Flavor>{flavor}</Flavor>}
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,10 @@
|
||||||
import { Typography } from '@mui/material';
|
import { Typography } from '@mui/material';
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import { BattlegearIcon, Name, RarityIcon } from '../../Snippets';
|
import { BattlegearIcon, Name } from '../../Snippets';
|
||||||
import { Battlegear } from '../../common/definitions';
|
import { Battlegear } from '../../common/definitions';
|
||||||
import { abilityText } from '../../Snippets/abilityText';
|
import { abilityText } from '../../Snippets/abilityText';
|
||||||
import { uniqueText } from '../../Snippets/uniqueText';
|
import { uniqueText } from '../../Snippets/uniqueText';
|
||||||
import { CardBase, CardComponent, Unique, Flavor } from './CardBase';
|
import { CardBase, CardComponent, Unique, Flavor, Rarity } from './CardBase';
|
||||||
|
|
||||||
const BattlegearCard: CardBase<Battlegear> = (props) => {
|
const BattlegearCard: CardBase<Battlegear> = (props) => {
|
||||||
const { card } = props;
|
const { card } = props;
|
||||||
|
|
@ -16,7 +16,7 @@ const BattlegearCard: CardBase<Battlegear> = (props) => {
|
||||||
<CardComponent {...props}
|
<CardComponent {...props}
|
||||||
left={<>
|
left={<>
|
||||||
<Name name={card.gsx$name} />
|
<Name name={card.gsx$name} />
|
||||||
<RarityIcon size="icon20" set={card.gsx$set} rarity={card.gsx$rarity} />
|
<Rarity {...props} />
|
||||||
<Typography><BattlegearIcon size="icon20"/> Battlegear{card.gsx$types.length > 0 ? ` - ${card.gsx$types}` : null}</Typography>
|
<Typography><BattlegearIcon size="icon20"/> Battlegear{card.gsx$types.length > 0 ? ` - ${card.gsx$types}` : null}</Typography>
|
||||||
</>}
|
</>}
|
||||||
right={<>
|
right={<>
|
||||||
|
|
@ -26,6 +26,7 @@ const BattlegearCard: CardBase<Battlegear> = (props) => {
|
||||||
</>}
|
</>}
|
||||||
content={<>
|
content={<>
|
||||||
<Name name={card.gsx$name} />
|
<Name name={card.gsx$name} />
|
||||||
|
<Rarity {...props} />
|
||||||
<Typography sx={{ whiteSpace: "pre-line" }}>{ability}</Typography>
|
<Typography sx={{ whiteSpace: "pre-line" }}>{ability}</Typography>
|
||||||
{unique && <Unique>{unique}</Unique>}
|
{unique && <Unique>{unique}</Unique>}
|
||||||
{flavor && <Flavor>{flavor}</Flavor>}
|
{flavor && <Flavor>{flavor}</Flavor>}
|
||||||
|
|
|
||||||
|
|
@ -2,6 +2,7 @@ import { Box, Card, CardMedia, CardContent, Typography, styled } from '@mui/mate
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
|
|
||||||
import { Card as ChaoticCard } from "../../common/definitions";
|
import { Card as ChaoticCard } from "../../common/definitions";
|
||||||
|
import { RarityIcon } from '../../Snippets';
|
||||||
import API from '../../SpreadsheetData';
|
import API from '../../SpreadsheetData';
|
||||||
|
|
||||||
export type statsType = "avg" | "min" | "max";
|
export type statsType = "avg" | "min" | "max";
|
||||||
|
|
@ -34,10 +35,11 @@ export const CardComponent = (
|
||||||
|
|
||||||
return (ext === false)
|
return (ext === false)
|
||||||
? (
|
? (
|
||||||
<Card sx={{ display: 'flex' }}>
|
<Card sx={{ display: 'flex' }} raised>
|
||||||
<CardMedia
|
<CardMedia
|
||||||
component="img"
|
component="img"
|
||||||
sx={{ height: "100px", width: "96px" }}
|
sx={{ width: "96px" }}
|
||||||
|
height="100px"
|
||||||
image={API.base_image + (card.gsx$thumb||API.thumb_missing)}
|
image={API.base_image + (card.gsx$thumb||API.thumb_missing)}
|
||||||
alt={`${card.gsx$name} thumb`}
|
alt={`${card.gsx$name} thumb`}
|
||||||
onClick={() => extend(card)}
|
onClick={() => extend(card)}
|
||||||
|
|
@ -45,7 +47,7 @@ export const CardComponent = (
|
||||||
<Box sx={{ marginLeft: .5, marginRight: .5, minWidth: "242px" }}>
|
<Box sx={{ marginLeft: .5, marginRight: .5, minWidth: "242px" }}>
|
||||||
{left}
|
{left}
|
||||||
</Box>
|
</Box>
|
||||||
<Box>
|
<Box sx={{ marginRight: "auto" }}>
|
||||||
{right}
|
{right}
|
||||||
</Box>
|
</Box>
|
||||||
{right2 && <Box>
|
{right2 && <Box>
|
||||||
|
|
@ -53,7 +55,7 @@ export const CardComponent = (
|
||||||
</Box>}
|
</Box>}
|
||||||
</Card>
|
</Card>
|
||||||
) : (
|
) : (
|
||||||
<Card>
|
<Card raised>
|
||||||
<Box sx={{ display: 'flex', flexWrap: 'wrap', alignItems: "flex-start" }}>
|
<Box sx={{ display: 'flex', flexWrap: 'wrap', alignItems: "flex-start" }}>
|
||||||
<CardMedia
|
<CardMedia
|
||||||
component="img"
|
component="img"
|
||||||
|
|
@ -68,7 +70,9 @@ export const CardComponent = (
|
||||||
}
|
}
|
||||||
<CardContent sx={{
|
<CardContent sx={{
|
||||||
flex: '1 0', minWidth: "310px",
|
flex: '1 0', minWidth: "310px",
|
||||||
width: `calc(100% - ${loc ? " 350px" : "250px"})`
|
width: `calc(100% - ${loc ? " 350px" : "250px"})`,
|
||||||
|
paddingTop: "8px",
|
||||||
|
paddingBottom: 0,
|
||||||
}}>
|
}}>
|
||||||
{content}
|
{content}
|
||||||
</CardContent>
|
</CardContent>
|
||||||
|
|
@ -84,3 +88,20 @@ export const Unique = styled(Typography)(() => ({
|
||||||
export const Flavor = styled(Typography)(() => ({
|
export const Flavor = styled(Typography)(() => ({
|
||||||
fontStyle: "italic"
|
fontStyle: "italic"
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
export const Rarity = (props: {card: ChaoticCard, ext: boolean}) => {
|
||||||
|
const { card, ext } = props;
|
||||||
|
|
||||||
|
return (!ext) ? (
|
||||||
|
<Typography>
|
||||||
|
<RarityIcon size="icon20" set={card.gsx$set} rarity={card.gsx$rarity} />
|
||||||
|
{` ${API.sets[card.gsx$set]} | ${card.gsx$rarity}`}
|
||||||
|
</Typography>
|
||||||
|
) : (
|
||||||
|
<Typography>
|
||||||
|
<RarityIcon size="icon20" set={card.gsx$set} rarity={card.gsx$rarity} />
|
||||||
|
{` ${API.sets[card.gsx$set]} `}<span style={{ fontWeight: 'bold' }}>{`# ${card.gsx$id}`}</span>{` | ${card.gsx$rarity}`}
|
||||||
|
</Typography>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,10 @@
|
||||||
import { Typography, styled } from '@mui/material';
|
import { Typography, styled } from '@mui/material';
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import { Creature } from "../../common/definitions";
|
import { Creature } from "../../common/definitions";
|
||||||
import { Name, RarityIcon, TribeIcon, MugicIcon, ElementIcon, DisciplineIcon } from '../../Snippets';
|
import { Name, TribeIcon, MugicIcon, ElementIcon, DisciplineIcon } from '../../Snippets';
|
||||||
import { abilityText } from '../../Snippets/abilityText';
|
import { abilityText } from '../../Snippets/abilityText';
|
||||||
import { uniqueText } from '../../Snippets/uniqueText';
|
import { uniqueText } from '../../Snippets/uniqueText';
|
||||||
import { CardBase, CardComponent, Unique, Flavor } from "./CardBase";
|
import { CardBase, CardComponent, Unique, Flavor, Rarity } from "./CardBase";
|
||||||
|
|
||||||
const TribeLine = ({ card }: {card: Creature}) => {
|
const TribeLine = ({ card }: {card: Creature}) => {
|
||||||
let types = card.gsx$types;
|
let types = card.gsx$types;
|
||||||
|
|
@ -36,8 +36,9 @@ const Brainwashed = styled(Typography)(() => ({
|
||||||
}));
|
}));
|
||||||
|
|
||||||
const Stat = styled(Typography)(() => ({
|
const Stat = styled(Typography)(() => ({
|
||||||
width: "40px",
|
width: "44px",
|
||||||
lineHeight: "normal"
|
lineHeight: "normal",
|
||||||
|
textAlign: "right"
|
||||||
}));
|
}));
|
||||||
|
|
||||||
const CreatureCard: CardBase<Creature> = (props) => {
|
const CreatureCard: CardBase<Creature> = (props) => {
|
||||||
|
|
@ -73,7 +74,7 @@ const CreatureCard: CardBase<Creature> = (props) => {
|
||||||
<CardComponent {...props}
|
<CardComponent {...props}
|
||||||
left={<>
|
left={<>
|
||||||
<Name name={card.gsx$name} />
|
<Name name={card.gsx$name} />
|
||||||
<RarityIcon size="icon20" set={card.gsx$set} rarity={card.gsx$rarity} />
|
<Rarity {...props} />
|
||||||
<TribeLine card={card} />
|
<TribeLine card={card} />
|
||||||
<Typography>
|
<Typography>
|
||||||
<ElementIcon element="fire" value={card.gsx$elements.toLowerCase().indexOf("fire") >=0} />
|
<ElementIcon element="fire" value={card.gsx$elements.toLowerCase().indexOf("fire") >=0} />
|
||||||
|
|
@ -97,7 +98,7 @@ const CreatureCard: CardBase<Creature> = (props) => {
|
||||||
<Stat>{power}<DisciplineIcon discipline="power" /></Stat>
|
<Stat>{power}<DisciplineIcon discipline="power" /></Stat>
|
||||||
<Stat>{wisdom}<DisciplineIcon discipline="wisdom" /></Stat>
|
<Stat>{wisdom}<DisciplineIcon discipline="wisdom" /></Stat>
|
||||||
<Stat>{speed}<DisciplineIcon discipline="speed" /></Stat>
|
<Stat>{speed}<DisciplineIcon discipline="speed" /></Stat>
|
||||||
<Stat sx={{ fontWeight: "bold" }}>{energy}</Stat>
|
<Stat sx={{ fontWeight: "bold" }}>{energy}<span style={{ display: "inline-block", width: "16px" }}></span></Stat>
|
||||||
</>}
|
</>}
|
||||||
{...((!hideStats) ? { imageCover: (
|
{...((!hideStats) ? { imageCover: (
|
||||||
<div>
|
<div>
|
||||||
|
|
@ -111,6 +112,7 @@ const CreatureCard: CardBase<Creature> = (props) => {
|
||||||
: undefined)}
|
: undefined)}
|
||||||
content={<>
|
content={<>
|
||||||
<Name name={card.gsx$name} />
|
<Name name={card.gsx$name} />
|
||||||
|
<Rarity {...props} />
|
||||||
<span>{stat_range(card.gsx$courage)} <DisciplineIcon discipline="courage" /></span>
|
<span>{stat_range(card.gsx$courage)} <DisciplineIcon discipline="courage" /></span>
|
||||||
<span>{stat_range(card.gsx$power)} <DisciplineIcon discipline="power" /></span>
|
<span>{stat_range(card.gsx$power)} <DisciplineIcon discipline="power" /></span>
|
||||||
<span>{stat_range(card.gsx$wisdom)} <DisciplineIcon discipline="wisdom" /></span>
|
<span>{stat_range(card.gsx$wisdom)} <DisciplineIcon discipline="wisdom" /></span>
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,10 @@
|
||||||
import { Typography } from '@mui/material';
|
import { Typography } from '@mui/material';
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import { Location } from '../../common/definitions';
|
import { Location } from '../../common/definitions';
|
||||||
import { InitiativeIcon, LocationIcon, Name, RarityIcon } from '../../Snippets';
|
import { InitiativeIcon, LocationIcon, Name } from '../../Snippets';
|
||||||
import { abilityText } from '../../Snippets/abilityText';
|
import { abilityText } from '../../Snippets/abilityText';
|
||||||
import { uniqueText } from '../../Snippets/uniqueText';
|
import { uniqueText } from '../../Snippets/uniqueText';
|
||||||
import { CardBase, CardComponent, Unique, Flavor } from './CardBase';
|
import { CardBase, CardComponent, Unique, Flavor, Rarity } from './CardBase';
|
||||||
|
|
||||||
const LocationCard: CardBase<Location> = (props) => {
|
const LocationCard: CardBase<Location> = (props) => {
|
||||||
const { card } = props;
|
const { card } = props;
|
||||||
|
|
@ -16,7 +16,7 @@ const LocationCard: CardBase<Location> = (props) => {
|
||||||
<CardComponent {...props}
|
<CardComponent {...props}
|
||||||
left={<>
|
left={<>
|
||||||
<Name name={card.gsx$name} />
|
<Name name={card.gsx$name} />
|
||||||
<RarityIcon size="icon20" set={card.gsx$set} rarity={card.gsx$rarity} />
|
<Rarity {...props} />
|
||||||
<Typography><LocationIcon size="icon20" /> Location{card.gsx$types.length > 0 ? ` - ${card.gsx$types}` : null}</Typography>
|
<Typography><LocationIcon size="icon20" /> Location{card.gsx$types.length > 0 ? ` - ${card.gsx$types}` : null}</Typography>
|
||||||
<Typography>{`Initiative: `}<InitiativeIcon initiative={card.gsx$initiative} />{` ${card.gsx$initiative}`}</Typography>
|
<Typography>{`Initiative: `}<InitiativeIcon initiative={card.gsx$initiative} />{` ${card.gsx$initiative}`}</Typography>
|
||||||
</>}
|
</>}
|
||||||
|
|
@ -27,6 +27,7 @@ const LocationCard: CardBase<Location> = (props) => {
|
||||||
</>}
|
</>}
|
||||||
content={<>
|
content={<>
|
||||||
<Name name={card.gsx$name} />
|
<Name name={card.gsx$name} />
|
||||||
|
<Rarity {...props} />
|
||||||
<Typography>{`Initiative: `}<InitiativeIcon initiative={card.gsx$initiative} />{` ${card.gsx$initiative}`}</Typography>
|
<Typography>{`Initiative: `}<InitiativeIcon initiative={card.gsx$initiative} />{` ${card.gsx$initiative}`}</Typography>
|
||||||
<Typography sx={{ whiteSpace: "pre-line" }}>{ability}</Typography>
|
<Typography sx={{ whiteSpace: "pre-line" }}>{ability}</Typography>
|
||||||
{unique && <Unique>{unique}</Unique>}
|
{unique && <Unique>{unique}</Unique>}
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,10 @@
|
||||||
import { Typography } from "@mui/material";
|
import { Typography } from "@mui/material";
|
||||||
import React from "react";
|
import React from "react";
|
||||||
import { Mugic } from "../../common/definitions";
|
import { Mugic } from "../../common/definitions";
|
||||||
import { Name, RarityIcon, TribeIcon, MugicIcon } from "../../Snippets";
|
import { Name, TribeIcon, MugicIcon } from "../../Snippets";
|
||||||
import { abilityText } from "../../Snippets/abilityText";
|
import { abilityText } from "../../Snippets/abilityText";
|
||||||
import { uniqueText } from "../../Snippets/uniqueText";
|
import { uniqueText } from "../../Snippets/uniqueText";
|
||||||
import { CardBase, CardComponent, Unique, Flavor } from "./CardBase";
|
import { CardBase, CardComponent, Unique, Flavor, Rarity } from "./CardBase";
|
||||||
|
|
||||||
|
|
||||||
const MugicCounter = ({ card }: { card: Mugic }) => {
|
const MugicCounter = ({ card }: { card: Mugic }) => {
|
||||||
|
|
@ -39,7 +39,7 @@ const MugicCard: CardBase<Mugic> = (props) => {
|
||||||
<CardComponent {...props}
|
<CardComponent {...props}
|
||||||
left={<>
|
left={<>
|
||||||
<Name name={card.gsx$name} />
|
<Name name={card.gsx$name} />
|
||||||
<RarityIcon size="icon20" set={card.gsx$set} rarity={card.gsx$rarity} />
|
<Rarity {...props} />
|
||||||
<Typography><TribeIcon size="icon20" tribe={card.gsx$tribe} /> Mugic - {card.gsx$tribe}</Typography>
|
<Typography><TribeIcon size="icon20" tribe={card.gsx$tribe} /> Mugic - {card.gsx$tribe}</Typography>
|
||||||
<Typography><MugicCounter card={card}/></Typography>
|
<Typography><MugicCounter card={card}/></Typography>
|
||||||
</>
|
</>
|
||||||
|
|
@ -51,6 +51,7 @@ const MugicCard: CardBase<Mugic> = (props) => {
|
||||||
</>}
|
</>}
|
||||||
content={<>
|
content={<>
|
||||||
<Name name={card.gsx$name} />
|
<Name name={card.gsx$name} />
|
||||||
|
<Rarity {...props} />
|
||||||
<Typography sx={{ whiteSpace: "pre-line" }}>{ability}</Typography>
|
<Typography sx={{ whiteSpace: "pre-line" }}>{ability}</Typography>
|
||||||
{unique && <Unique>{unique}</Unique>}
|
{unique && <Unique>{unique}</Unique>}
|
||||||
{flavor && <Flavor>{flavor}</Flavor>}
|
{flavor && <Flavor>{flavor}</Flavor>}
|
||||||
|
|
|
||||||
|
|
@ -33,7 +33,7 @@ theme = createTheme(theme, createTheme({
|
||||||
root: {
|
root: {
|
||||||
backgroundColor: "#1F1F1F",
|
backgroundColor: "#1F1F1F",
|
||||||
color: "gray",
|
color: "gray",
|
||||||
paddingLeft: theme.spacing(.5)
|
marginBottom: "4px"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -122,7 +122,11 @@ export default function Collection (_props) {
|
||||||
}, [content]);
|
}, [content]);
|
||||||
|
|
||||||
return (<ThemeProvider theme={theme}>
|
return (<ThemeProvider theme={theme}>
|
||||||
<Paper square sx={{ minHeight: "100vh", height: "100%", paddingLeft: theme.spacing(1), paddingRight: theme.spacing(1) }}>
|
<Paper square sx={{
|
||||||
|
minHeight: "100vh", height: "100%",
|
||||||
|
padding: theme.spacing(1),
|
||||||
|
// backgroundColor: "hsl(0deg 0% 97%)"
|
||||||
|
}}>
|
||||||
<Search {...({ setContent, setInfo })} />
|
<Search {...({ setContent, setInfo })} />
|
||||||
<AppBar color="inherit" sx={{ paddingLeft: theme.spacing(1) }} >
|
<AppBar color="inherit" sx={{ paddingLeft: theme.spacing(1) }} >
|
||||||
<Box sx={{
|
<Box sx={{
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import API from '../../SpreadsheetData';
|
import API from '../../SpreadsheetData';
|
||||||
import { observer, inject } from 'mobx-react';
|
import { observer, inject } from 'mobx-react';
|
||||||
import { FlavorText, RarityIcon, Unique, Name, ElementIcon, Ability, AttackIcon } from '../../Snippets';
|
import { FlavorText, Rarity, Unique, Name, ElementIcon, Ability, AttackIcon } from '../../Snippets';
|
||||||
|
|
||||||
@inject((stores, props, context) => props) @observer
|
@inject((stores, props, context) => props) @observer
|
||||||
export default class Attack extends React.Component {
|
export default class Attack extends React.Component {
|
||||||
|
|
@ -14,7 +14,7 @@ export default class Attack extends React.Component {
|
||||||
<img className="thumb" src={API.base_image + (card.gsx$thumb||API.thumb_missing)} onClick={() => this.props.setImage(API.cardImage(card))} />
|
<img className="thumb" src={API.base_image + (card.gsx$thumb||API.thumb_missing)} onClick={() => this.props.setImage(API.cardImage(card))} />
|
||||||
<div className="left">
|
<div className="left">
|
||||||
<Name name={card.gsx$name} />
|
<Name name={card.gsx$name} />
|
||||||
<RarityIcon set={card.gsx$set} rarity={card.gsx$rarity} /><br />
|
<Rarity set={card.gsx$set} rarity={card.gsx$rarity} />
|
||||||
<span><AttackIcon bp={card.gsx$bp} /> Attack - {card.gsx$bp}</span><br />
|
<span><AttackIcon bp={card.gsx$bp} /> Attack - {card.gsx$bp}</span><br />
|
||||||
<div>
|
<div>
|
||||||
<span className="bp bigger" >{card.gsx$base}</span> |
|
<span className="bp bigger" >{card.gsx$base}</span> |
|
||||||
|
|
@ -37,6 +37,7 @@ export default class Attack extends React.Component {
|
||||||
<div className="fullcard"><img src={API.cardImage(card)} /></div>
|
<div className="fullcard"><img src={API.cardImage(card)} /></div>
|
||||||
<div className="right">
|
<div className="right">
|
||||||
<Name name={card.gsx$name} />
|
<Name name={card.gsx$name} />
|
||||||
|
<Rarity set={card.gsx$set} rarity={card.gsx$rarity} id={card.gsx$id} />
|
||||||
<Ability ability={card.gsx$ability} />
|
<Ability ability={card.gsx$ability} />
|
||||||
<Unique data={{ unique: card.gsx$unique, loyal: card.gsx$loyal, legendary: card.gsx$legendary }} />
|
<Unique data={{ unique: card.gsx$unique, loyal: card.gsx$loyal, legendary: card.gsx$legendary }} />
|
||||||
<FlavorText flavortext={card.gsx$flavortext} />
|
<FlavorText flavortext={card.gsx$flavortext} />
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import API from '../../SpreadsheetData';
|
import API from '../../SpreadsheetData';
|
||||||
import { observer, inject } from 'mobx-react';
|
import { observer, inject } from 'mobx-react';
|
||||||
import { FlavorText, RarityIcon, Unique, Name, Ability, BattlegearIcon } from '../../Snippets';
|
import { FlavorText, Rarity, Unique, Name, Ability, BattlegearIcon } from '../../Snippets';
|
||||||
|
|
||||||
@inject((stores, props, context) => props) @observer
|
@inject((stores, props, context) => props) @observer
|
||||||
export default class Battlegear extends React.Component {
|
export default class Battlegear extends React.Component {
|
||||||
|
|
@ -14,7 +14,7 @@ export default class Battlegear extends React.Component {
|
||||||
<img className="thumb" style={{ float: 'left' }} src={API.base_image + (card.gsx$thumb||API.thumb_missing)} onClick={() => this.props.setImage(API.cardImage(card))} />
|
<img className="thumb" style={{ float: 'left' }} src={API.base_image + (card.gsx$thumb||API.thumb_missing)} onClick={() => this.props.setImage(API.cardImage(card))} />
|
||||||
<div className="left">
|
<div className="left">
|
||||||
<Name name={card.gsx$name} />
|
<Name name={card.gsx$name} />
|
||||||
<RarityIcon set={card.gsx$set} rarity={card.gsx$rarity} /><br />
|
<Rarity set={card.gsx$set} rarity={card.gsx$rarity} />
|
||||||
<span><BattlegearIcon /> Battlegear{card.gsx$types.length > 0 ? " - " + card.gsx$types : null}</span>
|
<span><BattlegearIcon /> Battlegear{card.gsx$types.length > 0 ? " - " + card.gsx$types : null}</span>
|
||||||
</div>
|
</div>
|
||||||
<div className="right" >
|
<div className="right" >
|
||||||
|
|
@ -29,6 +29,7 @@ export default class Battlegear extends React.Component {
|
||||||
<div className="fullcard"><img src={API.cardImage(card)} /></div>
|
<div className="fullcard"><img src={API.cardImage(card)} /></div>
|
||||||
<div className="right" >
|
<div className="right" >
|
||||||
<Name name={card.gsx$name} />
|
<Name name={card.gsx$name} />
|
||||||
|
<Rarity set={card.gsx$set} rarity={card.gsx$rarity} id={card.gsx$id} />
|
||||||
<Ability ability={card.gsx$ability} />
|
<Ability ability={card.gsx$ability} />
|
||||||
<Unique data={{ unique: card.gsx$unique, loyal: card.gsx$loyal, legendary: card.gsx$legendary }} />
|
<Unique data={{ unique: card.gsx$unique, loyal: card.gsx$loyal, legendary: card.gsx$legendary }} />
|
||||||
<FlavorText flavortext={card.gsx$flavortext} />
|
<FlavorText flavortext={card.gsx$flavortext} />
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import API from '../../SpreadsheetData';
|
import API from '../../SpreadsheetData';
|
||||||
import { observer, inject } from 'mobx-react';
|
import { observer, inject } from 'mobx-react';
|
||||||
import { FlavorText, RarityIcon, Unique, Name, ElementIcon, MugicIcon, DisciplineIcon, Ability, TribeIcon } from '../../Snippets';
|
import { FlavorText, Rarity, Unique, Name, ElementIcon, MugicIcon, DisciplineIcon, Ability, TribeIcon } from '../../Snippets';
|
||||||
|
|
||||||
@inject((stores, props, context) => props) @observer
|
@inject((stores, props, context) => props) @observer
|
||||||
export default class Creature extends React.Component {
|
export default class Creature extends React.Component {
|
||||||
|
|
@ -47,7 +47,7 @@ export default class Creature extends React.Component {
|
||||||
<img className="thumb" style={{ float: 'left' }} src={API.base_image + (card.gsx$thumb||API.thumb_missing)} onClick={() => this.props.setImage(API.cardImage(card))} />
|
<img className="thumb" style={{ float: 'left' }} src={API.base_image + (card.gsx$thumb||API.thumb_missing)} onClick={() => this.props.setImage(API.cardImage(card))} />
|
||||||
<div className="left">
|
<div className="left">
|
||||||
<Name name={card.gsx$name} />
|
<Name name={card.gsx$name} />
|
||||||
<RarityIcon set={card.gsx$set} rarity={card.gsx$rarity} /><br />
|
<Rarity set={card.gsx$set} rarity={card.gsx$rarity} />
|
||||||
<TribeLine /><br />
|
<TribeLine /><br />
|
||||||
<div>
|
<div>
|
||||||
<ElementIcon element="fire" value={card.gsx$elements.toLowerCase().indexOf("fire") >=0} />
|
<ElementIcon element="fire" value={card.gsx$elements.toLowerCase().indexOf("fire") >=0} />
|
||||||
|
|
@ -111,6 +111,7 @@ export default class Creature extends React.Component {
|
||||||
</div>
|
</div>
|
||||||
<div className="right" >
|
<div className="right" >
|
||||||
<Name name={card.gsx$name} />
|
<Name name={card.gsx$name} />
|
||||||
|
<Rarity set={card.gsx$set} rarity={card.gsx$rarity} id={card.gsx$id} />
|
||||||
<span>{stat_range(card.gsx$courage, card.gsx$name)} <DisciplineIcon discipline="courage" /></span>
|
<span>{stat_range(card.gsx$courage, card.gsx$name)} <DisciplineIcon discipline="courage" /></span>
|
||||||
<span>{stat_range(card.gsx$power, card.gsx$name)} <DisciplineIcon discipline="power" /></span>
|
<span>{stat_range(card.gsx$power, card.gsx$name)} <DisciplineIcon discipline="power" /></span>
|
||||||
<span>{stat_range(card.gsx$wisdom, card.gsx$name)} <DisciplineIcon discipline="wisdom" /></span>
|
<span>{stat_range(card.gsx$wisdom, card.gsx$name)} <DisciplineIcon discipline="wisdom" /></span>
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
import { inject, observer } from 'mobx-react';
|
import { inject, observer } from 'mobx-react';
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
|
|
||||||
import { Ability, FlavorText, Initiative, LocationIcon, Name, RarityIcon, Unique } from '../../Snippets';
|
import { Ability, FlavorText, Initiative, LocationIcon, Name, Rarity, Unique } from '../../Snippets';
|
||||||
import API from '../../SpreadsheetData';
|
import API from '../../SpreadsheetData';
|
||||||
|
|
||||||
@inject((stores, props, context) => props) @observer
|
@inject((stores, props, context) => props) @observer
|
||||||
|
|
@ -15,7 +15,7 @@ export default class Location extends React.Component {
|
||||||
<img className="thumb" style={{ float: 'left', width: '100px', height: '98px' }} src={API.base_image + (card.gsx$thumb||API.thumb_missing)} onClick={() => this.props.setImage(API.cardImage(card))} />
|
<img className="thumb" style={{ float: 'left', width: '100px', height: '98px' }} src={API.base_image + (card.gsx$thumb||API.thumb_missing)} onClick={() => this.props.setImage(API.cardImage(card))} />
|
||||||
<div className="left">
|
<div className="left">
|
||||||
<Name name={card.gsx$name} />
|
<Name name={card.gsx$name} />
|
||||||
<RarityIcon set={card.gsx$set} rarity={card.gsx$rarity} /><br />
|
<Rarity set={card.gsx$set} rarity={card.gsx$rarity} />
|
||||||
<span><LocationIcon /> Location{card.gsx$types.length > 0 ? " - " + card.gsx$types : null}</span><br />
|
<span><LocationIcon /> Location{card.gsx$types.length > 0 ? " - " + card.gsx$types : null}</span><br />
|
||||||
<Initiative initiative={card.gsx$initiative} />
|
<Initiative initiative={card.gsx$initiative} />
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -31,6 +31,7 @@ export default class Location extends React.Component {
|
||||||
<div className="fullcard"><img src={API.cardImage(card)} /></div>
|
<div className="fullcard"><img src={API.cardImage(card)} /></div>
|
||||||
<div className="right">
|
<div className="right">
|
||||||
<Name name={card.gsx$name} />
|
<Name name={card.gsx$name} />
|
||||||
|
<Rarity set={card.gsx$set} rarity={card.gsx$rarity} id={card.gsx$id} />
|
||||||
<Initiative initiative={card.gsx$initiative} />
|
<Initiative initiative={card.gsx$initiative} />
|
||||||
<Ability ability={card.gsx$ability} />
|
<Ability ability={card.gsx$ability} />
|
||||||
<Unique data={{ unique: card.gsx$unique, loyal: card.gsx$loyal, legendary: card.gsx$legendary }} />
|
<Unique data={{ unique: card.gsx$unique, loyal: card.gsx$loyal, legendary: card.gsx$legendary }} />
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import API from '../../SpreadsheetData';
|
import API from '../../SpreadsheetData';
|
||||||
import { observer, inject } from 'mobx-react';
|
import { observer, inject } from 'mobx-react';
|
||||||
import { FlavorText, RarityIcon, Unique, Name, MugicIcon as MugicCounter, Ability, TribeIcon } from '../../Snippets';
|
import { FlavorText, Rarity, Unique, Name, MugicIcon as MugicCounter, Ability, TribeIcon } from '../../Snippets';
|
||||||
import MugicPlay from '../../mugicplayer/playbutton.tsx';
|
import MugicPlay from '../../mugicplayer/playbutton.tsx';
|
||||||
|
|
||||||
@inject((stores, props, context) => props) @observer
|
@inject((stores, props, context) => props) @observer
|
||||||
|
|
@ -33,7 +33,7 @@ export default class Mugic extends React.Component {
|
||||||
<img className="thumb" style={{ float: 'left' }} src={API.base_image + (card.gsx$thumb||API.thumb_missing)} onClick={() => this.props.setImage(API.cardImage(card))} />
|
<img className="thumb" style={{ float: 'left' }} src={API.base_image + (card.gsx$thumb||API.thumb_missing)} onClick={() => this.props.setImage(API.cardImage(card))} />
|
||||||
<div className="left">
|
<div className="left">
|
||||||
<Name name={card.gsx$name} />
|
<Name name={card.gsx$name} />
|
||||||
<RarityIcon set={card.gsx$set} rarity={card.gsx$rarity} /> <br />
|
<Rarity set={card.gsx$set} rarity={card.gsx$rarity} />
|
||||||
<TribeIcon size="icon16" tribe={card.gsx$tribe} /> Mugic - {card.gsx$tribe}<br />
|
<TribeIcon size="icon16" tribe={card.gsx$tribe} /> Mugic - {card.gsx$tribe}<br />
|
||||||
<span>{mugicCounters}</span><MugicPlay notes={card.gsx$shownotes?.length > 0 ? card.gsx$shownotes : card.gsx$notes}/><br />
|
<span>{mugicCounters}</span><MugicPlay notes={card.gsx$shownotes?.length > 0 ? card.gsx$shownotes : card.gsx$notes}/><br />
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -50,6 +50,7 @@ export default class Mugic extends React.Component {
|
||||||
<div className="fullcard"><img src={API.cardImage(card)} /></div>
|
<div className="fullcard"><img src={API.cardImage(card)} /></div>
|
||||||
<div className="right" >
|
<div className="right" >
|
||||||
<Name name={card.gsx$name} />
|
<Name name={card.gsx$name} />
|
||||||
|
<Rarity set={card.gsx$set} rarity={card.gsx$rarity} id={card.gsx$id} />
|
||||||
<Ability ability={card.gsx$ability} tribe={card.gsx$tribe} />
|
<Ability ability={card.gsx$ability} tribe={card.gsx$tribe} />
|
||||||
<Unique data={{ unique: card.gsx$unique, loyal: card.gsx$loyal, legendary: card.gsx$legendary }} />
|
<Unique data={{ unique: card.gsx$unique, loyal: card.gsx$loyal, legendary: card.gsx$legendary }} />
|
||||||
<FlavorText flavortext={card.gsx$flavortext} />
|
<FlavorText flavortext={card.gsx$flavortext} />
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,7 @@ export interface BaseCard {
|
||||||
gsx$type: CardType
|
gsx$type: CardType
|
||||||
gsx$set: string
|
gsx$set: string
|
||||||
gsx$rarity: string
|
gsx$rarity: string
|
||||||
|
gsx$id: string
|
||||||
gsx$image: string
|
gsx$image: string
|
||||||
gsx$thumb: string
|
gsx$thumb: string
|
||||||
gsx$ability: string
|
gsx$ability: string
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user