++ :Unreal Senaryo kodu modding garip bir konu
event StartNewGameAtCheckpoint(string CheckpointStr, bool bSaveToDisk){
local OLCheckpoint CheckCP, startCP;
local OLHero Hero;
local OLGame CurrentGame;
local OLEngine Engine;
// End:0x33
if(CheckpointStr == "KillHero") >>> this if is new code that I added myself
{
NumBatteries = 86;
NotifyDifficultyChanged();
return;
} ... more irrelevant code comes after this > }
I (2 yolu mümkün) burada o fonksiyonu çağırıyorum:
Ben bir dize ve bir boolean gerektirir oyunda varolan işlevini çağırıyorum, bu o fonksiyondur
Method A:
class'OLGFxMoviePlayer'.static.GetOLPC().StartNewGameAtCheckpoint("KillHero", false);
Method B:
Outer.GetOLPC().StartNewGameAtCheckpoint("KillHero", false);
Bu noktada yaşıyorum garip bir sorun var, "KillHero" dizesi nedense bu işleve gitme şansını değildir (her iki yöntem) bu yüzden "CheckpointStr" nde "KillHero" değildir çünkü eğer deyimi başarısız olur herşey! GetOLPC nereden geldiğini merak herkes için
, geçerli playercontroller elde etmektir ve bu fonksiyon şöyle:
function OLPlayerController GetOLPC(){
return OLPlayerController(GetPC());
//return ReturnValue;
}
Ve bu işlev sayesinde sen tutan sınıfın "OLPlayerController" erişebilir
"StartNewGameAtCheckpoint"Ben biliyorum ben numbatteries yerleştirmek ve iyi çalışıyor eğer dışında notifydifficultychanged çünkü eğer varsa. Ayrıca içinde bir dize kullanır
Outer.consolecommand("camera freecam");
ama bu iyi çalışıyor:
Teknik olarak oyun bunu yapıyor olarak başka bir yerde çalışması gerekir.
kimse neyin yanlış olduğunu biliyor mu?
Teşekkür
'u temsil etmiyor, ama UnrealScript'i bilmiyorum C++, '==' operatörünü kullanarak bu durumda yanlış olur. Aşağıdaki gibi bir şey istersiniz: 'if (! Strcmp (CheckpointStr," Kill Hero ")) – TriskalJM
@TriskalJM' CheckpointStr' 'string' olarak tanımlandığından (eğer varsayalım - std :: string' varsa beklendiği gibi, 'operatör ==' çalışır) C++ bahsediyoruz ('beri std :: string' çeşitli yollarla) onları aşırı yüklenmiş ve Öneriniz bile derlemek olmaz. C++ değil, C. –
@ AlgirdasPreidžius fuar noktası. – TriskalJM