Hassan/Sosna,
Ja też nigdy nie pisałem skryptów, ale chyba mogę powiedzieć. Zmienne liczbowe bez definicji zawsze mają wartość 0, w sumie jak w większości języków.
Tomasz,
Cytat
Mam problem z tym skryptem, o który prosiłem przepisałem go z tamtego tematu, ale niestety w grze wyświetla się błąd że jest wykonywanych za dużo poleceń, i ja się pytam jak to możliwe przy takim skrypcie:
void main ()
{
object oGracz = GetEnteringObject();
object oPrzedmiot = GetFirstItemInInventory(oGracz);
while(GetIsObjectValid(oPrzedmiot))
{
DestroyObject (oPrzedmiot);
}
int n;
oPrzedmiot = GetItemInSlot (n, oGracz);
while(n <= 14)
{
if(GetIsObjectValid(oPrzedmiot)) DestroyObject(oPrzedmiot);
n ++;
oPrzedmiot = GetItemInSlot(n, oGracz);
}
oPrzedmiot = CreateItemOnObject("lachmany", oGracz);
AssignCommand(oGracz, ActionEquipItem(oPrzedmiot, INVENTORY_SLOT_CHEST));
DestroyObject(OBJECT_SELF);
}
Ja już widziałem skrypty 100 razy dłuższe a tu przy takim krótkim skrypcie za dużo poleceń.
Proszę o to żeby ktoś powiedział jak to możliwe.
Skrypt zapisuje i kompiluje się bez żadnego błędu.
O, mój kod, tylko pamiętaj, ja nigdy nie stawiam spacji po nazwie funkcji. Jak miło, że przerobiłeś go na całkowicie bezużyteczny ;-).
Wiem, może z nadmiaru wiedzy mogą ci się niektóre rzeczy mylić. W końcu widziałeś skrypty 100 razy dłuższe od kilkunastolinjkowego, więc będzie ponad 1000 linijek różnego skryptu.
Zapisuje się i kompiluje bez problemu, bo nie ma tu błędów, przynajmniej takich, jakich szuka ten programik. Znasz się na C++ i pewnie wielu, wielu innych językach programowania, o których te laiki z Microsoftu nie słyszały, więc zapewne zdajesz sobie sprawę, że dużo kłopotu przysporzyłoby napisanie takiego kompilatora, który sprawdzałby, czy skrypt działa, nie wiedząc, do czego on służy.
object oPrzedmiot = GetFirstItemInInventory(oGracz);<br />
while(GetIsObjectValid(oPrzedmiot))<br />
{<br />
DestroyObject(oPrzedmiot);<br />
}
Spójrz, mistrzu, czy czegoś tu mentorowi nie brakuje?
object oPrzedmiot = GetFirstItemInInventory(oGracz);<br />
while(GetIsObjectValid(oPrzedmiot))<br />
{<br />
DestroyObject(oPrzedmiot);<br />
oPrzedmiot = GetNextItemInInventory(oGracz);<br />
}
To jeszcze można wybaczyć, właśnie tym, że byłeś rozproszony ogromem kodu, który przeglądałeś.
Cytat
Aleksander możesz mi dokładnie powiedzieć o co chodziło ci z tym pytaniem czy zostanę twoim mentorem? (Jakby co to nie mówię nie, zastanowię się nad tym jak odpowiesz.)
Co miałem na myśli? To, że skoro z taką łatwością płynie do ciebie wiedza programistyczna, to może będziesz moim skryptowym mentorem/nauczycielem/guru? Wiem, że o wiele proszę, ale błagam, zastanów się, ja nawet pojęty chłopok jest, nie przysporzę ci problemów.
Cytat
Dzięki za te dwie biblioteki.
Proszę cię bardzo za dwie biblioteki.
Cytat
(Właśnie zastanawiam się czy nie wziąć się za tworzenie jeszcze czegoś oprócz skryptów i C++)
Na pewno opanowałeś w stopniu wyżej jak mistrzowskim NWScript i C++, więc pewnie, bierz na ostrzał pozostałe języki, potem będziesz bezkonkurencyjny na tym rynku. ;-)