Potrzebne rzeczy:
- zainicjowany ikarus
http://themodders.org/index.php?/topic/16580-inicjowanie-pakietow-skryptowych/- Szybki Tick_tock w świecie lub co klatkowy jak ogarniacie ikarusa
http://themodders.org/index.php?/topic/17057-bsmadministrowanie-tick-tockami/- notatnik
A więc zaczynamy najpierw robimy zmienna
var int sprint;
która będzie pamiętała w jakim stanie jest sprint ustalmy takie stany:
1 - włączanie
2 - włączony
3 - wyłączanie
4 - wyłączony
Do naszego tick_tocka dołączamy taki skrypt
if(MEM_KeyState(KEY_LSHIFT)==KEY_HOLD){
if (sprint == 4){
sprint = 1;
};
if (sprint == 1) {
if !(C_BodyStateContains(hero, BS_FALL)||C_BodyStateContains(hero, BS_JUMP)) {
sprint = 2;
Mdl_ApplyOverlayMDS(hero, "HUMANS_SPRINT.MDS");
};
};
}else{
if (sprint == 2){
sprint = 3;
};
if (sprint == 3) {
sprint = 4;
Mdl_RemoveOverlayMDS(hero, "HUMANS_SPRINT.MDS");
};
};
Nie ma tu chyba nic nie jasnego jedyne co możecie się pytać po co ta linijka.
if !(C_BodyStateContains(hero, BS_FALL)||C_BodyStateContains(hero, BS_JUMP)) {
Już tłumacze przy zmianie MDS`a postac na ułamek sekundy wykonuje animacje stania. Jeśli włączyć by sprint (zmiane mds`a) przy spadaniu można by uratować się od śmierci a więc ta linijka jest dość ważna.
Teraz została nam edycja pliku ini swojego moda
[OVERRIDES]
...
KEYS.keySlow=3600
...
Dzięki dodaniu KEYS.keySlow=3600 ustawienie przycisku w grze ulegnie zmianie i powolne chodzenie postaci będziemy mieli na prawym shifcie a lewy będzie "wolny" od funkcji dzieki czemu sprint będzie działał ok.
Jeśli chcecie wykorzystać ten sposób w swoim modzie proszę o dopisanie ze : "Modyfikacja korzysta ze skryptów Budzis Skrypt Mod".