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
0bb887d5
Commit
0bb887d5
authored
May 24, 2023
by
Nemo Ma
Committed by
GitHub
May 24, 2023
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #160 from hikawiier/waaagh
update club13
parents
4e64d8bb
4faa7f6a
Changes
21
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
21 changed files
with
622 additions
and
200 deletions
+622
-200
gamedata/cache/addnpc_1.php
gamedata/cache/addnpc_1.php
+71
-24
gamedata/cache/clubskills_1.php
gamedata/cache/clubskills_1.php
+158
-5
gamedata/cache/npc_1.php
gamedata/cache/npc_1.php
+104
-1
gamedata/cache/resources_1.php
gamedata/cache/resources_1.php
+2
-1
gamedata/cache/titles_1.php
gamedata/cache/titles_1.php
+1
-1
include/game/clubslct.func.php
include/game/clubslct.func.php
+15
-28
include/game/item.func.php
include/game/item.func.php
+11
-5
include/game/itemmain.func.php
include/game/itemmain.func.php
+50
-46
include/game/itemplace.func.php
include/game/itemplace.func.php
+14
-0
include/game/revattr.func.php
include/game/revattr.func.php
+57
-10
include/game/revclubskills.func.php
include/game/revclubskills.func.php
+32
-22
include/game/revclubskills.inc.php
include/game/revclubskills.inc.php
+9
-0
include/game/revcombat.func.php
include/game/revcombat.func.php
+27
-3
include/game/revcombat_extra.func.php
include/game/revcombat_extra.func.php
+22
-2
include/game/search.func.php
include/game/search.func.php
+7
-0
include/state.func.php
include/state.func.php
+1
-1
include/system.func.php
include/system.func.php
+13
-47
templates/default/command.htm
templates/default/command.htm
+6
-1
templates/default/help.htm
templates/default/help.htm
+17
-1
templates/default/templates.lang.php
templates/default/templates.lang.php
+3
-0
valid.php
valid.php
+2
-2
No files found.
gamedata/cache/addnpc_1.php
View file @
0bb887d5
<?php
if
(
!
defined
(
'IN_GAME'
))
exit
(
'Access Denied'
);
$npcinit
=
array
(
'name'
=>
''
,
'pass'
=>
'bra'
,
'gd'
=>
'm'
,
'icon'
=>
0
,
'club'
=>
0
,
'mhp'
=>
0
,
'msp'
=>
0
,
'att'
=>
0
,
'def'
=>
0
,
'pls'
=>
0
,
'lvl'
=>
0
,
'money'
=>
0
,
'inf'
=>
''
,
'rage'
=>
0
,
'pose'
=>
0
,
'tactic'
=>
0
,
'killnum'
=>
0
,
'state'
=>
1
,
'teamID'
=>
''
,
'teamPass'
=>
''
,
'bid'
=>
0
,
'wp'
=>
0
,
'wk'
=>
0
,
'wc'
=>
0
,
'wg'
=>
0
,
'wd'
=>
0
,
'wf'
=>
0
,
'wep'
=>
''
,
'wepk'
=>
''
,
'wepe'
=>
0
,
'weps'
=>
0
,
'wepsk'
=>
''
,
'arb'
=>
''
,
'arbk'
=>
''
,
'arbe'
=>
0
,
'arbs'
=>
0
,
'arbsk'
=>
''
,
'arh'
=>
''
,
'arhk'
=>
''
,
'arhe'
=>
0
,
'arhs'
=>
0
,
'arhsk'
=>
''
,
'arf'
=>
''
,
'arfk'
=>
''
,
'arfe'
=>
0
,
'arfs'
=>
0
,
'arfsk'
=>
''
,
'ara'
=>
''
,
'arak'
=>
''
,
'arae'
=>
0
,
'aras'
=>
0
,
'arask'
=>
''
,
'art'
=>
''
,
'artk'
=>
''
,
'arte'
=>
0
,
'arts'
=>
0
,
'artsk'
=>
''
,
'itm0'
=>
''
,
'itmk0'
=>
''
,
'itme0'
=>
0
,
'itms0'
=>
0
,
'itmsk0'
=>
''
,
'itm1'
=>
''
,
'itmk1'
=>
''
,
'itme1'
=>
0
,
'itms1'
=>
0
,
'itmsk1'
=>
''
,
'itm2'
=>
''
,
'itmk2'
=>
''
,
'itme2'
=>
0
,
'itms2'
=>
0
,
'itmsk2'
=>
''
,
'itm3'
=>
''
,
'itmk3'
=>
''
,
'itme3'
=>
0
,
'itms3'
=>
0
,
'itmsk3'
=>
''
,
'itm4'
=>
''
,
'itmk4'
=>
''
,
'itme4'
=>
0
,
'itms4'
=>
0
,
'itmsk4'
=>
''
,
'itm5'
=>
''
,
'itmk5'
=>
''
,
'itme5'
=>
0
,
'itms5'
=>
0
,
'itmsk5'
=>
''
,
'itm6'
=>
''
,
'itmk6'
=>
''
,
'itme6'
=>
0
,
'itms6'
=>
0
,
'itmsk6'
=>
''
,
);
$anpcinfo
=
array
(
2
=>
array
...
...
@@ -159,6 +138,12 @@ $anpcinfo = array
'num'
=>
1
,
'pass'
=>
'bra'
,
'club'
=>
9
,
'clubskillpara'
=>
Array
(
'c9_spirit'
=>
Array
(
'lvl'
=>
3
,
),
),
'bid'
=>
0
,
'inf'
=>
''
,
'state'
=>
1
,
...
...
@@ -278,6 +263,15 @@ $anpcinfo = array
'icon'
=>
3
,
'gd'
=>
'f'
,
'club'
=>
9
,
'clubskillpara'
=>
Array
(
'c9_spirit'
=>
Array
(
'lvl'
=>
3
,
),
'c9_charge'
=>
Array
(
'active-t'
=>
2
,
),
),
'wep'
=>
'简称为UCW的杏仁豆腐'
,
'wepk'
=>
'WK'
,
'wepe'
=>
133
,
...
...
@@ -295,6 +289,16 @@ $anpcinfo = array
'icon'
=>
4
,
'gd'
=>
'm'
,
'club'
=>
8
,
'inf'
=>
'p'
,
'clubskillpara'
=>
Array
(
'c8_expert'
=>
Array
(
'lvl'
=>
3
,
),
'c8_infilt'
=>
Array
(
'lvl'
=>
5
,
),
),
'wep'
=>
'彩虹色的杏仁豆腐'
,
'wepk'
=>
'WD'
,
'wepe'
=>
100
,
...
...
@@ -367,6 +371,19 @@ $anpcinfo = array
(
'name'
=>
'Acg_Xilin'
,
'icon'
=>
2
,
'club'
=>
4
,
'clubskillpara'
=>
Array
(
'c4_stable'
=>
Array
(
'lvl'
=>
3
,
),
'c4_break'
=>
Array
(
'lvl'
=>
2
,
),
'c4_roar'
=>
Array
(
'active'
=>
1
,
),
),
'wep'
=>
'【全屏幕弹幕发射】'
,
'wepk'
=>
'WG'
,
'wepe'
=>
360
,
...
...
@@ -390,9 +407,15 @@ $anpcinfo = array
'num'
=>
3
,
'pass'
=>
'bra'
,
'club'
=>
9
,
'clubskillpara'
=>
Array
(
'c9_spirit'
=>
Array
(
'lvl'
=>
3
,
),
),
'bid'
=>
0
,
'inf'
=>
''
,
'rage'
=>
100
,
'rage'
=>
255
,
'pose'
=>
1
,
'tactic'
=>
3
,
'killnum'
=>
0
,
...
...
@@ -1524,7 +1547,16 @@ $anpcinfo = array
(
'name'
=>
'坚韧之子·拉姆'
,
'icon'
=>
154
,
'club'
=>
1
,
'club'
=>
13
,
'clubskillpara'
=>
Array
(
'c13_quick'
=>
Array
(
'lvl'
=>
2
,
),
'c13_wingchun'
=>
Array
(
'lvl'
=>
1
,
),
),
'mhp'
=>
2904
,
'msp'
=>
2233
,
'att'
=>
201
,
...
...
@@ -2160,7 +2192,22 @@ $anpcinfo = array
'mercsalary'
=>
50
,
'mercfireaction'
=>
1
,
'coverp'
=>
50
,
'club'
=>
1
,
'club'
=>
13
,
'clubskill'
=>
Array
(
'buff_duel'
,
),
'clubskillpara'
=>
Array
(
'c13_quick'
=>
Array
(
'lvl'
=>
3
,
),
'c13_wingchun'
=>
Array
(
'lvl'
=>
2
,
),
'c13_duel'
=>
Array
(
'active-t'
=>
1
,
),
),
'name'
=>
'Chuck Norris'
,
'icon'
=>
360
,
'pose'
=>
2
,
...
...
gamedata/cache/clubskills_1.php
View file @
0bb887d5
This diff is collapsed.
Click to expand it.
gamedata/cache/npc_1.php
View file @
0bb887d5
...
...
@@ -6,6 +6,7 @@ $npcinit = array
'mhp'
=>
0
,
'msp'
=>
0
,
'att'
=>
0
,
'def'
=>
0
,
'pls'
=>
0
,
'lvl'
=>
0
,
'money'
=>
0
,
'inf'
=>
''
,
'rage'
=>
0
,
'pose'
=>
0
,
'tactic'
=>
0
,
'killnum'
=>
0
,
'state'
=>
1
,
'teamID'
=>
''
,
'teamPass'
=>
''
,
'bid'
=>
0
,
'clbpara'
=>
Array
(),
'wp'
=>
0
,
'wk'
=>
0
,
'wc'
=>
0
,
'wg'
=>
0
,
'wd'
=>
0
,
'wf'
=>
0
,
'skills'
=>
0
,
'rp'
=>
0
,
'wep'
=>
''
,
'wepk'
=>
''
,
'wepe'
=>
0
,
'weps'
=>
0
,
'wepsk'
=>
''
,
'arb'
=>
''
,
'arbk'
=>
''
,
'arbe'
=>
0
,
'arbs'
=>
0
,
'arbsk'
=>
''
,
...
...
@@ -1826,6 +1827,21 @@ $npcinfo = array
'gd'
=>
'f'
,
'icon'
=>
101
,
'club'
=>
10
,
'clubskill'
=>
Array
(
'c4_stable'
,
'c4_break'
,
),
'clubskillpara'
=>
Array
(
'c4_stable'
=>
Array
(
'lvl'
=>
3
,
),
'c4_break'
=>
Array
(
'lvl'
=>
3
,
),
'c10_insight'
=>
Array
(
'lvl'
=>
4
,
),
),
'mhp'
=>
4932
,
'att'
=>
5120
,
'skill'
=>
1500
,
...
...
@@ -1977,7 +1993,22 @@ $npcinfo = array
'name'
=>
'北京推倒你'
,
'gd'
=>
'm'
,
'icon'
=>
102
,
'club'
=>
1
,
'club'
=>
13
,
'clubskill'
=>
Array
(
'buff_duel'
,
),
'clubskillpara'
=>
Array
(
'c13_quick'
=>
Array
(
'lvl'
=>
4
,
),
'c13_wingchun'
=>
Array
(
'lvl'
=>
2
,
),
'c13_duel'
=>
Array
(
'active-t'
=>
1
,
),
),
'skill'
=>
600
,
'wep'
=>
'拳头'
,
'wepk'
=>
'WN'
,
...
...
@@ -2017,6 +2048,20 @@ $npcinfo = array
'icon'
=>
105
,
'hp'
=>
4900
,
'club'
=>
4
,
'clubskillpara'
=>
Array
(
'c4_stable'
=>
Array
(
'lvl'
=>
6
,
'costcount'
=>
20
,
),
'c4_break'
=>
Array
(
'lvl'
=>
3
,
'costcount'
=>
19
,
),
'c4_sniper'
=>
Array
(
'active'
=>
1
,
),
),
'skill'
=>
800
,
'wep'
=>
'AKM-ExS'
,
'wepk'
=>
'WJ'
,
...
...
@@ -2031,6 +2076,15 @@ $npcinfo = array
'mhp'
=>
19000
,
'icon'
=>
98
,
'club'
=>
2
,
'clubskill'
=>
Array
(
'buff_annihil'
),
'clubskillpara'
=>
Array
(
'c2_intuit'
=>
Array
(
'lvl'
=>
6
,
),
),
'skill'
=>
600
,
'wep'
=>
'画(ping)笔(ru)'
,
'wepk'
=>
'WK'
,
...
...
@@ -2044,6 +2098,19 @@ $npcinfo = array
'gd'
=>
'm'
,
'icon'
=>
10
,
'club'
=>
7
,
'clubskill'
=>
Array
(
'buff_shield'
),
'clubskillpara'
=>
Array
(
'c7_shield'
=>
Array
(
'lvl'
=>
5
,
),
'buff_shield'
=>
Array
(
'svars'
=>
1766
,
),
),
'skill'
=>
1000
,
'wep'
=>
'破解的PSP-3000'
,
'wepk'
=>
'WP'
,
...
...
@@ -2058,7 +2125,17 @@ $npcinfo = array
'pose'
=>
4
,
'att'
=>
4000
,
'icon'
=>
10
,
'inf'
=>
'p'
,
'club'
=>
8
,
'clubskillpara'
=>
Array
(
'c8_expert'
=>
Array
(
'lvl'
=>
4
,
),
'c8_infilt'
=>
Array
(
'lvl'
=>
6
,
),
),
'skill'
=>
600
,
'wep'
=>
'超级☆无敌辰音LILY'
,
'wepk'
=>
'WD'
,
...
...
@@ -2073,6 +2150,20 @@ $npcinfo = array
'def'
=>
30250
,
'icon'
=>
4
,
'club'
=>
4
,
'clubskillpara'
=>
Array
(
'c4_stable'
=>
Array
(
'lvl'
=>
6
,
'costcount'
=>
20
,
),
'c4_break'
=>
Array
(
'lvl'
=>
3
,
'costcount'
=>
19
,
),
'c4_roar'
=>
Array
(
'active'
=>
1
,
),
),
'skill'
=>
600
,
'wep'
=>
'光翼型近接支援残酷戦闘機'
,
'wepk'
=>
'WG'
,
...
...
@@ -2250,6 +2341,18 @@ $npcinfo = array
'gd'
=>
'm'
,
'icon'
=>
4
,
'club'
=>
10
,
'clubskill'
=>
Array
(
'c4_sniper'
,
),
'clubskillpara'
=>
Array
(
'c4_sniper'
=>
Array
(
'active'
=>
1
,
),
'c10_insight'
=>
Array
(
'lvl'
=>
4
,
),
),
'wep'
=>
'205mm绯牡丹加农炮'
,
'wepk'
=>
'WJ'
,
'wepe'
=>
800
,
...
...
gamedata/cache/resources_1.php
View file @
0bb887d5
...
...
@@ -40,7 +40,7 @@ $gwin = Array(0 => '程序故障', 1 => '全部死亡',2 => '最后幸存',3 =>
$week
=
Array
(
'日'
,
'一'
,
'二'
,
'三'
,
'四'
,
'五'
,
'六'
);
$clubinfo
=
Array
(
0
=>
'无'
,
1
=>
'
铁拳无敌
'
,
1
=>
'
街头霸王
'
,
2
=>
'见敌必斩'
,
3
=>
'灌篮高手'
,
4
=>
'狙击鹰眼'
,
...
...
@@ -53,6 +53,7 @@ $clubinfo = Array(
10
=>
'天赋异禀'
,
11
=>
'富家子弟'
,
12
=>
'全能兄贵'
,
//根性兄贵、肌肉兄贵、全能骑士合并为全能兄贵
13
=>
'铁拳无敌'
,
//13=>'根性兄贵',
//14=>'肌肉兄贵',
15
=>
'<span class="L5">L5状态</span>'
,
...
...
gamedata/cache/titles_1.php
View file @
0bb887d5
...
...
@@ -337,7 +337,7 @@ if(!defined('IN_GAME')) exit('Access Denied');
# 24. 殴系爱好者
24
=>
Array
(
'wp'
=>
'[:+=:]50'
,
'itm6'
=>
'「
铁拳无敌
」称号卡'
,
'itmk6'
=>
'ZB'
,
'itme6'
=>
1
,
'itms6'
=>
1
,
'itmsk6'
=>
''
,
'itm6'
=>
'「
街头霸王
」称号卡'
,
'itmk6'
=>
'ZB'
,
'itme6'
=>
1
,
'itms6'
=>
1
,
'itmsk6'
=>
''
,
),
# 26. 斩系爱好者
26
=>
Array
(
...
...
include/game/clubslct.func.php
View file @
0bb887d5
...
...
@@ -61,8 +61,8 @@ function valid_getclublist_t2($udata)
# 特殊社团列表
function
valid_getclublist_t1
(
$udata
)
{
# 随机可选范围(选3):6-疾风 10-天赋 11-富家 12-全能 19-晶莹
$temp_t1_list
=
Array
(
6
,
10
,
11
,
12
,
19
);
# 随机可选范围(选3):6-疾风 10-天赋 11-富家 12-全能 1
3-铁拳 1
9-晶莹
$temp_t1_list
=
Array
(
6
,
10
,
11
,
12
,
1
3
,
1
9
);
global
$db
,
$gtablepre
;
...
...
@@ -114,21 +114,11 @@ function getclub($who, &$c1, &$c2, &$c3)
if
(
$c2
>
$c3
)
swap
(
$c2
,
$c3
);
}
function
changeclub
(
$clb
,
&
$data
=
NULL
)
function
changeclub
(
$clb
,
&
$data
)
{
if
(
!
isset
(
$data
))
{
global
$club
;
lostclub
();
$club
=
$clb
;
updateskill
();
}
else
{
lostclub
(
$data
);
$data
[
'club'
]
=
$clb
;
updateskill
(
$data
);
}
lostclub
(
$data
);
$data
[
'club'
]
=
$clb
;
updateskill
(
$data
);
}
function
updateskill
(
&
$data
=
NULL
)
...
...
@@ -143,7 +133,7 @@ function updateskill(&$data=NULL)
}
extract
(
$data
,
EXTR_REFS
);
if
(
$club
==
1
)
{
$wp
+=
50
;}
if
(
$club
==
1
||
$club
==
13
)
{
$wp
+=
50
;}
if
(
$club
==
2
)
$wk
+=
50
;
if
(
$club
==
3
)
$wc
+=
50
;
if
(
$club
==
4
)
$wg
+=
50
;
...
...
@@ -151,22 +141,19 @@ function updateskill(&$data=NULL)
if
(
$club
==
9
)
$wf
+=
40
;
if
(
$club
==
11
)
$money
+=
680
;
if
(
$club
==
12
)
{
$wp
+=
25
;
$wk
+=
25
;
$wc
+=
25
;
$wg
+=
25
;
$wd
+=
25
;
$wf
+=
25
;
$mhp
+=
250
;
$hp
+=
250
;
$att
+=
300
;
$def
+=
300
;}
/*if ($club==16) { $wp+=25; $wk+=25; $wc+=25; $wg+=25; $wd+=25; $wf+=25; }
if ($club==13) { $mhp+=250; $hp+=250; }
if ($club==14) { $att+=300; $def+=300; }*/
# 变更社团时 获取社团技能
//include_once GAME_ROOT.'./include/game/revclubskills.func.php';
if
(
!
isset
(
$data
))
if
(
!
empty
(
$club_skillslist
[
$club
]))
{
$cks
=
$club_skillslist
[
$club
];
foreach
(
$cks
as
$sk
)
getclubskill
(
$sk
,
$clbpara
);
}
else
{
$cks
=
$club_skillslist
[
$data
[
'club'
]]
;
foreach
(
$cks
as
$sk
)
getclubskill
(
$sk
,
$data
[
'clbpara'
]);
foreach
(
$cks
as
$sk
)
{
# NPC不会学习带有'player'标签的技能
if
(
get_skilltags
(
$sk
,
'player'
)
&&
$type
)
continue
;
getclubskill
(
$sk
,
$clbpara
)
;
}
}
return
;
}
function
lostclub
(
&
$data
=
NULL
)
...
...
include/game/item.func.php
View file @
0bb887d5
...
...
@@ -331,14 +331,20 @@ function itemuse($itmn,&$data=NULL) {
}
}
elseif
(
strpos
(
$itmk
,
'T'
)
===
0
)
{
//global $pls, $exp, $upexp, $wd, $club,$lvl,$db,$tablepre;
if
(
!
check_skill_unlock
(
'c13_master'
,
$data
))
{
$log
.=
"你老脸一红,只觉得自己是被鬼迷了心窍,怎么会起了这种卑劣的念头!<br>羞愤之下,你一口把<span class='yellow'>
{
$itm
}
</span>吞进了肚子。<br>"
;
$itms
=
0
;
destory_single_item
(
$data
,
$itmn
,
1
);
$mode
=
'command'
;
return
;
}
$trapk
=
str_replace
(
'TN'
,
'TO'
,
$itmk
);
//$mapfile = GAME_ROOT . "./gamedata/mapitem/{$pls}mapitem.php";
//$itemdata = "$itm,TO,$itme,1,$pid,\n";
//writeover ( $mapfile, $itemdata, 'ab' );
$db
->
query
(
"INSERT INTO
{
$tablepre
}
maptrap (itm, itmk, itme, itms, itmsk, pls) VALUES ('
$itm
', '
$trapk
', '
$itme
', '1', '
$pid
', '
$pls
')"
);
$log
.=
"设置了陷阱<span class=
\"
red
\"
>
$itm
</span>。<br>小心,自己也很难发现。<br>"
;
//echo $exp;
if
(
$club
==
5
){
$exp
+=
2
;
$wd
+=
2
;}
else
{
$exp
++
;
$wd
++
;}
...
...
include/game/itemmain.func.php
View file @
0bb887d5
...
...
@@ -76,11 +76,45 @@ function calc_trap_escape_rate(&$pa,$playerflag=0,$selflag=0)
return
min
(
$escrate
,
$max_escrate
);
}
# 计算触发陷阱后的“迎击事件”
# 计算触发陷阱后的陷阱伤害
function
calc_trap_damage
(
&
$pa
,
$pd
=
NULL
,
$playerflag
=
0
,
$selflag
=
0
)
{
global
$log
;
// 奇迹陷阱
if
(
$pa
[
'itmk0'
]
==
'TOc'
)
{
$damage
=
$pa
[
'hp'
];
return
$damage
;
}
// 随机数大神的陷阱
if
(
$pa
[
'itmk0'
]
==
'TO8'
)
{
$damage
=
$pa
[
'hp'
]
/
8
;
return
$damage
;
}
$damage
=
round
(
rand
(
0
,
$pa
[
'itme0'
]
/
2
)
+
(
$pa
[
'itme0'
]
/
2
));
# 防御姿态可以降低陷阱伤害
$damage
=
$pa
[
'tactic'
]
==
2
?
round
(
$damage
*
0.75
)
:
$damage
;
# 技能「宗师」效果判定
if
(
!
check_skill_unlock
(
'c13_master'
,
$pa
))
{
$pa
[
'skilllog'
]
=
"大祸临头,你却呵呵笑道:“雕虫小技,不足为惧!”<br>"
;
$damage_p
=
get_skillvars
(
'c13_master'
,
'trapdmgloss'
);
$pa
[
'skilllog'
]
.=
"已经跳到你腿上的<span class='yellow'>
{
$pa
[
'itm0'
]
}
</span>显然被你非凡的气魄震慑到了!你仅"
;
$damage
=
round
(
$damage
*
(
1
-
(
$damage_p
/
100
)));
}
return
$damage
;
}
# 计算触发陷阱后的伤害减免事件
function
check_trap_def_event
(
&
$pa
,
$damage
,
$playerflag
=
0
,
$selflag
=
0
)
{
# 奇迹雷不能迎击
if
(
$pa
[
'itmk0'
]
==
'TOc'
)
return
$damage
;
# 奇迹雷
、神力雷
不能迎击
if
(
$pa
[
'itmk0'
]
==
'TOc'
||
$pa
[
'itmk0'
]
==
'TO8'
)
return
$damage
;
# 检查是否有迎击属性
include_once
GAME_ROOT
.
'./include/game/revattr.func.php'
;
if
(
empty
(
$pa
[
'ex_keys'
]))
$pa
[
'ex_keys'
]
=
array_merge
(
\revattr\get_equip_ex_array
(
$pa
),
\revattr\get_wep_ex_array
(
$pa
));
...
...
@@ -95,6 +129,14 @@ function check_trap_def_event(&$pa,$damage,$playerflag=0,$selflag=0)
$damage
=
0
;
}
}
# 「天佑」技能判定
if
(
$damage
&&
!
check_skill_unlock
(
'buff_godbless'
,
$data
))
{
$damage
=
0
;
$log
.=
"<span class=
\"
yellow
\"
>「天佑」使你免疫了陷阱伤害!</span><br>"
;
}
return
$damage
;
}
...
...
@@ -122,7 +164,6 @@ function calc_trap_reuse_rate($pa,$playerflag=0,$selflag=0)
return
$fdrate
;
}
function
trap
(
&
$data
=
NULL
){
global
$log
,
$cmd
,
$mode
,
$iteminfo
;
global
$now
,
$db
,
$tablepre
;
...
...
@@ -167,47 +208,14 @@ function trap(&$data=NULL){
if
(
$dice
>=
$escrate
)
{
$bid
=
$itmsk0
;
// 奇迹陷阱
if
(
$itmk0
==
'TOc'
)
{
$damage
=
$hp
;
$goodmancard
=
0
;
goto
real_trap_damage
;
}
// 随机数大神的陷阱
elseif
(
$itmk0
==
'TO8'
)
{
$damage
=
$hp
/
8
;
$goodmancard
=
0
;
}
else
{
$damage
=
round
(
rand
(
0
,
$itme0
/
2
)
+
(
$itme0
/
2
));
// 防御姿态可以降低陷阱伤害
$damage
=
$tactic
==
2
?
round
(
$damage
*
0.75
)
:
$damage
;
//好人卡特别活动
//global $itm1,$itmk1,$itms1,$itm2,$itmk2,$itms2,$itm3,$itmk3,$itms3,$itm4,$itmk4,$itms4,$itm5,$itmk5,$itms5;
$goodmancard
=
0
;
for
(
$i
=
1
;
$i
<=
5
;
$i
++
){
if
(
$
{
'itms'
.
$i
}
&&
$
{
'itm'
.
$i
}
==
'好人卡'
&&
$
{
'itmk'
.
$i
}
==
'Y'
){
$goodmancard
+=
$
{
'itms'
.
$i
};
}
}
}
# 计算陷阱伤害
$damage
=
calc_trap_damage
(
$data
,
NULL
,
$playerflag
,
$selflag
);
# 检查陷阱是否被迎击
$damage
=
check_trap_def_event
(
$data
,
$damage
,
$playerflag
,
$selflag
);
# 「天佑」技能判定
if
(
$damage
&&
$itmk0
!=
'TOc'
&&
!
check_skill_unlock
(
'buff_godbless'
,
$data
))
{
$damage
=
0
;
$log
.=
"<span class=
\"
yellow
\"
>「天佑」使你免疫了陷阱伤害!</span><br>"
;
}
if
(
$damage
)
{
real_trap_damage
:
$tmp_club
=
$club
;
$hp
-=
$damage
;
$trapkill
=
false
;
...
...
@@ -216,19 +224,15 @@ function trap(&$data=NULL){
{
addnews
(
$now
,
'trap'
,
$name
,
$trname
,
$itm0
,
$nick
);
}
$log
.=
"糟糕,你触发了
{
$trperfix
}
陷阱<span class=
\"
yellow
\"
>
$itm0
</span>!受到<span class=
\"
dmg
\"
>
$damage
</span>点伤害!<br>"
;
$log
.=
"糟糕,你触发了
{
$trperfix
}
陷阱<span class=
\"
yellow
\"
>
$itm0
</span>!<br>"
;
if
(
$data
[
'skilllog'
])
$log
.=
$data
[
'skilllog'
];
$log
.=
"受到<span class=
\"
dmg
\"
>
$damage
</span>点伤害!<br>"
;
# 踩雷rp结算
$rp_up
=
-
1
*
$rp
/
2
;
include_once
GAME_ROOT
.
'./include/state.func.php'
;
if
(
$rp_up
)
rpup_rev
(
$data
,
$rp_up
);
if
(
$goodmancard
)
{
$gm
=
ceil
(
$goodmancard
*
rand
(
80
,
120
)
/
100
);
$log
.=
"在你身上的<span class=
\"
yellow
\"
>好人卡</span>的作用下,你受到的伤害增加了<span class=
\"
red
\"
>
$gm
</span>点!<br>"
;
$hp
-=
$gm
;
}
# 陷阱击杀
if
(
$hp
<=
0
)
{
...
...
include/game/itemplace.func.php
View file @
0bb887d5
...
...
@@ -3,6 +3,20 @@ if (! defined ( 'IN_GAME' )) {
exit
(
'Access Denied'
);
}
# 创建一个合成索引
function
smartmix_create_recipe_quest
(
$itm
,
$tp
=
0
,
&
$data
=
NULL
)
{
if
(
!
isset
(
$data
))
{
global
$pdata
;
$data
=
&
$pdata
;
}
extract
(
$data
,
EXTR_REFS
);
# 创建新的合成索引时,清空旧索引内记录的数据
if
(
!
empty
(
$clbpara
[
'smartmix'
]))
unset
(
$clbpara
[
'smartmix'
]);
}
//以道具名反查mixinfo数据
//tp & 1 以原料反查,tp & 2 以产物反查
//返回mixinfo里的单个array
...
...
include/game/revattr.func.php
View file @
0bb887d5
...
...
@@ -147,7 +147,7 @@ namespace revattr
$bsk
=
$pa
[
'bskill'
];
$bsk_name
=
$cskills
[
$bsk
][
'name'
];
# 扣除怒气
$bsk_cost
=
get_skill
vars
(
$bsk
,
'ragecost'
);
$bsk_cost
=
get_skill
ragecost
(
$bsk
,
$pa
);
if
(
$bsk_cost
)
$pa
[
'rage'
]
-=
$bsk_cost
;
# 成功释放主动技,应用标记
$pa
[
'bskill_'
.
$bsk
]
=
1
;
...
...
@@ -682,8 +682,14 @@ namespace revattr
if
(
$pa
[
'wep_kind'
]
==
'N'
)
{
if
(
!
isset
(
$pa
[
'wep_skill'
]))
$pa
[
'wep_skill'
]
=
get_wep_skill
(
$pa
);
$pa
[
'wepe_t'
]
=
round
(
$pa
[
'wep_skill'
]
*
2
/
3
);
}
$pa
[
'wepe_t'
]
=
round
(
$pa
[
'wep_skill'
]
*
2
/
3
);
#「拳法」效果判定,在空手基础上再额外增加
if
(
isset
(
$pa
[
'skill_c13_kungfu'
]))
{
$pa
[
'wepe_t'
]
=
round
(
$pa
[
'wep_skill'
]);
}
}
//射系 武器伤害=面板数值
elseif
(
$pa
[
'wep_kind'
]
==
'G'
||
$pa
[
'wep_kind'
]
==
'J'
)
{
...
...
@@ -795,19 +801,22 @@ namespace revattr
$pa
[
'charge_flag'
]
=
1
;
}
}
# 获取pd社团技能对防御力的加成(旧)
/*if(!empty($pd['skills']))
{
rev_get_clubskill_bonus($pa['club'],$pa['skills'],$pa,$pd['club'],$pa['skills'],$pd,$att1,$def1);
}*/
# 获取pd社团技能对防御力的加成(新)
$sk_def
=
0
;
# 「格挡」技能加成
if
(
!
check_skill_unlock
(
'c1_def'
,
$pd
))
{
$def_trans_rate
=
$cskills
[
'c1_def'
][
'vars'
][
'trans'
];
$def_maxtrans
=
$cskills
[
'c1_def'
][
'vars'
][
'maxtrans'
];
$sk_def
=
min
(
$def_maxtrans
,
$def_trans_rate
*
$pd
[
'wepe'
]
/
100
);
$sk_def
+
=
min
(
$def_maxtrans
,
$def_trans_rate
*
$pd
[
'wepe'
]
/
100
);
}
# 「消力」技能加成
if
(
!
check_skill_unlock
(
'c13_parry'
,
$pd
))
{
$sk_def
+=
$pd
[
'wp'
];
}
# 汇总:
$total_def
=
$base_def
+
$equip_def
;
if
(
!
empty
(
$def1
))
$total_def
+=
$def1
;
...
...
@@ -918,6 +927,8 @@ namespace revattr
//计算在原始伤害基础上附加的固定伤害
function
get_original_fix_dmg_rev
(
&
$pa
,
&
$pd
,
$active
)
{
global
$log
;
$damage
=
0
;
# 重枪
if
(
$pa
[
'wep_kind'
]
==
'J'
)
...
...
@@ -929,7 +940,6 @@ namespace revattr
# 灵力武器
if
(
$pa
[
'wep_kind'
]
==
'F'
)
{
global
$log
;
if
(
isset
(
$pa
[
'sldr_flag'
])
||
isset
(
$pd
[
'sldr_flag'
]))
{
$log
.=
"<span class=
\"
red
\"
>由于灵魂抽取的作用,灵系武器伤害大幅降低了!</span><br>"
;
...
...
@@ -939,6 +949,14 @@ namespace revattr
$damage
+=
$pa
[
'wepe'
];
}
}
#「乱击」判定:
if
(
isset
(
$pa
[
'bskill_c13_wingchun'
]))
{
$sk_p
=
get_skillvars
(
'c13_wingchun'
,
'phydmgr'
,
get_skilllvl
(
'c13_wingchun'
,
$pa
));
$sk_dmg
=
round
(
$pa
[
'wep_skill'
]
*
(
$sk_p
/
100
));
$log
.=
"<span class='yellow'>
{
$pa
[
'nm'
]
}
对着敌人打出了一屏幕的拳头,附加了
{
$sk_dmg
}
点伤害!</span><br>"
;
$damage
+=
$sk_dmg
;
}
$pa
[
'original_dmg'
]
+=
$damage
;
return
$damage
;
}
...
...
@@ -1073,6 +1091,14 @@ namespace revattr
$dmg_p
[]
=
$p
;
$log
.=
"<span class='yellow'>「解构」使
{
$pa
[
'nm'
]
}
造成的物理伤害提高了
{
$sk_p
}
%!</span><br>"
;
}
#「宗师」判定:
if
(
isset
(
$pa
[
'skill_c13_master'
])
&&
$pa
[
'wep_kind'
]
!=
'N'
)
{
$sk_p
=
(
strpos
(
$pa
[
'wep_name'
],
'拳'
)
!==
false
&&
$pa
[
'wep_kind'
]
==
'P'
)
?
get_skillvars
(
'c13_master'
,
'phydmgloss_2'
)
:
get_skillvars
(
'c13_master'
,
'phydmgloss'
);
$p
=
1
-
(
$sk_p
/
100
);
$dmg_p
[]
=
$p
;
$log
.=
"<span class='yellow'>
{
$pa
[
'nm'
]
}
耻于使用武器战斗!造成的物理伤害降低了
{
$sk_p
}
%!</span><br>"
;
}
return
$dmg_p
;
}
...
...
@@ -1931,6 +1957,27 @@ namespace revattr
$log
.=
"<span class=
\"
lime
\"
>「护盾」使
{
$pd
[
'nm'
]
}
受到的伤害降低了
{
$sk_var
}
点!</span><br>"
;
}
# 「消力」效果判定
if
(
isset
(
$pd
[
'skill_c13_parry'
]))
{
$sk_dice
=
diceroll
(
99
);
$sk_obbs
=
get_skillvars
(
'c13_parry'
,
'parryr'
);
#「决战」概率增幅
if
(
isset
(
$pd
[
'skill_buff_duel'
]))
$sk_obbs
+=
get_skillvars
(
'buff_duel'
,
'rapidr'
);
if
(
$sk_dice
<=
$sk_obbs
)
{
$sk_var
=
min
(
$pd
[
'wep_skill'
],
get_skillvars
(
'c13_parry'
,
'maxparry'
));
if
(
$sk_var
)
{
$sk_var
=
min
(
$fin_dmg
,
$sk_var
);
$fin_dmg
-=
$sk_var
;
$log
.=
"<span class=
\"
yellow
\"
>
{
$pd
[
'nm'
]
}
使出化劲儿,消去了
{
$sk_var
}
点伤害!</span><br>"
;
}
}
}
# 「灵俑」抵挡伤害判定
if
(
!
empty
(
$pd
[
'clbpara'
][
'zombieid'
]))
{
...
...
include/game/revclubskills.func.php
View file @
0bb887d5
...
...
@@ -5,9 +5,6 @@
}
# 新社团技能:
//include_once GAME_ROOT.'./include/game/dice.func.php';
# 获得指定技能 $sk:技能名;$para:$clbpara
function
getclubskill
(
$sk
,
&
$para
)
{
...
...
@@ -41,7 +38,7 @@
function
lostclubskill
(
$sk
,
&
$para
)
{
global
$cskills
;
if
(
in_array
(
$sk
,
$para
[
'skill'
]))
if
(
!
empty
(
$para
[
'skill'
])
&&
in_array
(
$sk
,
$para
[
'skill'
]))
{
# 检查技能丢失时是否要执行事件
if
(
isset
(
$cskills
[
$sk
][
'lostevents'
]))
...
...
@@ -74,27 +71,29 @@
return
;
}
# 激活指定技能(技能名,额外参数)(这个做法还是太离谱,暂时废弃)
/*function actclbskills($data,$sk,$skpara=NULL)
# 通过自定义方式初始化技能与技能参数
# 'clubskill' => Array('sk1'); # 获取指定技能
# 'clubskillpara' => Array('sk1' => 'sk1para' => Array('para_key' => 'para_values')); # 修改指定技能参数
function
customtclubskill
(
&
$data
)
{
global $log,$cskills;
if(isset($cskills[$sk]))
{
# 合法性检查
$flag = check_skill_unlock($sk,$data);
if($flag) return;
include_once GAME_ROOT.'./include/game/revclubskills_extra.func.php';
$sk_func = 'skill_'.$sk.'act';
if(function_exists($sk_func))
if
(
!
empty
(
$data
[
'clubskill'
]))
{
foreach
(
$data
[
'clubskill'
]
as
$sk
)
getclubskill
(
$sk
,
$data
[
'clbpara'
]);
}
if
(
!
empty
(
$data
[
'clubskillpara'
]))
{
foreach
(
$data
[
'clubskillpara'
]
as
$sk
=>
$skpara
)
{
if(!empty($skpara))
eval("$sk_func($skpara);");
else
eval("$sk_func();");
foreach
(
$skpara
as
$para_key
=>
$para_value
)
{
//....
$data
[
'clbpara'
][
'skillpara'
][
$sk
][
$para_key
]
=
$para_value
;
//set_skillpara($sk,$para_key,$para_value,$data['clbpara']);
}
}
}
}*/
return
;
}
# 升级指定技能 $sk:技能名;$nums:升级次数
function
upgclbskills
(
$sk
,
$nums
=
1
)
...
...
@@ -328,6 +327,17 @@
return
0
;
}
function
get_skillragecost
(
$sk
,
$data
)
{
$ragecost
=
get_skillvars
(
$sk
,
'ragecost'
);
if
(
is_array
(
$ragecost
))
{
$sk_lvl
=
get_skilllvl
(
$sk
,
$data
);
$ragecost
=
$ragecost
[
$sk_lvl
];
}
return
$ragecost
;
}
# 技能是否满足消耗条件,返回0时为可激活,否则返回对应的未满足条件 $sk:技能名;$data:角色数据
function
check_skill_cost
(
$sk
,
$data
)
{
...
...
@@ -336,8 +346,8 @@
$cannot_active_log
=
Array
(
0
=>
'怒气不足,需要<span class="red">[:ragecost:]</span>点怒气'
,
);
$ragecost
=
get_skillragecost
(
$sk
,
$data
);
# 检查技能需要消耗的怒气条件是否满足
$ragecost
=
get_skillvars
(
$sk
,
'ragecost'
);
if
(
$ragecost
&&
$data
[
'rage'
]
<
$ragecost
)
{
$clog
=
str_replace
(
'[:ragecost:]'
,
$ragecost
,
$cannot_active_log
[
0
]);
...
...
include/game/revclubskills.inc.php
0 → 100644
View file @
0bb887d5
<?php
if
(
!
defined
(
'IN_GAME'
))
{
exit
(
'Access Denied'
);
}
?>
include/game/revcombat.func.php
View file @
0bb887d5
...
...
@@ -566,9 +566,33 @@ namespace revcombat
if
(
!
empty
(
$pa
[
'wep_imp_times'
]))
weapon_loss
(
$pa
,
$pa
[
'wep_imp_times'
]);
//发出声音
addnoise
(
$pa
[
'wep_kind'
],
$pa
[
'wepsk'
],
$now
,
$pa
[
'pls'
],
$pa
[
'pid'
],
$pd
[
'pid'
],
$pa
[
'wep_kind'
]
);
//增加熟练度 //天赋异禀攻击时额外+1熟练度
$pa
[
$skillinfo
[
$pa
[
'wep_kind'
]]]
+=
$pa
[
'club'
]
==
10
?
2
:
1
;
//print_r($pa);
# 增加熟练度
$pa
[
$skillinfo
[
$pa
[
'wep_kind'
]]]
+=
1
;
# 天赋异禀额外+1熟练度
if
(
$pa
[
'club'
]
==
10
)
$pa
[
$skillinfo
[
$pa
[
'wep_kind'
]]]
+=
1
;
# 「拳法」效果判定
if
(
isset
(
$pa
[
'skill_c13_kungfu'
])
&&
$pa
[
'wep_kind'
]
==
'N'
)
{
$sk_obbs
=
diceroll
(
99
);
if
(
$sk_obbs
>=
96
)
{
$pa
[
$skillinfo
[
$pa
[
'wep_kind'
]]]
+=
4
;
}
elseif
(
$sk_obbs
>=
94
)
{
$pa
[
$skillinfo
[
$pa
[
'wep_kind'
]]]
+=
3
;
}
elseif
(
$sk_obbs
>=
85
)
{
$pa
[
$skillinfo
[
$pa
[
'wep_kind'
]]]
+=
2
;
}
elseif
(
$sk_obbs
>=
65
)
{
$pa
[
$skillinfo
[
$pa
[
'wep_kind'
]]]
+=
1
;
}
}
return
$damage
;
}
...
...
include/game/revcombat_extra.func.php
View file @
0bb887d5
...
...
@@ -341,7 +341,7 @@ namespace revcombat
$loop
=
0
;
# 「双响」效果判定
if
(
isset
(
$pa
[
'bskill_c5_double'
]))
if
(
!
$loop
&&
isset
(
$pa
[
'bskill_c5_double'
]))
{
unset
(
$pa
[
'bskill_c5_double'
]);
unset
(
$pa
[
'bskilllog'
]);
$log
.=
"<span class=
\"
yellow
\"
>
{
$pa
[
'nm'
]
}
引爆了预埋的另一组爆炸物!</span><br>"
;
...
...
@@ -349,7 +349,7 @@ namespace revcombat
}
# 「海虎」效果判定
if
(
isset
(
$pa
[
'skill_c12_swell'
]))
if
(
!
$loop
&&
isset
(
$pa
[
'skill_c12_swell'
]))
{
$pa
[
'skill_c12_swell'
]
--
;
if
(
empty
(
$pa
[
'skill_c12_swell'
]))
unset
(
$pa
[
'skill_c12_swell'
]);
...
...
@@ -357,6 +357,26 @@ namespace revcombat
$loop
=
1
;
}
# 「快拳」效果判定
if
(
!
$loop
&&
isset
(
$pa
[
'skill_c13_quick'
]))
{
$sk_dice
=
diceroll
(
99
);
$sk_obbs
=
get_skillvars
(
'c13_quick'
,
'rapidr'
,
get_skilllvl
(
'c13_quick'
,
$pa
));
#「乱击」概率增幅
if
(
isset
(
$pa
[
'bskill_c13_wingchun'
]))
$sk_obbs
+=
get_skillvars
(
'c13_wingchun'
,
'rapidr'
,
get_skilllvl
(
'c13_wingchun'
,
$pa
));
#「决战」概率增幅
if
(
isset
(
$pa
[
'skill_buff_duel'
]))
$sk_obbs
+=
get_skillvars
(
'buff_duel'
,
'rapidr'
);
if
(
$sk_dice
<=
$sk_obbs
)
{
$pa
[
'skill_c13_quick'
]
--
;
if
(
empty
(
$pa
[
'skill_c13_quick'
]))
unset
(
$pa
[
'skill_c13_quick'
]);
$log
.=
"<span class=
\"
lime
\"
>
{
$pa
[
'nm'
]
}
身法灵动,再度出拳!</span><br>"
;
$loop
=
1
;
}
}
# 循环打击触发时,注销所有的主动技触发标记
if
(
$loop
&&
!
empty
(
$pa
[
'bskill'
])
&&
!
empty
(
$pa
[
'bskill_'
.
$pa
[
'bskill'
]]))
{
...
...
include/game/search.func.php
View file @
0bb887d5
...
...
@@ -527,6 +527,13 @@ function move_search_events(&$data,$act)
set_skillpara
(
$sk
,
'ms'
,
$ms
,
$data
[
'clbpara'
]);
}
# 「决战」效果判定
if
(
!
check_skill_unlock
(
'buff_duel'
,
$data
))
{
$sk_var
=
get_skillvars
(
'buff_duel'
,
'wploss'
);
if
(
$data
[
'wp'
]
>=
$sk_var
)
$data
[
'wp'
]
-=
$sk_var
;
}
return
;
}
...
...
include/state.func.php
View file @
0bb887d5
...
...
@@ -449,7 +449,7 @@
if
(
isset
(
$pa
[
'bskill'
])
&&
isset
(
$pa
[
'bskill_'
.
$pa
[
'bskill'
]]))
{
$bsk
=
$pa
[
'bskill'
];
$bsk_cost
=
get_skill
vars
(
$bsk
,
'ragecost'
);
$bsk_cost
=
get_skill
ragecost
(
$bsk
,
'ragecost'
);
if
(
$bsk_cost
)
{
$pa
[
'rage'
]
+=
round
(
$bsk_cost
*
0.1
);
...
...
include/system.func.php
View file @
0bb887d5
...
...
@@ -72,6 +72,7 @@ function rs_game($mode = 0) {
//echo " - NPC初始化 - ";
$db
->
query
(
"DELETE FROM
{
$tablepre
}
players WHERE type>0 "
);
include_once
config
(
'npc'
,
$gamecfg
);
include_once
GAME_ROOT
.
"./include/game/clubslct.func.php"
;
//$typenum = sizeof($typeinfo);
$plsnum
=
sizeof
(
$plsinfo
);
$npcqry
=
''
;
...
...
@@ -111,30 +112,10 @@ function rs_game($mode = 0) {
//$npc['wp'] = $npc['wk'] = $npc['wg'] = $npc['wc'] = $npc['wd'] = $npc['wf'] = $npc['skill'];
if
(
$npc
[
'gd'
]
==
'r'
){
$npc
[
'gd'
]
=
rand
(
0
,
1
)
?
'm'
:
'f'
;}
# NPC技能初始化
// 社团技能初始化
global
$club_skillslist
;
if
(
isset
(
$club_skillslist
[
$npc
[
'club'
]]))
{
if
(
empty
(
$npc
[
'clbpara'
]))
$npc
[
'clbpara'
][
'skill'
]
=
Array
();
$npc_csk
=
$club_skillslist
[
$npc
[
'club'
]];
foreach
(
$npc_csk
as
$sk
)
getclubskill
(
$sk
,
$npc
[
'clbpara'
]);
}
// 自定技能初始化
global
$cskills
;
if
(
!
empty
(
$npc
[
'clubskill'
]))
{
foreach
(
$npc
[
'clubskill'
]
as
$sk
)
getclubskill
(
$sk
,
$npc
[
'clbpara'
]);
}
// 自定技能参数初始化
if
(
!
empty
(
$npc
[
'clubskillpara'
]))
{
foreach
(
$npc
[
'clubskillpara'
]
as
$sk
=>
$skarr
)
{
foreach
(
$skarr
as
$skpara
=>
$skvalue
)
set_skillpara
(
$sk
,
$skpara
,
$skvalue
,
$npc
[
'clbpara'
]);
}
}
# NPC称号技能初始化
if
(
!
empty
(
$npc
[
'club'
]))
changeclub
(
$npc
[
'club'
],
$npc
);
# NPC自定义技能初始化
if
(
!
empty
(
$npc
[
'clubskill'
])
||
!
empty
(
$npc
[
'clubskillpara'
]))
customtclubskill
(
$npc
);
//初始化NPC所在位置
global
$hidding_typelist
,
$deepzones
;
...
...
@@ -647,6 +628,8 @@ function movehtm($atime = 0) {
function
addnpc
(
$type
,
$sub
,
$num
,
$time
=
0
,
$clbstatus
=
NULL
,
$aitem
=
NULL
,
$apls
=
NULL
)
{
global
$now
,
$db
,
$gtablepre
,
$tablepre
,
$log
,
$plsinfo
,
$typeinfo
,
$arealist
,
$areanum
,
$gamecfg
;
global
$hidding_typelist
,
$deepzones
;
include_once
GAME_ROOT
.
"./include/game/clubslct.func.php"
;
$time
=
$time
==
0
?
$now
:
$time
;
$plsnum
=
sizeof
(
$plsinfo
);
/*if(empty($anpcinfo) || empty($npcinit)){
...
...
@@ -697,29 +680,12 @@ function addnpc($type,$sub,$num,$time = 0,$clbstatus=NULL,$aitem=NULL,$apls=NULL
}
//$npc['pls'] = rand(1,$plsnum-1);
}
# NPC技能初始化
// 社团技能初始化
global
$club_skillslist
;
if
(
isset
(
$club_skillslist
[
$npc
[
'club'
]]))
{
if
(
empty
(
$npc
[
'clbpara'
]))
$npc
[
'clbpara'
][
'skill'
]
=
Array
();
$npc_csk
=
$club_skillslist
[
$npc
[
'club'
]];
foreach
(
$npc_csk
as
$sk
)
getclubskill
(
$sk
,
$npc
[
'clbpara'
]);
}
// 自定技能初始化
global
$cskills
;
if
(
!
empty
(
$npc
[
'clubskill'
]))
{
foreach
(
$npc
[
'clubskill'
]
as
$sk
)
getclubskill
(
$sk
,
$npc
[
'clbpara'
]);
}
// 自定技能参数初始化
if
(
!
empty
(
$npc
[
'clubskillpara'
]))
{
foreach
(
$npc
[
'clubskillpara'
]
as
$sk
=>
$skarr
)
{
foreach
(
$skarr
as
$skpara
=>
$skvalue
)
set_skillpara
(
$sk
,
$skpara
,
$skvalue
,
$npc
[
'clbpara'
]);
}
}
# NPC称号技能初始化
if
(
!
empty
(
$npc
[
'club'
]))
changeclub
(
$npc
[
'club'
],
$npc
);
# NPC自定义技能初始化
if
(
!
empty
(
$npc
[
'clubskill'
])
||
!
empty
(
$npc
[
'clubskillpara'
]))
customtclubskill
(
$npc
);
//自定义addnpc出现位置,会覆盖原本预设的位置。 TODO:要不要发个特别的news?
if
(
isset
(
$apls
))
$npc
[
'pls'
]
=
(
int
)
$apls
;
//自定义addnpc身上携带的道具,会覆盖原本预设的道具。 格式:$aitem=Array($iid=>Array($itm,$itmk,$itme,$itms,$itmsk),...)
...
...
templates/default/command.htm
View file @
0bb887d5
...
...
@@ -188,4 +188,9 @@
<input
type=
"button"
class=
"cmdbutton"
name=
"sp_mercpage"
value=
"佣兵管理"
onclick=
"showModalDialog($('mercpage'));"
>
</span>
{template skill_mercpage}
<!--{/if}-->
\ No newline at end of file
<!--{/if}-->
<!--<br>
<span tooltip="创建一项新的合成索引,会覆盖掉原来的索引记录">
<input type="button" class="cmdbutton" id="v" name="skillstable" value="合成索引" onclick="showModalDialog($('skillpage'));">
</span> -->
templates/default/help.htm
View file @
0bb887d5
...
...
@@ -1643,7 +1643,7 @@ NPC也会发出重击和必杀技,请随时小心。</p>
</tr>
<tr>
<td
class=
"b2"
height=
20px
>
<span>
铁拳无敌
</span>
<span>
街头霸王
</span>
</td>
<td
class=
"b3"
>
<span>
一般
</span>
...
...
@@ -1826,6 +1826,22 @@ NPC也会发出重击和必杀技,请随时小心。</p>
<span><input
type=
"button"
class=
"cmdbutton"
value=
"点击查看称号技能"
onclick=
"showModalDialog($('skillhelp-c11'));"
></span>
</td>
</tr>
<tr>
<td
class=
"b2"
height=
20px
>
<span>
铁拳无敌
</span>
</td>
<td
class=
"b3"
>
<span>
特殊
</span>
</td>
<td
class=
"b3"
>
<span>
初始殴熟+50;殴熟成长更快,但使用武器的伤害大幅降低;
<br>
有非比寻常的宗师气度;
</span>
</td>
<td
class=
"b3"
>
<span><input
type=
"button"
class=
"cmdbutton"
value=
"点击查看称号技能"
onclick=
"showModalDialog($('skillhelp-c13'));"
></span>
</td>
</tr>
<tr>
<td
class=
"b2"
height=
20px
>
<span>
晶莹剔透
</span>
...
...
templates/default/templates.lang.php
View file @
0bb887d5
...
...
@@ -157,6 +157,9 @@ $language = array
'emoji'
=>
'表情'
,
'chatswitch'
=>
'切换'
,
'maptitle'
=>
'虚拟世界地图'
,
'skillpage_no_skill'
=>
'目前没有任何技能,去选择一个内定称号、或在游戏中寻找更多技能吧!'
,
);
...
...
valid.php
View file @
0bb887d5
...
...
@@ -251,10 +251,10 @@ if($mode == 'enter') {
# 格式化插入player数据
$ndata
=
update_db_player_structure
(
1
);
foreach
(
$ndata
as
$key
=>
$type
)
foreach
(
$ndata
as
$key
=>
$
n
type
)
{
if
(
isset
(
$$key
))
$ndata
[
$key
]
=
$$key
;
elseif
(
strpos
(
$type
,
'int'
)
!==
false
)
$ndata
[
$key
]
=
0
;
elseif
(
strpos
(
$
n
type
,
'int'
)
!==
false
)
$ndata
[
$key
]
=
0
;
else
$ndata
[
$key
]
=
''
;
}
...
...
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