前沿拓展:
pst168
原因是冰箱内部冷热差异过大,你回想下是不是经常将饭菜、汤类在还热着的时候直接放入冰箱,而独获补且还没有加保鲜膜,这些放进去的术南长光慢降条紧根又指食物温度太高并且含有水蒸气,水蒸气遇到冰箱的冷气时就会凝结成大量的冷凝水,如果你的冰箱排水孔有堵住或者冷粮因序标除群余赶凝水形成的速度大于冰箱的排水速度时就会出现冰箱冷藏室有水的情况。
以后在冰箱放置食物时,记得先将食物冷却之后再放入冰箱之中,这样食物产生的蒸汽就不会在冰箱中遇冷后形成冷凝水。同时定期清理下冰箱里的排水口,排水孔一般都在冰箱冷藏室后面,在正常的停机状态下,冷藏室中的冰融化后会从排水孔排水,没有我家也自用这一台冰箱,保鲜能力确实没得说,你可以检查一下冰箱是否存在保鲜控湿这方面的问题,如果有的话可以考虑下美的的微晶系列,不会让您失望的哈!
无论是机械冰箱还是电脑冰箱,一旦设立了某个状态,可能一直以来,不论你的食材是什么,它都不会做任何变化。那么这种智能不能称之为真正的智能。而美的要做的智能才是真正的人工智能,是具有智慧思考,可以根据食材性质,用户需求自行进行调整的智能。”
分页**PageInterceptor
import org.apache.ibatis.executor.parameter.ParameterHandler;
import org.apache.ibatis.executor.statement.RoutingStatementHandler;
import org.apache.ibatis.executor.statement.StatementHandler;
import org.apache.ibatis.mapping.BoundSql;
import org.apache.ibatis.mapping.MappedStatement;
import org.apache.ibatis.mapping.ParameterMapping;
import org.apache.ibatis.plugin.*;
import org.apache.ibatis.scripting.defaults.DefaultParameterHandler;
import java.lang.reflect.Field;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.List;
import java.util.Map;
import java.util.Properties;
/**
* 分页**,用于拦截需要进行分页查询的**作,第二对其进行分页处理
*
*/
@Intercepts({ @Signature(method = “prepare”, type = StatementHandler.class, args = { Connection.class }) })
public class PageInterceptor implements Interceptor {
private String databaseType;// 数据库类型,不同的数据库有不同的分页方法
/**
* 拦截后要执行的方法
*/
public Object intercept(Invocation invocation) throws Throwable {
RoutingStatementHandler handler = (RoutingStatementHandler) invocation
.getTarget();
StatementHandler delegate = (StatementHandler) ReflectUtil
.getFiel**alue(handler, “delegate”);
BoundSql boundSql = delegate.getBoundSql();
Object paramObj = boundSql.getParameterObject();
// 判断参数里是否有page对象
Pagination page = null;
if (paramObj instanceof Pagination) {
page = (Pagination) paramObj;
} else if (paramObj instanceof Map) {
for (Object arg : ((Map) paramObj).values()) {
if (arg instanceof Page<?>) {
page = (Pagination) arg;
break;
}
}
}
if (page != null) {
MappedStatement mappedStatement = (MappedStatement) ReflectUtil
.getFiel**alue(delegate, “mappedStatement”);
Connection connection = (Connection) invocation.getArgs()[0];
String sql = boundSql.getSql();
if (page.getTotalCount() < 0) { // 如果总数为负数表需要设置
this.setTotalRecord(paramObj, mappedStatement, connection, page);
}
// 获取分页Sql语句
String pageSql = this.getPageSql(page, sql);
// 利用反射设置当前BoundSql对应的sql属性为我们建立好的分页Sql语句
ReflectUtil.setFiel**alue(boundSql, “sql”, pageSql);
}
return invocation.proceed();
}
/**
* **对应的封装原始对象的方法
*/
public Object plugin(Object target) {
return Plugin.wrap(target, this);
}
/**
* 设置注册**时设定的属性
*/
public void setProperties(Properties properties) {
this.databaseType = properties.getProperty(“databaseType”);
}
/**
* 根据page对象获取对应的分页查询Sql语句,这里只做了两种数据库类型,Mysql和Oracle 其它的数据库都 没有进行分页
*
* @param page
* 分页对象
* @param sql
* 原sql语句
* @return
*/
private String getPageSql(Pagination page, String sql) {
StringBuffer sqlBuffer = new StringBuffer(sql);
if (“mysql”.equalsIgnoreCase(databaseType)) {
return getMysqlPageSql(page, sqlBuffer);
} else if (“oracle”.equalsIgnoreCase(databaseType)) {
return getOraclePageSql(page, sqlBuffer);
}
return sqlBuffer.toString();
}
/**
* 获取Mysql数据库的分页查询语句
*
* @param page
* 分页对象
* @param sqlBuffer
* 包含原sql语句的StringBuffer对象
* @return Mysql数据库分页语句
*/
private String getMysqlPageSql(Pagination page, StringBuffer sqlBuffer) {
// 计算第一条记录的位置,Mysql中记录的位置是从0开始的。
int offset = (page.getPageNo() – 1) * page.getPageCount();
sqlBuffer.append(” limit “).append(offset).append(“,”)
.append(page.getPageCount());
return sqlBuffer.toString();
}
/**
* 获取Oracle数据库的分页查询语句
*
* @param page
* 分页对象
* @param sqlBuffer
* 包含原sql语句的StringBuffer对象
* @return Oracle数据库的分页查询语句
*/
private String getOraclePageSql(Pagination page, StringBuffer sqlBuffer) {
// 计算第一条记录的位置,Oracle分页是通过rownum进行的,而rownum是从1开始的
int offset = (page.getPageNo() – 1) * page.getPageCount() + 1;
sqlBuffer.insert(0, “select u.*, rownum _rownum from (“)
.append(“) u where rownum < “)
.append(offset + page.getPageCount());
sqlBuffer.insert(0, “select * from (“).append(“) where _rownum >= “)
.append(offset);
// 上面的Sql语句拼接之后大概是这个样子:
// select * from (select u.*, rownum r from (select * from t_user) u
// where rownum < 31) where r >= 16
return sqlBuffer.toString();
}
/**
* 给当前的参数对象page设置总记录数
*
* @param obj
* Mapper映射语句对应的参数对象
* @param mappedStatement
* Mapper映射语句
* @param connection
* 当前的数据库连接
*/
private void setTotalRecord(Object obj, MappedStatement mappedStatement,
Connection connection, Pagination page) {
BoundSql boundSql = mappedStatement.getBoundSql(obj);
String sql = boundSql.getSql();
String countSql = this.getCountSql(sql);
List<ParameterMapping> parameterMappings = boundSql
.getParameterMappings();
BoundSql countBoundSql = new BoundSql(
mappedStatement.getConfiguration(), countSql,
parameterMappings, obj);
ReflectUtil.setFiel**alue(countBoundSql, “additionalParameters”,
ReflectUtil.getFiel**alue(boundSql, “additionalParameters”));
ReflectUtil.setFiel**alue(countBoundSql, “metaParameters”,
ReflectUtil.getFiel**alue(boundSql, “metaParameters”));
ParameterHandler parameterHandler = new DefaultParameterHandler(
mappedStatement, obj, countBoundSql);
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
pstmt = connection.prepareStatement(countSql);
parameterHandler.setParameters(pstmt);
rs = pstmt.executeQuery();
if (rs.next()) {
int totalRecord = rs.getInt(1);
// 给当前的参数page对象设置总记录数
page.setTotalCount(totalRecord);
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
try {
if (rs != null)
rs.close();
if (pstmt != null)
pstmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
/**
* 根据原Sql语句获取对应的查询总记录数的Sql语句
*
* @param sql
* @return
*/
private String getCountSql(String sql) {
return “select count(1) from (” + sql + “) _tmp”;
}
/**
* 利用反射进行**作的一个工具类
*
*/
private static class ReflectUtil {
/**
* 利用反射获取指定对象的指定属性
*
* @param obj
* 目标对象
* @param fieldName
* 目标属性
* @return 目标属性的值
*/
public static Object getFiel**alue(Object obj, String fieldName) {
Object result = null;
Field field = ReflectUtil.getField(obj, fieldName);
if (field != null) {
field.setAccessible(true);
try {
result = field.get(obj);
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
return result;
}
/**
* 利用反射获取指定对象里面的指定属性
*
* @param obj
* 目标对象
* @param fieldName
* 目标属性
* @return 目标字段
*/
private static Field getField(Object obj, String fieldName) {
Field field = null;
for (Class<?> clazz = obj.getClass(); clazz != Object.class; clazz = clazz
.getSuperclass()) {
try {
field = clazz.getDeclaredField(fieldName);
break;
} catch (NoSuchFieldException e) {
// 这里不用做处理,子类没有该字段可能对应的父类有,都没有就返回null。
}
}
return field;
}
/**
* 利用反射设置指定对象的指定属性为指定的值
*
* @param obj
* 目标对象
* @param fieldName
* 目标属性
* @param fiel**alue
* 目标值
*/
public static void setFiel**alue(Object obj, String fieldName,
String fiel**alue) {
Field field = ReflectUtil.getField(obj, fieldName);
if (field != null) {
try {
field.setAccessible(true);
field.set(obj, fiel**alue);
} catch (IllegalArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
/**
* 利用反射设置指定对象的指定属性为指定的值
*
* @param obj
* 目标对象
* @param fieldName
* 目标属性
* @param fiel**alue
* 目标值
*/
public static void setFiel**alue(Object obj, String fieldName,
Object fiel**alue) {
Field field = ReflectUtil.getField(obj, fieldName);
if (field != null) {
try {
field.setAccessible(true);
field.set(obj, fiel**alue);
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
}
}
public String getDatabaseType() {
return databaseType;
}
public void setDatabaseType(String databaseType) {
this.databaseType = databaseType;
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
配置分页**
import com.yuntu.commons.mybatispage.*;
import com.mchange.v2.c3p0.ComboPooledDataSource;
import org.apache.ibatis.plugin.Interceptor;
import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.SqlSessionFactoryBean;
import org.mybatis.spring.SqlSessionTemplate;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.io.ClassPathResource;
import org.springframework.jdbc.datasource.DataSourceTransactionManager;
import org.springframework.transaction.PlatformTransactionManager;
import org.springframework.transaction.annotation.EnableTransactionManagement;
/**
*/
@Configuration
@MapperScan(“com.yuntu.core.repository”)
@EnableTransactionManagement
public class MybatisConfig {
private static final String MYBATIS_CONFIG_FILE = “mybatis-config.xml”;
/**
* 注册datasource,通过@ConfigurationProperties(prefix=”c3p0″)将properties文件中c3p0开头的属性map到datasource相应的属性上
* @return
*/
@Bean
@ConfigurationProperties(prefix=”c3p0″)
public ComboPooledDataSource dataSource() {
return new ComboPooledDataSource();
}
@Bean(name = “sqlSessionFactory”)
public SqlSessionFactory sqlSessionFactoryBean() throws Exception {
SqlSessionFactoryBean sqlSessionFactoryBean = new SqlSessionFactoryBean();
sqlSessionFactoryBean.setDataSource(dataSource());
sqlSessionFactoryBean.setTypeAliasesPackage(“com.friday.core.model”);
sqlSessionFactoryBean.setConfigLocation(new ClassPathResource(MYBATIS_CONFIG_FILE));
PageInterceptor pageInterceptor = new PageInterceptor();
pageInterceptor.setDatabaseType(“mysql”);
sqlSessionFactoryBean.setPlugins(new Interceptor[]{pageInterceptor});
return sqlSessionFactoryBean.getObject();
}
@Bean
public SqlSessionTemplate sqlSessionTemplate(SqlSessionFactory sqlSessionFactory) {
return new SqlSessionTemplate(sqlSessionFactory);
}
@Bean
public PlatformTransactionManager transactionManager() {
return new DataSourceTransactionManager(dataSource());
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
其他支持类:
import java.util.List;
/**
* 分页基本实现
* @param <T>
*/
public class Page<T> implements Pagination {
/** 页码 */
protected int pageNo;
/** 每页记录条数 */
protected int pageCount;
/** 总页数 */
protected int totalPage;
/** 总记录条数 */
protected int totalCount = -1;
/** 用于存放查询结果 */
protected List<T> resultList;
public Page() {}
public Page(Integer pageNo, int pageCount) {
if(pageNo==null){
pageNo=1;
}
if (pageNo <= 0) {
pageNo=1;
//throw new IllegalArgumentException(“pageNo must be greater than 0.”);
}
if (pageCount<=0 && pageCount>50) {
pageCount=50;
//throw new IllegalArgumentException(“pageCount must be greater than 0.”);
}
this.pageNo = pageNo;
this.pageCount = pageCount;
}
public void setPageNo(int pageNo) {
this.pageNo = pageNo;
}
public void setPageCount(int pageCount) {
this.pageCount = pageCount;
}
public void setTotalPage(int totalPage) {
this.totalPage = totalPage;
}
public int getPageNo() {
return pageNo;
}
public int getPageCount() {
return pageCount;
}
public int getTotalCount() {
return totalCount;
}
public void setTotalCount(int totalCount) {
this.totalCount = totalCount;
if (totalCount < 0) { // 如果总数为负数, 表未设置
totalPage = 0;
} else { // 计算总页数
totalPage = (totalCount / pageCount) + (totalCount % pageCount == 0 ? 0 : 1);
}
}
public List<T> getResultList() {
return resultList;
}
public void setResultList(List<T> resultList) {
this.resultList = resultList;
}
public int getTotalPage() {
return totalPage;
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
/**
* 分页,在分页挡截中使用
*
*/
public interface Pagination {
/**
* @return 当前页码
*/
int getPageNo();
/**
* @return 每页记录数
*/
int getPageCount();
/**
* @return 总记录数: 负数表尚未设置, 挡截器会使用count语句统计总数; 0或正整数表总数已设置, 挡截器将不会统计总数.
*/
int getTotalCount();
/**
* @param totalCount 设置记录总数
*/
void setTotalCount(int totalCount);
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
使用:
在mapper接口中:
List<LibraryBookResult> getLibraryStatics(@Param(“libraryBooksDto”) LibraryBooksCollectDto libraryBooksDto, Pagination pagination);
1
2
在mapper.xml中不用关心分页情况
拓展知识:
pst168
在游戏的时候按下“\”键,屏幕左上角会出现“Command:”或“输入命令:”的字样,第二输入以下命
令就可以达到不同的效果。
__指令_主机专用______________________________________________
AI * (加机器人的命令“*”代表Level文件夹中.pst文件的文件名)
\AI
SWORD 剑
STINGER 刺
SAMURAI 乾
PUNCH 虎
LANCE 枪
KATANA 忍
HAMMER 锤
DAGGER 匕
BLADE 刀
kill * (指定某人**亡的命令,“*”代表要指定的人的编号,编号可以在游戏中按Tab来查看)
kick * (这是踢人的命令,“*”代表人物编号)
skick * (这是个命令的效果类似踢人,不过踢人的时候也限制了被踢人的加入,“*”号代表人物编号)
__指令_任何人可用____________________________________________
fps(桢频,数字大点比较好)
mnet(数据传送的情况)
serverinfo(网络数据传送情况)
quit(一步退出,结束任务,就是退出游戏)
position(3D坐标,相当于数学上的X、Y、Z,3个的坐标)
record(开始录像,无**常使用)
replay(播放录像,无**常使用)
save(保存录像,无**常使用)
load(载入录像,无**常使用)
__指令_隐藏指令______________________________________________
weapon **(更换手中武器,**代码如下)
camera 0&1(锁定战斗视角,0解除/1锁定)
mnet(查询目前网路连线状况)
pose **(做出文件相应的动作,**代码如下)
moveto * * *(* * *输入3D坐标,相当于数学上的X、Y、Z,3个的坐标。利用position查看坐标。)
mhp(显示所有人HP,SP,攻击力、防御力、主机专用)
ang(满气指令,主机专用)
box(显示人物的边框,和CS**器一样!)
adddummy 1 2 3 4(测试用的电脑人!)
1[选人物0-19] 2[选队伍,0-2] 3[选武器,1-59] 4[选动作吧?](不知道要怎麼改,让**能自己攻击)
adddummy2 1 2 3 4(测试用的电脑人2)
1[选人物0-19] 2[选队伍,0-2] 3[选武器,1-59] 4[选动作吧?](不知道要怎麼改,让**能自己攻击)
testserver(立刻与服务器断开连接,但是游戏还存在。)
loadmyno *(*为人物代码 ,游戏中切换人物皮肤,但对手无法看到效果)
*[选人物0-19]
loadsnp *(*数字,数字为各场景代码,游戏中切换场景。但会出现 *****scene异常)
lag: *(*数字0~255,模拟网络延时,数字越大延时越严重,0为取消网络延时)
play(刷新本局)
wave * * *(在坐标* * *出现中招声音)
shows(显示服务器IP,使用此命令会显示整个服务器的相关的一串IP,同时切断与主机的联接)
editai(出现编辑AI的路点)
msense *(鼠标灵敏度)
dropw(扔出副武器)
switch(换出副武器)
win(很快让你换下一关!)
freecam(自由视觉。远程视角,不稳定,容易跳出桌面。)
minverse(反转鼠标)
dcam(视觉立刻转换到自己)
test(未知功能,使用会退出游戏 )
elight(变换主菜单的背景颜色)
joins +????(未研究透,似乎可以加入别人的游戏,但我每次用都是「漆黑」一片~)
lose(未知功能 )
cheat(未知功能)
loadsn (未知功能)
loadch(未知功能)
loadmych p*(可以实现超级跳,*为数字(0~19)分别为从孟星魂开始的20名杀手!)
host(未知功能)
__指令_武器代码______________________________________________
中庸:
1-飞镖
2-飞轮
3-火铳
4-双刺
5-匕首
6-剑
7-枪
8-刀
9-锤
47-乾坤刀
51-指虎
55-忍刀
高攻:
10-飞镖
11-飞轮
12-火铳
13-双刺
14-匕首
15-剑
16-枪
17-刀
18-锤
48-乾坤刀
52-指虎
56-忍刀
高防:
19-飞镖
20-飞轮
21-火铳
22-双刺
23-匕首
24-剑
25-枪
26-刀
27-锤
49-乾坤刀
53-指虎
57-忍刀
高敏:
28-飞镖
29-飞轮
30-火枪
31-双刺
32-匕首
33-剑
34-枪
35-刀
36-锤
50-乾坤刀
54-指虎
58-忍刀
圣诞武器:
37-雪球(飞镖)
38-飞碟(飞轮)
39-拉炮(火枪)
40-星星(双刺)
41-拐杖糖(匕首)
42-仙女棒(剑)
43-雪地铲子(枪)
44-特大抓痒器(刀)
45-大棒棒糖(锤)
46-铃铛(飞镖)
__指令_Pose代码______________________________________________
0 站立
1 暗气-准备状态
2 火铳-准备状态
3 飞轮-准备状态
4 刺-准备状态
5 匕首-准备状态
6 剑-准备状态
7 长枪-准备状态
8 大刀-准备状态
9 未知武器-准备状态
10 蹲
11 飞镖-防御动作
12 飞轮-防御动作
13 火铳-防御动作
14 刺-防御
15 匕首-防御
16 剑-防御
17 长枪-防御
18 大刀-防御
19 未知武器防御动作
20 异常状态
21 游泳-水中漂浮
22 复活同伴
23 脚踢*不是空踢!
24 更换武器
25 180转身-左
26 180转身-右
27 回马枪?
28 空手夺白刃?
29 伸手-右?
30 伸手-左?
31
32 孟星魂-挑衅
33 孟星魂-挑衅-收腿
34 运气?
35 倒
36 换武器(空)
37
38
39
40~88 防御被攻击,因武器和角度不同而姿势也有区别。
89
90 挨打-后仰
91 挨打-低头
93 挨打-左
94 挨打-后
95 挨打-后翻
96 挨打-倒地
97 挨打-倒地-左翻
98 挨打-倒地-右翻
99 挨打-倒地-前翻
100 挨打-向上飞起
101
102 挨打-向前飞
103 挨打-向后飞
104 挨打-向左飞
105 挨打-向右飞
106 挨打-向前飞
107 挨打-向前飞(中)
108 挨打-向后飞(中)
109 挨打-低头(定)
110 挨打-弯腰
111 挨打-右滚
112 挨打-左滚
113 挨打-卧倒
114 挨打-直接躺下
115 挨打-直接趴下
116 晕
117 **亡
118 鞠躬
119 跌倒
120 磕头
121 摇头
122~139
140 走路
141 走路-右
142 走路-左
143 走路-后
144 跑
145 蹲走
146 蹲走-右
147 蹲走-左
148 蹲走-后
149 游泳-前
150 行走-中缓慢
151 跳
152 小跳
153 右跳跃
154 小跳
155 跳跃(右倾)
156 小跳
157 后空翻跳
158 小跳
159 左跳跃
160 跳跃(左右倾斜)
161 爬墙
162 爬墙-右
163 爬墙-左
164 前冲-1
165 前冲-2
166 前冲-3
167 右闪-1
168 右闪-2
169 右闪-3
170 左闪-1
171 左闪-2
172 左闪-3
173 后闪-1
174 后闪-2
175 后闪-3
176 前滚翻
177 右滚翻
178 左滚翻
179 后滚翻
180 跳(特别小)
181~199
201 镖小绝(下上+攻击)
203 镖大绝(完整)
204 镖大绝(快速)
215 枪小绝(下上+攻击)
216 枪大绝(完整)
217 枪大绝(快速)
224 飞**绝(完整)
244 双刺大绝(完整)
259 匕首大绝(完整)
293 枪大绝(完整)
294 枪大绝(快速)
310 刀大绝(完整)
311 刀大绝(快速)
312 刀大绝(一段)
313 刀大绝(二段)
314 刀大绝(高飞)
325 垂大绝(完整)
326 垂大绝(快速)
331 刀大绝(落下)
350 双刺大绝(快速)
351 双刺大绝(二段)
352 双刺大绝(三段)
353 双刺大绝(四段)
354 双刺大绝(五段)
355 双刺大绝(六段)
356 双刺大绝(七段)
357 双刺大绝(八段)
358 双刺大绝(九段)
359 双刺大绝(十段)
360 双刺大绝(十一段)
361 双刺大绝(十二段)
362 双刺大绝(十三段)
363 双刺大绝(十四段)
364 双刺大绝(十五段)
367 爆气
368 剑大绝(完整)
369 剑大绝(快速)
416 指虎小绝(气功波)
421 指虎大绝(完整)
422 指虎大绝(二段)
423 指虎大绝(三段)
424 指虎大绝(四段)
425 指虎大绝(五段)
426 指虎大绝(空中气功波)
451 乾坤刀大绝(完整版)
452 乾坤刀大绝(二段)
453 乾坤刀大绝(三段)
454 乾坤刀大绝(四段)
455 乾坤刀大绝(五段)
456 乾坤刀大绝(终段)
468 忍刀自爆
473 忍刀小绝
474 忍刀大绝(后段)
489 指虎大绝(攻击力增加)
535 忍刀影身(完整)
536 忍刀影身(快速)
537 忍刀影身(移动)
538 忍刀影身(快速移动)
551 镖小绝(空中)
552 飞轮小绝(地上)
553 飞轮小绝(空中完整)
554 飞轮小绝(空中快速)
556 双刺小绝
557 双刺大绝(速度增快)
558 匕首小绝(地上)
559 匕首小绝(空中)
560 剑小绝(左右+攻击)
561 剑小绝(右左+攻击)
562 枪小绝(左右下+攻击)
563 枪小绝(二段)
565 刀小绝(下下上+攻击)
566 垂小绝(左右上+攻击)
567 垂大绝(防御力增加)
568 乾坤刀小绝(上上+攻击)
569 乾坤刀小绝(二段)
570 乾坤刀小绝(下上+攻击)
571 枪小绝(上上上+攻击)
572 刀小绝(右左+攻击)
573 刀小绝(二段)
pst168
要下载隐藏命令开启器
http://58.251.57.206/down?cid=3D1386EA9D21D3FBC9908A36DBF1E042193469CC&t=1&fmt=-
游戏中当你按下这个“\”符号时(键盘上的位子是在退格键BackSpace下面),第二屏幕左上角会出现“Command:”字样时,这就是命令输入状态,命令分为主机专用命令, 普通命令和隐藏命令三大种类:
主机专用命令:
———————————————————————————–
kick X: 踢人(x 为玩家编号,可以通过按Tab键查看,显示在玩家名字前面的就是编号,注意有间隔空格)
———————————————————————————–
skick X: 将玩家踢走并禁止加入(x 为玩家编号,可以通过按Tab键查看,显示…….)
———————————————————————————–
kill: 服务器指定**亡(包括自己)
———————————————————————————–
AI x: 加机器人,(注意AI一定要大写,x是后缀为pst文件的全名,(在流星蝴蝶剑Level文件夹里的文件)
———————————————————————————–
普通命令:
———————————————————————————–
fps: 显示当前屏幕每秒动画桢数在右上角位置(fps数值越大每秒完成d动作越快相反就越慢)
———————————————————————————–
position: 显示本机人物所在游戏里的坐标
———————————————————————————–
mnet: 网络数据传送情况
———————————————————————————–
serverinfo: 网络数据传送情况
———————————————————————————–
quit: 一步退出(直接切换到系统桌面)
———————————————————————————–
record: 开始录像
———————————————————————————–
replay: 播放录像
———————————————————————————–
save: 保存录像
———————————————————————————–
load: 载入录像
———————————————————————————–
camera: (未知功能?)
———————————————————————————–
Pureoberserver X: 转播命令 (X是数字代表位数 可选1-16位人来观察你所在的服务器)
———————————————————————————–
隐藏命令是需要修改Meteor.exe文件才能实现的(其中的 X :代表数字)
———————————————————————————–
pose X: 做出pose文件相应的动作(本文后面有详细说明)如 POSE 20 为头晕动作 POSE 149 为游泳
———————————————————————————–
moveto X X X: 3个X代表坐标,作用是瞬间转移!(可以在网络上用,吓**对方!)
———————————————————————————–
ang: 直接打命令,你的气就满了!
———————————————————————————–
box: 显示3D人物框架,蓝框为攻击范围(虚拟的)box off为取消(可以在网络上用)
————————————————————————
——————————————————————————–
———————————————————————————–
———————————————————————————–
mhp: 只有主机能用看所有人的详细资料!显示所有人 HP,SP 攻击力、防御力
———————————————————————————–
play: 刷新本局(**斗或暗杀**去后可用此命令复活但失去攻击和受伤的判定变成鬼魂状态)
———————————————————————————-
隐藏命令
weapon +武器数字ID: 作用是可以随便改自己手中拿的武器!(可以在网络上用,下文有详细说明, 例如:先\再输入weapon 15 再按确认键(enter)后,一把红光闪闪d带有高攻击属性d修罗剑就出来了!!
武器ID :(普通属性)
飞镖=1 飞轮=2 火枪=3 双刺=4 匕首=5 轻剑=6
长枪=7 大刀=8 大锤=9 指虎=51 忍刀=55 乾坤刀=47
武器ID :(高攻属性)
飞镖=10 飞轮=11 火枪=12 双刺=13 匕首=14 轻剑=15
长枪=16 大刀=17 大锤=18 指虎=52 忍刀=56 乾坤刀=48
武器ID :(高防属性)
飞镖=19 飞轮=20 火枪=21 双刺=22 匕首=23 轻剑=24
长枪=25 大刀=26 大锤=27 指虎=53 忍刀=57 乾坤刀=49
武器ID :(高敏属性)
飞镖=28 飞轮=29 火枪=30 双刺=31 匕首=32 轻剑=33
长枪=34 大刀=35 大锤=36 指虎=54 忍刀=58 乾坤刀=50
武器ID :(圣诞属性)
雪球(飞镖)=37 飞碟(飞轮)=38 拉炮(火枪)=39 星星(双刺)=40 拐杖糖(匕首)=41
仙女棒(轻剑)=42 雪地铲子(长枪)=43 特大抓痒器(大刀)=44 大棒棒糖(大锤)=45 铃铛(飞镖)=46
AI命令:
流星107,108,907隐藏机器人
\AI dagger 冷燕 武器 匕首
\AI sword 律香传 武器 剑
\AI hammer 野和尚 武器 大锤
\AI blade 铁胡子 武器 大刀
\AI lance 高寄萍 武器 长枪
\AI katana 无名 武器 忍刀
\AI punch 老伯 武器 指虎
AI命令AI必需大写,后面加的AI可以大写或小写,中间一定要有空格。
pst168
游戏中当你按下这个“\”符号时(键盘上的位子是在退格键BackSpace下面),第二屏幕左上角会出现“Command:”字样时,这就是命令输入状态,命令分为主机专用命令, 普通命令和隐藏命令三大种类:
主机专用命令:
———————————————————————————–
kick X: 踢人(x 为玩家编号,可以通过按Tab键查看,显示在玩家名字前面的就是编号,注意有间隔空格)
———————————————————————————–
skick X: 将玩家踢走并禁止加入(x 为玩家编号,可以通过按Tab键查看,显示…….)
———————————————————————————–
kill: 服务器指定**亡(包括自己)
———————————————————————————–
AI x: 加机器人,(注意AI一定要大写,x是后缀为pst文件的全名,(在流星蝴蝶剑Level文件夹里的文件)
———————————————————————————–
普通命令:
———————————————————————————–
fps: 显示当前屏幕每秒动画桢数在右上角位置(fps数值越大每秒完成d动作越快相反就越慢)
———————————————————————————–
position: 显示本机人物所在游戏里的坐标
———————————————————————————–
mnet: 网络数据传送情况
———————————————————————————–
serverinfo: 网络数据传送情况
———————————————————————————–
quit: 一步退出(直接切换到系统桌面)
———————————————————————————–
record: 开始录像
———————————————————————————–
replay: 播放录像
———————————————————————————–
save: 保存录像
———————————————————————————–
load: 载入录像
———————————————————————————–
camera: (未知功能?)
———————————————————————————–
Pureoberserver X: 转播命令 (X是数字代表位数 可选1-16位人来观察你所在的服务器)
———————————————————————————–
隐藏命令是需要修改Meteor.exe文件才能实现的(其中的 X :代表数字)
———————————————————————————–
pose X: 做出pose文件相应的动作(本文后面有详细说明)如 POSE 20 为头晕动作 POSE 149 为游泳
———————————————————————————–
moveto X X X: 3个X代表坐标,作用是瞬间转移!(可以在网络上用,吓**对方!)
———————————————————————————–
ang: 直接打命令,你的气就满了!
———————————————————————————–
box: 显示3D人物框架,蓝框为攻击范围(虚拟的)box off为取消(可以在网络上用)
————————————————————————
——————————————————————————–
———————————————————————————–
———————————————————————————–
mhp: 只有主机能用看所有人的详细资料!显示所有人 HP,SP 攻击力、防御力
———————————————————————————–
play: 刷新本局(**斗或暗杀**去后可用此命令复活但失去攻击和受伤的判定变成鬼魂状态)
———————————————————————————-
隐藏命令
weapon +武器数字ID: 作用是可以随便改自己手中拿的武器!(可以在网络上用,下文有详细说明, 例如:先\再输入weapon 15 再按确认键(enter)后,一把红光闪闪d带有高攻击属性d修罗剑就出来了!!
武器ID :(普通属性)
飞镖=1 飞轮=2 火枪=3 双刺=4 匕首=5 轻剑=6
长枪=7 大刀=8 大锤=9 指虎=51 忍刀=55 乾坤刀=47
武器ID :(高攻属性)
飞镖=10 飞轮=11 火枪=12 双刺=13 匕首=14 轻剑=15
长枪=16 大刀=17 大锤=18 指虎=52 忍刀=56 乾坤刀=48
武器ID :(高防属性)
飞镖=19 飞轮=20 火枪=21 双刺=22 匕首=23 轻剑=24
长枪=25 大刀=26 大锤=27 指虎=53 忍刀=57 乾坤刀=49
武器ID :(高敏属性)
飞镖=28 飞轮=29 火枪=30 双刺=31 匕首=32 轻剑=33
长枪=34 大刀=35 大锤=36 指虎=54 忍刀=58 乾坤刀=50
武器ID :(圣诞属性)
雪球(飞镖)=37 飞碟(飞轮)=38 拉炮(火枪)=39 星星(双刺)=40 拐杖糖(匕首)=41
仙女棒(轻剑)=42 雪地铲子(长枪)=43 特大抓痒器(大刀)=44 大棒棒糖(大锤)=45 铃铛(飞镖)=46
AI命令:
流星107,108,907隐藏机器人
\AI dagger 冷燕 武器 匕首
\AI sword 律香传 武器 剑
\AI hammer 野和尚 武器 大锤
\AI blade 铁胡子 武器 大刀
\AI lance 高寄萍 武器 长枪
\AI katana 无名 武器 忍刀
\AI punch 老伯 武器 指虎
AI命令AI必需大写,后面加的AI可以大写或小写,中间一定要有空格。
pst168
你所说的流星修改是指哪个范围的修改?且又怎样看待修改与**
的区别?
答:①我说的修改是限于手动修改,而非使用修改器或编辑器;
②普通的修改可以说是游戏的另一个可玩点,可以是为了个人(
但并不损害别人的利益),也能为大家造福,而**往往是把
自己得利建立在别人损失的基础上的。
新手可以先弄懂哪些文件可以修改,放在哪里,并且修改后可以
有什么作用,我可以列举一些常用的,可以修改的文件(非修改
器修改)有:
①music文件夹里的mp3文件(游戏里的音乐来源这里,把他替换
可以放入自己想听的mp3).
②pmodel文件夹里的POS文件(是游戏人物的招式文件)
③流星根目录下的sn**文件夹(*代表数字,后面就不再说明,如
sn01)里的sn**.des
文件(地图文件,添加物品就在这里修改)
④Level文件夹里的****_**.pst 文件(是游戏里**的设置文件,
如果想修改单机版里的**的数字就在这里修改)
⑤Level文件夹里的sn**_.pst文件(地图模式及情节的设置文件,
如夺标或暗杀的模式,或者要修改剧情,添加人物进入单机任务里
就要修改这里)。
⑥流星目录下的sn**.pak文(地图的贴图文件,有了他,地图才会
有各种颜色,如果删除,地图就会只有一片雪白,只有模型没有颜
色,用压缩包形式打开可以修改地图的贴图)
⑦流星目录下的TexturePatch.pak文件(武器及物品的贴图,如手机
的,同样以压缩包形式打开可以修改)
pst168
踢人并限制加入:\skick 2(2为玩家号码)
踢人不限制加入:\kick 2(2为玩家号码)
杀**某位玩家:\kill 4(4为玩家号码)
以下命令需要激活隐藏命令方可使用
支持版本:1.07 1.08 9.07 9.08
ang
满气
weapon X
可以随便改自己手中拿的武器
mhp
显示所有人 HP,SP,攻击力、防御力,主机适用
position
查询座标
moveto X X X
瞬移
adddummy 21
踢房间
win
很快让你换下一关!
lose
很快让你换下一关
\AI **档名
载入指定**档
\AI dagger
\AI sword
\AI hammer
\AI blade
\AI lance
\AI katana
\AI punch
box
显示3D人物框架,蓝框为攻击范围box off为取消
Pureoberserver X
转播,X代表人数
loadch pX Y
X为人物皮肤编号,Y为玩家编号,让指定的玩家换皮肤
loadsnp 数字
数字为各场景代码,游戏中切换场景,但会出现model异常
loadmyno 人物代码
变换人物,游戏中切换人物皮肤,但会出现model异常
quit
直接结束游戏
camera 0&1
锁定战斗视角(0解除/1锁定)
mnet
查询目前网路连线状况
pose X
做出pos文件相应的动作
adddummy 1 2 3 4
测试电脑!在level目录里没有的!(可以在网络上用,可以给主机加电脑!)
1[选人物0-19] 2[选队伍,0-2] 3[选武器,1-59] 4不知道
adddummy2 1 2 3 4
测试电脑2
testserver
立刻与服务器断开连接,但是游戏还存在
lag: X
X数字(0~255) 模拟网络延时,数字越大延时越严重,0为取消网络延时
play
刷新本局(一个意义重大的Bug)
wave X X X
在坐标 X X X出现中招声音(莫名其妙)
shows
显示服务器IP (使用此命令会显示整个服务器的相关的一串IP,同时切断与主机的联系)
editai
出现编辑AI的路点
msense X
鼠标灵敏度(可以在网络上用)
freecam
自由视觉 .远程视角,不稳定,容易跳出桌面。
dcam
视觉立刻转换到自己
===========================
武器命令表:
飞镖=1 飞轮=2 火枪=3 双刺=4 匕首=5 轻剑=6
长枪=7 大刀=8 大锤=9 乾坤刀=47 指虎=51 忍刀=55
高攻
飞镖=10 飞轮=11 火枪=12 双刺=13 匕首=14 轻剑=15
长枪=16 大刀=17 大锤=18 乾坤刀=48 指虎=52 忍刀=
56
高防
飞镖=19 飞轮=20 火枪=21 双刺=22 匕首=23 轻剑=24
长枪=25 大刀=26 大锤=27 乾坤刀=49 指虎=53 忍刀=
57
高敏
飞镖=28 飞轮=29 火枪=30 双刺=31 匕首=32 轻剑=33
长枪=34 大刀=35 大锤=36 乾坤刀=50 指虎=54 忍刀=
58
圣诞
雪球(飞镖)=37 飞碟(飞轮)=38 拉炮(火枪)=39
星星(双刺)=40 拐杖糖(匕首)=41仙女棒(轻剑)=42
雪地铲子(长枪)=43 特大抓痒器(大刀)=44
大棒棒糖(大锤)=45 铃铛(飞镖)=46
指令_Pose代码
0 站立
1 暗气-准备状态
2 火铳-准备状态
3 飞轮-准备状态
4 刺-准备状态
5 匕首-准备状态
6 剑-准备状态
7 长枪-准备状态
8 大刀-准备状态
9 未知武器-准备状态
10 蹲
11 飞镖-防御动作
12 飞轮-防御动作
13 火铳-防御动作
14 刺-防御
15 匕首-防御
16 剑-防御
17 长枪-防御
18 大刀-防御
19 未知武器防御动作
20 异常状态
21 游泳-水中漂浮
22 复活同伴
23 脚踢*不是空踢!
24 更换武器
25 180转身-左
26 180转身-右
27 回马枪?
28 空手夺白刃?
29 伸手-右?
30 伸手-左?
31
32 孟星魂-挑衅
33 孟星魂-挑衅-收腿
34 运气?
35 倒
36 换武器(空)
37
38
39
40~88 防御被攻击,因武器和角度不同而姿势也有区别。
89
90 挨打-后仰
91 挨打-低头
93 挨打-左
94 挨打-后
95 挨打-后翻
96 挨打-倒地
97 挨打-倒地-左翻
98 挨打-倒地-右翻
99 挨打-倒地-前翻
100 挨打-向上飞起
101
102 挨打-向前飞
103 挨打-向后飞
104 挨打-向左飞
105 挨打-向右飞
106 挨打-向前飞
107 挨打-向前飞(中)
108 挨打-向后飞(中)
109 挨打-低头(定)
110 挨打-弯腰
111 挨打-右滚
112 挨打-左滚
113 挨打-卧倒
114 挨打-直接躺下
115 挨打-直接趴下
116 晕
117 **亡
118 鞠躬
119 跌倒
120 磕头
121 摇头
122~139
140 走路
141 走路-右
142 走路-左
143 走路-后
144 跑
145 蹲走
146 蹲走-右
147 蹲走-左
148 蹲走-后
149 游泳-前
150 行走-中缓慢
151 跳
152 小跳
153 右跳跃
154 小跳
155 跳跃(右倾)
156 小跳
157 后空翻跳
158 小跳
159 左跳跃
160 跳跃(左右倾斜)
161 爬墙
162 爬墙-右
163 爬墙-左
164 前冲-1
165 前冲-2
166 前冲-3
167 右闪-1
168 右闪-2
169 右闪-3
170 左闪-1
171 左闪-2
172 左闪-3
173 后闪-1
174 后闪-2
175 后闪-3
176 前滚翻
177 右滚翻
178 左滚翻
179 后滚翻
180 跳(特别小)
181~199
201 镖小绝(下上+攻击)
203 镖大绝(完整)
204 镖大绝(快速)
215 枪小绝(下上+攻击)
216 枪大绝(完整)
217 枪大绝(快速)
224 飞**绝(完整)
244 双刺大绝(完整)
259 匕首大绝(完整)
293 枪大绝(完整)
294 枪大绝(快速)
310 刀大绝(完整)
311 刀大绝(快速)
312 刀大绝(一段)
313 刀大绝(二段)
314 刀大绝(高飞)
325 垂大绝(完整)
326 垂大绝(快速)
331 刀大绝(落下)
350 双刺大绝(快速)
351 双刺大绝(二段)
352 双刺大绝(三段)
353 双刺大绝(四段)
354 双刺大绝(五段)
355 双刺大绝(六段)
356 双刺大绝(七段)
357 双刺大绝(八段)
358 双刺大绝(九段)
359 双刺大绝(十段)
360 双刺大绝(十一段)
361 双刺大绝(十二段)
362 双刺大绝(十三段)
363 双刺大绝(十四段)
364 双刺大绝(十五段)
367 爆气
368 剑大绝(完整)
369 剑大绝(快速)
416 指虎小绝(气功波)
421 指虎大绝(完整)
422 指虎大绝(二段)
423 指虎大绝(三段)
424 指虎大绝(四段)
425 指虎大绝(五段)
426 指虎大绝(空中气功波)
451 乾坤刀大绝(完整版)
452 乾坤刀大绝(二段)
453 乾坤刀大绝(三段)
454 乾坤刀大绝(四段)
455 乾坤刀大绝(五段)
456 乾坤刀大绝(终段)
468 忍刀自爆
473 忍刀小绝
474 忍刀大绝(后段)
489 指虎大绝(攻击力增加)
535 忍刀影身(完整)
536 忍刀影身(快速)
537 忍刀影身(移动)
538 忍刀影身(快速移动)
551 镖小绝(空中)
552 飞轮小绝(地上)
553 飞轮小绝(空中完整)
554 飞轮小绝(空中快速)
556 双刺小绝
557 双刺大绝(速度增快)
558 匕首小绝(地上)
559 匕首小绝(空中)
560 剑小绝(左右+攻击)
561 剑小绝(右左+攻击)
562 枪小绝(左右下+攻击)
563 枪小绝(二段)
565 刀小绝(下下上+攻击)
566 垂小绝(左右上+攻击)
567 垂大绝(防御力增加)
568 乾坤刀小绝(上上+攻击)
569 乾坤刀小绝(二段)
570 乾坤刀小绝(下上+攻击)
571 枪小绝(上上上+攻击)
572 刀小绝(右左+攻击)
573 刀小绝(二段)
原创文章,作者:九贤生活小编,如若转载,请注明出处:http://www.wangguangwei.com/24959.html