Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
phpdts
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
List
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Nemo Ma
phpdts
Commits
f006ac06
Commit
f006ac06
authored
Jul 29, 2023
by
satsuki8
Browse files
Options
Browse Files
Download
Plain Diff
merge
parents
65ccd426
4f193ce3
Changes
23
Hide whitespace changes
Inline
Side-by-side
Showing
23 changed files
with
734 additions
and
176 deletions
+734
-176
api.php
api.php
+129
-61
command.php
command.php
+3
-3
game.php
game.php
+1
-1
gamedata/cache/addnpc_1.php
gamedata/cache/addnpc_1.php
+5
-5
gamedata/cache/clubskills_1.php
gamedata/cache/clubskills_1.php
+11
-11
gamedata/cache/combatcfg_1.php
gamedata/cache/combatcfg_1.php
+12
-12
gamedata/cache/mixitem_1.php
gamedata/cache/mixitem_1.php
+33
-41
gamedata/cache/npc_1.php
gamedata/cache/npc_1.php
+4
-4
gamedata/cache/resources_1.php
gamedata/cache/resources_1.php
+11
-2
gamedata/cache/tooltip_1.php
gamedata/cache/tooltip_1.php
+6
-0
gamedata/sql/reset.sql
gamedata/sql/reset.sql
+2
-2
include/game/item.func.php
include/game/item.func.php
+317
-1
include/game/item2.func.php
include/game/item2.func.php
+79
-10
include/game/itemmain.func.php
include/game/itemmain.func.php
+46
-3
include/game/revattr.func.php
include/game/revattr.func.php
+15
-1
include/game/revbattle.func.php
include/game/revbattle.func.php
+22
-1
include/global.func.php
include/global.func.php
+5
-2
include/system.func.php
include/system.func.php
+14
-9
register.php
register.php
+14
-2
templates/default/alive.htm
templates/default/alive.htm
+1
-1
templates/default/gbresult.htm
templates/default/gbresult.htm
+1
-0
templates/default/lastgb.htm
templates/default/lastgb.htm
+0
-2
valid.php
valid.php
+3
-2
No files found.
api.php
View file @
f006ac06
...
...
@@ -46,9 +46,9 @@
if
(
$tdata
[
'weps'
]
&&
$tdata
[
'wepe'
])
{
$list
[]
=
array
(
"key"
=>
"wep"
,
"type"
=>
parse_
info_desc
(
$tdata
[
'wepk'
],
'k'
),
"name"
=>
$tdata
[
'wep'
]
,
"props"
=>
$tdata
[
'wepsk'
]
?
parse_
info_desc
(
$tdata
[
'wepsk'
],
'sk'
,
'wepsk'
,
1
)
:
''
,
"type"
=>
parse_
kinfo_desc
(
$tdata
[
'wepk'
],
$tdata
[
'wepsk'
]
),
"name"
=>
parse_nameinfo_desc
(
$tdata
[
'wep'
],
$tdata
[
'horizon'
])
,
"props"
=>
$tdata
[
'wepsk'
]
?
parse_
skinfo_desc
(
$tdata
[
'wepsk'
],
$tdata
[
'wepk'
]
,
1
)
:
''
,
"quality"
=>
$tdata
[
'wepe'
],
"durability"
=>
$tdata
[
'weps'
],
);
...
...
@@ -57,9 +57,9 @@
if
(
$tdata
[
'arbs'
]
&&
$tdata
[
'arbe'
])
{
$list
[]
=
array
(
"key"
=>
"arb"
,
"type"
=>
parse_
info_desc
(
$tdata
[
'arbk'
],
'k'
),
"name"
=>
$tdata
[
'arb'
]
,
"props"
=>
$tdata
[
'arbsk'
]
?
parse_
info_desc
(
$tdata
[
'arbsk'
],
'sk'
,
'arbsk'
,
1
)
:
''
,
"type"
=>
parse_
kinfo_desc
(
$tdata
[
'arbk'
],
$tdata
[
'arbsk'
]
),
"name"
=>
parse_nameinfo_desc
(
$tdata
[
'arb'
],
$tdata
[
'horizon'
])
,
"props"
=>
$tdata
[
'arbsk'
]
?
parse_
skinfo_desc
(
$tdata
[
'arbsk'
],
$tdata
[
'arbk'
]
,
1
)
:
''
,
"quality"
=>
$tdata
[
'arbe'
],
"durability"
=>
$tdata
[
'arbs'
],
);
...
...
@@ -68,9 +68,9 @@
if
(
$tdata
[
'arhs'
])
{
$list
[]
=
array
(
"key"
=>
"arh"
,
"type"
=>
parse_
info_desc
(
$tdata
[
'arhk'
],
'k'
),
"name"
=>
$tdata
[
'arh'
]
,
"props"
=>
$tdata
[
'arhsk'
]
?
parse_
info_desc
(
$tdata
[
'arhsk'
],
'sk'
,
'arhsk'
,
1
)
:
''
,
"type"
=>
parse_
kinfo_desc
(
$tdata
[
'arhk'
],
$tdata
[
'arhsk'
]
),
"name"
=>
parse_nameinfo_desc
(
$tdata
[
'arh'
],
$tdata
[
'horizon'
])
,
"props"
=>
$tdata
[
'arhsk'
]
?
parse_
skinfo_desc
(
$tdata
[
'arhsk'
],
$tdata
[
'arhk'
]
,
1
)
:
''
,
"quality"
=>
$tdata
[
'arhe'
],
"durability"
=>
$tdata
[
'arhs'
],
);
...
...
@@ -79,9 +79,9 @@
if
(
$tdata
[
'aras'
])
{
$list
[]
=
array
(
"key"
=>
"ara"
,
"type"
=>
parse_
info_desc
(
$tdata
[
'arak'
],
'k'
),
"name"
=>
$tdata
[
'ara'
]
,
"props"
=>
$tdata
[
'arask'
]
?
parse_
info_desc
(
$tdata
[
'arask'
],
'sk'
,
'arask'
,
1
)
:
''
,
"type"
=>
parse_
kinfo_desc
(
$tdata
[
'arak'
],
$tdata
[
'arask'
]
),
"name"
=>
parse_nameinfo_desc
(
$tdata
[
'ara'
],
$tdata
[
'horizon'
])
,
"props"
=>
$tdata
[
'arask'
]
?
parse_
skinfo_desc
(
$tdata
[
'arask'
],
$tdata
[
'arak'
]
,
1
)
:
''
,
"quality"
=>
$tdata
[
'arae'
],
"durability"
=>
$tdata
[
'aras'
],
);
...
...
@@ -90,9 +90,9 @@
if
(
$tdata
[
'arfs'
])
{
$list
[]
=
array
(
"key"
=>
"arf"
,
"type"
=>
parse_
info_desc
(
$tdata
[
'arfk'
],
'k'
),
"name"
=>
$tdata
[
'arf'
]
,
"props"
=>
$tdata
[
'arfsk'
]
?
parse_
info_desc
(
$tdata
[
'arfsk'
],
'sk'
,
'arfsk'
,
1
)
:
''
,
"type"
=>
parse_
kinfo_desc
(
$tdata
[
'arfk'
],
$tdata
[
'arfsk'
]
),
"name"
=>
parse_nameinfo_desc
(
$tdata
[
'arf'
],
$tdata
[
'horizon'
])
,
"props"
=>
$tdata
[
'arfsk'
]
?
parse_
skinfo_desc
(
$tdata
[
'arfsk'
],
$tdata
[
'arfk'
]
,
1
)
:
''
,
"quality"
=>
$tdata
[
'arfe'
],
"durability"
=>
$tdata
[
'arfs'
],
);
...
...
@@ -101,9 +101,9 @@
if
(
$tdata
[
'arts'
])
{
$list
[]
=
array
(
"key"
=>
"art"
,
"type"
=>
parse_
info_desc
(
$tdata
[
'artk'
],
'k'
),
"name"
=>
$tdata
[
'art'
]
,
"props"
=>
$tdata
[
'artsk'
]
?
parse_
info_desc
(
$tdata
[
'artsk'
],
'sk'
,
'artsk'
,
1
)
:
''
,
"type"
=>
parse_
kinfo_desc
(
$tdata
[
'artk'
],
$tdata
[
'artsk'
]
),
"name"
=>
parse_nameinfo_desc
(
$tdata
[
'art'
],
$tdata
[
'horizon'
])
,
"props"
=>
$tdata
[
'artsk'
]
?
parse_
skinfo_desc
(
$tdata
[
'artsk'
],
$tdata
[
'artk'
]
,
1
)
:
''
,
"quality"
=>
$tdata
[
'arte'
],
"durability"
=>
$tdata
[
'arts'
],
);
...
...
@@ -112,9 +112,9 @@
if
(
$tdata
[
'itms0'
])
{
$list
[]
=
array
(
"key"
=>
"itm0"
,
"type"
=>
parse_
info_desc
(
$tdata
[
'itmk0'
],
'k'
),
"name"
=>
$tdata
[
'itm0'
]
,
"props"
=>
$tdata
[
'
itmsk0'
]
?
parse_info_desc
(
$tdata
[
'itmsk0'
],
'sk'
,
'itmsk0'
,
1
)
:
''
,
"type"
=>
parse_
kinfo_desc
(
$tdata
[
'itmk0'
],
$tdata
[
'itmsk0'
]
),
"name"
=>
parse_nameinfo_desc
(
$tdata
[
'itm0'
],
$tdata
[
'horizon'
])
,
"props"
=>
$tdata
[
'
artsk'
]
?
parse_skinfo_desc
(
$tdata
[
'itmsk0'
],
$tdata
[
'itmk0'
]
,
1
)
:
''
,
"quality"
=>
$tdata
[
'itme0'
],
"durability"
=>
$tdata
[
'itms0'
],
);
...
...
@@ -123,9 +123,9 @@
if
(
$tdata
[
'itms1'
])
{
$list
[]
=
array
(
"key"
=>
"itm1"
,
"type"
=>
parse_
info_desc
(
$tdata
[
'itmk1'
],
'k'
),
"name"
=>
$tdata
[
'itm1'
]
,
"props"
=>
$tdata
[
'
itmsk1'
]
?
parse_info_desc
(
$tdata
[
'itmsk1'
],
'sk'
,
'itmsk1'
,
1
)
:
''
,
"type"
=>
parse_
kinfo_desc
(
$tdata
[
'itmk1'
],
$tdata
[
'itmsk1'
]
),
"name"
=>
parse_nameinfo_desc
(
$tdata
[
'itm1'
],
$tdata
[
'horizon'
])
,
"props"
=>
$tdata
[
'
artsk'
]
?
parse_skinfo_desc
(
$tdata
[
'itmsk1'
],
$tdata
[
'itmk1'
]
,
1
)
:
''
,
"quality"
=>
$tdata
[
'itme1'
],
"durability"
=>
$tdata
[
'itms1'
],
);
...
...
@@ -134,9 +134,9 @@
if
(
$tdata
[
'itms2'
])
{
$list
[]
=
array
(
"key"
=>
"itm2"
,
"type"
=>
parse_
info_desc
(
$tdata
[
'itmk2'
],
'k'
),
"name"
=>
$tdata
[
'itm2'
]
,
"props"
=>
$tdata
[
'
itmsk2'
]
?
parse_info_desc
(
$tdata
[
'itmsk2'
],
'sk'
,
'itmsk2'
,
1
)
:
''
,
"type"
=>
parse_
kinfo_desc
(
$tdata
[
'itmk2'
],
$tdata
[
'itmsk2'
]
),
"name"
=>
parse_nameinfo_desc
(
$tdata
[
'itm2'
],
$tdata
[
'horizon'
])
,
"props"
=>
$tdata
[
'
artsk'
]
?
parse_skinfo_desc
(
$tdata
[
'itmsk2'
],
$tdata
[
'itmk2'
]
,
1
)
:
''
,
"quality"
=>
$tdata
[
'itme2'
],
"durability"
=>
$tdata
[
'itms2'
],
);
...
...
@@ -145,9 +145,9 @@
if
(
$tdata
[
'itms3'
])
{
$list
[]
=
array
(
"key"
=>
"itm3"
,
"type"
=>
parse_
info_desc
(
$tdata
[
'itmk3'
],
'k'
),
"name"
=>
$tdata
[
'itm3'
]
,
"props"
=>
$tdata
[
'
itmsk3'
]
?
parse_info_desc
(
$tdata
[
'itmsk3'
],
'sk'
,
'itmsk3'
,
1
)
:
''
,
"type"
=>
parse_
kinfo_desc
(
$tdata
[
'itmk3'
],
$tdata
[
'itmsk3'
]
),
"name"
=>
parse_nameinfo_desc
(
$tdata
[
'itm3'
],
$tdata
[
'horizon'
])
,
"props"
=>
$tdata
[
'
artsk'
]
?
parse_skinfo_desc
(
$tdata
[
'itmsk3'
],
$tdata
[
'itmk3'
]
,
1
)
:
''
,
"quality"
=>
$tdata
[
'itme3'
],
"durability"
=>
$tdata
[
'itms3'
],
);
...
...
@@ -156,9 +156,9 @@
if
(
$tdata
[
'itms4'
])
{
$list
[]
=
array
(
"key"
=>
"itm4"
,
"type"
=>
parse_
info_desc
(
$tdata
[
'itmk4'
],
'k'
),
"name"
=>
$tdata
[
'itm4'
]
,
"props"
=>
$tdata
[
'
itmsk4'
]
?
parse_info_desc
(
$tdata
[
'itmsk4'
],
'sk'
,
'itmsk4'
,
1
)
:
''
,
"type"
=>
parse_
kinfo_desc
(
$tdata
[
'itmk4'
],
$tdata
[
'itmsk4'
]
),
"name"
=>
parse_nameinfo_desc
(
$tdata
[
'itm4'
],
$tdata
[
'horizon'
])
,
"props"
=>
$tdata
[
'
artsk'
]
?
parse_skinfo_desc
(
$tdata
[
'itmsk4'
],
$tdata
[
'itmk4'
]
,
1
)
:
''
,
"quality"
=>
$tdata
[
'itme4'
],
"durability"
=>
$tdata
[
'itms4'
],
);
...
...
@@ -167,9 +167,9 @@
if
(
$tdata
[
'itms5'
])
{
$list
[]
=
array
(
"key"
=>
"itm5"
,
"type"
=>
parse_
info_desc
(
$tdata
[
'itmk5'
],
'k'
),
"name"
=>
$tdata
[
'itm5'
]
,
"props"
=>
$tdata
[
'
itmsk5'
]
?
parse_info_desc
(
$tdata
[
'itmsk5'
],
'sk'
,
'itmsk5'
,
1
)
:
''
,
"type"
=>
parse_
kinfo_desc
(
$tdata
[
'itmk5'
],
$tdata
[
'itmsk5'
]
),
"name"
=>
parse_nameinfo_desc
(
$tdata
[
'itm5'
],
$tdata
[
'horizon'
])
,
"props"
=>
$tdata
[
'
artsk'
]
?
parse_skinfo_desc
(
$tdata
[
'itmsk5'
],
$tdata
[
'itmk5'
]
,
1
)
:
''
,
"quality"
=>
$tdata
[
'itme5'
],
"durability"
=>
$tdata
[
'itms5'
],
);
...
...
@@ -178,9 +178,9 @@
if
(
$tdata
[
'itms6'
])
{
$list
[]
=
array
(
"key"
=>
"itm6"
,
"type"
=>
parse_
info_desc
(
$tdata
[
'itmk6'
],
'k'
),
"name"
=>
$tdata
[
'itm6'
]
,
"props"
=>
$tdata
[
'
itmsk6'
]
?
parse_info_desc
(
$tdata
[
'itmsk6'
],
'sk'
,
'itmsk6'
,
1
)
:
''
,
"type"
=>
parse_
kinfo_desc
(
$tdata
[
'itmk6'
],
$tdata
[
'itmsk6'
]
),
"name"
=>
parse_nameinfo_desc
(
$tdata
[
'itm6'
],
$tdata
[
'horizon'
])
,
"props"
=>
$tdata
[
'
artsk'
]
?
parse_skinfo_desc
(
$tdata
[
'itmsk6'
],
$tdata
[
'itmk6'
]
,
1
)
:
''
,
"quality"
=>
$tdata
[
'itme6'
],
"durability"
=>
$tdata
[
'itms6'
],
);
...
...
@@ -301,23 +301,19 @@
//将新的数组添加到空数组中,以$skid为键
$array
[]
=
$new_array
;
}
//返回最终的数组
return
$array
;
}
/** 获取敌方技能页面 */
function
getEnemySkillPage
(
$tdata
)
{
global
$cskills
;
$uidata
=
$tdata
;
$array
=
array
();
foreach
(
$tdata
[
'clbpara'
][
'skill'
]
as
$skid
)
{
$cskill
=
$cskills
[
$skid
];
$name
=
$cskill
[
'name'
];
$cdesc
=
parse_skilldesc
(
$skid
,
$uidata
);
$num_input
=
$cskill
[
'num_input'
];
$input
=
$cskill
[
'input'
];
$unlock_flag
=
check_skill_unlock
(
$skid
,
$uidata
);
$unlock_desc
=
parse_skilllockdesc
(
$skid
,
$unlock_flag
);
$new_array
=
array
(
'id'
=>
$skid
,
'name'
=>
$name
,
...
...
@@ -410,6 +406,62 @@
"max"
=>
emix_calc_maxenum
(),
);
}
/** 检查获取的物品是否可进行合并 */
function
checkMerge
()
{
global
$wep
,
$wepk
,
$wepe
,
$weps
,
$wepsk
;
global
$itm0
,
$itmk0
,
$itme0
,
$itms0
,
$itmsk0
,
$nosta
;
$check
=
false
;
if
(
preg_match
(
'/^(WC|WD|WF|Y|B|C|TN|GB|M|V)/'
,
$itmk0
)
&&
$itms0
!==
$nosta
)
{
if
(
$wep
==
$itm0
&&
$wepk
==
$itmk0
&&
$wepe
==
$itme0
&&
$wepsk
==
$itmsk0
)
{
$check
=
true
;
}
else
{
for
(
$i
=
1
;
$i
<=
6
;
$i
++
)
{
global
$
{
'itm'
.
$i
},
$
{
'itmk'
.
$i
},
$
{
'itme'
.
$i
},
$
{
'itms'
.
$i
},
$
{
'itmsk'
.
$i
};
if
((
$
{
'itms'
.
$i
})
&&
(
$itm0
==
$
{
'itm'
.
$i
})
&&
(
$itmk0
==
$
{
'itmk'
.
$i
})
&&
(
$itme0
==
$
{
'itme'
.
$i
})
&&
(
$itmsk0
==
$
{
'itmsk'
.
$i
}))
{
$check
=
true
;
}
}
}
}
else
if
(
preg_match
(
'/^H|^P/'
,
$itmk0
)
&&
$itms0
!==
$nosta
)
{
$check
=
true
;
}
return
$check
;
}
/** 合并物品列表 */
function
mergeList
()
{
$sameitem
=
array
();
for
(
$i
=
1
;
$i
<=
6
;
$i
++
)
{
global
$itm0
,
$itme0
;
global
$
{
'itm'
.
$i
},
$
{
'itmk'
.
$i
},
$
{
'itme'
.
$i
},
$
{
'itms'
.
$i
};
if
(
$
{
'itms'
.
$i
}
&&
(
$itm0
==
$
{
'itm'
.
$i
})
&&
(
$itme0
==
$
{
'itme'
.
$i
})
&&
(
preg_match
(
'/^(H|P)/'
,
$
{
'itmk'
.
$i
})))
{
$sameitem
[]
=
'item'
.
$i
;
}
}
return
$sameitem
;
}
/** 获取攻击方式 */
function
getAttackType
()
{
global
$pdata
,
$attinfo
,
$nosta
;
$w1
=
substr
(
$pdata
[
'wepk'
],
1
,
1
);
$w2
=
substr
(
$pdata
[
'wepk'
],
2
,
1
);
if
(
empty
(
$w2
)
||
is_numeric
(
$w2
))
{
$w2
=
''
;
}
if
((
$w1
==
'G'
||
$w1
==
'J'
)
&&
(
$pdata
[
'weps'
]
==
$nosta
))
{
$w1
=
'P'
;
}
$type
[
'type1'
]
=
array
(
'id'
=>
$w1
,
'name'
=>
$attinfo
[
$w1
],
);
if
(
$w2
)
{
$type
[
'type2'
]
=
array
(
'id'
=>
$w2
,
'name'
=>
$attinfo
[
$w2
],
);
}
return
$type
;
}
echo
(
json_encode
(
array
(
"page"
=>
"game"
,
/** 玩家状态 */
...
...
@@ -462,7 +514,7 @@
/** 当前称号 */
"nowGiftId"
=>
$club
,
/** 可选称号 */
"giftList"
=>
$clubav
l
,
"giftList"
=>
!
$club
?
array_merge
(
valid_getclublist_t2
(
$udata
),
valid_getclublist_t1
(
$udata
))
:
nul
l
,
/** 称号类型 */
"type"
=>
$clubinfo
,
),
...
...
@@ -492,6 +544,13 @@
/** 姿态tips */
"tips"
=>
$posetips
,
),
/** 战术界面 */
"horizon"
=>
array
(
/** 当前战术界面id */
"nowHorizonId"
=>
$horizon
,
/** 可选战术界面 */
"type"
=>
$horizoninfo
,
),
/** 攻击力 */
"attack"
=>
$atkinfo
,
/** 防御力 */
...
...
@@ -516,7 +575,7 @@
/** 击杀数 */
"killNum"
=>
$killnum
,
/** 负面状态 */
"debuff"
=>
$inf
?
$inf
:
[
'无'
]
,
"debuff"
=>
$inf
,
"debuffList"
=>
$infinfo
,
/** 装备 */
"equipment"
=>
array
(
...
...
@@ -653,20 +712,11 @@
"areaNum"
=>
$areanum
,
/** 每次禁区增加数 */
"areaAdd"
=>
$areaadd
,
/** 是否解除禁区 */
"isHack"
=>
$hack
,
),
/** 攻击方式 */
"attackType"
=>
array
(
/** 方式1 */
"type1"
=>
array
(
"id"
=>
substr
(
$wepk
,
1
,
1
),
"name"
=>
$attinfo
[
substr
(
$wepk
,
1
,
1
)],
),
/** 方式2 */
"type2"
=>
array
(
"id"
=>
substr
(
$wepk
,
2
,
1
)
?
substr
(
$wepk
,
2
,
1
)
:
null
,
"name"
=>
substr
(
$wepk
,
2
,
1
)
?
$attinfo
[
substr
(
$wepk
,
2
,
1
)]
:
null
,
),
),
"attackType"
=>
getAttackType
(),
/** 视野 */
"semo"
=>
$clbpara
[
'smeo'
],
/** 合成 */
...
...
@@ -703,6 +753,8 @@
"crafting"
=>
$club
!=
20
,
/** 元素口袋 */
"element"
=>
$club
==
20
,
/** 控制面板 */
"control"
=>
isset
(
$clbpara
[
'console'
]),
),
/** 安全箱物品 */
"depotItems"
=>
depot_getlist
(
$name
,
$type
),
...
...
@@ -721,6 +773,21 @@
"time"
=>
$dtime
,
"name"
=>
(
!
empty
(
$kname
)
&&
(
in_array
(
$state
,
Array
(
20
,
21
,
22
,
23
,
24
,
28
,
29
))))
?
$kname
:
null
,
)
:
null
,
/** 弹框 */
"dialog"
=>
$clbpara
[
'dialogue'
],
/** 不可跳过弹框 */
"noSkipDialog"
=>
$clbpara
[
'noskip_dialogue'
],
/** 游戏状态 */
"isGameOver"
=>
$gamestate
==
0
,
/** 控制面板 */
"controlPanel"
=>
array
(
/** 可用信道 */
"channel"
=>
$gamevars
[
'api'
],
/** 共计信道 */
"channelAll"
=>
$gamevars
[
'apis'
],
/** 按钮 */
"noButton"
=>
$clbpara
[
'nobutton'
],
)
),
/** 搜寻状态 */
"searchState"
=>
array
(
...
...
@@ -731,7 +798,8 @@
"props"
=>
$itmsk0_words
!=
'--'
?
$itmsk0_words
:
''
,
"quality"
=>
$itme0
,
"durability"
=>
$itms0
,
"canMerge"
=>
preg_match
(
'/^H|^P/'
,
$itmk0
)
&&
$itms0
!==
$nosta
,
"canMerge"
=>
checkMerge
(),
"mergeList"
=>
mergeList
(),
)
:
null
,
/** 发现敌人 */
"findEnemy"
=>
$tdata
[
'nameinfo'
]
?
array
(
...
...
@@ -774,7 +842,7 @@
/** 敌方道具 */
"items"
=>
$battle_title
===
"发现尸体"
?
getCorpseItems
(
$tdata
)
:
null
,
/** 敌方技能 */
"skill"
=>
$tdata
[
'clbpara'
][
'skill'
]
?
getEnemySkillPage
(
$tdata
)
:
null
,
"skill"
=>
isset
(
$tdata
[
'clbpara'
][
'skill'
])
?
getEnemySkillPage
(
$tdata
)
:
null
,
/** 战斗技能 */
"battleSkills"
=>
$battle_skills
?
getBattleSkills
(
$battle_skills
)
:
null
,
)
:
null
,
...
...
command.php
View file @
f006ac06
...
...
@@ -290,7 +290,7 @@ if($hp > 0){
if
(
$choice_position
<
1
||
$choice_position
>
6
)
$log
.=
'<span class="red">无此物品。</span><br />'
;
else
{
include_once
GAME_ROOT
.
'./include/game/
club21
.func.php'
;
include_once
GAME_ROOT
.
'./include/game/
special
.func.php'
;
item_extract_trait
(
$choice
,
$choice_position
);
}
$mode
=
'command'
;
...
...
@@ -324,7 +324,7 @@ if($hp > 0){
elseif
(
$choice
==
$choice2
)
$log
.=
'<span class="red">你选择了相同的代码片段。</span><br />'
;
else
{
include_once
GAME_ROOT
.
'./include/game/
club21
.func.php'
;
include_once
GAME_ROOT
.
'./include/game/
special
.func.php'
;
item_add_trait
(
$choice
,
$choice2
);
}
$mode
=
'command'
;
...
...
@@ -822,7 +822,7 @@ $jgamedata = compatible_json_encode($gamedata);
//$json = new Services_JSON();
//$jgamedata = $json->encode($gamedata);
//if(!strstr($_SERVER['HTTP_REFERER'], 'php')) {
if
(
$udata
[
'u_templateid'
]
==
1
&&
!
strstr
(
$_SERVER
[
'HTTP_REFERER'
],
'php'
)
&&
$_SERVER
[
'HTTP_REFERER'
]
!=
''
)
{
if
(
isset
(
$_GET
[
'is_new'
])
)
{
include
'./api.php'
;
}
else
{
echo
$jgamedata
;
...
...
game.php
View file @
f006ac06
...
...
@@ -170,7 +170,7 @@ if(isset($opendialog))
}
//if (!strstr($_SERVER['HTTP_REFERER'], 'php') && $_SERVER['HTTP_REFERER'] != '') {
if
(
$udata
[
'u_templateid'
]
==
1
&&
!
strstr
(
$_SERVER
[
'HTTP_REFERER'
],
'php'
)
&&
$_SERVER
[
'HTTP_REFERER'
]
!=
''
)
{
if
(
isset
(
$_GET
[
'is_new'
])
)
{
include
'./api.php'
;
}
else
{
include
template
(
'game'
);
...
...
gamedata/cache/addnpc_1.php
View file @
f006ac06
...
...
@@ -1497,7 +1497,7 @@ $anpcinfo = array
0
=>
array
(
'name'
=>
'红暮'
,
'club'
=>
98
,
'club'
=>
98
,
'pose'
=>
2
,
'tactic'
=>
3
,
'mhp'
=>
20800
,
...
...
@@ -2584,7 +2584,7 @@ $anpcinfo = array
'wepe'
=>
1
,
'weps'
=>
50
,
'itm5'
=>
'◆愈合数据'
,
'itmk5'
=>
'
HB
'
,
'itmk5'
=>
'
🎆H
'
,
'itme5'
=>
5
,
'itms5'
=>
'∞'
,
),
...
...
@@ -2597,7 +2597,7 @@ $anpcinfo = array
'wepe'
=>
1
,
'weps'
=>
50
,
'itm5'
=>
'◆熟练数据'
,
'itmk5'
=>
'
V
V'
,
'itmk5'
=>
'
🎆
V'
,
'itme5'
=>
1
,
'itms5'
=>
5
,
),
...
...
@@ -2610,7 +2610,7 @@ $anpcinfo = array
'wepe'
=>
1
,
'weps'
=>
50
,
'itm5'
=>
'◆生命数据'
,
'itmk5'
=>
'
MH
'
,
'itmk5'
=>
'
🎆O
'
,
'itme5'
=>
1
,
'itms5'
=>
10
,
),
...
...
@@ -2623,7 +2623,7 @@ $anpcinfo = array
'wepe'
=>
1
,
'weps'
=>
50
,
'itm5'
=>
'◆意念数据'
,
'itmk5'
=>
'
M
D'
,
'itmk5'
=>
'
🎆
D'
,
'itme5'
=>
1
,
'itms5'
=>
10
,
),
...
...
gamedata/cache/clubskills_1.php
View file @
f006ac06
...
...
@@ -443,7 +443,7 @@ $cskills = Array
'wepk+wep_kind'
=>
'武器不适用,持<span class="yellow">投系武器</span>时生效'
,
),
'unlock'
=>
Array
(
'wepk+wep_kind'
=>
"strpos([:wepk:],'C')!==false ||
(!empty([:wep_kind:]) && [:wep_kind:] == 'C'
)"
,
'wepk+wep_kind'
=>
"strpos([:wepk:],'C')!==false ||
strpos([:wepk:],'B')!==false || (!empty([:wep_kind:]) && ([:wep_kind:] == 'C' || [:wep_kind:] == 'B')
)"
,
),
),
'c3_enchant'
=>
Array
...
...
@@ -493,7 +493,7 @@ $cskills = Array
),
'unlock'
=>
Array
(
'lvl'
=>
'[:lvl:] >= 5'
,
'wepk+wep_kind'
=>
"strpos([:wepk:],'C')!==false ||
(!empty([:wep_kind:]) && [:wep_kind:] == 'C'
)"
,
'wepk+wep_kind'
=>
"strpos([:wepk:],'C')!==false ||
strpos([:wepk:],'B')!==false || (!empty([:wep_kind:]) && ([:wep_kind:] == 'C' || [:wep_kind:] == 'B')
)"
,
),
),
'c3_potential'
=>
Array
...
...
@@ -514,7 +514,7 @@ $cskills = Array
),
'unlock'
=>
Array
(
'lvl'
=>
'[:lvl:] >= 7'
,
'wepk+wep_kind'
=>
"strpos([:wepk:],'C')!==false ||
(!empty([:wep_kind:]) && [:wep_kind:] == 'C'
)"
,
'wepk+wep_kind'
=>
"strpos([:wepk:],'C')!==false ||
strpos([:wepk:],'B')!==false || (!empty([:wep_kind:]) && ([:wep_kind:] == 'C' || [:wep_kind:] == 'B')
)"
,
),
),
'c3_hawkeye'
=>
Array
...
...
@@ -534,7 +534,7 @@ $cskills = Array
),
'unlock'
=>
Array
(
'lvl'
=>
'[:lvl:] >= 9'
,
'wepk+wep_kind'
=>
"strpos([:wepk:],'C')!==false ||
(!empty([:wep_kind:]) && [:wep_kind:] == 'C'
)"
,
'wepk+wep_kind'
=>
"strpos([:wepk:],'C')!==false ||
strpos([:wepk:],'B')!==false || (!empty([:wep_kind:]) && ([:wep_kind:] == 'C' || [:wep_kind:] == 'B')
)"
,
),
),
'c3_offset'
=>
Array
...
...
@@ -567,7 +567,7 @@ $cskills = Array
),
'unlock'
=>
Array
(
'lvl'
=>
'[:lvl:] >= 13'
,
'wepk+wep_kind'
=>
"strpos([:wepk:],'C')!==false ||
(!empty([:wep_kind:]) && [:wep_kind:] == 'C'
)"
,
'wepk+wep_kind'
=>
"strpos([:wepk:],'C')!==false ||
strpos([:wepk:],'B')!==false || (!empty([:wep_kind:]) && ([:wep_kind:] == 'C' || [:wep_kind:] == 'B')
)"
,
),
),
'c3_numerous'
=>
Array
...
...
@@ -587,7 +587,7 @@ $cskills = Array
//……
'unlock'
=>
Array
(
'skillpara|c3_enchant-ur+skillpara|c3_enchant-ir+skillpara|c3_enchant-pr+skillpara|c3_enchant-er+skillpara|c3_enchant-wr+skillpara|c3_enchant-dr'
=>
'[:skillpara|c3_enchant-ur:] >= 120 || [:skillpara|c3_enchant-ir:] >= 120 || [:skillpara|c3_enchant-er:] >= 120 || [:skillpara|c3_enchant-wr:] >= 120 || [:skillpara|c3_enchant-pr:] >= 120 || [:skillpara|c3_enchant-dr:] >= 120'
,
'wepk+wep_kind'
=>
"strpos([:wepk:],'C')!==false ||
(!empty([:wep_kind:]) && [:wep_kind:] == 'C'
)"
,
'wepk+wep_kind'
=>
"strpos([:wepk:],'C')!==false ||
strpos([:wepk:],'B')!==false || (!empty([:wep_kind:]) && ([:wep_kind:] == 'C' || [:wep_kind:] == 'B')
)"
,
),
),
'c4_stable'
=>
Array
...
...
@@ -2139,11 +2139,11 @@ $cskills = Array
'pvars'
=>
Array
(
'skill-active'
,
'skillpara|c20_sparkle-active_t'
),
'lockdesc'
=>
Array
(
'skillpara|c20_sparkle-active_t'
=>
'已失去火花。'
,
'lvl'
=>
'1
5
级时解锁'
,
'lvl'
=>
'1
3
级时解锁'
,
),
'unlock'
=>
Array
(
'skillpara|c20_sparkle-active_t'
=>
'[:skillpara|c20_sparkle-active_t:] < 1'
,
'lvl'
=>
'[:lvl:] >= 1
5
'
,
'lvl'
=>
'[:lvl:] >= 1
3
'
,
),
),
'c20_lotus'
=>
Array
...
...
@@ -2172,13 +2172,13 @@ $cskills = Array
'pvars'
=>
Array
(
'skillpara|c20_lotus-active_t'
),
'lockdesc'
=>
Array
(
'skillpara|c20_lotus-active_t'
=>
'黑莲花已经用光了。'
,
'lvl'
=>
'
21
级时解锁'
,
'lvl'
=>
'
17
级时解锁'
,
),
'unlock'
=>
Array
(
'skillpara|c20_lotus-active_t'
=>
'[:skillpara|c20_lotus-active_t:] < 3'
,
'lvl'
=>
'[:lvl:] >=
21
'
,
'lvl'
=>
'[:lvl:] >=
17
'
,
),
),
),
'c21_stormedge'
=>
Array
(
'name'
=>
'斥血'
,
...
...
gamedata/cache/combatcfg_1.php
View file @
f006ac06
<?php
//基础反击率
$counter_obbs
=
Array
(
'N'
=>
75
,
'P'
=>
85
,
'K'
=>
85
,
'G'
=>
50
,
'C'
=>
75
,
'D'
=>
0
,
'F'
=>
95
,
'J'
=>
50
);
$counter_obbs
=
Array
(
'N'
=>
75
,
'P'
=>
85
,
'K'
=>
85
,
'G'
=>
50
,
'C'
=>
75
,
'D'
=>
0
,
'F'
=>
95
,
'J'
=>
50
,
'B'
=>
30
);
//各种攻击方式的射程,射程大者可以反击射程小者,此外射程为0则代表不能反击任何系但也不能被任何系反击
$rangeinfo
=
Array
(
'N'
=>
3
,
'P'
=>
3
,
'K'
=>
3
,
'G'
=>
7
,
'C'
=>
5
,
'D'
=>
0
,
'F'
=>
1
,
'J'
=>
8
);
$rangeinfo
=
Array
(
'N'
=>
3
,
'P'
=>
3
,
'K'
=>
3
,
'G'
=>
7
,
'C'
=>
5
,
'D'
=>
0
,
'F'
=>
1
,
'J'
=>
8
,
'B'
=>
5
);
//各种攻击方式的基础命中率
$hitrate_obbs
=
Array
(
'N'
=>
80
,
'P'
=>
80
,
'K'
=>
75
,
'G'
=>
70
,
'C'
=>
70
,
'D'
=>
60
,
'F'
=>
85
,
'J'
=>
10
);
$hitrate_obbs
=
Array
(
'N'
=>
80
,
'P'
=>
80
,
'K'
=>
75
,
'G'
=>
70
,
'C'
=>
70
,
'D'
=>
60
,
'F'
=>
85
,
'J'
=>
10
,
'B'
=>
65
);
//$hitrate_obbs = Array('N' => 80, 'P' => 80, 'K' => 80, 'G' => 75, 'C' => 100, 'D' => 60, 'F' => 70);
//各种攻击方式的最高命中率
$hitrate_max_obbs
=
Array
(
'N'
=>
90
,
'P'
=>
90
,
'K'
=>
85
,
'G'
=>
95
,
'C'
=>
96
,
'D'
=>
70
,
'F'
=>
96
,
'J'
=>
98
);
$hitrate_max_obbs
=
Array
(
'N'
=>
90
,
'P'
=>
90
,
'K'
=>
85
,
'G'
=>
95
,
'C'
=>
96
,
'D'
=>
70
,
'F'
=>
96
,
'J'
=>
98
,
'B'
=>
90
);
//熟练度对命中的影响,每点熟练增加的命中,可以考虑区分武器
$hitrate_r
=
Array
(
'N'
=>
0.025
,
'P'
=>
0.025
,
'K'
=>
0.025
,
'G'
=>
0.05
,
'C'
=>
0.25
,
'D'
=>
0.02
,
'F'
=>
0.1
,
'J'
=>
0.2
);
$hitrate_r
=
Array
(
'N'
=>
0.025
,
'P'
=>
0.025
,
'K'
=>
0.025
,
'G'
=>
0.05
,
'C'
=>
0.25
,
'D'
=>
0.02
,
'F'
=>
0.1
,
'J'
=>
0.2
,
'B'
=>
0.15
);
//$hitrate_r = Array('N' => 0.02, 'P' => 0.02, 'K' => 0.02, 'G' => 0.01, 'C' => 0, 'D' => 0.03, 'F'=> 0.05);
//各种攻击方式的伤害变动范围,越少越稳定。
$dmg_fluc
=
Array
(
'N'
=>
15
,
'P'
=>
15
,
'K'
=>
40
,
'G'
=>
20
,
'C'
=>
5
,
'D'
=>
25
,
'F'
=>
10
,
'J'
=>
10
);
$dmg_fluc
=
Array
(
'N'
=>
15
,
'P'
=>
15
,
'K'
=>
40
,
'G'
=>
20
,
'C'
=>
5
,
'D'
=>
25
,
'F'
=>
10
,
'J'
=>
10
,
'B'
=>
10
);
//熟练度对伤害的影响,每点熟练度增加的伤害
$skill_dmg
=
Array
(
'N'
=>
0.6
,
'P'
=>
0.6
,
'K'
=>
0.65
,
'G'
=>
0.6
,
'C'
=>
0.4
,
'D'
=>
0.75
,
'F'
=>
0.4
,
'J'
=>
0.7
);
$skill_dmg
=
Array
(
'N'
=>
0.6
,
'P'
=>
0.6
,
'K'
=>
0.65
,
'G'
=>
0.6
,
'C'
=>
0.4
,
'D'
=>
0.75
,
'F'
=>
0.4
,
'J'
=>
0.7
,
'B'
=>
0.5
);
//$skill_dmg = Array('N' => 0.5, 'P' => 0.5, 'K' => 0.5, 'G' => 0.6, 'C' => 0.3, 'D' => 0.4, 'F'=> 1.2);
//各攻击方式对应的防御属性
$def_kind
=
Array
(
'P'
=>
'P'
,
'N'
=>
'P'
,
'K'
=>
'K'
,
'G'
=>
'G'
,
'J'
=>
'G'
,
'C'
=>
'C'
,
'C'
=>
'C'
,
'B'
=>
'C'
,
'D'
=>
'D'
,
'F'
=>
'F'
,
);
...
...
@@ -325,14 +325,14 @@ $pls_hide_modifier = Array(
34
=>
0
//'英灵殿'
);
//各种攻击方式可能导致受伤的部位
$infatt
=
Array
(
'N'
=>
'bhaf'
,
'P'
=>
'bhaf'
,
'K'
=>
'bhaf'
,
'G'
=>
'bhaf'
,
'C'
=>
'bhaf'
,
'D'
=>
'bhaf'
,
'F'
=>
'bhaf'
,
'J'
=>
'bhaf'
);
$infatt
=
Array
(
'N'
=>
'bhaf'
,
'P'
=>
'bhaf'
,
'K'
=>
'bhaf'
,
'G'
=>
'bhaf'
,
'C'
=>
'bhaf'
,
'D'
=>
'bhaf'
,
'F'
=>
'bhaf'
,
'J'
=>
'bhaf'
,
'B'
=>
'bhaf'
);
//各种攻击方式可能导致受伤的部位
$infatt_rev
=
Array
(
'N'
=>
Array
(
'b'
,
'h'
,
'a'
,
'f'
),
'P'
=>
Array
(
'b'
,
'h'
,
'a'
,
'f'
),
'K'
=>
Array
(
'b'
,
'h'
,
'a'
,
'f'
),
'G'
=>
Array
(
'b'
,
'h'
,
'a'
,
'f'
),
'C'
=>
Array
(
'b'
,
'h'
,
'a'
,
'f'
),
'D'
=>
Array
(
'b'
,
'h'
,
'a'
,
'f'
),
'F'
=>
Array
(
'b'
,
'h'
,
'a'
,
'f'
),
'J'
=>
Array
(
'b'
,
'h'
,
'a'
,
'f'
),);
$infatt_rev
=
Array
(
'N'
=>
Array
(
'b'
,
'h'
,
'a'
,
'f'
),
'P'
=>
Array
(
'b'
,
'h'
,
'a'
,
'f'
),
'K'
=>
Array
(
'b'
,
'h'
,
'a'
,
'f'
),
'G'
=>
Array
(
'b'
,
'h'
,
'a'
,
'f'
),
'C'
=>
Array
(
'b'
,
'h'
,
'a'
,
'f'
),
'D'
=>
Array
(
'b'
,
'h'
,
'a'
,
'f'
),
'F'
=>
Array
(
'b'
,
'h'
,
'a'
,
'f'
),
'J'
=>
Array
(
'b'
,
'h'
,
'a'
,
'f'
),
'B'
=>
Array
(
'b'
,
'h'
,
'a'
,
'f'
)
);
//各种攻击方式的致伤率
$infobbs
=
Array
(
'N'
=>
5
,
'P'
=>
15
,
'K'
=>
55
,
'G'
=>
20
,
'C'
=>
10
,
'D'
=>
45
,
'F'
=>
30
,
'J'
=>
100
);
$infobbs
=
Array
(
'N'
=>
5
,
'P'
=>
15
,
'K'
=>
55
,
'G'
=>
20
,
'C'
=>
10
,
'D'
=>
45
,
'F'
=>
30
,
'J'
=>
100
,
'B'
=>
40
);
//$infobbs = Array('N' => 5, 'P' => 15, 'K' => 30, 'G' => 30, 'C' => 15, 'D' => 40, 'F' => 30);
//各种攻击方式的武器损伤概率
$wepimprate
=
Array
(
'N'
=>
-
1
,
'P'
=>
12
,
'K'
=>
30
,
'G'
=>
-
1
,
'C'
=>
-
1
,
'D'
=>
-
1
,
'F'
=>
-
1
,
'J'
=>
-
1
);
$wepimprate
=
Array
(
'N'
=>
-
1
,
'P'
=>
12
,
'K'
=>
30
,
'G'
=>
-
1
,
'C'
=>
-
1
,
'D'
=>
-
1
,
'F'
=>
-
1
,
'J'
=>
-
1
,
'B'
=>
-
1
);
//特殊效果发生的概率,这里指属性,跟武器系别无关
$specialrate
=
Array
(
'N'
=>
40
,
'n'
=>
30
,
'y'
=>
30
,
'B'
=>
95
,
'b'
=>
95
);
//属性攻击登录
...
...
gamedata/cache/mixitem_1.php
View file @
f006ac06
...
...
@@ -237,61 +237,53 @@ $mixinfo = array
array
(
'class'
=>
'wf'
,
'stuff'
=>
array
(
'月符「Silent Serena」'
,
'月符「Silent Serena」'
,
'火水木金土符『贤者之石』'
,
'金符「Metal Fatigue」'
),
'result'
=>
array
(
'月月火水木金金符『年中无休』(笑)'
,
'WF'
,
65500
,
'∞'
,
'rd'
),),
array
(
'class'
=>
'wf'
,
'stuff'
=>
array
(
'日&月符『Royal Diamond Ring』'
,
'梦幻『幻月』'
,
'神枪『Spear The Gungnir』'
,
'紫奥义『弹幕结界』'
),
'result'
=>
array
(
'模式『EX』'
,
'WF'
,
72000
,
'∞'
,
'crdZ'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆篝火'
,
'◆篝火'
,
'◆篝火'
),
'result'
=>
array
(
'◆◆篝火'
,
'DB'
,
10
,
1
,
'a'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆埋火'
,
'◆埋火'
,
'◆埋火'
),
'result'
=>
array
(
'◆◆埋火'
,
'DH'
,
10
,
1
,
'B'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆永火'
,
'◆永火'
,
'◆永火'
),
'result'
=>
array
(
'◆◆永火'
,
'DF'
,
10
,
1
,
'M'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆残火'
,
'◆残火'
,
'◆残火'
),
'result'
=>
array
(
'◆◆残火'
,
'DA'
,
10
,
1
,
'b'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆◆篝火'
,
'◆◆篝火'
,
'◆◆篝火'
),
'result'
=>
array
(
'◆◆◆篝火'
,
'DB'
,
50
,
1
,
'a'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆◆埋火'
,
'◆◆埋火'
,
'◆◆埋火'
),
'result'
=>
array
(
'◆◆◆埋火'
,
'DH'
,
50
,
1
,
'B'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆◆永火'
,
'◆◆永火'
,
'◆◆永火'
),
'result'
=>
array
(
'◆◆◆永火'
,
'DF'
,
50
,
1
,
'M'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆◆残火'
,
'◆◆残火'
,
'◆◆残火'
),
'result'
=>
array
(
'◆◆◆残火'
,
'DA'
,
50
,
1
,
'b'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆愈合数据'
,
'◆焰火'
),
'result'
=>
array
(
'◆◆愈合数据'
,
'HB'
,
10
,
'∞'
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆◆愈合数据'
,
'◆焰火'
),
'result'
=>
array
(
'◆◆◆愈合数据'
,
'HB'
,
20
,
'∞'
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆熟练数据'
,
'◆焰火'
),
'result'
=>
array
(
'◆◆熟练数据'
,
'VV'
,
35
,
5
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆◆熟练数据'
,
'◆焰火'
),
'result'
=>
array
(
'◆◆◆熟练数据'
,
'VV'
,
70
,
1
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆生命数据'
,
'◆焰火'
),
'result'
=>
array
(
'◆◆生命数据'
,
'MH'
,
50
,
5
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆◆生命数据'
,
'◆焰火'
),
'result'
=>
array
(
'◆◆◆生命数据'
,
'MH'
,
70
,
1
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆意念数据'
,
'◆焰火'
),
'result'
=>
array
(
'◆◆意念数据'
,
'MD'
,
50
,
5
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆◆意念数据'
,
'◆焰火'
),
'result'
=>
array
(
'◆◆◆意念数据'
,
'MD'
,
70
,
1
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆焰火'
,
'◆焰火'
,
'◆焰火'
,
'◆火之碎片'
),
'result'
=>
array
(
'✦烈焰火'
,
'A'
,
50
,
50
,
'H'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆◆◆愈合数据'
,
'✦烈焰火'
),
'result'
=>
array
(
'✦愈合数据'
,
'HB'
,
50
,
'∞'
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆◆◆熟练数据'
,
'✦烈焰火'
),
'result'
=>
array
(
'✦熟练数据'
,
'VV'
,
75
,
1
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆◆◆生命数据'
,
'✦烈焰火'
),
'result'
=>
array
(
'✦生命数据'
,
'MH'
,
100
,
1
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆◆◆意念数据'
,
'✦烈焰火'
),
'result'
=>
array
(
'✦意念数据'
,
'MD'
,
100
,
1
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆愈合数据'
,
'◆焰火'
),
'result'
=>
array
(
'◆◆◆愈合数据'
,
'🎆H'
,
60
,
'∞'
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆熟练数据'
,
'◆焰火'
),
'result'
=>
array
(
'◆◆◆熟练数据'
,
'🎆V'
,
100
,
1
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆生命数据'
,
'◆焰火'
),
'result'
=>
array
(
'◆◆◆生命数据'
,
'🎆O'
,
250
,
1
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆意念数据'
,
'◆焰火'
),
'result'
=>
array
(
'◆◆◆意念数据'
,
'🎆D'
,
250
,
1
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆焰火'
,
'◆焰火'
,
'◆火之碎片'
),
'result'
=>
array
(
'✦烈焰火'
,
'A'
,
50
,
50
,
'H'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆◆◆愈合数据'
,
'✦烈焰火'
),
'result'
=>
array
(
'✦愈合数据'
,
'🎆H'
,
120
,
'∞'
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆◆◆熟练数据'
,
'✦烈焰火'
),
'result'
=>
array
(
'✦熟练数据'
,
'🎆V'
,
75
,
1
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆◆◆生命数据'
,
'✦烈焰火'
),
'result'
=>
array
(
'✦生命数据'
,
'🎆O'
,
500
,
1
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆◆◆意念数据'
,
'✦烈焰火'
),
'result'
=>
array
(
'✦意念数据'
,
'🎆D'
,
500
,
1
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆焰火'
,
'◆焰火'
,
'◆焰火'
,
'◆火之碎片'
,
'◆火之碎片'
),
'result'
=>
array
(
'★华焰火★'
,
'A'
,
200
,
100
,
'HZ'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'✦愈合数据'
,
'★华焰火★'
),
'result'
=>
array
(
'★愈合数据★'
,
'🎆H'
,
350
,
'∞'
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'✦熟练数据'
,
'★华焰火★'
),
'result'
=>
array
(
'★熟练数据★'
,
'🎆V'
,
400
,
1
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'✦生命数据'
,
'★华焰火★'
),
'result'
=>
array
(
'★生命数据★'
,
'🎆O'
,
1000
,
1
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'✦意念数据'
,
'★华焰火★'
),
'result'
=>
array
(
'★意念数据★'
,
'🎆D'
,
1000
,
1
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'★愈合数据★'
,
'☾真焰火☽'
),
'result'
=>
array
(
'☾愈合数据☽'
,
'🎆H'
,
500
,
'∞'
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'★熟练数据★'
,
'☾真焰火☽'
),
'result'
=>
array
(
'☾熟练数据☽'
,
'🎆V'
,
1000
,
1
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'★生命数据★'
,
'☾真焰火☽'
),
'result'
=>
array
(
'☾生命数据☽'
,
'🎆O'
,
2000
,
1
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'★意念数据★'
,
'☾真焰火☽'
),
'result'
=>
array
(
'☾意念数据☽'
,
'🎆D'
,
2000
,
1
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆篝火'
,
'◆篝火'
,
'◆篝火'
),
'result'
=>
array
(
'◆◆◆篝火'
,
'DB'
,
50
,
1
,
'a'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆埋火'
,
'◆埋火'
,
'◆埋火'
),
'result'
=>
array
(
'◆◆◆埋火'
,
'DH'
,
50
,
1
,
'B'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆永火'
,
'◆永火'
,
'◆永火'
),
'result'
=>
array
(
'◆◆◆永火'
,
'DF'
,
50
,
1
,
'M'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆残火'
,
'◆残火'
,
'◆残火'
),
'result'
=>
array
(
'◆◆◆残火'
,
'DA'
,
50
,
1
,
'b'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆◆◆篝火'
,
'✦烈焰火'
),
'result'
=>
array
(
'✦烈篝火'
,
'DB'
,
50
,
50
,
'a'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆◆◆埋火'
,
'✦烈焰火'
),
'result'
=>
array
(
'✦烈埋火'
,
'DH'
,
50
,
50
,
'B'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆◆◆永火'
,
'✦烈焰火'
),
'result'
=>
array
(
'✦烈永火'
,
'DF'
,
50
,
50
,
'M'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'◆◆◆残火'
,
'✦烈焰火'
),
'result'
=>
array
(
'✦烈残火'
,
'DA'
,
50
,
50
,
'b'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'✦烈篝火'
,
'✦烈篝火'
,
'✦烈篝火'
),
'result'
=>
array
(
'✦✦
烈篝火'
,
'DB'
,
1
00
,
50
,
'a'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'✦烈埋火'
,
'✦烈埋火'
,
'✦烈埋火'
),
'result'
=>
array
(
'✦✦
烈埋火'
,
'DH'
,
1
00
,
50
,
'B'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'✦烈永火'
,
'✦烈永火'
,
'✦烈永火'
),
'result'
=>
array
(
'✦✦
烈永火'
,
'DF'
,
1
00
,
50
,
'M'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'✦烈残火'
,
'✦烈残火'
,
'✦烈残火'
),
'result'
=>
array
(
'✦✦
烈残火'
,
'DA'
,
1
00
,
50
,
'b'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'✦烈篝火'
,
'✦烈篝火'
,
'✦烈篝火'
),
'result'
=>
array
(
'✦✦
✦烈篝火'
,
'DB'
,
2
00
,
50
,
'a'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'✦烈埋火'
,
'✦烈埋火'
,
'✦烈埋火'
),
'result'
=>
array
(
'✦✦
✦烈埋火'
,
'DH'
,
2
00
,
50
,
'B'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'✦烈永火'
,
'✦烈永火'
,
'✦烈永火'
),
'result'
=>
array
(
'✦✦
✦烈永火'
,
'DF'
,
2
00
,
50
,
'M'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'✦烈残火'
,
'✦烈残火'
,
'✦烈残火'
),
'result'
=>
array
(
'✦✦
✦烈残火'
,
'DA'
,
2
00
,
50
,
'b'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'✦✦烈篝火'
,
'✦✦烈篝火'
,
'✦✦烈篝火'
),
'result'
=>
array
(
'✦✦✦烈篝火'
,
'DB'
,
200
,
50
,
'a'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'✦✦烈埋火'
,
'✦✦烈埋火'
,
'✦✦烈埋火'
),
'result'
=>
array
(
'✦✦✦烈埋火'
,
'DH'
,
200
,
50
,
'B'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'✦✦烈永火'
,
'✦✦烈永火'
,
'✦✦烈永火'
),
'result'
=>
array
(
'✦✦✦烈永火'
,
'DF'
,
200
,
50
,
'M'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'✦✦烈残火'
,
'✦✦烈残火'
,
'✦✦烈残火'
),
'result'
=>
array
(
'✦✦✦烈残火'
,
'DA'
,
200
,
50
,
'b'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'✦烈焰火'
,
'✦烈焰火'
,
'◆火之碎片'
),
'result'
=>
array
(
'★华焰火★'
,
'A'
,
200
,
100
,
'HZ'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'✦愈合数据'
,
'★华焰火★'
),
'result'
=>
array
(
'★愈合数据★'
,
'HB'
,
100
,
'∞'
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'✦熟练数据'
,
'★华焰火★'
),
'result'
=>
array
(
'★熟练数据★'
,
'VV'
,
200
,
1
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'✦生命数据'
,
'★华焰火★'
),
'result'
=>
array
(
'★生命数据★'
,
'MH'
,
200
,
1
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'✦意念数据'
,
'★华焰火★'
),
'result'
=>
array
(
'★意念数据★'
,
'MD'
,
200
,
1
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'✦✦✦烈篝火'
,
'★华焰火★'
),
'result'
=>
array
(
'★华篝火★'
,
'DB'
,
200
,
100
,
'aZ'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'✦✦✦烈埋火'
,
'★华焰火★'
),
'result'
=>
array
(
'★华埋火★'
,
'DH'
,
200
,
100
,
'BZ'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'✦✦✦烈永火'
,
'★华焰火★'
),
'result'
=>
array
(
'★华永火★'
,
'DF'
,
200
,
100
,
'MZ'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'✦✦✦烈残火'
,
'★华焰火★'
),
'result'
=>
array
(
'★华残火★'
,
'DA'
,
200
,
100
,
'bZ'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'★华焰火★'
,
'◆火之碎片'
),
'result'
=>
array
(
'☾真焰火☽'
,
'A'
,
500
,
500
,
'HZ'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'★愈合数据★'
,
'☾真焰火☽'
),
'result'
=>
array
(
'☾愈合数据☽'
,
'HB'
,
300
,
'∞'
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'★熟练数据★'
,
'☾真焰火☽'
),
'result'
=>
array
(
'☾熟练数据☽'
,
'VV'
,
700
,
1
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'★生命数据★'
,
'☾真焰火☽'
),
'result'
=>
array
(
'☾生命数据☽'
,
'MH'
,
700
,
1
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'★意念数据★'
,
'☾真焰火☽'
),
'result'
=>
array
(
'☾意念数据☽'
,
'MD'
,
700
,
1
,),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'★华篝火★'
,
'☾真焰火☽'
),
'result'
=>
array
(
'☾真篝火☽'
,
'DB'
,
500
,
500
,
'aZ'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'★华埋火★'
,
'☾真焰火☽'
),
'result'
=>
array
(
'☾真埋火☽'
,
'DH'
,
500
,
500
,
'BZ'
),),
array
(
'class'
=>
'fseed'
,
'stuff'
=>
array
(
'★华永火★'
,
'☾真焰火☽'
),
'result'
=>
array
(
'☾真永火☽'
,
'DF'
,
500
,
500
,
'MZ'
),),
...
...
gamedata/cache/npc_1.php
View file @
f006ac06
...
...
@@ -2137,7 +2137,7 @@
'wepe'
=>
1
,
'weps'
=>
50
,
'itm5'
=>
'◆愈合数据'
,
'itmk5'
=>
'
HB
'
,
'itmk5'
=>
'
🎆H
'
,
'itme5'
=>
5
,
'itms5'
=>
'∞'
,
),
...
...
@@ -2152,7 +2152,7 @@
'wepe'
=>
1
,
'weps'
=>
50
,
'itm5'
=>
'◆熟练数据'
,
'itmk5'
=>
'
V
V'
,
'itmk5'
=>
'
🎆
V'
,
'itme5'
=>
1
,
'itms5'
=>
5
,
),
...
...
@@ -2167,7 +2167,7 @@
'wepe'
=>
1
,
'weps'
=>
50
,
'itm5'
=>
'◆生命数据'
,
'itmk5'
=>
'
MH
'
,
'itmk5'
=>
'
🎆O
'
,
'itme5'
=>
1
,
'itms5'
=>
10
,
),
...
...
@@ -2182,7 +2182,7 @@
'wepe'
=>
1
,
'weps'
=>
50
,
'itm5'
=>
'◆意念数据'
,
'itmk5'
=>
'
M
D'
,
'itmk5'
=>
'
🎆
D'
,
'itme5'
=>
1
,
'itms5'
=>
10
,
),
...
...
gamedata/cache/resources_1.php
View file @
f006ac06
...
...
@@ -296,8 +296,8 @@ $lwinfo = Array(
92
=>
'成为……焰火……'
,
);
$infinfo
=
Array
(
'b'
=>
'<span class="red">胸</span>'
,
'h'
=>
'<span class="red">头</span>'
,
'a'
=>
'<span class="red">腕</span>'
,
'f'
=>
'<span class="red">足</span>'
,
'p'
=>
'<span class="purple">毒</span>'
,
'u'
=>
'<span class="red">烧</span>'
,
'i'
=>
'<span class="clan">冻</span>'
,
'e'
=>
'<span class="yellow">麻</span>'
,
'w'
=>
'<span class="grey">乱</span>'
);
$attinfo
=
Array
(
'N'
=>
'徒手殴打'
,
'P'
=>
'殴打'
,
'K'
=>
'斩刺'
,
'G'
=>
'射击'
,
'C'
=>
'投掷'
,
'D'
=>
'设置引信伏击'
,
'F'
=>
'释放灵力攻击'
,
'J'
=>
'狙击'
);
$skillinfo
=
Array
(
'N'
=>
'wp'
,
'P'
=>
'wp'
,
'K'
=>
'wk'
,
'G'
=>
'wg'
,
'C'
=>
'wc'
,
'D'
=>
'wd'
,
'F'
=>
'wf'
,
'J'
=>
'wg'
);
$attinfo
=
Array
(
'N'
=>
'徒手殴打'
,
'P'
=>
'殴打'
,
'K'
=>
'斩刺'
,
'G'
=>
'射击'
,
'C'
=>
'投掷'
,
'D'
=>
'设置引信伏击'
,
'F'
=>
'释放灵力攻击'
,
'J'
=>
'狙击'
,
'B'
=>
'投射'
);
$skillinfo
=
Array
(
'N'
=>
'wp'
,
'P'
=>
'wp'
,
'K'
=>
'wk'
,
'G'
=>
'wg'
,
'C'
=>
'wc'
,
'D'
=>
'wd'
,
'F'
=>
'wf'
,
'J'
=>
'wg'
,
'B'
=>
'wc'
);
//$rangeinfo = Array('N' => 'S', 'P' => 'S', 'K' => 'S', 'G' => 'M', 'C' => 'M', 'D' => 'L', 'F'=> 'M'); #各种攻击方式的射程,移动到combatcfg.php
$restinfo
=
Array
(
'通常'
,
'睡眠'
,
'治疗'
,
'静养'
);
$noiseinfo
=
Array
(
...
...
@@ -1006,6 +1006,7 @@ $iteminfo = Array(//注意顺序,AB必须在A的前面,以此类推
'HB'
=>
'命体恢复'
,
'HM'
=>
'歌魂增加'
,
'HT'
=>
'歌魂恢复'
,
'GA'
=>
'箭矢'
,
'GBr'
=>
'机枪弹药'
,
'GBi'
=>
'气体弹药'
,
'GBh'
=>
'重型弹药'
,
...
...
@@ -1046,6 +1047,7 @@ $iteminfo = Array(//注意顺序,AB必须在A的前面,以此类推
'WC'
=>
'投掷兵器'
,
#CAST
'WD'
=>
'爆炸物'
,
#DETONATE
'WF'
=>
'灵力兵器'
,
#FLOWERING
'WB'
=>
'弓'
,
#BOW
'WQ'
=>
'????'
,
'XA'
=>
'代码残片·绿'
,
'XB'
=>
'代码残片·紫'
,
...
...
@@ -1058,6 +1060,12 @@ $iteminfo = Array(//注意顺序,AB必须在A的前面,以此类推
'ZB'
=>
'称号卡'
,
'Z'
=>
'特殊'
,
#不可合并
'🥚'
=>
'代码片段'
,
'🎆H'
=>
'余烬'
,
#愈合数据
'🎆V'
=>
'余烬'
,
#熟练数据
'🎆O'
=>
'余烬'
,
#生命数据
'🎆D'
=>
'余烬'
,
#意念数据
'P🎆'
=>
'余烬'
,
#霍霍完歌魂是不是还要霍霍种火数据(悲
'🎆'
=>
'余烬'
,
# Catch-All
);
$itemspkinfo
=
Array
(
...
...
@@ -1114,6 +1122,7 @@ $itemspkinfo = Array(
'^'
=>
'背包'
,
'🧰'
=>
'工具'
,
'🍎'
=>
'水果'
,
'|'
=>
'<:DUMMY:>'
,
//箭矢用的分隔符
);
//club20 元素大师:
...
...
gamedata/cache/tooltip_1.php
View file @
f006ac06
...
...
@@ -166,6 +166,12 @@ $tps_ik = Array
'ZB'
=>
Array
(
'class'
=>
'lime'
,
'title'
=>
"在没有决定称号的时候使用该物品,便可获得该对应称号。"
,),
'ZA'
=>
Array
(
'class'
=>
'neonyellow'
,
'title'
=>
"这个物品中似乎含有让你可以独自脱离幻境的方法……"
,),
'🥚'
=>
Array
(
'class'
=>
'purple'
,
'title'
=>
"通过提取物品产生的蛋状物品,看起来可以插回其他物品为之强化。"
,),
'🎆'
=>
Array
(
'class'
=>
'lime'
,
'title'
=>
"神秘存在身上掉落的碎片,似乎和你很匹配。"
,),
'🎆H'
=>
Array
(
'class'
=>
'lime'
,
'title'
=>
"神秘存在身上掉落的碎片,似乎和你很匹配。"
,),
'🎆V'
=>
Array
(
'class'
=>
'lime'
,
'title'
=>
"神秘存在身上掉落的碎片,似乎和你很匹配。"
,),
'🎆O'
=>
Array
(
'class'
=>
'lime'
,
'title'
=>
"神秘存在身上掉落的碎片,似乎和你很匹配。"
,),
'🎆D'
=>
Array
(
'class'
=>
'lime'
,
'title'
=>
"神秘存在身上掉落的碎片,似乎和你很匹配。"
,),
'P🎆'
=>
Array
(
'class'
=>
'lime'
,
'title'
=>
"神秘存在身上掉落的碎片,似乎和你狠匹配。"
,),
);
$tps_isk
=
Array
...
...
gamedata/sql/reset.sql
View file @
f006ac06
...
...
@@ -75,7 +75,7 @@ CREATE TABLE bra_maptrap (
DROP
TABLE
IF
EXISTS
bra_newsinfo
;
CREATE
TABLE
bra_newsinfo
(
nid
small
int
unsigned
NOT
NULL
auto_increment
,
nid
medium
int
unsigned
NOT
NULL
auto_increment
,
`time`
int
(
10
)
unsigned
NOT
NULL
default
'0'
,
`news`
char
(
30
)
NOT
NULL
default
''
,
`a`
varchar
(
255
)
NOT
NULL
default
''
,
...
...
@@ -94,7 +94,7 @@ CREATE TABLE bra_newsinfo (
DROP
TABLE
IF
EXISTS
bra_gambling
;
CREATE
TABLE
bra_gambling
(
gid
small
int
unsigned
NOT
NULL
auto_increment
,
gid
medium
int
unsigned
NOT
NULL
auto_increment
,
uid
mediumint
(
8
)
unsigned
NOT
NULL
default
'0'
,
uname
char
(
15
)
NOT
NULL
default
''
,
bid
smallint
unsigned
NOT
NULL
default
'0'
,
...
...
include/game/item.func.php
View file @
f006ac06
...
...
@@ -434,6 +434,20 @@ function itemuse($itmn,&$data=NULL) {
$itm
=
$itmk
=
$itmsk
=
''
;
$itme
=
$itms
=
0
;
}
}
elseif
(
strpos
(
$itmk
,
'GA'
)
===
0
)
{
//使用箭矢
if
(
strpos
(
$wepk
,
'WB'
)
!==
0
)
{
$log
.=
"<span class=
\"
red b
\"
>你没有装备弓,不能给武器上箭。</span><br>"
;
$mode
=
'command'
;
return
;
}
elseif
(
0
===
$itmn
&&
!
empty
(
$weps
))
{
//捡到的箭矢不能马上拉弓,避免换箭覆盖itm0的问题
$log
.=
"你一只手捏着弓箭,一只手抓着刚捡到的箭矢,没法马上弯弓搭箭。<span class=
\"
red b
\"
>还是先把箭矢收进包裹里吧。</span><br>"
;
$mode
=
'command'
;
return
;
}
else
{
//$theitem = Array('itm' => &$itm, 'itmk' => &$itmk, 'itme' => &$itme, 'itms' => &$itms, 'itmsk' => &$itmsk);
include_once
GAME_ROOT
.
'./include/game/item2.func.php'
;
itemuse_ugb
(
$pdata
,
$itmn
);
}
}
elseif
(
strpos
(
$itmk
,
'R'
)
===
0
)
{
//$log.= $itm .'已经废弃,请联系管理员。';
if
(
$itme
>
0
)
{
...
...
@@ -1039,6 +1053,308 @@ function itemuse($itmn,&$data=NULL) {
}
else
{
$log
.=
"你使用了<span class=
\"
yellow
\"
>
{
$itm
}
</span>,但是没有发现陷阱。<br>"
;
}
}
elseif
(
strpos
(
$itmk
,
'🎆'
)
===
0
)
{
//В ΜΑЛΨ, В ЩΑЁΨ, В ЦΨΨ ОΑЙЙ, В ТИХ ЩДТЖИΜД.
//ХЖ ДЖХЖТ, ЖХΨ ЦЩТΑВΜДЩ ТЖΑΡ, ΜΨЩ. ЩДВХΜЦ. ΡЖХΨ.
//Thanks Chantal for crunching those numbers - I'll make sure I find you something else to crunch on some other time...
# This method concerns 4 of them, and one additional check:
//$hp up, $w[X] up, $mhp up, $def up
# Then, decide on the Rank of the Fireseed Item, this will decide its maximum value:
$rank
=
0
;
# Those items will always start with either ◆,✦,★,☾, and ☼
if
(
strpos
(
$itm
,
'◆'
)
===
0
){
$rank
=
1
;
}
elseif
(
strpos
(
$itm
,
'✦'
)
===
0
){
$rank
=
2
;
}
elseif
(
strpos
(
$itm
,
'★'
)
===
0
){
$rank
=
3
;
}
elseif
(
strpos
(
$itm
,
'☾'
)
===
0
){
$rank
=
4
;
}
elseif
(
strpos
(
$itm
,
'☼'
)
===
0
){
$rank
=
5
;
}
else
{
$rank
=
0
;
}
# Special check for a invalid item (Rank = 0), Just turn it into healing.
if
(
$rank
==
0
){
$log
.=
"你将<span class=
\"
yellow
\"
>
{
$itm
}
</span>吞下了肚,你感觉焕然一新!<br>"
;
$hp
=
$mhp
;
$sp
=
$msp
;
}
# Logic for each of the 4 usages.
elseif
(
$itmk
==
'🎆H'
){
# This is healing item, it can heal beyond your $mhp based on its rank.
if
(
$rank
==
1
){
$gainmax
=
round
(
$mhp
*
0.51
);
}
elseif
(
$rank
==
2
){
$gainmax
=
round
(
$mhp
*
1.08
);
}
elseif
(
$rank
==
3
){
$gainmax
=
round
(
$mhp
*
2.33
);
}
elseif
(
$rank
==
4
){
$gainmax
=
round
(
$mhp
*
5.73
);
}
else
{
$gainmax
=
'∞'
;
}
// Tracking how much HP one can overheal based on its rank.
$clbpara
[
'fireseedMaxHPRecover'
]
=
$gainmax
;
if
(
$gainmax
!==
'∞'
){
// Gain HP and SP - note we don't overheal SP here.
$addsp
=
$msp
-
$sp
<
$itme
?
$msp
-
$sp
:
$itme
;
if
(
$addsp
>
0
)
$sp
+=
$addsp
;
else
$addsp
=
0
;
// Calculating overheal HP value.
$addhp
=
(
$mhp
+
$gainmax
)
-
$hp
<
$itme
?
(
$mhp
+
$gainmax
)
-
$hp
:
$itme
;
if
(
$addhp
>
0
)
$hp
+=
$addhp
;
else
$addhp
=
0
;
if
(
$addhp
<=
0
){
$log
.=
"你将<span class=
\"
yellow
\"
>
{
$itm
}
</span>吞下了肚。<br>
但是似乎并没有回复生命!<br>
<br>
<span class=
\"
blueseed
\"
>同时,你还隐约听见了一个声音:<br>
「你可能需要找个纯度更高的代码片段哟~」<br></span>"
;
$falsify
=
true
;
}
else
{
$gainless
=
(
$mhp
+
$gainmax
)
-
$hp
;
$log
.=
"你将<span class=
\"
yellow
\"
>
{
$itm
}
</span>吞下了肚。<br>
治愈的代码片段为你恢复了<span class=
\"
yellow
\"
>
$addhp
</span>点生命和<span class=
\"
yellow
\"
>
$addsp
</span>点体力。<br>
<br>
<br>
<span class=
\"
blueseed
\"
>同时,你还隐约听见了一个声音:<br>
「你还能获得
{
$gainless
}
点临时生命哟~<br>
但临时生命就是临时的,随时都有可能消失哟~」<br></span>"
;
if
(
$gainless
<
$itme
){
$log
.=
"<br><span class=
\"
redseed
\"
>这时,有另一把声音插了进来:<br>
「看起来这个纯度的代码片段已经喂不饱你了。<br>
赶快找下一个纯度的代码片段吧!」<br></span>"
;
}
}
}
else
{
$addsp
=
$msp
-
$sp
<
$itme
?
$msp
-
$sp
:
$itme
;
if
(
$addsp
>
0
)
$sp
+=
$addsp
;
else
$addsp
=
0
;
$addhp
=
$itme
;
$hp
+=
$addhp
;
$log
.=
"你将<span class=
\"
yellow
\"
>
{
$itm
}
</span>吞下了肚。<br>
治愈的代码片段为你恢复了<span class=
\"
yellow
\"
>
$addhp
</span>点生命和<span class=
\"
yellow
\"
>
$addsp
</span>点体力。<br>"
;
}
}
elseif
(
$itmk
==
'🎆V'
){
# This is $w[X] up, it simply add to all $w[X] values.
if
(
$rank
==
1
){
$gainmax
=
201
;
}
elseif
(
$rank
==
2
){
$gainmax
=
502
;
}
elseif
(
$rank
==
3
){
$gainmax
=
2003
;
}
elseif
(
$rank
==
4
){
$gainmax
=
8011
;
}
else
{
$gainmax
=
'∞'
;
}
// Tracking how much w value one can gain based on its rank.
$clbpara
[
'fireseedmaxProfGain'
]
=
$gainmax
;
if
(
$gainmax
!==
'∞'
){
// Gain w value
$addw
=
$itme
;
$clbpara
[
'fireseedmaxProfAdd'
]
+=
$addw
;
if
(
$clbpara
[
'fireseedmaxProfGain'
]
-
$clbpara
[
'fireseedmaxProfAdd'
]
>
0
)
{
$wp
+=
$addw
;
$wk
+=
$addw
;
$wg
+=
$addw
;
$wc
+=
$addw
;
$wd
+=
$addw
;
$wf
+=
$addw
;}
else
$addw
=
0
;
if
(
$addw
<=
0
){
$log
.=
"你将<span class=
\"
yellow
\"
>
{
$itm
}
</span>吞下了肚。<br>
但是似乎什么都没有发生!<br>
<br>
<br>
<span class=
\"
blueseed
\"
>同时,你还隐约听见了一个声音:<br>
「你可能需要找个纯度更高的代码片段哟~」<br></span>"
;
$falsify
=
true
;
}
else
{
$gainless
=
$clbpara
[
'fireseedmaxProfGain'
]
-
$clbpara
[
'fireseedmaxProfAdd'
];
$log
.=
"你将<span class=
\"
yellow
\"
>
{
$itm
}
</span>吞下了肚。<br>
载有熟练度的代码片段让你获得了<span class=
\"
yellow
\"
>
$addw
</span>点全系熟练度!<br>
<br>
<br>
<span class=
\"
blueseed
\"
>同时,你还隐约听见了一个声音:<br>
「你还能通过这个纯度的代码获得
{
$gainless
}
点熟练度哟~」<br></span>"
;
if
(
$gainless
<
$itme
){
$log
.=
"<br><span class=
\"
redseed
\"
>这时,有另一把声音插了进来:<br>
「看起来这个纯度的代码片段已经喂不饱你了。<br>
赶快找下一个纯度的代码片段吧!」<br></span>"
;
}
}
}
else
{
$addw
=
$itme
;
$wp
+=
$addw
;
$wk
+=
$addw
;
$wg
+=
$addw
;
$wc
+=
$addw
;
$wd
+=
$addw
;
$wf
+=
$addw
;
$log
.=
"你将<span class=
\"
yellow
\"
>
{
$itm
}
</span>吞下了肚。<br>
载有熟练度的代码片段让你获得了<span class=
\"
yellow
\"
>
$addw
</span>点全系熟练度!<br>"
;
}
}
elseif
(
$itmk
==
'🎆O'
){
# This is $mhp up item, it simply add to that value.
if
(
$rank
==
1
){
$gainmax
=
1001
;
}
elseif
(
$rank
==
2
){
$gainmax
=
3002
;
}
elseif
(
$rank
==
3
){
$gainmax
=
5003
;
}
elseif
(
$rank
==
4
){
$gainmax
=
8008
;
}
else
{
$gainmax
=
'∞'
;
}
// Tracking how much $mhp value one can gain based on its rank.
$clbpara
[
'fireseedmaxHPGain'
]
=
$gainmax
;
if
(
$gainmax
!==
'∞'
){
// Gain $mhp value
$addmhp
=
$itme
;
$clbpara
[
'fireseedmaxHPAdd'
]
+=
$addmhp
;
if
(
$clbpara
[
'fireseedmaxHPGain'
]
-
$clbpara
[
'fireseedmaxHPAdd'
]
>
0
)
$mhp
+=
$addmhp
;
else
$addmhp
=
0
;
if
(
$addmhp
<=
0
){
$log
.=
"你将<span class=
\"
yellow
\"
>
{
$itm
}
</span>吞下了肚。<br>
但是似乎什么都没有发生!<br>
<br>
<br>
<span class=
\"
blueseed
\"
>同时,你还隐约听见了一个声音:<br>
「你可能需要找个纯度更高的代码片段哟~」<br></span>"
;
$falsify
=
true
;
}
else
{
$gainless
=
$clbpara
[
'fireseedmaxHPGain'
]
-
$clbpara
[
'fireseedmaxHPAdd'
];
$log
.=
"你将<span class=
\"
yellow
\"
>
{
$itm
}
</span>吞下了肚。<br>
载有生命的代码片段让你获得了<span class=
\"
yellow
\"
>
$addmhp
</span>点生命最大值!<br>
<br>
<br>
<span class=
\"
blueseed
\"
>同时,你还隐约听见了一个声音:<br>
「你还能通过这个纯度的代码获得
{
$gainless
}
点生命最大值哟~」<br></span>"
;
if
(
$gainless
<
$itme
){
$log
.=
"<br><span class=
\"
redseed
\"
>这时,有另一把声音插了进来:<br>
「看起来这个纯度的代码片段已经喂不饱你了。<br>
赶快找下一个纯度的代码片段吧!」<br></span>"
;
}
}
}
else
{
$addw
=
$itme
;
$mhp
+=
$addmhp
;
$log
.=
"你将<span class=
\"
yellow
\"
>
{
$itm
}
</span>吞下了肚。<br>
载有生命的代码片段让你获得了<span class=
\"
yellow
\"
>
$addmhp
</span>点生命最大值!<br>"
;
}
}
elseif
(
$itmk
==
'🎆D'
){
# This is $def up item, it simply add to that value.
if
(
$rank
==
1
){
$gainmax
=
1001
;
}
elseif
(
$rank
==
2
){
$gainmax
=
3002
;
}
elseif
(
$rank
==
3
){
$gainmax
=
5003
;
}
elseif
(
$rank
==
4
){
$gainmax
=
8008
;
}
else
{
$gainmax
=
'∞'
;
}
// Tracking how much $def value one can gain based on its rank.
$clbpara
[
'fireseedmaxDefGain'
]
=
$gainmax
;
if
(
$gainmax
!==
'∞'
){
// Gain $def value
$adddef
=
$itme
;
$clbpara
[
'fireseedmaxDefAdd'
]
+=
$adddef
;
if
(
$clbpara
[
'fireseedmaxDefGain'
]
-
$clbpara
[
'fireseedmaxDefAdd'
]
>
0
)
$def
+=
$adddef
;
else
$adddef
=
0
;
if
(
$adddef
<=
0
){
$log
.=
"你将<span class=
\"
yellow
\"
>
{
$itm
}
</span>吞下了肚。<br>
但是似乎什么都没有发生!<br>
<br>
<br>
<span class=
\"
blueseed
\"
>同时,你还隐约听见了一个声音:<br>
「你可能需要找个纯度更高的代码片段哟~」<br></span>"
;
$falsify
=
true
;
}
else
{
$gainless
=
$clbpara
[
'fireseedmaxDefGain'
]
-
$clbpara
[
'fireseedmaxDefAdd'
];
$log
.=
"你将<span class=
\"
yellow
\"
>
{
$itm
}
</span>吞下了肚。<br>
载有防御数据的代码片段让你获得了<span class=
\"
yellow
\"
>
$adddef
</span>点基础防御力!<br>
<br>
<br>
<span class=
\"
blueseed
\"
>同时,你还隐约听见了一个声音:<br>
「你还能通过这个纯度的代码获得
{
$gainless
}
点基础防御力哟~」<br></span>"
;
if
(
$gainless
<
$itme
){
$log
.=
"<br><span class=
\"
redseed
\"
>这时,有另一把声音插了进来:<br>
「看起来这个纯度的代码片段已经喂不饱你了。<br>
赶快找下一个纯度的代码片段吧!」<br></span>"
;
}
}
}
else
{
$adddef
=
$itme
;
$def
+=
$adddef
;
$log
.=
"你将<span class=
\"
yellow
\"
>
{
$itm
}
</span>吞下了肚。<br>
载有防御数据的代码片段让你获得了<span class=
\"
yellow
\"
>
$adddef
</span>点基础防御力!<br>"
;
}
}
else
{
$log
.=
"这段代码……要如何使用呢?<br>"
;
$falsify
=
true
;
}
//Process item decrease.
if
(
$itms
!=
$nosta
)
{
$itms
--
;
if
(
$itms
<=
0
)
{
$log
.=
"<span class=
\"
red
\"
>
$itm
</span>用光了。<br>"
;
$itm
=
$itmk
=
$itmsk
=
''
;
$itme
=
$itms
=
0
;
}
}
# Special check for a poisoned fireseed item, WIP for now.
}
elseif
(
$itmk
==
'P🎆'
){
$log
.=
"这个<span class=
\"
yellow
\"
>
{
$itm
}
</span>有毒!到底是谁干的!<br>"
;
# For Maximum Funniness, we destroy this item.
$log
.=
"<span class=
\"
red
\"
>
$itm
</span>用光了。<br>"
;
$itm
=
$itmk
=
$itmsk
=
''
;
$itme
=
$itms
=
0
;
}
elseif
(
strpos
(
$itmk
,
'Y'
)
===
0
||
strpos
(
$itmk
,
'Z'
)
===
0
)
{
if
(
$itm
==
'电池'
)
{
//功能需要修改,改为选择道具使用YE类型道具可充电
...
...
@@ -1056,7 +1372,7 @@ function itemuse($itmn,&$data=NULL) {
if
(
!
$flag
)
{
$log
.=
'你没有需要充电的物品。<br>'
;
}
}
elseif
(
$itm
==
'群青多面体'
)
{
}
elseif
(
$itm
==
'群青多面体'
)
{
//global $plsinfo,$nosta,$db,$tablepre;
$result
=
$db
->
query
(
"SELECT pid,name,pls FROM
{
$tablepre
}
players WHERE type = 14 && hp > 0"
);
$ndata
=
array
();
...
...
include/game/item2.func.php
View file @
f006ac06
...
...
@@ -520,21 +520,39 @@ function qianghua($itmn = 0) {
$zitmlv
=
$zitmlv
[
1
];
//$dengji = substr(${'itm'.$itmn},strpos(${'itm'.$itmn},"[+")+2,strlen(${'itm'.$itmn}) - strpos(${'itm'.$itmn},"]")+1);//北京你自己看着办
//$dengji = str_replace(']','',$dengji);
if
(
$zitmlv
>=
3
&&
$baoshi
!=
'『灵魂宝石』'
){
$log
.=
'你所选的宝石只能强化装备到[+
3
]哦!DA☆ZE<br>'
;
if
(
$zitmlv
>=
4
&&
$baoshi
!=
'『灵魂宝石』'
){
$log
.=
'你所选的宝石只能强化装备到[+
4
]哦!DA☆ZE<br>'
;
$mode
=
'command'
;
return
;
}
else
{
if
(
$zitmlv
>=
4
){
$gailv
=
rand
(
1
,
$zitmlv
-
2
);
}
elseif
(
$zitmlv
>=
6
){
$gailv
=
rand
(
1
,
$zitmlv
-
1
);
}
elseif
(
$zitmlv
>=
10
){
$gailv
=
rand
(
1
,
$zitmlv
);
if
(
$zitmlv
==
3
&&
$baoshi
==
'『祝福宝石』'
){
if
(
$baoshis
<
2
)
{
$log
.=
'你需要至少2颗祝福宝石才能强化装备到[+4]哦!DA☆ZE<br>'
;
$mode
=
'command'
;
return
;
}
elseif
(
$baoshis
==
2
)
//两颗成功率1/3
{
$baoshis
--
;
$dice
=
rand
(
1
,
30
);
}
else
//3颗必定成功
{
$baoshis
-=
2
;
$dice
=
1
;
}
}
elseif
(
$zitmlv
>=
4
){
$dice
=
rand
(
1
,
10
*
(
$zitmlv
-
2
));
//+5概率10/20,+6概率10/30,+7概率10/40,+8概率10/50与原来相同
// $gailv = rand(1,$zitmlv-2);//原代码因为错误的缘故只能执行这里,概率是1/(当前lv-2),也即冲+5就是1/2,冲+6就是1/3以此类推
// }elseif ($zitmlv >= 6){
// $gailv = rand(1,$zitmlv-1);
// }elseif ($zitmlv >= 10){
// $gailv = rand(1,$zitmlv);
}
else
{
$
gailv
=
1
;
$
dice
=
1
;
}
if
(
$
gailv
==
1
){
if
(
$
dice
<=
10
){
$flag
=
true
;
}
else
{
$flag
=
false
;}
}
...
...
@@ -862,4 +880,55 @@ function item_slip($snm,&$data)
'U'
=>
'“纸条啥的……”<br>“希望这张纸条不会成为你的遗书。”<br>“总之祝你好运。”<br>'
,
);
}
//使用箭矢的功能拆在这里
function
itemuse_ugb
(
&
$pdata
,
$itmn
){
global
$log
,
$mode
,
$nosta
;
$wep
=&
$pdata
[
'wep'
];
$wepk
=&
$pdata
[
'wepk'
];
$wepe
=&
$pdata
[
'wepe'
];
$weps
=&
$pdata
[
'weps'
];
$wepsk
=&
$pdata
[
'wepsk'
];
$itm
=&
$pdata
[
'itm'
.
$itmn
];
$itmk
=&
$pdata
[
'itmk'
.
$itmn
];
$itme
=&
$pdata
[
'itme'
.
$itmn
];
$itms
=&
$pdata
[
'itms'
.
$itmn
];
$itmsk
=&
$pdata
[
'itmsk'
.
$itmn
];
//清除箭矢名
$swapn
=
wep_b_clean_arrow_name
(
$wepk
);
//清除武器上的箭属性
$swapsk
=
wep_b_clean_arrow_sk
(
$wepsk
);
//判定卸下来的箭矢数目,然后把武器改成无穷耐
$swapnum
=
0
;
if
(
$weps
!==
$nosta
)
{
$swapnum
=
$weps
;
$weps
=
$nosta
;
}
$wepsk_arr
=
get_itmsk_array
(
$wepsk
);
$itmsk_arr
=
get_itmsk_array
(
$itmsk
);
//如果是箭矢或者弓有连射属性,那么箭矢上限就是连射次数上限
//判定连射次数按理也应该拆一个函数出来
$arrowmax
=
(
in_array
(
'r'
,
$itmsk_arr
)
||
in_array
(
'r'
,
$wepsk_arr
))
?
2
+
min
(
floor
(
$
{
$skillinfo
[
'B'
]}
/
200
),
4
)
:
1
;
$arrownum
=
min
(
$arrowmax
,
$itms
);
//再修改一次武器的耐久值。其实如果弄一个卸箭的功能,卸箭和上箭应该要拆成两个函数
$weps
=
$arrownum
;
$itms
-=
$arrownum
;
//记录箭矢名
$wepk
.=
'|'
.
$itm
;
//为武器增加箭属性
if
(
!
empty
(
$itmsk_arr
)){
$wepsk
.=
'|'
.
implode
(
''
,
$itmsk_arr
)
.
'|'
;
}
if
(
!
$swapnum
)
$log
.=
"为<span class=
\"
red b
\"
>
$wep
</span>选用了<span class=
\"
red b
\"
>
$itm
</span>,<span class=
\"
red b
\"
>
$wep
</span>发射次数增加了<span class=
\"
yellow b
\"
>
$arrownum
</span>。<br>"
;
else
$log
.=
"为<span class=
\"
red b
\"
>
$wep
</span>换上了<span class=
\"
red b
\"
>
$itm
</span>,<span class=
\"
red b
\"
>
$wep
</span>发射次数增加了<span class=
\"
yellow b
\"
>
$arrownum
</span>。<br>"
;
if
(
$itms
<=
0
)
{
$log
.=
"<span class=
\"
red b
\"
>
$itm
</span>用光了。<br>"
;
$itm
=
$itmk
=
$itmsk
=
''
;
$itme
=
$itms
=
0
;
}
if
(
$swapnum
){
$pdata
[
'itm0'
]
=
$swapn
?
$swapn
:
'卸下的箭'
;
$pdata
[
'itmk0'
]
=
'GA'
;
$pdata
[
'itme0'
]
=
1
;
$pdata
[
'itms0'
]
=
$swapnum
;
$pdata
[
'itmsk0'
]
=
$swapsk
;
itemget
();
}
}
?>
\ No newline at end of file
include/game/itemmain.func.php
View file @
f006ac06
...
...
@@ -408,7 +408,6 @@ function itemfind(&$data=NULL) {
}
}
function
itemget
(
&
$data
=
NULL
)
{
global
$log
,
$nosta
,
$mode
,
$cmd
;
...
...
@@ -436,7 +435,7 @@ function itemget(&$data=NULL)
return
;
}
}
if
(
preg_match
(
'/^(WC|WD|WF|Y|B|C|TN|GB|M|V)/'
,
$itmk0
)
&&
$itms0
!==
$nosta
){
if
(
preg_match
(
'/^(WC|WD|WF|Y|B|C|TN|G
A|G
B|M|V)/'
,
$itmk0
)
&&
$itms0
!==
$nosta
){
//global $wep,$wepk,$wepe,$weps,$wepsk;
if
(
$wep
==
$itm0
&&
$wepk
==
$itmk0
&&
$wepe
==
$itme0
&&
$wepsk
==
$itmsk0
){
$weps
+=
$itms0
;
...
...
@@ -737,7 +736,7 @@ function itemmerge($itn1,$itn2){
}
if
((
$it1
==
$it2
)
&&
(
$ite1
==
$ite2
))
{
if
((
$itk1
==
$itk2
)
&&
(
$itsk1
==
$itsk2
)
&&
preg_match
(
'/^(WC|WD|WF|Y|B|C|TN|GB|V|M)/'
,
$itk1
))
{
if
((
$itk1
==
$itk2
)
&&
(
$itsk1
==
$itsk2
)
&&
preg_match
(
'/^(WC|WD|WF|Y|B|C|TN|G
A|G
B|V|M)/'
,
$itk1
))
{
$its2
+=
$its1
;
$it1
=
$itk1
=
$itsk1
=
''
;
$ite1
=
$its1
=
0
;
...
...
@@ -1749,6 +1748,24 @@ function weapon_loss(&$pa,$hurtvalue,$force_imp=0,$check_sk=0)
$pa
[
'weps'
]
=
$nosta
;
}
}
elseif
(
$pa
[
'wep_kind'
]
==
'B'
)
{
if
(
!
$pa
[
'type'
])
{
if
(
$hurtvalue
>
0
)
$log
.=
"<span class='grey'>
{
$pa
[
'nm'
]
}
的
{
$pa
[
'wep'
]
}
用掉了
{
$hurtvalue
}
支箭。</span><br>"
;
else
$log
.=
"<span class='grey'>
{
$pa
[
'wep'
]
}
的箭矢数凭空多出了"
.
abs
(
$hurtvalue
)
.
"……啊??</span><br>"
;
}
if
(
empty
(
$pa
[
'weps'
]))
{
$log
.=
"
{
$pa
[
'nm'
]
}
的<span class=
\"
red
\"
>
{
$pa
[
'wep'
]
}
</span>的箭矢用光了!<br>"
;
$pa
[
'weps'
]
=
$nosta
;
//弓系武器用光箭后刷新一次属性,剔除箭矢带来的属性
//箭矢用光时抹掉箭矢名
wep_b_clean_arrow_name
(
$pa
[
'wepk'
]);
//箭矢用光时抹掉箭矢带来的属性
wep_b_clean_arrow_sk
(
$pa
[
'wepsk'
]);
}
}
}
}
if
(
$wep_loss_flag
)
...
...
@@ -1764,6 +1781,7 @@ function weapon_loss(&$pa,$hurtvalue,$force_imp=0,$check_sk=0)
return
;
}
//扣除指定装备的耐久。check_sk:是否在武器毁坏时重新检查属性数组$pa['ex_keys']
function
armor_hurt
(
&
$pa
,
$which
,
$hurtvalue
,
$check_sk
=
0
)
{
...
...
@@ -1820,5 +1838,30 @@ function unset_ex_from_array(&$pa,$exarr)
return
;
}
//把箭矢名字抹掉
//认为武器类别|后的都是箭矢名,返回抹掉的名字
function
wep_b_clean_arrow_name
(
&
$itmk
){
if
(
strpos
(
$itmk
,
'|'
)
===
false
)
return
''
;
$ofs
=
strpos
(
$itmk
,
'|'
);
$ret
=
substr
(
$itmk
,
$ofs
+
1
);
$itmk
=
substr
(
$itmk
,
0
,
$ofs
);
return
$ret
;
}
//把引用的参数中的箭矢带来的属性抹掉,返回抹掉的属性
//认为|之间的属性都是箭矢属性
function
wep_b_clean_arrow_sk
(
&
$itmsk
){
if
(
strpos
(
$itmsk
,
'|'
)
===
false
)
return
''
;
//如果奇数个,则结尾补一个|,嘿嘿
if
(
substr_count
(
$itmsk
,
'|'
)
%
2
)
$itmsk
.=
'|'
;
preg_match
(
'/\|.*\|/s'
,
$itmsk
,
$matches
);
$ret
=
''
;
if
(
!
empty
(
$matches
))
{
$itmsk
=
preg_replace
(
'/\|.*?\|/s'
,
''
,
$itmsk
);
$ret
=
substr
(
$matches
[
0
],
1
,
-
1
);
}
return
$ret
;
}
?>
include/game/revattr.func.php
View file @
f006ac06
...
...
@@ -73,17 +73,30 @@ namespace revattr
$pa
[
'wep_kind'
]
=
'P'
;
$pa
[
'is_wpg'
]
=
1
;
}
//弓没子弹当做斩系
if
(
$pa
[
'wep_kind'
]
==
'B'
&&
$pa
[
'weps'
]
==
$nosta
)
{
$pa
[
'wep_kind'
]
=
'K'
;
$pa
[
'is_wpg'
]
=
1
;
//借用同一个变量吧,总不可能又是枪又是弓……能、能吗?
}
return
$pa
[
'wep_kind'
];
//保险起见……
}
# 获取武器射程
function
get_wep_range
(
&
$pa
)
{
global
$rangeinfo
;
global
$rangeinfo
,
$skillinfo
;
if
(
empty
(
$pa
[
'wep_kind'
]))
get_wep_kind
(
$pa
);
$range
=
isset
(
$rangeinfo
[
$pa
[
'wep_kind'
]])
?
$rangeinfo
[
$pa
[
'wep_kind'
]]
:
NULL
;
//弓系射程随熟练增加,每200点加1,最多加3
if
(
$pa
[
'wep_kind'
]
==
'B'
)
{
$r_add
=
floor
(
$pa
[
$skillinfo
[
$pa
[
'wep_kind'
]]]
/
200
);
if
(
$r_add
>
3
)
$r
=
3
;
$range
+=
$r_add
;
}
# 获取社团技能对武器射程的修正
$range
=
get_clbskill_wep_range
(
$pa
,
$range
);
...
...
@@ -696,6 +709,7 @@ namespace revattr
$pa
[
'wepe_t'
]
=
$pa
[
'wepe'
];
}
//枪托打人 武器伤害=面板数值/5
//弓当斩系武器也用同一个数值好了,懒得多想
elseif
(
isset
(
$pa
[
'is_wpg'
]))
{
$pa
[
'wepe_t'
]
=
round
(
$pa
[
'wepe'
]
/
5
);
...
...
include/game/revbattle.func.php
View file @
f006ac06
...
...
@@ -266,13 +266,34 @@ namespace revbattle
}
}
}
//先制状态下可以自动给弓上箭
if
(
strpos
(
$pdata
[
'wepk'
],
'WB'
)
===
0
&&
$pdata
[
'weps'
]
===
$nosta
)
{
//$tmp_log = $log;
$pos_a
=
0
;
//遍历所有包裹,寻找最靠前的箭矢装填
for
(
$i
=
1
;
$i
<=
6
;
$i
++
){
if
(
$pdata
[
'itmk'
.
$i
]
==
'GA'
)
{
$pos_a
=
$i
;
break
;
}
}
//直接调用上箭的函数
if
(
$pos_a
)
{
$log
.=
'你及时弯弓搭箭,'
;
include_once
GAME_ROOT
.
'./include/game/item2.func.php'
;
itemuse_ugb
(
$pdata
,
$pos_a
);
}
//$tmp_log_2 = substr($log, strlen($tmp_log));
//$log = $tmp_log;//暂存一下$log,调整显示顺序,不过可能不利于以后扩展,再说吧……
}
//if(!empty($tmp_log_2)) $log .= $tmp_log_2;
}
}
//初始化玩家攻击方式信息
$w1
=
substr
(
$pdata
[
'wepk'
],
1
,
1
);
$w2
=
substr
(
$pdata
[
'wepk'
],
2
,
1
);
if
(
empty
(
$w2
)
||
is_numeric
(
$w2
))
$w2
=
''
;
if
(
empty
(
$w2
)
||
is_numeric
(
$w2
)
||
'|'
==
$w2
)
$w2
=
''
;
if
((
$w1
==
'G'
||
$w1
==
'J'
)
&&
(
$pdata
[
'weps'
]
==
$nosta
))
$w1
=
'P'
;
include
template
(
'battlecmd_rev'
);
...
...
include/global.func.php
View file @
f006ac06
...
...
@@ -664,12 +664,15 @@ function parse_skinfo_desc($info,$subinfo='',$short='',$tiptype='')
foreach
(
$info
as
$sk
)
{
$csk
=
$itemspkinfo
[
$sk
];
//键值为<:DUMMY:>的属性跳过(注意只是跳过了显示的处理)
if
(
$csk
==
'<:DUMMY:>'
)
continue
;
# 如果不是第一个属性 显示一个 + 号
if
(
$sk_nums
>
0
)
$sk_info
.=
'+'
;
# 检查属性有没有特殊样式
if
(
isset
(
$tps_isk
[
$sk
][
'class'
]))
$csk
=
"<span class=
\"
"
.
$tps_isk
[
$sk
][
'class'
]
.
"
\"
>"
.
$csk
.
"</span>"
;
# 将属性加入显示队列
$sk_info
.=
$csk
;
# 如果不是最后一个属性 显示一个 + 号
if
(
$sk_nums
<
$sk_max
-
1
)
$sk_info
.=
'+'
;
# 检查属性有没有tooltip
if
(
isset
(
$tps_isk
[
$sk
][
'title'
]))
{
...
...
include/system.func.php
View file @
f006ac06
...
...
@@ -554,7 +554,7 @@ function gameover($time = 0, $mode = '', $winname = '') {
rs_sttime
();
//重置游戏开始时间和当前游戏状态
$gamestate
=
0
;
save_gameinfo
();
save_gameinfo
();
//先保存一次免得后面的处理过程太长,尽可能避免脏数据
//echo '**游戏结束**';
//$gamestate = 0;
//addnews($time, "end$winmode" , $winner);
...
...
@@ -576,6 +576,7 @@ function gameover($time = 0, $mode = '', $winname = '') {
//rs_sttime();
//save_gameinfo();
set_credits
();
save_gameinfo
();
//set_credits()里也有修改$gamevars的需求,再存一次,反正就一条记录读写不可能高并发
return
;
}
...
...
@@ -965,10 +966,11 @@ function get_credit_up($data,$winner = '',$winmode = 0){
return
$up
;
}
//判定赌局结果的烂代码
function
get_gambling_result
(
$clist
,
$winner
=
''
,
$winmode
=
''
){
global
$db
,
$tablepre
,
$gtablepre
,
$hdamage
,
$validnum
,
$now
,
$areanum
,
$areaadd
;
global
$db
,
$tablepre
,
$gtablepre
,
$hdamage
,
$validnum
,
$now
,
$areanum
,
$areaadd
,
$gamevars
;
$gblog
=
''
;
$gbfile
=
GAME_ROOT
.
TPLDIR
.
'/lastgb.htm'
;
//
$gbfile = GAME_ROOT.TPLDIR.'/lastgb.htm';
if
(
!
in_array
(
$winmode
,
Array
(
2
,
3
,
5
,
7
))){
//无人获胜,全部赌注被冴冴吃掉
$gblog
.=
'无人获胜,全部切糕被冴冴吃掉!'
;
$updatelist
=
false
;
...
...
@@ -998,7 +1000,7 @@ function get_gambling_result($clist, $winner='',$winmode=''){
if
(
$apm
>=
1
){
$apmnum
++
;}
}
$avrcredit
=
$creditsum
/
$validnum
;
//平均战斗力
$avrcredit
=
$creditsum
/
(
$validnum
>
0
?
$validnum
:
1
)
;
//平均战斗力
if
(
$avrcredit
>
10000
){
$creditodds
=
1.25
;}
//平均战斗力超过10000则系数为1.25,否则系数减少,平均战斗力为4000时为1.1;
else
{
$creditodds
=
round
((
1
+
$avrcredit
/
40000
)
*
1000
)
/
1000
;}
$apmodds
=
round
(
pow
(
1.02
,
$apmnum
)
*
1000
)
/
1000
;
//每有一名玩家达到60APM则乘以1.02
...
...
@@ -1074,11 +1076,14 @@ function get_gambling_result($clist, $winner='',$winmode=''){
}
}
}
ob_start
();
include
template
(
'gbresult'
);
$gbresult
=
ob_get_contents
();
ob_end_clean
();
writeover
(
$gbfile
,
$gbresult
);
//上一轮赌局结果存入gamevars
$gamevars
[
'gblog'
]
=
$gblog
;
$gamevars
[
'bwlist'
]
=
$bwlist
;
// ob_start();
// include template('gbresult');
// $gbresult = ob_get_contents();
// ob_end_clean();
// writeover($gbfile,$gbresult);
return
$updatelist
;
}
?>
register.php
View file @
f006ac06
...
...
@@ -61,13 +61,25 @@ if(!isset($cmd)){
if
(
isset
(
$error
)){
$gamedata
[
'innerHTML'
][
'error'
]
=
$error
;}
ob_clean
();
$jgamedata
=
compatible_json_encode
(
$gamedata
);
echo
$jgamedata
;
if
(
isset
(
$_GET
[
'is_new'
]))
{
echo
json_encode
(
array
(
"info"
=>
$gamedata
[
'innerHTML'
][
'info'
],
));
}
else
{
echo
$jgamedata
;
}
ob_end_flush
();
}
else
{
ob_clean
();
if
(
isset
(
$error
)){
$gamedata
[
'innerHTML'
][
'error'
]
=
$error
;}
$jgamedata
=
compatible_json_encode
(
$gamedata
);
echo
$jgamedata
;
if
(
isset
(
$_GET
[
'is_new'
]))
{
echo
json_encode
(
array
(
"info"
=>
$gamedata
[
'innerHTML'
][
'info'
],
));
}
else
{
echo
$jgamedata
;
}
ob_end_flush
();
}
}
...
...
templates/default/alive.htm
View file @
f006ac06
...
...
@@ -16,7 +16,7 @@
<!--{if $gamblingon && $gamestate >= 20}-->
<p>
{template gambling}
</p>
<!--{elseif $gamblingon && $gamestate <= 10}-->
<p>
{template
lastgb
}
</p>
<p>
{template
gbresult
}
</p>
<!--{/if}-->
</form>
...
...
templates/default/gbresult.htm
View file @
f006ac06
<!--{eval $gblog=$gamevars['gblog'];$bwlist = $gamevars['bwlist'];}-->
<h3
style=
"font-size:16pt"
class=
"lime"
>
上局切糕情况
</h3>
<div
class=
"lime"
>
$gblog
</div>
<!--{if !empty($bwlist)}-->
...
...
templates/default/lastgb.htm
deleted
100644 → 0
View file @
65ccd426
<h3
style=
"font-size:16pt"
class=
"lime"
>
上局切糕情况
</h3>
<div
class=
"lime"
>
无人获胜,全部切糕被冴冴吃掉!
</div>
valid.php
View file @
f006ac06
...
...
@@ -327,10 +327,11 @@ if($mode == 'enter') {
$select_icon
=
$icon
;
if
(
isset
(
$_GET
[
'is_new'
]))
{
// 获取可选称号
$nickList
=
array_map
(
function
(
$val
)
use
(
$titles_list
)
{
$nickList
=
array_map
(
function
(
$val
)
use
(
$titles_list
,
$title_desc
)
{
return
array
(
'id'
=>
$val
,
'title'
=>
$titles_list
[
$val
]
'title'
=>
$titles_list
[
$val
],
'desc'
=>
$title_desc
[
$val
][
'title'
],
);
},
$nicksrev
[
'nicks'
]);
// 获取可选普通内定称号
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment