【发布时间】:2013-02-10 17:31:46
【问题描述】:
我正在尝试创建一个 cydia 调整,以改变游戏中的某些方法
但我总是收到此错误
control reaches end of non-void function
这是我的 Tweak.xm 中的代码(我将它们缩短到发生错误的位置)
%hook Player
-(void)Jump:(int)jump {
if ((Upgrade = YES)) {
jump = 1;
%orig(jump);
}
else {
%orig;
}
}
-(int)GetSkill {
if ((Upgrade = YES)) {
return 1;
}
else {
%orig;
}
}
%end
%hook MainLayer
-(int)GetSkill:(int)skill {
if ((Upgrade = YES)) {
skill = 1;
%orig(skill);
}
else {
%orig;
}
}
%end
我不知道为什么代码块不起作用。对此感到抱歉
请帮助我,虽然这是一个警告 即使我在警报中单击“否”,代码似乎仍然会改变游戏
【问题讨论】:
-
这些方法在任何情况下都不返回返回值。有时编译器警告会产生误导,因为您的代码结构良好并且总是返回一个值。在这种情况下,您只需添加 'return 0;' 即可克服编译器警告。到方法的末尾,尽管这条语句可能永远不会被执行。
标签: objective-c cydia