Pokażę Wam, jak można w prosty sposób wczytać innego elfa z poziomu drugiego.
1. Pierwszym krokiem będzie dodanie hooka dla klawiatury w int main ():
ModifyKeyHook(NewKey,1);
2. Pod includami umieszczamy:
int NewKey (int key, int r1, int mode) { if(key==0x1A && mode==0x00) //krótkie wciśnięcie siódemki w K770i. { elfload(L"/tpa/user/other/ZBin/Elf2.elf",0,0,0); //Wczytaj plik Elf2.elf ze ścieżki /tpa/user/other/ZBin/ } return 0; }
W ten sposób po wciśnięciu w tym przypadku siódemki uruchamiany jest elf z podanej ścieżki, czyli z: /tpa/user/other/ZBin/Elf2.elf
Można się pokusić teraz o to, żeby elf był otwierany dopiero pod pewnym warunkiem.
Doprowadźmy więc do sytuacji, w której elf zostanie otwarty tylko wtedy, gdy włączony jest aparat:
int NewKey (int key, int r1, int mode) { if(key==0x1A && mode==0x00) { BOOK * TopBook = DISPLAY_GetTopBook(0); if ((!strcmp(TopBook->xbook->name,"CameraBook"))==1) //Gdy włączony jest aparat/camera... { elfload(L"/tpa/user/other/ZBin/Elf2.elf",0,0,0); //...wczytaj plik Elf2.elf ze ścieżki /tpa/user/other/ZBin/ } } return 0; }
I możemy sobie tak kombinować w nieskończoność ;-)
W przypadku mojego ostatniego elfa takie coś było koniecznością - inaczej nic by z tego nie wyszło. Oczywiście mowa o elfie do zamykania muzyki po podanym czasie, który nie ujrzał jeszcze światła dziennego.
Pozdr.