Complete a damage calculation section
This commit is contained in:
parent
c8ae66c390
commit
91454cb6b1
45
src/App.js
45
src/App.js
@ -22,6 +22,10 @@ const axios = require('axios');
|
|||||||
|
|
||||||
const BACKEND_URL = process.env.REACT_APP_GITPOD_WORKSPACE_URL||process.env.REACT_APP_BACKEND_URL||'https://projectdivar.com:4504'; //You can specify a .env file locally with REACT_APP_BACKEND_URL defining a URL to retrieve data from.
|
const BACKEND_URL = process.env.REACT_APP_GITPOD_WORKSPACE_URL||process.env.REACT_APP_BACKEND_URL||'https://projectdivar.com:4504'; //You can specify a .env file locally with REACT_APP_BACKEND_URL defining a URL to retrieve data from.
|
||||||
|
|
||||||
|
const MELEE_DMG = 0
|
||||||
|
const RANGE_DMG = 1
|
||||||
|
const TECH_DMG = 2
|
||||||
|
|
||||||
function Col(p) {
|
function Col(p) {
|
||||||
return <div className="con">
|
return <div className="con">
|
||||||
{p.children}
|
{p.children}
|
||||||
@ -502,7 +506,7 @@ function TableEditor(p) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function AdminPanel(p) {
|
function AdminPanel(p) {
|
||||||
return <div id="main" style={{background:"white"}}>
|
return <div id="main">
|
||||||
<div className="w-25"><Box title="Navigation">
|
<div className="w-25"><Box title="Navigation">
|
||||||
<Table classes="adminNav">
|
<Table classes="adminNav">
|
||||||
<Link to={process.env.PUBLIC_URL+"/admin/class"}>Class</Link><br/>
|
<Link to={process.env.PUBLIC_URL+"/admin/class"}>Class</Link><br/>
|
||||||
@ -533,7 +537,7 @@ function AdminPanel(p) {
|
|||||||
<Link to={process.env.PUBLIC_URL+"/admin/roles"}>Roles</Link><br/>
|
<Link to={process.env.PUBLIC_URL+"/admin/roles"}>Roles</Link><br/>
|
||||||
<hr/>
|
<hr/>
|
||||||
<Link to={process.env.PUBLIC_URL+"/admin/users"}>Users</Link><br/></Table></Box></div>
|
<Link to={process.env.PUBLIC_URL+"/admin/users"}>Users</Link><br/></Table></Box></div>
|
||||||
<div className="w-75" style={{background:"rgba(20,29,40,0.66)"}}>
|
<div className="w-75">
|
||||||
<Route path={process.env.PUBLIC_URL+"/admin/class"}>
|
<Route path={process.env.PUBLIC_URL+"/admin/class"}>
|
||||||
<TableEditor path="/class"/>
|
<TableEditor path="/class"/>
|
||||||
</Route>
|
</Route>
|
||||||
@ -599,6 +603,10 @@ function EditStatBox(p) {
|
|||||||
|
|
||||||
const [value,setValue] = useState(p.value)
|
const [value,setValue] = useState(p.value)
|
||||||
|
|
||||||
|
useEffect(()=>{
|
||||||
|
setValue(p.value)
|
||||||
|
},[p.value])
|
||||||
|
|
||||||
return <><input value={value} onChange={(f)=>{setValue(f.currentTarget.value);p.callback(f.currentTarget.value)}}/> ({value})<br/></>
|
return <><input value={value} onChange={(f)=>{setValue(f.currentTarget.value);p.callback(f.currentTarget.value)}}/> ({value})<br/></>
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -608,7 +616,7 @@ function DamageCalculator(p) {
|
|||||||
const [update,setUpdate] = useState(false)
|
const [update,setUpdate] = useState(false)
|
||||||
|
|
||||||
useEffect(()=>{
|
useEffect(()=>{
|
||||||
axios.get(BACKEND_URL+"/augments")
|
axios.get(BACKEND_URL+"/augment")
|
||||||
.then((data)=>{
|
.then((data)=>{
|
||||||
var augmentData = {}
|
var augmentData = {}
|
||||||
data.data.rows.forEach((entry)=>{augmentData[entry.id]=entry})
|
data.data.rows.forEach((entry)=>{augmentData[entry.id]=entry})
|
||||||
@ -618,28 +626,37 @@ function DamageCalculator(p) {
|
|||||||
|
|
||||||
const character = {
|
const character = {
|
||||||
weapon:{
|
weapon:{
|
||||||
augments:[7,2,5]
|
augments:[13,7,2,5]
|
||||||
},
|
},
|
||||||
armor1:{
|
armor1:{
|
||||||
augments:[1,5]
|
augments:[13,1,5]
|
||||||
},
|
},
|
||||||
armor2:{
|
armor2:{
|
||||||
augments:[2,8]
|
augments:[13,2,8]
|
||||||
},
|
},
|
||||||
armor3:{
|
armor3:{
|
||||||
augments:[4,1]
|
augments:[13,4,1]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function ParseAugments(equip) {
|
useEffect(()=>{
|
||||||
var variance_total = 0
|
if (Object.keys(augmentData).length>0) {
|
||||||
|
ParseAllAugments(character)
|
||||||
|
}
|
||||||
|
},[augmentData])
|
||||||
|
|
||||||
|
function ParseAllAugments(character) {
|
||||||
|
var searchFields = [{field:"variance",variable:0},{field:"mel_dmg",variable:0}]
|
||||||
|
for (var equip of [character.weapon,character.armor1,character.armor2,character.armor3]) {
|
||||||
|
for (var field of searchFields) {
|
||||||
for (var i=0;i<equip.augments.length;i++) {
|
for (var i=0;i<equip.augments.length;i++) {
|
||||||
var variance = augmentData[equip.augments[i].id].variance
|
var variance = augmentData[equip.augments[i]][field.field]
|
||||||
if (variance_total!==0) {
|
field.variable+=variance
|
||||||
variance_total+=variance
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
setAugDmgVariance(searchFields[0].variable)
|
||||||
|
}
|
||||||
|
|
||||||
const [rawDmg,setRawDmg] = useState(0)
|
const [rawDmg,setRawDmg] = useState(0)
|
||||||
|
|
||||||
@ -751,10 +768,8 @@ function App() {
|
|||||||
<>
|
<>
|
||||||
<HashRouter>
|
<HashRouter>
|
||||||
<Switch>
|
<Switch>
|
||||||
<Route path={process.env.PUBLIC_URL+"/test"}>
|
|
||||||
<AdminPanel/>
|
|
||||||
</Route>
|
|
||||||
<Route path={process.env.PUBLIC_URL+"/admin"}>
|
<Route path={process.env.PUBLIC_URL+"/admin"}>
|
||||||
|
<TestHeader/>
|
||||||
<AdminPanel/>
|
<AdminPanel/>
|
||||||
</Route>
|
</Route>
|
||||||
<Route path={process.env.PUBLIC_URL+"/test"}>
|
<Route path={process.env.PUBLIC_URL+"/test"}>
|
||||||
|
@ -5,11 +5,11 @@ function TestHeader() {
|
|||||||
<div id="header">
|
<div id="header">
|
||||||
<div>
|
<div>
|
||||||
<ul>
|
<ul>
|
||||||
<li className="logo"><a href="./test"><img alt="" src={process.env.PUBLIC_URL + '/icons/logo_sm.png'} /> NGSplanner.com</a></li>
|
<li className="logo"><a><img alt="" src={process.env.PUBLIC_URL + '/icons/logo_sm.png'} /> NGSplanner.com</a></li>
|
||||||
<li className="headermenuitem"><a href="./test">Build Planner</a></li>
|
<li className="headermenuitem"><a>Build Planner</a></li>
|
||||||
<li className="headermenuitem"><a href="./test">Guides</a></li>
|
<li className="headermenuitem"><a>Guides</a></li>
|
||||||
<li className="headermenuitem"><a href="./test">Blog</a></li>
|
<li className="headermenuitem"><a>Blog</a></li>
|
||||||
<li className="headermenuitem"><a href="./test">About</a></li>
|
<li className="headermenuitem"><a>About</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -872,15 +872,19 @@ button{
|
|||||||
.w-25{
|
.w-25{
|
||||||
min-width:240px;
|
min-width:240px;
|
||||||
max-width:24%;
|
max-width:24%;
|
||||||
|
margin-right: 1%;
|
||||||
}
|
}
|
||||||
.w-75{
|
.w-75{
|
||||||
min-width:75%;
|
min-width:75%;
|
||||||
max-width:75%;
|
max-width:75%;
|
||||||
}
|
}
|
||||||
.table-responsive{;
|
.table-responsive{
|
||||||
color:rgba(220,220,220);
|
color:rgba(220,220,220);
|
||||||
overflow-y:hidden;
|
overflow-y:hidden;
|
||||||
overflow-x:scroll;
|
overflow-x:auto;
|
||||||
|
}
|
||||||
|
.table-responsive table {
|
||||||
|
background-color: rgba(20,29,40,0.66);
|
||||||
}
|
}
|
||||||
.table{
|
.table{
|
||||||
border: 1px solid black;
|
border: 1px solid black;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user