skillpannel fix, and nyanite fixes. Minified js does not include pai spoilers

This commit is contained in:
Letter N
2020-08-08 20:04:16 +08:00
parent 83207baaee
commit e964b3aabf
5 changed files with 55 additions and 33 deletions
+7 -6
View File
@@ -14,17 +14,18 @@
mind.skill_holder.ui_interact(src)
/datum/skill_panel/ui_state(mob/user)
/datum/skill_holder/ui_state(mob/user)
return GLOB.always_state
/datum/skill_panel/ui_interact(mob/user, datum/tgui/ui)
/datum/skill_holder/ui_interact(mob/user, datum/tgui/ui)
ui = SStgui.try_update_ui(user, src, ui)
if(!ui)
ui = new(user, src, "SkillPanel")
ui = new(user, src, "SkillPanel", "[owner.name]'s Skills")
ui.set_autoupdate(FALSE)
ui.open()
//else if(need_static_data_update)
// update_static_data(user)
// need_static_data_update = FALSE
else if(need_static_data_update)
update_static_data(user)
need_static_data_update = FALSE
/datum/skill_holder/ui_static_data(mob/user)
. = list()
@@ -21,8 +21,8 @@
if (user.transferItemToLoc(N, src))
to_chat(user, "<span class='notice'>You insert [N] into [src].</span>")
playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, FALSE)
// if(disk)
// eject(user)
if(disk)
eject(user)
disk = N
else
..()
@@ -36,7 +36,7 @@
/obj/machinery/computer/nanite_cloud_controller/proc/eject(mob/living/user)
if(!disk)
return
if(!istype(user) || !Adjacent(user) ||!user.put_in_active_hand(disk))
if(!istype(user) || !Adjacent(user))// ||!user.put_in_active_hand(disk))
disk.forceMove(drop_location())
disk = null
@@ -32,8 +32,8 @@
if(user.transferItemToLoc(N, src))
to_chat(user, "<span class='notice'>You insert [N] into [src].</span>")
playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, FALSE)
// if(disk)
// eject(user)
if(disk)
eject(user)
disk = N
else
..()
@@ -53,7 +53,7 @@
/obj/machinery/nanite_program_hub/proc/eject(mob/living/user)
if(!disk)
return
if(!istype(user) || !Adjacent(user) || !user.put_in_active_hand(disk))
if(!istype(user) || !Adjacent(user))// || !user.put_in_active_hand(disk))
disk.forceMove(drop_location())
disk = null
@@ -17,14 +17,14 @@
if(user.transferItemToLoc(N, src))
to_chat(user, "<span class='notice'>You insert [N] into [src]</span>")
playsound(src, 'sound/machines/terminal_insert_disc.ogg', 50, FALSE)
// if(disk)
// eject(user)
if(disk)
eject(user)
disk = N
program = N.program
else
..()
/obj/machinery/nanite_programmer/screwdriver_act(mob/living/user, obj/item/I) //ditto
/obj/machinery/nanite_programmer/screwdriver_act(mob/living/user, obj/item/I)
if(..())
return TRUE
@@ -39,7 +39,7 @@
/obj/machinery/nanite_programmer/proc/eject(mob/living/user)
if(!disk)
return
if(!istype(user) || !Adjacent(user) || !user.put_in_active_hand(disk))
if(!istype(user) || !Adjacent(user))// || !user.put_in_active_hand(disk))
disk.forceMove(drop_location())
disk = null
program = null
+38 -17
View File
@@ -1,6 +1,7 @@
import { useBackend } from '../backend';
import { Box, Button, LabeledList, ProgressBar, Section } from '../components';
import { Window } from '../layouts';
import { Fragment } from 'inferno';
const skillgreen = {
color: 'lightgreen',
@@ -54,23 +55,27 @@ export const SkillPanel = (props, context) => {
value={skill.exp_percent}
color="good" />
<br />
<Button
content="Adjust Exp"
onClick={() => act('adj_exp', {
skill: skill.path,
})} />
<Button
content="Set Exp"
onClick={() => act('set_exp', {
skill: skill.path,
})} />
<Button
content="Set Level"
onClick={() => act('set_lvl', {
skill: skill.path,
})} />
<br />
<br />
{!!data.admin && (
<Fragment>
<Button
content="Adjust Exp"
onClick={() => act('adj_exp', {
skill: skill.path,
})} />
<Button
content="Set Exp"
onClick={() => act('set_exp', {
skill: skill.path,
})} />
<Button
content="Set Level"
onClick={() => act('set_lvl', {
skill: skill.path,
})} />
<br />
<br />
</Fragment>
)}
</LabeledList.Item>
))}
</LabeledList>
@@ -98,3 +103,19 @@ const Level = props => {
</Box>
);
};
const XPToNextLevel = props => {
const {
xp_req,
xp_prog,
} = props;
if (xp_req === 0) {
return (
<span style={skillgreen}>
to next level: MAXXED
</span>
);
}
return (
<span>XP to next level: [{xp_prog} / {xp_req}]</span>
);
};