1212121
This commit is contained in:
@@ -57,6 +57,6 @@ onMounted(() => {
|
||||
/* 全局样式已移至 src/assets/css/style.css */
|
||||
|
||||
:root {
|
||||
--van-base-font: initial !important;
|
||||
--van-base-font: initial !important;
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -143,9 +143,10 @@ a:focus {
|
||||
}
|
||||
|
||||
.search-ipt {
|
||||
width: 80px;
|
||||
font-size: 11px;
|
||||
width: 80px;
|
||||
padding: 0;
|
||||
font:caption;
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
.ipt-btn {
|
||||
@@ -351,4 +352,12 @@ a:focus {
|
||||
|
||||
.equ_glod {
|
||||
color: #e6b020;
|
||||
}
|
||||
.dup {
|
||||
background-image: url(/images/site/dup.gif);
|
||||
background-repeat: no-repeat;
|
||||
display: inline-block;
|
||||
width: 18px;
|
||||
height: 18px;
|
||||
background-size: 18px;
|
||||
}
|
||||
@@ -3,7 +3,7 @@
|
||||
<div class="foot">
|
||||
<div class="common">
|
||||
<Abar href="/">首页</Abar>-
|
||||
<Abar href="/">挂机</Abar>-
|
||||
<Abar href="/user/onhook">挂机</Abar>-
|
||||
<!-- <Abar href="/treasure">聚宝盆</Abar>- -->
|
||||
<a target="_blank" href="https://work.weixin.qq.com/kfid/kfc86bc348120aea3e7" style="text-decoration: underline;">反馈</a>
|
||||
</div>
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
统一配置中心
|
||||
*/
|
||||
export class BaseConfig {
|
||||
public static BaseUrl: string = 'https://localhost:7198'
|
||||
public static BaseMediaUrl: string = 'https://localhost:7198/'
|
||||
// public static BaseUrl:string="http://kx.iyba.cn:5291";
|
||||
// public static BaseMediaUrl:string="http://kx.iyba.cn:5291";
|
||||
// public static BaseUrl: string = 'https://localhost:7198'
|
||||
// public static BaseMediaUrl: string = 'https://localhost:7198/'
|
||||
public static BaseUrl:string="http://kx.iyba.cn:5291";
|
||||
public static BaseMediaUrl:string="http://kx.iyba.cn:5291";
|
||||
}
|
||||
|
||||
@@ -8,6 +8,9 @@
|
||||
<div class="common">
|
||||
<Abar href="/map">继续</Abar>
|
||||
</div>
|
||||
<div class="common" v-if="isCopy == 1">
|
||||
[<Abutton @click="onHook">立即挂机</Abutton>]
|
||||
</div>
|
||||
<div class="common">
|
||||
你体力:{{ blood }}/{{ upBlood }}
|
||||
</div>
|
||||
@@ -38,6 +41,7 @@ const blood = ref(0);
|
||||
const upBlood = ref(0);
|
||||
const fight = ref<any>({});
|
||||
const AwardTips = ref('');
|
||||
const isCopy = ref(0);
|
||||
let fightId = PageExtend.QueryString("f");
|
||||
|
||||
onMounted(async () => {
|
||||
@@ -57,6 +61,7 @@ const BindData = async (): Promise<void> => {
|
||||
blood.value = result.data.blood;
|
||||
upBlood.value = result.data.upBlood;
|
||||
fight.value = result.data.fight;
|
||||
isCopy.value = result.data.isCopy;
|
||||
if (fight.value.award != '') {
|
||||
AwardTips.value = awardTipsStr(JSON.parse(fight.value.award))
|
||||
}
|
||||
@@ -89,4 +94,18 @@ const awardTipsStr = (data: any) => {
|
||||
return result;
|
||||
}
|
||||
|
||||
/**挂机 */
|
||||
const onHook = async () => {
|
||||
MessageExtend.LoadingToast("正在进行挂机...");
|
||||
let result = await FightService.OnHook(fightId);
|
||||
MessageExtend.LoadingClose();
|
||||
if (result.code == 0) {
|
||||
isCopy.value = 0;
|
||||
MessageExtend.Notify("挂机成功!", "success");
|
||||
}
|
||||
else {
|
||||
MessageExtend.Notify(result.msg, "danger");
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
@@ -1,5 +1,11 @@
|
||||
<template>
|
||||
<GameBroadcast :data="broadcast"></GameBroadcast>
|
||||
<div class="content" v-if="isHook==1">
|
||||
<div class="item" style="font-size:15px;font-weight:bold;color:green">
|
||||
<i class="dup"></i>
|
||||
<Abar href="/user/onhook" style="color:green">小宝贝,正在挂机中...</Abar>
|
||||
</div>
|
||||
</div>
|
||||
<div class="content">
|
||||
{{ cityInfo.cityName }}·{{ mapInfo.mapName }}({{ mapInfo.x }},{{ mapInfo.y }})
|
||||
<Abutton @click="Refresh">刷新</Abutton>
|
||||
@@ -136,6 +142,7 @@ const monster = ref<Array<any>>([]);
|
||||
const messageCount = ref(0);
|
||||
const broadcast = ref<Array<any>>([]);
|
||||
const gameTips = ref('');
|
||||
const isHook = ref(0);
|
||||
const mapGoods = ref<Array<any>>([]);
|
||||
// 城内地图显示
|
||||
const showCity = ref(false);
|
||||
@@ -171,6 +178,7 @@ const BindData = async (map: string): Promise<void> => {
|
||||
onMap.value = mapInfo.value.mapId;
|
||||
gameTips.value = result.data.gameTips;
|
||||
mapGoods.value = result.data.mapGoods;
|
||||
isHook.value = result.data.isHook;
|
||||
// console.log(result)
|
||||
}
|
||||
else if (result.code == 103) {
|
||||
|
||||
@@ -1,58 +1,55 @@
|
||||
<template>
|
||||
<div class="content">【特殊属性】</div>
|
||||
<div class="content">
|
||||
<span>幸运:0%</span> <span>爆率:0%</span><br>
|
||||
<span>升空:0米</span> <span>下潜:0米</span>
|
||||
</div>
|
||||
<div class="content">【经验铜贝】</div>
|
||||
<div class="content">
|
||||
<div class="module-title">【特殊属性】</div>
|
||||
<div class="module-content">
|
||||
<span>幸运:{{ data.luck * 100 }}%</span> <span>爆率:{{ data.burst * 100 }}%</span><br>
|
||||
<!-- <span>升空:0米</span> <span>下潜:0米</span> -->
|
||||
<span>普通经验:0%</span> <span>副本经验:0%</span><br>
|
||||
<span>铜贝增益:0%</span>
|
||||
<span>铜贝增益:{{ data.addGold * 100 }}%</span>
|
||||
</div>
|
||||
<div class="content">【基础属性】</div>
|
||||
<div class="content">
|
||||
<span>吸血:{{data.inBlood * 100}}%</span> <span>制裁:{{data.punish * 100}}%</span><br>
|
||||
<span>暴击:{{data.crit * 100}}%</span> <span>闪避:{{data.dodge * 100}}%</span><br>
|
||||
<span>免伤:{{data.noHarm * 100}}%</span> <span>额外伤害:{{data.harm_Add}}</span><br>
|
||||
<span>反弹:{{data.rebound * 100}}%</span> <span>抗反弹:{{data.reboundLess * 100}}%</span><br>
|
||||
<span>迟缓:{{data.slow * 100}}%</span> <span>抗迟缓:{{data.slowLess * 100}}%</span><br>
|
||||
<span>中毒:{{data.poison * 100}}%</span> <span>抗中毒:{{data.poisonLess * 100}}%</span><br>
|
||||
<span>诅咒:{{data.curse * 100}}%</span> <span>抗诅咒:{{data.curseLess * 100}}%</span><br>
|
||||
<span>弱化:{{data.weaken * 100}}%</span> <span>抗弱化:{{data.weakenLess * 100}}%</span><br>
|
||||
<span>致命:{{data.deadly * 100}}%</span> <span>抗致命:{{data.deadlyLess * 100}}%</span><br>
|
||||
<span>沮丧:{{data.depressed * 100}}%</span> <span>抗沮丧:{{data.depressedLess * 100}}%</span><br>
|
||||
<span>突破:{{data.breach * 100}}%</span> <span>抗突破:{{data.breachLess * 100}}%</span><br>
|
||||
<span>麻痹:{{data.palsyAtk * 100}}%</span> <span>抗麻痹:{{data.palsyAtkLess * 100}}%</span><br>
|
||||
<span>卸时装:{{data.del_Fashion * 100}}%</span> <span>连击:{{data.atk_Next * 100}}%</span><br>
|
||||
<div class="module-title">【基础属性】</div>
|
||||
<div class="module-content">
|
||||
<span>吸血:{{ data.inBlood * 100 }}%</span> <span>制裁:{{ data.punish * 100 }}%</span><br>
|
||||
<span>暴击:{{ data.crit * 100 }}%</span> <span>闪避:{{ data.dodge * 100 }}%</span><br>
|
||||
<span>免伤:{{ data.noHarm * 100 }}%</span> <span>额外伤害:{{ data.harm_Add }}</span><br>
|
||||
<span>反弹:{{ data.rebound * 100 }}%</span> <span>抗反弹:{{ data.reboundLess * 100 }}%</span><br>
|
||||
<span>迟缓:{{ data.slow * 100 }}%</span> <span>抗迟缓:{{ data.slowLess * 100 }}%</span><br>
|
||||
<span>中毒:{{ data.poison * 100 }}%</span> <span>抗中毒:{{ data.poisonLess * 100 }}%</span><br>
|
||||
<span>诅咒:{{ data.curse * 100 }}%</span> <span>抗诅咒:{{ data.curseLess * 100 }}%</span><br>
|
||||
<span>弱化:{{ data.weaken * 100 }}%</span> <span>抗弱化:{{ data.weakenLess * 100 }}%</span><br>
|
||||
<span>致命:{{ data.deadly * 100 }}%</span> <span>抗致命:{{ data.deadlyLess * 100 }}%</span><br>
|
||||
<span>沮丧:{{ data.depressed * 100 }}%</span> <span>抗沮丧:{{ data.depressedLess * 100 }}%</span><br>
|
||||
<span>突破:{{ data.breach * 100 }}%</span> <span>抗突破:{{ data.breachLess * 100 }}%</span><br>
|
||||
<span>麻痹:{{ data.palsyAtk * 100 }}%</span> <span>抗麻痹:{{ data.palsyAtkLess * 100 }}%</span><br>
|
||||
<span>卸时装:{{ data.del_Fashion * 100 }}%</span> <span>连击:{{ data.atk_Next * 100 }}%</span><br>
|
||||
</div>
|
||||
</template>
|
||||
<script setup lang="ts">
|
||||
import { UserService } from '../../services/user/UserService';
|
||||
definePageMeta({
|
||||
layout: layout.default,
|
||||
middleware: middleware.loading
|
||||
})
|
||||
|
||||
definePageMeta({
|
||||
layout: layout.default,
|
||||
middleware: middleware.loading
|
||||
})
|
||||
|
||||
const data = ref<any>([]);
|
||||
|
||||
onMounted(async () => {
|
||||
try {
|
||||
await BindData();
|
||||
}
|
||||
finally {
|
||||
PageLoading.Close();
|
||||
}
|
||||
})
|
||||
|
||||
const BindData = async () => {
|
||||
let result = await UserService.GetUserBaseAttrInfo();
|
||||
if (result.code == 0) {
|
||||
data.value = result.data;
|
||||
console.log(data)
|
||||
}
|
||||
else {
|
||||
MessageExtend.ShowDialog("特性", result.msg);
|
||||
}
|
||||
const data = ref<any>([]);
|
||||
const unitExp = ref(0);
|
||||
const dupExp = ref(0);
|
||||
onMounted(async () => {
|
||||
try {
|
||||
await BindData();
|
||||
}
|
||||
finally {
|
||||
PageLoading.Close();
|
||||
}
|
||||
})
|
||||
|
||||
const BindData = async () => {
|
||||
let result = await UserService.GetUserBaseAttrData();
|
||||
if (result.code == 0) {
|
||||
data.value = result.data.data;
|
||||
unitExp.value = result.data.unitExp;
|
||||
dupExp.value = result.data.dupExp;
|
||||
}
|
||||
else {
|
||||
MessageExtend.ShowDialog("特性", result.msg);
|
||||
}
|
||||
}
|
||||
</script>
|
||||
76
Web/src/pages/user/onhook.vue
Normal file
76
Web/src/pages/user/onhook.vue
Normal file
@@ -0,0 +1,76 @@
|
||||
<template>
|
||||
<div class="module-title">挂机状态</div>
|
||||
|
||||
<div class="module-content" v-if="data.status == 1">
|
||||
挂机对象:{{ data.name }}<br>
|
||||
战斗用时:{{ data.time }} <span style="color: green;font-size: 14px;">ms</span> <br>
|
||||
战力要求:≧{{ Number(data.score).toFixed(2) }}<br>
|
||||
挂机经验:{{ data.exp }}经验/只(+{{ Number(expAdd)*100 }}%)<br>
|
||||
挂机铜贝:{{ data.copper }}铜贝/只(+{{ Number(copperAdd)*100 }}%)<br>
|
||||
获得经验:{{data.sumExp}}<br>
|
||||
获得铜贝:{{data.sumCopper}}<br>
|
||||
上次更新:{{TimeExtend.Format(data.uptime)}}<br>
|
||||
结束时间:{{TimeExtend.Format(data.endTime)}}<br>
|
||||
[<Abutton @click="StopHook">结束挂机</Abutton>]
|
||||
</div>
|
||||
<div class="module-content" v-else>
|
||||
未进行挂机!
|
||||
</div>
|
||||
<div class="module-title">挂机说明</div>
|
||||
<div class="module-content" style="font-size: 16px;">
|
||||
1.挂机状态每5分钟自动结算一次。<br>
|
||||
2.挂机状态中主动攻击怪物或玩家,自动结束挂机状态。<br>
|
||||
3.挂机状态获得的经验高低,与战力有关,同时与受普通经验卡等倍数加层,具体加层倍数可通过状态->特性中查看。<br>
|
||||
4.挂机时间普通挂机6个小时,紫钻挂机12个小时,中间被击杀(体力0)会被结束挂机状态。<br>
|
||||
5.当结束挂机后,玩家需要重新在可挂机的怪物处击杀怪物,并完成战斗复刻。<br>
|
||||
6.挂机状态下在挂机地点不可移动。<br>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
definePageMeta({
|
||||
layout: layout.default,
|
||||
middleware: 'page-loading'
|
||||
})
|
||||
|
||||
const data = ref<any>({});
|
||||
const expAdd = ref(0);
|
||||
const copperAdd = ref(0);
|
||||
onMounted(async () => {
|
||||
try {
|
||||
await BindData();
|
||||
}
|
||||
finally {
|
||||
PageLoading.Close();
|
||||
}
|
||||
})
|
||||
|
||||
const BindData = async (): Promise<void> => {
|
||||
let result = await FightService.GetUserHook();
|
||||
if (result.code == 0) {
|
||||
data.value = result.data.data;
|
||||
expAdd.value = result.data.expAdd;
|
||||
copperAdd.value = result.data.copperAdd;
|
||||
}
|
||||
else {
|
||||
|
||||
MessageExtend.ShowDialog("提示", result.msg);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
/**结束挂机 */
|
||||
const StopHook = async () => {
|
||||
MessageExtend.LoadingToast("正在结束挂机...");
|
||||
let result = await FightService.StopOnHook();
|
||||
MessageExtend.LoadingClose();
|
||||
if (result.code == 0) {
|
||||
await BindData();
|
||||
MessageExtend.Notify("挂机已结束!", "success");
|
||||
}
|
||||
else {
|
||||
MessageExtend.Notify(result.msg, "danger");
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
@@ -43,4 +43,28 @@ export class FightService {
|
||||
static async GetFightMsg(fightId: string) {
|
||||
return await ApiService.Request("get", "/Fight/GetFightMsg", { fightId });
|
||||
}
|
||||
|
||||
/**
|
||||
* 个人挂机信息
|
||||
* GET /Fight/GetUserHook
|
||||
*/
|
||||
static async GetUserHook() {
|
||||
return await ApiService.Request("get", "/Fight/GetUserHook");
|
||||
}
|
||||
|
||||
/**
|
||||
* 挂机
|
||||
* GET /Fight/OnHook
|
||||
*/
|
||||
static async OnHook(fightId: string) {
|
||||
return await ApiService.Request("get", "/Fight/OnHook", { fightId });
|
||||
}
|
||||
|
||||
/**
|
||||
* 结束挂机
|
||||
* GET /Fight/StopOnHook
|
||||
*/
|
||||
static async StopOnHook() {
|
||||
return await ApiService.Request("get", "/Fight/StopOnHook");
|
||||
}
|
||||
}
|
||||
@@ -23,6 +23,14 @@ export class UserService {
|
||||
return await ApiService.Request("get", "/User/User/GetUserBaseAttrInfo", { no });
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取个人特性
|
||||
* GET /User/User/GetUserBaseAttrData
|
||||
*/
|
||||
static async GetUserBaseAttrData() {
|
||||
return await ApiService.Request("get", "/User/User/GetUserBaseAttrData");
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取用户资料
|
||||
* GET /User/User/GetHomeInfo
|
||||
|
||||
Reference in New Issue
Block a user